{
"openapi": "3.0.0",
"$schema": "http:iot.bzh/download/openapi/schema-3.0/default-schema.json",
"info": {
"description": "",
"title": "controler",
"version": "1.0",
"x-binding-c-generator": {
"api": "control",
"version": 2,
"prefix": "ctlapi_",
"postfix": "",
"start": null,
"onevent": "DispatchOneEvent",
"init": "CtlBindingInit",
"scope": "",
"private": false
}
},
"servers": [
{
"url": "ws://{host}:{port}/api/polctl",
"description": "Unicens2 API.",
"variables": {
"host": {
"default": "localhost"
},
"port": {
"default": "1234"
}
},
"x-afb-events": [
{
"$ref": "#/components/schemas/afb-event"
}
]
}
],
"components": {
"schemas": {
"afb-reply": {
"$ref": "#/components/schemas/afb-reply-v2"
},
"afb-event": {
"$ref": "#/components/schemas/afb-event-v2"
},
"afb-reply-v2": {
"title": "Generic response.",
"type": "object",
"required": ["jtype", "request"],
"properties": {
"jtype": {
"type": "string",
"const": "afb-reply"
},
"request": {
"type": "object",
"required": ["status"],
"properties": {
"status": {
"type": "string"
},
"info": {
"type": "string"
},
"token": {
"type": "string"
},
"uuid": {
"type": "string"
},
"reqid": {
"type": "string"
}
}
},
"response": {
"type": "object"
}
}
},
"afb-event-v2": {
"type": "object",
"required": ["jtype", "event"],
"properties": {
"jtype": {
"type": "string",
"const": "afb-event"
},
"event": {
"type": "string"
},
"data": {
"type": "object"
}
}
}
},
"x-permissions": {
"monitor": {
"permission": "urn:AGL:permission:audio:public:monitor"
},
"multimedia": {
"permission": "urn:AGL:permission:audio:public:monitor"
},
"navigation": {
"permission": "urn:AGL:permission:audio:public:monitor"
},
"emergency": {
"permission": "urn:AGL:permission:audio:public:emergency"
}
},
"responses": {
"200": {
"description": "A complex object array response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/afb-reply"
}
}
}
}
}
},
"paths": {
"/monitor": {
"description": "Subcribe Audio Agent Policy Control End",
"get": {
"x-permissions": {
"$ref": "#/components/x-permissions/monitor"
},
"parameters": [
{
"in": "query",
"name": "event_patern",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200"
}
}
}
},
"/dispatch": {
"description": "Request Access to Navigation Audio Channel.",
"get": {
"x-permissions": {
"$ref": "#/components/x-permissions/navigation"
},
"parameters": [
{
"in": "query",
"name": "zone",
"required": false,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200"
}
}
}
},
"/request": {
"description": "Execute LUA string script.",
"get": {
"x-permissions": {
"$ref": "#/components/x-permissions/navigation"
},
"parameters": [
{
"in": "query",
"name": "func",
"required": true,
"schema": {
"type": "string"
}
},
{
"in": "query",
"name": "args",
"required": false,
"schema": {
"type": "array"
}
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200"
}
}
}
},
"/debuglua": {
"description": "Execute LUA string script.",
"get": {
"x-permissions": {
"$ref": "#/components/x-permissions/navigation"
},
"parameters": [
{
"in": "query",
"name": "filename",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"$ref": "#/components/responses/200"
}
}
}
}
}
}