{ "$schema": "ToBeDone", "metadata": { "label": "sample-audio-control", "info": "Provide Default Audio Policy for Multimedia, Navigation and Emergency", "version": "1.0" }, "onload": { "label": "onload-config", "info": "onload initialisation config", "plugin": "audio-ctl-plugin-sample.ctlso", "actions": [ { "label": "onload-sample-cb", "info": "Call control sharelib install entrypoint", "callback": "SamplePolicyInstall", "args": {"arg1" : "first_arg", "nextarg": "second arg value"} }, { "label": "onload-sample-api", "info": "Assert AlsaCore Presence", "api": "alsacore", "verb": "ping", "args": "test" }, { "label": "onload-sample-lua", "info": "Assert LUA Engine", "lua": "Test_Lua_Engine", "args": "ping" } ] }, "controls": [{ "label": "multimedia", "actions": [ { "label": "multimedia-control-cb", "info": "Call Sharelib Sample Callback", "callback": "samplePolicyCB", "args": { "arg1": "snoopy", "arg2": "toto" } }, { "label": "multimedia-control-ucm", "info": "Subcall AlSA UCM navigation", "api": "alsacore", "verb": "ucmset", "args": { "verb": "multimedia" } } ] }, { "label":"navigation", "action" : { "api": "alsacore", "verb": "ucmset", "args": { "verb": "navigation" }, "optional": true, "timeout": 100 } }, { "label":"emergency", "action": { "api": "alsacore", "verb": "ucmset", "args": { "verb": "emergency" } } }] , "events": [ { "label": "SampleEvent", "comment": "define action when receiving a given event", "actions": [ { "info": "Event Callback-1", "callback": "ProcessEventCB", "args": { "arg": "action-1" } }, { "info": "Event Callback-2", "callback": "ProcessEventCB", "args": { "arg": "action-2" } } ] } ] }