SOUND4 BIGVOICE.CL Library [1.1.6]
Loading...
Searching...
No Matches
JSON syntax

JSON protocol to configure the process and get its state.

See also JSON syntax for internal setup

Commands

{ "get" : `object` }

get values.
If object is null, get all parameters, and so show the possibilities

{ "set" : `object` }

set values.
object can be any subpart, only those will be changed

{ "change" : `object` }

like get, but shows only changes since last request.
If object is null, get all changes.
Each call resets the state for this connection to current.

Note
In BigVoice.cl version <= 0.9.7, the state resetted also for filtered out objects. So avoid alterning object filter between calls, or you will miss some changes.
{ "load" : "`presetname`" }

load the preset

{ "save" : "`presetname`" }

save the preset.
If null is given, save onair preset

{ "delete" : "`presetname`" }

delete the preset.
can also be an array of presetnames

{ "factoryload" : "`presetname`" }

Create a preset from factory and load it

{ "rename" : { "preset" : "`presetname`", "name": "`newname`" } }

Rename a preset

{ "import" : { "preset" : "`presetname`", "content": `presetcontent` } }

Import a preset

{ "export" : "`presetname`" }

Export a preset: get preset's content so it can be imported later

{ "new" : { "name": "`presetname`", "factory": "`presetname`" } }

Create a new preset from a factory.
Can use array for multiple.

{ "undo" : `count` }

Undo last(s) count preset change

{ "redo" : `count` }

Redo last(s) count preset change

Answers

Answer is also a JSON object, starting with the command for get and change.

{ "get" : ... }
{ "change" : ... }

For other commands, if there is no error the answer is

{ "OK" : {"command" : "original command" } }

If there is an error, answer has the syntax

{ "ERROR" : {"command" : "faulty command", "message" : "explaining"} }

and may have more properties. The message may be empty.

Examples

Get status

{"get":{"status":null}}

answer:

{"get":{"status":{"preset_changed":false,"license_valid":true,"version":"1.1.19"}}}

Get all changes since last request

{"change":null}

answer:

{"change":{
"processorname":"Best Radio of the world",
"settings":{"general":{"operate":true},...},
"preset":{"setup": {"gate_on": true, ...},...},
"vu":{"setup": null,"in":{...}},
...
}

Check license

{"get":{"status":{"license_valid":null}}}

answer:

{"get":{"status":{"license_valid":true}}}

Set Processor name

{"set":{"processorname":"Best Radio of the world"}}

answer:

{"OK":"set"}

Get presetlist

{"get":{"presetlist":null}}

answer:

{"get":{"presetlist":[
{"name":"Urban","factory_name":"Urban","create":"2020-10-15 16:19:17","modify":"2020-10-15 16:19:17"},
{"name":"Rock Classic","factory_name":"Rock Classic","create":"2020-10-15 16:19:17","modify":"2020-10-15 16:19:17"},
{"name":"Rock","factory_name":"Rock","create":"2020-10-15 16:19:17","modify":"2020-10-15 16:19:17"},
...
]}}

Load a preset

{"load":"Rock Classic"}

answer:

{"OK":"load"}

Get information on preset on air

{"get":{"presetinfo":null}}

answer:

{"get":{"presetinfo":{"name":"Rock Classic","factory_name":"Rock Classic","create":"2020-10-15 16:19:17","modify":"2020-10-15 16:19:17"}}}

Set input gain

{"set":{"settings":{"gain":{"in":-3.0}}}}

answer:

{"OK":"set"}

Set bypass

{"set":{"settings":{"general":{"operate":false}}}}

answer:

{"OK":"set"}

Export a preset

{"export":"MyPresetName"}

answer:

{"export":{"processor":"Best Radio of the world","presets":{
"MyPresetName":{
"presetinfo":{"name":"MyPresetName","factory_name":"Open Sound","create":"2020-10-16 06:53:20","modify":"2020-10-16 06:53:26"},
"preset":{"setup":{"gate":-39.0}},
"undoredo":{"undo":[{"time":"2020-10-16 06:53:23","action":{"preset":{"setup":{"gate":-30.0}}}}],"redo":[],"has_undo":true,"has_redo":false}
}
}}}
Note
the object export.presets["MyPresetName"] in the answer is the one to use as content in Import a preset

Import a preset

{"import":{"preset":"MyNewPreset","content":{
"presetinfo":{"name":"MyPresetName","factory_name":"Open Sound","create":"2020-10-16 06:53:20","modify":"2020-10-16 06:53:26"},
"preset":{"setup":{"gate":-39.0}},
"undoredo":{"undo":[{"time":"2020-10-16 06:53:23","action":{"preset":{"setup":{"gate":-30.0}}}}],"redo":[],"has_undo":true,"has_redo":false}
}
}}

answer:

{"OK":"import"}