Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- openapi: 3.0.0
- info:
- description: >
- Interface to the HVAC unit equipped with the aMotion control system.
- This API can by called as a standart http API, or used by websocket.
- Websocket connection should be made to ws://url:port/api/ws'.
- Connection is text message based and uses JSON encoding.
- When login is used, returned token is automaticaly stored to the active connection and requests are automaticaly assigned to it.
- The token is necessary only for requests via HTTP API.
- The expected format of the websocket request is Schema WebsocketRequest, the response is as Schema WebsocketResponse.
- When user is authorized in the Websocket then events are routed to this socket. Expected format of events is Schema Event.
- version: 1.0.1
- title: 'aMotion device API'
- termsOfService: 'https://amotion.cloud/terms/'
- contact:
- email: 'api@amotion.cloud'
- tags:
- - name: 'controller data'
- description: 'Current status data from the controller'
- - name: 'control'
- description: 'Setting and monitor of the control parameters for the HVAC device operation'
- - name: 'user'
- description: 'User data and setting operation'
- - name: 'system'
- description: 'Endpoints for the system maintenace and info'
- - name: 'settings'
- description: 'Support system setting'
- paths:
- '/ui_control_scheme':
- get:
- tags:
- - 'control'
- description: 'Gets the relevant variables to be displayed or controlled'
- operationId: 'uiControlScheme'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/UiControlScheme'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- '/ui_control_scheme/all':
- get:
- tags:
- - 'control'
- description: 'Gets all variables to be displayed or controlled including unusable variables'
- operationId: 'uiControlSchemeAll'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/UiControlScheme'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- '/ui_info_scheme':
- get:
- tags:
- - 'controller data'
- description: 'Gets the relevant variables to be watched'
- operationId: 'uiInfoScheme'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/UiInfoScheme'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- '/ui_diagram_scheme':
- get:
- tags:
- - 'controller data'
- description: 'Gets the relevant variables to be watched'
- operationId: 'uiDiagramScheme'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: null
- response:
- type: object
- properties:
- baseStates:
- type: array
- items:
- $ref: "#/components/schemas/UiDiagramSchemeStatus"
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- '/ui_diagram_data':
- get:
- tags:
- - 'controller data'
- description: 'Gets the variables and their values for the diagram, when they are not in the ui_info'
- operationId: 'uiDiagramData'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: object
- additionalProperties:
- oneOf:
- - type: number
- - type: string
- - type: boolean
- example:
- temp_request: true
- fan_power_req: false
- temp_eha: 25.6
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- /control:
- post:
- tags:
- - control
- description: 'Set the control request'
- operationId: 'control'
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VariableControl'
- description: 'List of variables to be controlled'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/VariableControlResponse'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Bad control request'
- security:
- - api_key: []
- /config:
- post:
- tags:
- - control
- description: 'Set the config request (users parameters)'
- operationId: 'config'
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/VariableConfig'
- description: 'List of config variables to be set'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Bad control request'
- security:
- - api_key: []
- '/user_config_get':
- get:
- tags:
- - 'controller data'
- description: 'Gets the user config variables and values'
- operationId: 'userConfigGet'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/VariableConfig'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'Data is not avalaible'
- security:
- - api_key: []
- /ui_info:
- get:
- tags:
- - control
- description: Gets info with the same structure as the ui_info event
- operationId: 'uiInfo'
- responses:
- "200":
- description: "Current values from ui_info structure"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- nullable: true
- result:
- $ref: "#/components/schemas/UiInfo"
- /support:
- get:
- tags:
- - system
- description: Gets technical support info
- operationId: 'support'
- responses:
- "200":
- description: "Support info"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- nullable: true
- result:
- type: object
- properties:
- distributor:
- type: object
- properties:
- name:
- type: string
- example: "Chosen distributor"
- telephone:
- type: string
- example: "+420 700 123 456"
- email:
- type: string
- example: "contact@distributor.com"
- technician:
- type: object
- properties:
- name:
- type: string
- example: "My Technician"
- telephone:
- type: string
- example: "+420 700 123 458"
- email:
- type: string
- example: "contact@technician.com"
- /control_panel:
- get:
- tags:
- - control
- description: '<p>Gets the current status of the control panel including control requests<br>origin: the group of request before the last request change<br>stored: the stored values of the user requests to permanent memory<br>current: the current values of the user requests</p>'
- operationId: 'controlPanel'
- responses:
- "200":
- description: "Actual values from control_panel structure"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- nullable: true
- result:
- type: object
- properties:
- control_panel:
- $ref: "#/components/schemas/controlPanelContent"
- security:
- - api_key: []
- /control_admin/config/set_scene:
- post:
- tags:
- - control
- description: 'Add, Remove or edit scene'
- operationId: 'setScene'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- command:
- type: string
- enum:
- - create
- - remove
- - edit
- scene:
- $ref: "#/components/schemas/Scene"
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/SetOperationResponse'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_scenes:
- get:
- tags:
- - control
- description: 'Returns list of scenes'
- operationId: 'getScenes'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_scenes_config:
- type: array
- items:
- $ref: '#/components/schemas/Scene'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_scenes_template:
- get:
- tags:
- - control
- description: 'Returns list of default scenes'
- operationId: 'getScenesTemplate'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_scenes_config_template:
- type: array
- items:
- $ref: '#/components/schemas/Scene'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/scenes_reset:
- get:
- tags:
- - control
- description: 'Loads the default scenes, triggers and schedulers'
- operationId: 'scenesReset'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- scenes_reset:
- type: array
- items:
- $ref: '#/components/schemas/Scene'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_triggers:
- get:
- tags:
- - control
- description: 'Returns list of triggers'
- operationId: 'getTriggers'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_triggers_config:
- type: array
- items:
- $ref: '#/components/schemas/Trigger'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_triggers_template:
- get:
- tags:
- - control
- description: 'Returns list of triggers'
- operationId: 'getTriggersTemplate'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_triggers_config_template:
- type: array
- items:
- $ref: '#/components/schemas/Trigger'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_trigger_functions:
- get:
- tags:
- - control
- description: 'Returns list of trigger functions'
- operationId: 'getTriggerFunctions'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_trigger_functions:
- type: array
- items:
- $ref: '#/components/schemas/triggerFunction'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_triggered_variable_list:
- get:
- tags:
- - control
- description: 'Returns list of the processed variables by triggers'
- operationId: 'getTriggersVars'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_triggered_variable_list:
- type: array
- items:
- $ref: '#/components/schemas/triggeredVariable'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_scheduler:
- get:
- tags:
- - control
- description: 'Returns list of schedulers/calendars content'
- operationId: 'getScheduler'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_scheduler:
- $ref: '#/components/schemas/SchedulerConfig'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/set_scheduler:
- post:
- tags:
- - control
- description: 'Assignes the chosen calendar to the heating season and to the non-heating season.'
- operationId: 'setScheduler'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- control:
- $ref: '#/components/schemas/SchedulerControlType'
- heatingSeasonCalendarId:
- type: integer
- description: calendar ID for the heating season (If control = SEASON)
- example: 2
- nonheatingSeasonCalendarId:
- type: integer
- description: calendar ID for the non-heating season (If control = SEASON)
- example: 2
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_scheduler:
- $ref: '#/components/schemas/SchedulerConfig'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_scheduler_template:
- get:
- tags:
- - control
- description: 'Returns list of scheduler plans'
- operationId: 'getSchedulerTemplate'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_scheduler_template:
- $ref: '#/components/schemas/SchedulerConfig'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_calendars:
- get:
- tags:
- - control
- description: 'Returns list of calendars-name and ID'
- operationId: 'getCalendars'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_calendars:
- $ref: '#/components/schemas/SchedulerConfigLite'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/get_calendar:
- post:
- tags:
- - control
- description: 'Returns content of calendar with specified ID and day'
- operationId: 'getCalendar'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- calendarId:
- type: number
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_calendar:
- $ref: '#/components/schemas/SchedulerCalendar'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/set_scheduler_plan_item:
- post:
- tags:
- - control
- description: 'Add, Remove or edit scheduler'
- operationId: 'setSchedulerPlanItem'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- command:
- type: string
- enum:
- - create
- - remove
- - edit
- scheduler:
- $ref: '#/components/schemas/SchedulerPlanItem'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/SetOperationResponse'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/set_calendar:
- post:
- tags:
- - control
- description: 'Adds new calendar'
- operationId: 'setCalendar'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- scheduler_calendar_name:
- type: string
- description: 'Name of the new calendar'
- example: 'Hot summer'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- type: object
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: "OK"
- response:
- type: object
- properties:
- scheduler_calendar_id:
- type: integer
- description: 'ID of the new calendar'
- example: 22
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/remove_calendar:
- post:
- tags:
- - control
- description: 'Remove calendar with specified ID'
- operationId: 'removeCalendar'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- id:
- type: integer
- format: 'uint32'
- example: 35
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/edit_calendar:
- post:
- tags:
- - control
- description: 'Edit content of calendar specified Iby the ID'
- operationId: 'editCalendar'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- id:
- type: integer
- format: 'uint32'
- example: 35
- name:
- type: string
- description: Name of the calendar
- holidayEnable:
- type: boolean
- description: Public holidays are allowed to use
- required:
- - id
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/OperationFailed'
- security:
- - api_key: []
- /control_admin/config/activate_calendar:
- post:
- tags:
- - control
- description: 'Activation of the chosen calendar by the ID of the calendar'
- operationId: 'activateCalendar'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- calendarId:
- type: integer
- format: 'uint32'
- example: 35
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/apply_calendar:
- get:
- tags:
- - control
- description: 'The active calendar is screened according to the current time, the scene from the actual calender record is applied'
- operationId: 'applyCalendar'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/activate_scene:
- post:
- tags:
- - control
- description: 'Activates the scene specified by the ID'
- operationId: 'activateScene'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- sceneId:
- type: integer
- format: 'uint32'
- example: 35
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/disposable_plan/set:
- post:
- tags:
- - control
- description: Sets the data for the temporary plan - one shot scene activation
- operationId: 'setDisposablePlan'
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/DisposablePlan'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- $ref: '#/components/schemas/DisposablePlan'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/disposable_plan/get:
- get:
- tags:
- - control
- description: Get the currant status of temporary plan
- operationId: 'getDisposablePlan'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- result:
- $ref: '#/components/schemas/DisposablePlan'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/moments/get:
- get:
- tags:
- - control
- description: Gets the fans operating time, filtres maintenence and inspection time
- operationId: 'getMoments'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- $ref: '#/components/schemas/MomentData'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/moments/set:
- post:
- tags:
- - control
- description: 'Sets the operative data, e.g. date of filter change, device inspection date, fan working hours reset.'
- operationId: 'setMoments'
- requestBody:
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/MomentData'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/moments/reset/{id}:
- get:
- tags:
- - control
- description: 'Reset of the operation data, e.g. date of filter change or fans working hours'
- operationId: 'resetMoments'
- parameters:
- - name: "id"
- in: "path"
- description: "Type of reset"
- required: true
- schema:
- type: string
- enum:
- - filter
- - uvlamp
- example: filter
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/duplicate_calendar_day:
- post:
- tags:
- - control
- description: 'Duplicate the chosen day of the calendar'
- operationId: 'duplicateCalendarDay'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- calendarId:
- type: integer
- format: 'uint32'
- example: 35
- description: Use this calendar ID if you want to duplicate day in the same calendar. Don't use it when you want to duplicate day between different calendars
- calendarId_src:
- type: integer
- format: 'uint32'
- example: 35
- description: Use this calendar ID as a source calendar if you want to duplicate day between different calendars
- calendarId_dest:
- type: integer
- format: 'uint32'
- example: 35
- description: Use this calendar ID as a distance calendar if you want to duplicate day between different calendars
- dayOfWeek_src:
- description: 'Source calendar day'
- $ref: '#/components/schemas/DayOfWeek'
- dayOfWeek_dest:
- description: 'Destination calendar day'
- $ref: '#/components/schemas/DayOfWeek'
- example: Tue
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 200
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_schedulers:
- $ref: '#/components/schemas/SchedulerConfig'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/enable_trigger_function:
- post:
- tags:
- - control
- description: 'Turns the trigger function On or Off'
- operationId: 'enableTriggerFunction'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- id:
- type: number
- description: Unique ID of the trigger function
- example: 1
- enabled:
- type: boolean
- description: FALSE = Off, TRUE = On
- example: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/set_calendar_plan:
- post:
- tags:
- - control
- description: 'Sets the record in the plan of calendare activation according to dates'
- operationId: 'setCalendarPlan'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- calendar_plans:
- type: array
- description: 'Array of the plans'
- items:
- $ref: '#/components/schemas/SchedulerCalendarPlan'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /control_admin/config/set_holidays:
- post:
- tags:
- - control
- description: 'Sets the dates of holidays and vacation for the Holiday usage in calendars'
- operationId: 'setHolidays'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- holidays:
- type: array
- description: 'Array of the public holidays'
- items:
- $ref: '#/components/schemas/PublicHoliday'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- $ref: '#/components/schemas/Success'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Operation failed'
- security:
- - api_key: []
- /get_triggers_report:
- get:
- tags:
- - control
- description: 'Returns list of trigger`s reports'
- operationId: 'getTriggersReport'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- result:
- type: object
- properties:
- get_triggers_report:
- type: array
- items:
- $ref: '#/components/schemas/TriggerReport'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: number
- example: 400
- error:
- type: string
- example: 'Trigger`s reports are not available'
- security:
- - api_key: []
- /login:
- post:
- tags:
- - user
- description: 'User login. Returns the API token'
- operationId: 'login'
- requestBody:
- content:
- application/json:
- schema:
- oneOf:
- - $ref: "#/components/schemas/UserLogin"
- - $ref: '#/components/schemas/TokenLogin'
- description: 'Login to register to the system, returns the API Token'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- description: 'Valid API Token'
- example: 'ATCsiinmgssw745'
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "BAD_PASSWORD"
- error:
- type: string
- example: 'Bad username or passoword'
- /logout:
- get:
- tags:
- - user
- description: "Logout current token"
- operationId: 'logout'
- responses:
- "200":
- description: "Succesfull logout"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- example: "OK"
- "400":
- description: "Nonexistent token"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "INVALID_TOKEN"
- error:
- type: string
- example: "Token not found"
- response:
- type: string
- example: null
- security:
- - api_key: []
- /user:
- get:
- tags:
- - user
- description: 'Get current logged user info'
- operationId: 'getUser'
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- $ref: "#/components/schemas/User"
- "401":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: MISSING_TOKEN
- error:
- type: string
- example: 'No authorized user (or missing token)'
- security:
- - api_key: []
- /user/set:
- post:
- tags:
- - user
- description: 'Sets users features'
- operationId: 'setUser'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- name:
- type: string
- description: "Own full name"
- example: "John Doe"
- nullable: true
- localisation:
- type: string
- description: "User override to default unit localisation"
- example: "de"
- nullable: true
- code:
- type: integer
- example: 1234
- password:
- type: object
- properties:
- new:
- type: string
- description: "New value of plain password"
- example: "my_new_password"
- old:
- type: string
- description: "Old plain password for change confirmation"
- example: "pass"
- nullable: true
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- "400":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: BAD_REQUEST
- error:
- type: string
- example: 'No change specified'
- security:
- - api_key: []
- /users:
- get:
- summary: "Get all users features"
- description: "User must be authenticated as admin"
- operationId: 'getUsers'
- tags:
- - user
- responses:
- "200":
- description: "List of valid users"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example:
- code: OK
- error: null
- result:
- - devices:
- - unit
- email: ''
- localisation: null
- name: ''
- permissions: []
- username: guest
- - devices:
- - unit
- email: ''
- localisation: null
- name: John Doe
- permissions:
- - scheduler
- - controll
- - remote
- - read
- username: user
- - devices:
- - unit
- email: ''
- localisation: null
- name: ''
- permissions:
- - scheduler
- - admin
- - controll
- - remote
- - read
- username: admin
- security:
- - api_key: []
- /users/create:
- post:
- tags:
- - user
- summary: "Creates a new user"
- description: 'User must be logged with ADMIN permission '
- operationId: 'createUser'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- name:
- type: string
- description: "Own full name"
- example: "John Doe"
- nullable: true
- localisation:
- type: string
- description: "User override to default unit localisation"
- example: "de"
- nullable: true
- password:
- type: string
- description: "New value of plain password"
- example: "new_password"
- nullable: true
- disabled:
- type: boolean
- description: "If user should be disabled (optional, default=false)"
- example: false
- nullable: true
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- "403":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: FORBIDDEN
- error:
- type: string
- example: 'Missing permission'
- security:
- - api_key: []
- /users/{username}:
- get:
- summary: "Get specified users features"
- description: "User must be authenticated as admin"
- operationId: 'getUserByName'
- tags:
- - user
- parameters:
- - name: "username"
- in: "path"
- description: "Username"
- required: true
- schema:
- type: string
- example: user
- responses:
- "200":
- description: "User indo"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example:
- code: OK
- error: null
- result:
- devices:
- - unit
- email: ''
- localisation: null
- name: John Doe
- permissions:
- - scheduler
- - controll
- - remote
- - read
- username: user
- security:
- - api_key: []
- /users/{username}/set:
- post:
- tags:
- - user
- summary: "Set user info as ADMIN"
- description: 'User must be logged with ADMIN permission '
- operationId: 'editUser'
- parameters:
- - name: "username"
- in: "path"
- description: "Username"
- required: true
- schema:
- type: string
- example: user
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- name:
- type: string
- description: "Own full name"
- example: "John Doe"
- nullable: true
- localisation:
- type: string
- description: "User override to default unit localisation"
- example: "de"
- nullable: true
- password:
- type: string
- description: "New value of plain password"
- example: "new_password"
- nullable: true
- disabled:
- type: boolean
- description: "If user should be disabled (optional, default=false)"
- example: false
- nullable: true
- description: 'Login to register to the system, returns the API Token'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- "401":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: FORBIDDEN
- error:
- type: string
- example: 'Missing admin permission'
- security:
- - api_key: []
- /users/{username}/delete:
- delete:
- tags:
- - user
- summary: "Removes chosen user"
- description: 'User must be logged with ADMIN permission '
- operationId: 'deleteUser'
- parameters:
- - name: "username"
- in: "path"
- description: "Username"
- required: true
- schema:
- type: string
- example: user
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- "401":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "FORBIDDEN"
- error:
- type: string
- example: 'Mising permission'
- security:
- - api_key: []
- /reboot:
- get:
- description: "Reboots the system"
- operationId: 'deviceReboot'
- tags:
- - system
- responses:
- "200":
- description: "Versions of all connected components"
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/Success"
- /version:
- get:
- description: "Gets versions of all connected components"
- operationId: 'version'
- tags:
- - system
- responses:
- "200":
- description: "Versions of all connected components"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- description: 'Info from components'
- example: { "CONTROLLER": {
- "build": "Mon 15 Mar 2021 03:07:00 PM CET",
- "githash": "f99dd11",
- "library_githash": "9e289bf",
- "library_version": "HEAD-9e289bf",
- "version": "2-api-cors-v0.1.3-2-gf99dd11-dirty"
- },
- "GATEWAY": {
- "build": "Mon 15 Mar 2021 03:07:00 PM CET",
- "githash": "f99dd11",
- "version": "2-api-cors-v0.1.3-2-gf99dd11-dirty"
- },
- "MAPPER": {
- "build": "Mon 15 Mar 2021 03:07:00 PM CET",
- "githash": "f99dd11",
- "version": "2-api-cors-v0.1.3-2-gf99dd11-dirty"
- }
- }
- /discovery:
- get:
- description:
- This endpoint is primary used for discovery of unit on known IP address.
- The format and structure is the same as the discovery over UDP boradcast. This endpoint
- does not require login.
- summary: Unit discovery endpoint
- operationId: 'discovery'
- tags:
- - system
- responses:
- "200":
- description: "Discovery response"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: object
- properties:
- addresses:
- type: object
- title: List of available network accesses
- example:
- br-0f25f03ff05e: "172.19.0.1"
- docker0: "172.17.0.1"
- enp4s0: "192.168.152.52"
- tun0: "10.8.0.2"
- board_number:
- title: Unique number of board
- type: string
- example: "f6:f3:f9:11:2f:75"
- brand:
- title: Brand to be used on UI
- type: string
- example: "atrea.cz"
- localisation:
- title: UI default localisation (user can override)
- type: string
- example: "cs"
- name:
- title: Unit name
- type: string
- example: "Ventilation unit"
- port:
- title: Unit port number
- type: number
- example: 8211,
- production_number:
- title: Unique number of while unit
- type: string
- example: "ATC000000"
- type:
- title: Unit branded type
- type: string
- example: "ATC Virtual"
- version:
- title: Unit software version (from gateway)
- type: string
- example: "ATC-v0.1.5-14-g532c703"
- /clients:
- get:
- tags:
- - system
- summary: "Gets connected clients (only ADMIN)"
- description: 'User must be logged with ADMIN permission'
- operationId: 'connectedClients'
- responses:
- "200":
- description: "List of actual connected clients"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: object
- properties:
- tokens:
- type: array
- items:
- type: object
- description: Valid tokens without private part
- properties:
- "authorizer":
- type: string
- example: "172.18.6.1:59043"
- "channel":
- type: string
- example: "websocket"
- "created":
- type: integer
- example: 1621256057
- "last_active":
- type: integer
- example: 1621256058
- "username":
- type: string
- example: "admin"
- websocket:
- type: array
- items:
- type: object
- description: Open client websocket
- properties:
- "remote":
- type: string
- example: "10.8.0.1:14051"
- "username":
- type: string
- example: "admin"
- /time:
- get:
- tags:
- - settings
- description: "Gets current time"
- operationId: 'getTime'
- responses:
- "200":
- description: "Actual time"
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: object
- properties:
- timestamp:
- type: object
- properties:
- unix_time:
- type: integer
- example: 1620912143
- nanoseconds:
- type: integer
- example: 168795000
- js_time:
- type: integer
- example: 1620912143168
- timezone:
- type: string
- example: "Europe/Prague"
- timezone_raw:
- type: string
- example: "CET-1CEST,M3.5.0,M10.5.0/3"
- localtime:
- $ref: "#/components/schemas/TimeSpec"
- utc:
- $ref: "#/components/schemas/TimeSpec"
- /time/set:
- post:
- tags:
- - settings
- summary: "Sets the time"
- description: 'User must be logged with ADMIN permission '
- operationId: 'setTime'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- hour:
- type: integer
- minimum: 0
- maximum: 23
- title: Hours
- example: 13
- nullable: true
- minute:
- type: integer
- minimum: 0
- maximum: 59
- example: 22
- title: Minutes
- nullable: true
- second:
- type: integer
- minimum: 0
- maximum: 59
- example: 23
- title: Seconds
- nullable: true
- day:
- type: integer
- minimum: 1
- maximum: 31
- example: 13
- title: Day
- nullable: true
- month:
- type: integer
- minimum: 1
- maximum: 12
- example: 5
- title: Month
- nullable: true
- year:
- type: integer
- minimum: 1900
- maximum: 2155
- example: 2021
- title: Year
- nullable: true
- auto_dst:
- type: boolean
- example: false
- title: Auto daylight saving time"
- nullable: true
- timezone:
- type: string
- example: "Europe/Prague"
- ntp_synchronization:
- type: boolean
- example: true
- description: 'Sets actual time, time zone and controls synchronization from NTP. Whole time group (hour, minute, second, day, month, year) is required to by present or misising.'
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- security:
- - api_key: []
- /time/timezones:
- get:
- description: "Gets list of available timezones"
- operationId: 'getTimezones'
- tags:
- - settings
- responses:
- "200":
- description: "All available timezones"
- content:
- application/json:
- schema:
- properties:
- auto_timezones:
- type: array
- items:
- type: string
- example: "Europe/Prague"
- fixed_timezones:
- type: array
- items:
- type: string
- example: "GMT0"
- /network_manager:
- get:
- summary: "Get configurable network adaptors"
- operationId: 'networkManager'
- tags:
- - settings
- responses:
- "200":
- description: "List of configurable network cards with actual settings."
- content:
- application/json:
- schema:
- type: array
- items:
- type: object
- properties:
- interface:
- type: string
- example: eth0
- mode:
- type: string
- enum:
- - static
- - dhcp
- address:
- type: string
- example: "172.20.20.20"
- netmask:
- type: string
- example: "255.255.255.0"
- gateway:
- type: string
- example: "172.20.20.1"
- nullable: true
- dns:
- type: array
- items:
- type: string
- example: "172.20.20.1"
- wifi:
- type: boolean
- example: false
- addresses:
- type: array
- items:
- type: string
- example: ["192.168.1.23", "172.20.20.20"]
- /network_manager/set:
- post:
- summary: "Sets network adaptor settings"
- description: 'User must be logged with ADMIN permission'
- operationId: 'setNetwork'
- tags:
- - settings
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- interface:
- type: string
- example: eth0
- mode:
- type: string
- enum:
- - static
- - dhcp
- settings:
- type: object
- nullable: true
- properties:
- address:
- type: string
- example: "172.20.20.20"
- netmask:
- type: string
- example: "255.255.255.0"
- gateway:
- type: string
- example: "172.20.20.1"
- nullable: true
- dns:
- type: array
- items:
- type: string
- example: "172.20.20.1"
- responses:
- "200":
- description: "List of configurable network cards with actual settings."
- content:
- application/json:
- schema:
- type: object
- properties:
- interface:
- type: string
- example: eth0
- mode:
- type: string
- enum:
- - static
- - dhcp
- settings:
- type: object
- nullable: true
- properties:
- address:
- type: string
- example: "172.20.20.20"
- netmask:
- type: string
- example: "255.255.255.0"
- gateway:
- type: string
- example: "172.20.20.1"
- nullable: true
- dns:
- type: array
- items:
- type: string
- example: "172.20.20.1"
- wifi:
- type: boolean
- example: false
- /cloud:
- get:
- summary: "Gets cloud connection status"
- description: 'User must be logged with ADMIN permission '
- operationId: 'getCloud'
- tags:
- - settings
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: object
- properties:
- active:
- type: boolean
- enable:
- type: boolean
- support:
- type: boolean
- link:
- type: object
- properties:
- gateway:
- type: boolean
- dns:
- type: boolean
- internet:
- type: boolean
- cloud:
- type: boolean
- security:
- - api_key: []
- /cloud/set:
- post:
- summary: "Sets the cloud settings"
- description: 'User must be logged with ADMIN permission '
- operationId: 'setCloud'
- tags:
- - settings
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- enable:
- type: boolean
- title: "Enable cloud connection"
- support:
- type: boolean
- title: "Enable remote support"
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- security:
- - api_key: []
- /unit/set:
- post:
- summary: "Set unit-wide informations, (only admin)"
- operationId: 'unitSet'
- tags:
- - settings
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- name:
- type: string
- example: MyUnit
- localisation:
- type: string
- example: "en"
- responses:
- 200:
- description: ""
- content:
- application/json:
- schema:
- $ref: "#/components/schemas/Success"
- /custom/config/activate:
- post:
- tags:
- - settings
- summary: "<p>Sends the activation code for the final HVAC device run approval.<br>The activation code can be used only once</p>"
- description: 'User must have the activation code '
- operationId: 'customConfigActivate'
- requestBody:
- content:
- application/json:
- schema:
- type: object
- properties:
- activationCode:
- type: string
- description: "Activation code from the seller (as a label on the box)"
- example: "A2ED92-2556"
- nullable: true
- required: true
- responses:
- "200":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: "OK"
- error:
- type: string
- example: null
- response:
- type: string
- nullable: true
- description: 'Success'
- example: "OK"
- "403":
- description: ""
- content:
- application/json:
- schema:
- properties:
- code:
- type: string
- example: FORBIDDEN
- error:
- type: string
- example: 'Unit is already activated'
- security:
- - api_key: []
- servers:
- - url: 'http://localhost:8211/api'
- - url: 'http://192.168.152.52:8211/api'
- components:
- securitySchemes:
- api_key:
- type: apiKey
- name: 'X-ATC-TOKEN'
- in: header
- schemas:
- TimeSpec:
- type: object
- properties:
- hour:
- type: integer
- minimum: 0
- maximum: 23
- title: Hours
- example: 13
- minute:
- type: integer
- minimum: 0
- maximum: 59
- example: 22
- title: Minutes
- second:
- type: integer
- minimum: 0
- maximum: 59
- example: 23
- title: Seconds
- day:
- type: integer
- minimum: 1
- maximum: 31
- example: 13
- title: Day
- month:
- type: integer
- minimum: 1
- maximum: 12
- example: 5
- title: Month
- year:
- type: integer
- minimum: 1900
- maximum: 2155
- example: 2021
- title: Year
- dst:
- type: boolean
- example: false
- title: Daylight saving time
- DayOfYear:
- type: object
- properties:
- day:
- type: integer
- minimum: 1
- maximum: 31
- example: 13
- title: Day
- month:
- type: integer
- minimum: 1
- maximum: 12
- example: 5
- title: Month
- Success:
- type: object
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- nullable: true
- example: null
- response:
- type: object
- nullable: true
- example: {}
- SetOperationResponse:
- type: object
- properties:
- code:
- type: string
- example: OK
- error:
- type: string
- nullable: true
- example: null
- response:
- type: object
- properties:
- affectedId:
- type: number
- description: 'Unique ID of affected record. If command is CREATE, affectedId is ID of the new created scene'
- example: 23
- OperationFailed:
- type: object
- properties:
- code:
- type: string
- example: FAILED
- error:
- type: string
- example: "Operation failed"
- response:
- type: object
- nullable: true
- example: null
- UserLogin:
- type: object
- properties:
- username:
- type: string
- description: 'Username as user identification'
- example: 'user'
- password:
- type: string
- description: 'User password as a plaintext'
- example: 'pass'
- TokenLogin:
- type: object
- properties:
- token:
- type: string
- description: 'API Token'
- example: 'HjzTdbK45KH98JGFgfh'
- VariableConfig:
- type: object
- properties:
- variables:
- type: object
- additionalProperties:
- example: 0.4
- example:
- variables:
- temp_ida_heater_hyst: 0.5
- temp_cool_active_offset: 0.3
- Variable:
- type: object
- properties:
- id:
- type: integer
- format: int32
- example: 25
- description: 'Unique ID of variable in the list'
- name:
- type: string
- example: 'fan_request'
- description: 'Name of varibale. This is the same name as in the regulator'
- type:
- type: string
- value:
- example: true
- VariableArray:
- type: array
- items:
- $ref: "#/components/schemas/Variable"
- VariableTypeItem:
- type: object
- properties:
- name:
- type: string
- description: 'Name of ENUM'
- example: 'HIGH'
- value:
- type: number
- minimum: 1
- maximum: 4294967295
- VariableTypes:
- type: object
- additionalProperties:
- $ref: "#/components/schemas/VariableTypeItem"
- VariableControl:
- type: object
- properties:
- variables:
- type: object
- additionalProperties:
- example: 25.3
- duration:
- type: number
- description: Delay to keep set value in seconds. 0 = permanent
- example: 3600
- exclusive:
- type: number
- description: Delay to keep exclusive mode in seconds. 0 = no exclusive mode. Exclusive mode is without triggers and schedulers (skips them) - only accept control commands
- example: 3600
- example:
- variables:
- temp_request: 23.1
- fan_power_req: 74
- duration: 3600
- VariableControlResponse:
- type: object
- properties:
- variables:
- type: object
- additionalProperties:
- type: boolean
- example:
- variables:
- temp_request: true
- fan_power_req: false
- ControllerList:
- type: object
- properties:
- config:
- $ref: "#/components/schemas/VariableArray"
- inputs:
- $ref: "#/components/schemas/VariableArray"
- outputs:
- $ref: "#/components/schemas/VariableArray"
- context:
- $ref: "#/components/schemas/VariableArray"
- types:
- $ref: "#/components/schemas/VariableTypes"
- user_requests:
- $ref: "#/components/schemas/UserRequests"
- UserRequests:
- type: object
- additionalProperties:
- type: string
- example:
- fan_power_req: uint8
- flow_circulation_req: float
- temp_request: float
- work_regime: WorkRegime
- zone_request: ZoneSelection
- User:
- type: object
- properties:
- username:
- type: string
- example: "admin"
- description: ""
- email:
- type: string
- format: email
- example: "admin@exmaple.com"
- permissions:
- type: array
- items:
- type: string
- example: '["remote","controll","admin","scheduler"]'
- devices:
- type: array
- items:
- type: string
- example: '["unit"]'
- code:
- type: boolean
- example: true
- UiInfo:
- type: object
- properties:
- requests:
- description: variable of Device to be watched
- type: array
- items:
- type: string
- example:
- temp_request: 22
- zone_request: "BOTH"
- work_regime: "OFF"
- fan_power_req: 0
- season_request: "HEATING"
- unit:
- description: variable of Device to be watched and displayed
- type: array
- items:
- type: string
- example:
- season_current: "HEATING"
- temp_oda: 1.1
- temp_oda_mean: 0
- temp_eta: 21
- fan_sup_factor: 0
- fan_eta_factor: 0
- temp_ida: 21
- temp_sup: 20.3
- mode_current: "OFF"
- states:
- type: array
- items:
- type: string
- example:
- - 'active'
- UiInfoScheme:
- type: object
- properties:
- requests:
- description: variable of Device to be watched
- type: array
- items:
- type: string
- example:
- - 'temp_request'
- - 'zone_request'
- - 'work_regime'
- - 'fan_power_req'
- - 'season_request'
- unit:
- description: variable of Device to be watched and displayed
- type: array
- items:
- type: string
- example:
- - "season_current"
- - "temp_oda"
- - "temp_oda_mean"
- - "temp_eta"
- - "fan_sup_factor"
- - "fan_eta_factor"
- - "temp_ida"
- - "temp_sup"
- - "cooler_status"
- - "mode_current"
- states:
- type: array
- items:
- type: string
- example:
- - 'active'
- UiControlScheme:
- type: object
- properties:
- requests:
- description: variable of Device to be controlled
- type: array
- items:
- type: string
- example:
- - 'temp_request'
- - 'zone_request'
- - 'work_regime'
- - 'fan_power_req'
- - 'season_request'
- unit:
- description: variable of Device to be watched and displayed
- type: array
- items:
- type: string
- example:
- - "season_current"
- - "temp_oda"
- - "temp_oda_mean"
- - "temp_eta"
- - "fan_sup_factor"
- - "fan_eta_factor"
- - "temp_ida"
- - "temp_sup"
- - "cooler_status"
- - "mode_current"
- states:
- type: array
- items:
- type: string
- example:
- - 'active'
- types:
- additionalProperties:
- oneOf:
- - $ref: '#/components/schemas/UiControlSchemeTypeBool'
- - $ref: '#/components/schemas/UiControlSchemeTypeRange'
- - $ref: '#/components/schemas/UiControlSchemeTypeEnum'
- example:
- fan_eta_factor:
- type: range
- min: 0
- max: 100
- components:
- $ref: '#/components/schemas/UiControlSchemeComponent'
- UiControlSchemeTypeBool:
- type: object
- properties:
- type:
- type: string
- description: Type of variable description (enmu, range ..etc)
- example: bool
- unit:
- type: string
- description: 'Unit of value (%, °C, Pa, m3/h etc..)'
- example: '°C'
- valueType:
- type: string
- description: Short description of the value. Domething like a KEY
- UiControlSchemeTypeRange:
- type: object
- properties:
- type:
- type: string
- description: Type of variable description (enmu, range ..etc)
- example: range
- unit:
- type: string
- description: 'Unit of value (%, °C, Pa, m3/h etc..)'
- example: '°C'
- valueType:
- type: string
- description: Short description of the value. Domething like a KEY
- min:
- type: number
- example: 0
- max:
- type: number
- example: 10
- step:
- type: number
- description: Resolution, accuracy, step value for sliders etc..
- example: 0.1
- UiControlSchemeTypeEnum:
- type: object
- properties:
- type:
- type: string
- description: Type of variable description (enmu, range ..etc)
- example: enum
- unit:
- type: string
- description: 'Unit of value (%, °C, Pa, m3/h etc..)'
- example: '°C'
- valueType:
- type: string
- description: Short description of the value. Domething like a KEY
- values:
- type: array
- description: list of enmu items
- items:
- type: string
- example:
- - "OFF"
- - "AUTO"
- - "VENTILATION"
- - "CIRCU_VENT"
- - "VENTMIX"
- - "CIRCULATION"
- - "NIGHT_PRECOOLING"
- - "DISBALANCE"
- - "OVERPRESSURE"
- UiControlSchemeComponent:
- description: 'List of components like a Cooler, Heater, Preheater, Damper etc.. including theirs confuguration'
- additionalProperties:
- description: Key as name of component
- type: object
- properties:
- component_type:
- type: string
- required:
- - component_type
- additionalProperties:
- oneOf:
- - type: number
- - type: string
- - type: boolean
- description: list of config parameters
- example:
- cooler_a:
- component_type: 'cooler'
- excersise_period: 0
- factor_min: 0
- hp_index: 'NONE'
- hp_t_ref_max: 0
- hp_t_ref_min: 0
- hp_t_ref_u_max: 0
- hp_t_ref_u_min: 0
- i_gain: 0.1
- interval_rest_min: 0
- interval_run_min: 0
- order_index: 0
- p_gain: 0.1
- passover_time: 0
- position: 'INTERNAL'
- pump_delay: 20
- temp_bivalence: 0
- type: 'HEATPUMP'
- UiDiagramSchemeStatus:
- type: object
- properties:
- purpose:
- type: string
- description: 'Short key as a purpose of status'
- example: 'warning'
- severity:
- type: number
- description: 'Weight of the status. The higher number the higher weight'
- example: 5
- type:
- type: string
- description: 'Key of the ENUM'
- example: FIRST_FROST_PROTECTION
- SceneItem:
- type: object
- description: 'It is item of scene. Scene can contain any number of items'
- properties:
- operation:
- type: string
- description: 'type of operation with value'
- enum:
- - '='
- - '>'
- - '<'
- - '>>'
- - '<<'
- - '->'
- - 'on'
- - 'off'
- example: '='
- value:
- description: 'value of item variable'
- oneOf:
- - type: number
- - type: string
- - type: boolean
- example: 28.6
- variable:
- description: 'Name of variable'
- type: string
- example: 'temp_request'
- required:
- - opretaion
- - value
- - variable
- Scene:
- type: object
- description: 'Complete structure of the Scene. If command is remove, "id" property inside structure is enough'
- properties:
- id:
- type: integer
- format: 'uint32'
- minimum: 0
- maximum: 0xFFFFFFFF
- description: 'Unique ID of scene record. If command is create, will be ignored'
- name:
- type: string
- description: "User's name of scene to show it on the UI"
- author:
- type: string
- description: 'Author of Scene'
- example: 'Goya'
- created:
- type: integer
- format: 'uint32'
- minimum: 0
- maximum: 0xFFFFFFFF
- description: 'Datetime of creation as a UNIXTIMESTAMP'
- example: 1613382656
- lastModification:
- type: integer
- format: 'uint32'
- minimum: 0
- maximum: 0xFFFFFFFF
- description: 'Datetime of last modification as a UNIXTIMESTAMP'
- example: 1613382656
- icon:
- type: string
- description: 'Text ID of scene icon pointing to the file, but without path and extension'
- example: 'Snowflake'
- visible:
- type: boolean
- description: 'Is this scene visible for Users'
- example: true
- items:
- type: array
- items:
- $ref: '#/components/schemas/SceneItem'
- required:
- - ig
- - name
- - items
- Trigger:
- type: object
- description: 'Struct of Triggers'
- properties:
- id:
- type: number
- description: Unique ID of the Trigger
- example: 23
- name:
- type: string
- description: "User's Name of trigger"
- example: 'Heat up'
- purpose:
- type: string
- enum:
- - "USER"
- - "SYSTEM"
- description: "Type of process"
- example: 'USER'
- threshold:
- type: object
- properties:
- high:
- type: object
- description: 'Range to read trigger value as a TRUE'
- properties:
- max:
- type: number
- description: 'Max value of process range'
- example: 8.25
- min:
- type: number
- description: 'Min value of process range'
- example: 5.00
- required:
- - max
- - min
- low:
- type: object
- description: 'Range to read trigger value as a FALSE'
- properties:
- max:
- type: number
- description: 'Max value of process range'
- example: 2.00
- min:
- type: number
- description: 'Min value of process range'
- example: 0
- required:
- - max
- - min
- map:
- type: object
- properties:
- maxOrigin:
- type: number
- description: 'Max origin Value to mapping'
- example: 10
- maxRequest:
- type: number
- description: 'Max control request Value to mapping. If max unit is 150 (Pascal), output will be 75 (as a 75% fan_power_req)'
- example: 75
- maxUnit:
- type: number
- description: 'Max Value to mapping trigger value to the units. For example - input is 10V then maxOrigin is 10. If Max unit is 150 then 10 Volts means 150 Pascal'
- example: 150
- maxOut:
- type: number
- description: 'Max Value to mapping Unit to the request'
- example: 0
- minOrigin:
- type: number
- description: 'Max origin Value to mapping'
- example: 0
- minRequest:
- type: number
- description: 'Max control request Value to mapping. If max unit is 0 (Pascal), output will be 15 (as a 15% fan_power_req)'
- example: 15
- minUnit:
- type: number
- description: 'Max Value to mapping trigger value to the units. For example - input is 0V then minOrigin is 0. If Min unit is 0 then 0 Volts means 0 Pascal'
- example: 0
- minOut:
- type: number
- description: 'Min Value to mapping Unit to the request'
- example: 15
- hystOut:
- type: number
- description: 'Hysterese of the output treshold to activate/deactivate trigger'
- example: 0.2
- unit:
- type: string
- description: 'Units of value to show it on the UI'
- example: '°C'
- required:
- - maxOrigin
- - maxRequest
- - maxUnit
- - maxOut
- - minOrigin
- - minRequest
- - minOut
- - minUnit
- - unit
- required:
- - high
- - low
- - map
- enabled:
- type: boolean
- description: 'If trigger is enabled to process. If FALSE trigger will be skipped'
- example: true
- active:
- type: boolean
- description: 'Is trigger active? When is active, manual control for connected variable is blocked'
- example: false
- priority:
- type: integer
- description: 'The higher is the most important'
- example: 12
- variable:
- type: string
- description: 'Name of responsive variable'
- example: 'IN1'
- value:
- oneOf:
- - type: number
- - type: string
- - type: boolean
- description: 'Value of responsive variable'
- sceneId:
- type: integer
- description: 'Unique ID of responsive scene to be activated by trigger'
- example: 1
- type:
- type: string
- enum:
- - DIGITAL
- - ANALOG
- delay:
- type: number
- description: 'The delayed start in impulse type (in seconds)'
- example: 15
- duration:
- type: number
- description: 'The duration of the impulse in seconds'
- example: 30
- timeout:
- type: number
- example: 3600
- description: Timeout of trigger in seconds. Timeout is the protect against forgetful operation. For example if the user turns the some function ON and leave the house. If timeout is 0, trigger is unlimited.
- required:
- - name
- - purpose
- - variable
- - sceneId
- - type
- TriggerInputType:
- type: object
- description: 'Description of trigger input type'
- properties:
- type:
- type: string
- example: 'DIGITAL'
- used:
- type: boolean
- description: 'Shows if it is used for regulation'
- min:
- type: number
- example: 0
- description: 'Minimum value input can take'
- max:
- type: number
- example: 0
- description: 'Maximum value input can take'
- unit:
- type: string
- description: 'Units of value to show it on the UI'
- example: '°C'
- required:
- - type
- TriggerInputList:
- type: object
- additionalProperties:
- $ref: '#/components/schemas/TriggerInputType'
- example:
- temp_oda:
- type: 'TEMPERATURE'
- used: true
- min: -15
- max: 35
- unit: '°C'
- fan_power_req:
- type: 'FLOW'
- used: true
- min: 0
- max: 800
- unit: 'm3/h'
- TriggerReport:
- type: object
- properties:
- id:
- type: number
- description: 'Unique ID of the trigger'
- example: 25
- name:
- type: string
- description: 'Name of the trigger (by user)'
- example: 'My favorite trigger'
- report:
- type: object
- properties:
- status:
- type: string
- enum:
- - UNKNOWN
- - DISABLED
- - INACTIVE
- - ACTIVE
- - BLOCKED
- - FAULT
- - FATAL
- example: FAULT
- errorStack:
- type: object
- additionalProperties:
- type: string
- example:
- IN1: Error
- DisposablePlan:
- type: object
- properties:
- start:
- $ref: '#/components/schemas/MomentDayFormat'
- finish:
- $ref: '#/components/schemas/MomentDayFormat'
- sceneId:
- type: number
- description: The scene ID to be invoked
- example: 15
- active:
- type: boolean
- description: This parameter means there is valid plan in progress. If TRUE, this part should be "orange"
- countdown:
- type: number
- description: time to start plan in seconds. If zerro, there is not any plan
- example: 60
- stop:
- type: boolean
- description: If this parameter is present and it is TRUE, then disposable plan will be immediately finished and removed
- MomentData:
- type: object
- properties:
- inspection:
- $ref: '#/components/schemas/MomentDayFormat'
- filters:
- $ref: '#/components/schemas/MomentDayFormat'
- m1_register:
- type: number
- description: operating time of the motor one in seconds
- example: 150
- m2_register:
- type: number
- description: operating time of the motor two in seconds
- example: 150
- uv_lamp_register:
- type: number
- description: operating time of the UV lamps in seconds
- example: 150
- uv_lamp_service_life:
- type: number
- description: service life time of the UV lamps in hours
- example: 5000
- MomentDayFormat:
- type: object
- properties:
- day:
- type: number
- description: Day of month (1 - 31)
- minimum: 1
- maximum: 31
- example: 25
- month:
- type: number
- description: Month of the year (1 - 12)
- minimum: 1
- maximum: 12
- example: 5
- year:
- type: number
- description: Year AD
- minimum: 2000
- maximum: 3000
- example: 2022
- hour:
- type: number
- description: Hour - local time (24 format)
- minimum: 0
- maximum: 23
- example: 14
- minute:
- type: number
- description: Minute - local time
- minimum: 0
- maximum: 59
- example: 35
- required:
- - day
- - month
- - year
- SchedulerPlanWeek:
- type: object
- properties:
- Mon:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Tue:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Wed:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Thu:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Fri:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Sat:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Sun:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- Hol:
- type: boolean
- description: 'Is plan active for this day?'
- example: true
- SchedulerPlanItem:
- type: object
- properties:
- id:
- type: integer
- format: 'uint32'
- description: 'Unique id of the plan'
- example: 25
- calendarId:
- type: integer
- format: 'uint32'
- description: 'Id of calendar. Each plan is connected to the just one calendar'
- created:
- type: integer
- format: 'uint32'
- minimum: 0
- maximum: 0xFFFFFFFF
- description: 'Datetime of creation as a UNIXTIMESTAMP'
- example: 1613382656
- name:
- type: string
- description: 'Name of the plan. It can be equal to the name of the scene.'
- example: 'I am Cold'
- sceneId:
- type: integer
- format: 'uint32'
- description: 'Id of the scene to be activated by plan'
- hour:
- type: number
- minimum: 0
- maximum: 23
- description: 'Hour of the day plan 0-23'
- minute:
- type: number
- minimum: 0
- maximum: 23
- description: 'Minute of the hourly dailyplan 0-59'
- dayOfWeek:
- $ref: '#/components/schemas/DayOfWeek'
- DayOfWeek:
- type: string
- enum:
- - Sun
- - Mon
- - Tue
- - Wed
- - Thu
- - Fri
- - Sat
- - Hol
- example: Fri
- SchedulerControlType:
- type: string
- enum:
- - MANUAL
- - SEASON
- - CALENDAR
- SchedulerPlanItemArray:
- type: array
- items:
- $ref: '#/components/schemas/SchedulerPlanItem'
- SchedulerCalendar:
- type: object
- properties:
- id:
- type: integer
- format: 'uint32'
- description: 'Unique ID of the calendar'
- example: 41
- name:
- type: string
- description: 'Name of the calendar'
- example: 'Winter'
- weekPlanItems:
- type: object
- properties:
- Sun:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Mon:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Tue:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Wed:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Thu:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Fri:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Sat:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- Hol:
- $ref: '#/components/schemas/SchedulerPlanItemArray'
- SchedulerCalendarPlan:
- type: object
- description: 'Allows scheduled switching of calendars '
- properties:
- calendarId:
- type: integer
- format: 'uint32'
- description: 'ID of the calendar which will be activated by this plan record'
- example: 5
- dayOfYear:
- $ref: '#/components/schemas/DayOfYear'
- PublicHoliday:
- type: object
- properties:
- start:
- $ref: '#/components/schemas/DayOfYear'
- end:
- $ref: '#/components/schemas/DayOfYear'
- SchedulerConfig:
- type: object
- properties:
- currentCalendarId:
- type: integer
- format: 'uint32'
- description: 'ID of the current calendar. Calendar which scheduler works by.'
- heatingSeasonCalendarId:
- type: integer
- description: calendar ID for the heating season (If control = SEASON)
- example: 2
- nonheatingSeasonCalendarId:
- type: integer
- description: calendar ID for the non-heating season (If control = SEASON)
- example: 2
- control:
- $ref: '#/components/schemas/SchedulerControlType'
- schedulerCalendars:
- type: array
- description: 'Array of the calendars'
- items:
- $ref: '#/components/schemas/SchedulerCalendar'
- publicHolidays:
- type: array
- description: 'Array of the public holidays'
- items:
- $ref: '#/components/schemas/PublicHoliday'
- schedulerCalendarPlans:
- type: array
- description: 'Array of the public holidays'
- items:
- $ref: '#/components/schemas/SchedulerCalendarPlan'
- SchedulerConfigLite:
- type: object
- properties:
- currentCalendarId:
- type: integer
- format: 'uint32'
- description: 'ID of the current calendar. Calendar which scheduler works by.'
- heatingSeasonCalendarId:
- type: integer
- description: calendar ID for the heating season (If control = SEASON)
- example: 2
- nonheatingSeasonCalendarId:
- type: integer
- description: calendar ID for the non-heating season (If control = SEASON)
- example: 2
- control:
- $ref: '#/components/schemas/SchedulerControlType'
- schedulerCalendars:
- type: array
- description: 'Array of the calendars'
- items:
- type: object
- properties:
- name:
- type: string
- id:
- type: number
- publicHolidays:
- type: array
- description: 'Array of the public holidays'
- items:
- $ref: '#/components/schemas/PublicHoliday'
- schedulerCalendarPlans:
- type: array
- description: 'Array of the public holidays'
- items:
- $ref: '#/components/schemas/SchedulerCalendarPlan'
- triggerEnable:
- type: object
- properties:
- triggerId:
- type: number
- description: Unique Trigger ID
- example: 24
- triggerName:
- type: string
- description: "Unique trigger's name"
- example: "CO2 living room"
- enabled:
- type: boolean
- description: Status - true = ON, false = OFF
- required:
- - enabled
- - triggerId | triggerName
- triggerFunction:
- type: object
- properties:
- id:
- type: number
- description: Unique ID of the function. Do not send if create new
- example: 2
- triggerId:
- type: array
- description: Array of Unique Trigger ID
- items:
- type: number
- example:
- - 24
- - 25
- - 26
- name:
- type: string
- description: "Unique function name"
- example: "CO2 FCE"
- enabled:
- type: boolean
- description: Status - true = ON, false = OFF
- triggeredVariable:
- type: object
- properties:
- name:
- type: string
- description: The name of the variable by the perifery or input
- example: 'VOC sensor kitchen'
- triggerId:
- type: number
- description: The unique ID of the trigger
- example: 5
- unit:
- type: string
- description: Unit o the value
- example: 'ppm'
- value:
- type: number
- example: 543
- WebsocketRequest:
- type: object
- properties:
- endpoint:
- type: string
- description: "Api path"
- example: "login"
- args:
- description: "Arguments for api endpoint"
- example: '{"user": "user", "password": "pass"}'
- id:
- type: number
- description: "Number, which will be in response, useful for asynchronous request pairing"
- minimum: 1
- maximum: 0xFFFFFFFF
- WebsocketResponse:
- type: object
- properties:
- type:
- type: string
- example: "response"
- description: "Message type - response"
- id:
- type: number
- description: "Number from request, useful for asynchronous request pairing"
- minimum: 1
- maximum: 0xFFFFFFFF
- response:
- nullable: true
- description: "Response of givent endpoint API if success, else null"
- code:
- type: string
- example: "OK"
- description: "Result code of request"
- error:
- type: string
- nullable: true
- description: "Error message if error else null"
- Event:
- oneOf:
- - $ref: '#/components/schemas/GeneralEvent'
- - $ref: '#/components/schemas/calendarActivityChangeEvent'
- - $ref: '#/components/schemas/sceneActivityChangeEvent'
- - $ref: '#/components/schemas/schedulerConfigChangeEvent'
- - $ref: '#/components/schemas/triggerConfigChangeEvent'
- - $ref: '#/components/schemas/sceneConfigChangeEvent'
- - $ref: '#/components/schemas/controlPanelEvent'
- - $ref: '#/components/schemas/triggeredVariableChangeEvent'
- GeneralEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "ui_info"
- description: "Event name"
- args:
- description: "Event arguments"
- calendarActivityChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "calendar_activity_change"
- description: "Event name"
- args:
- description: "Event arguments"
- properties:
- currentCalendarId:
- type: number
- description: new current calendar id which is used. If it is 0, there is not the calendar used
- sceneActivityChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "scene_activity_change"
- description: "Event name"
- args:
- description: "Event arguments"
- properties:
- activeScene:
- type: number
- description: active scene ID. (blue scene)
- example: 2
- systemScenes:
- type: array
- description: array of an active system scenes (orange scenes)
- items:
- type: number
- description: orange scenes
- example:
- - 2
- - 5
- - 12
- schedulerConfigChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "scheduler_config_change"
- description: "Only info, the scheduler config has been modified. Try to get new data about it"
- args:
- description: "No arguments"
- sceneConfigChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "scene_config_change"
- description: "Only info, the scene config has been modified. Try to get new data about it"
- args:
- description: "No arguments"
- triggerConfigChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "trigger_config_change"
- description: "Only info, the trigger config has been modified. Try to get new data about it"
- args:
- description: "No arguments"
- triggeredVariableChangeEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "triggered_variable_change"
- description: "Info about changed variables from triggers"
- args:
- type: array
- items:
- type: object
- properties:
- triggerId:
- type: number
- description: The unique ID of the trigger
- example: 4
- value:
- type: number
- description: current value in demanding units
- example: 2701
- controlPanelEvent:
- type: object
- properties:
- type:
- type: string
- example: "event"
- description: "Message type - event"
- event:
- type: string
- example: "control_panel"
- description: "Events about control panel. Determines the apperance and display mode of the control panel. The panel manage the duration of the control changes. UI keeps the 'visible' status. If true, panel is visible, otherwise hidden."
- args:
- $ref: '#/components/schemas/controlPanelContent'
- controlPanelContent:
- type: object
- properties:
- visible:
- type: boolean
- description: If true, panel is visible
- example: true
- remaining:
- type: number
- description: Time until return changes. If 0, changes are permanent
- example: 120
- finishTime:
- type: number
- description: The unixtimestamp of temorary control finish. If 0, changes are permanent.
- origin:
- type: object
- additionalProperties:
- type: string
- description: variables and its values to be applicated after timeout
- example:
- fan_power_req: 50
- temp_request: 25.3
- stored:
- type: object
- additionalProperties:
- type: string
- description: variables and its values to be applicated after timeout
- example:
- fan_power_req: 50
- temp_request: 25.3
- current:
- type: object
- additionalProperties:
- type: string
- description: variables and its values to be applicated after timeout
- example:
- fan_power_req: 50
- temp_request: 25.3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement