Scripts API functions.
More...
#include "compile_time.h"
#include "src/scripts/api_scripts.h"
#include "src/lib/api.h"
#include "src/lib/filehandler.h"
#include "src/lib/json/json_print.h"
#include "src/lib/json/json_query.h"
#include "src/lib/json/json_rpc.h"
#include "src/lib/log.h"
#include "src/lib/mem.h"
#include "src/lib/sds_extras.h"
#include "src/lib/utility.h"
#include "src/scripts/util.h"
#include <dirent.h>
#include <errno.h>
#include <limits.h>
#include <pthread.h>
#include <string.h>
#include <unistd.h>
#include <lauxlib.h>
#include <lua.h>
#include <lualib.h>
|
| bool | parse_script (sds scriptfilename, sds *metadata, sds *content, int *order) |
| |
| bool | scripts_file_reload (struct t_scripts_state *scripts_state) |
| |
| bool | scripts_file_read (struct t_scripts_state *scripts_state) |
| |
| sds | script_list (struct t_list *script_list, sds buffer, unsigned request_id, bool all) |
| |
| bool | script_delete (struct t_scripts_state *scripts_state, sds scriptname) |
| |
| bool | script_save (struct t_scripts_state *scripts_state, sds scriptname, sds oldscript, sds file, int order, int version, sds content, struct t_list *arguments, sds *error) |
| |
| sds | script_get (struct t_list *script_list, sds buffer, unsigned request_id, sds scriptname) |
| |
◆ parse_script()
| bool parse_script |
( |
sds |
scriptfilename, |
|
|
sds * |
metadata, |
|
|
sds * |
content, |
|
|
int * |
order |
|
) |
| |
Private definitions
Private functions Parses the script file. The metadata line is the first line of the scriptfile.
- Parameters
-
| scriptfilename | File to read |
| metadata | Pointer to sds string to populate the metadata |
| content | Pointer to sds string to populate with the script content |
| order | Pointer to int to populate with order |
- Returns
- true on success, else false
◆ script_delete()
| bool script_delete |
( |
struct t_scripts_state * |
scripts_state, |
|
|
sds |
scriptname |
|
) |
| |
Deletes a script
- Parameters
-
| scripts_state | pointer to scripts_state |
| scriptname | script to delete (name without extension) |
- Returns
- true on success, else false
◆ script_get()
| sds script_get |
( |
struct t_list * |
script_list, |
|
|
sds |
buffer, |
|
|
unsigned |
request_id, |
|
|
sds |
scriptname |
|
) |
| |
Gets the script and its details
- Parameters
-
| script_list | list of scripts |
| buffer | already allocated sds string to append the response |
| request_id | jsonrpc request id |
| scriptname | scriptname to read from filesystem |
- Returns
- pointer to buffer
◆ script_list()
| sds script_list |
( |
struct t_list * |
script_list, |
|
|
sds |
buffer, |
|
|
unsigned |
request_id, |
|
|
bool |
all |
|
) |
| |
Lists scripts
- Parameters
-
| script_list | list of scripts |
| buffer | already allocated sds string to append the response |
| request_id | jsonrpc request id |
| all | true = print all scripts, false = print only scripts with order > 0 |
- Returns
- pointer to buffer
◆ script_save()
| bool script_save |
( |
struct t_scripts_state * |
scripts_state, |
|
|
sds |
scriptname, |
|
|
sds |
oldscript, |
|
|
sds |
file, |
|
|
int |
order, |
|
|
int |
version, |
|
|
sds |
content, |
|
|
struct t_list * |
arguments, |
|
|
sds * |
error |
|
) |
| |
Saves a script
- Parameters
-
| scripts_state | pointer to scripts_state |
| scriptname | scriptname |
| oldscript | old scriptname (leave empty for a new script) |
| file | imported script filename (empty for local scripts) |
| order | script list is ordered by this value |
| version | imported script version (0 for local scripts) |
| content | script content |
| arguments | arguments for the script |
| error | already allocated sds string to hold the error message |
- Returns
- true on success, else false
◆ scripts_file_read()
Reads the scripts from the scripts directory
- Parameters
-
| scripts_state | pointer to scripts_state |
- Returns
- true on success, else false
◆ scripts_file_reload()
Public functions Reload the scripts from disk.
- Parameters
-
| scripts_state | pointer to scripts_state |
- Returns
- true on success, else false