Domotics

API for communication with ZBOS by Zora Robotics.

Channels

zbos/domotica/get/settings

publish

Get settings

Channel tags
  • Domotics

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

Examples of payload
{
  "key": "ABCxyz"
}

zbos/domotica/get/settings/response/{key}

subscribe

response: Get settings

Channel tags
  • Domotics

Message Settings
Payload

Name

Type

Description

Accepted values

brand

string

Any

login

string

Any

password

string

Any

ip

string

Any

Examples of payload
{
  "brand": "creadomotics",
  "login": "admin",
  "password": "admin",
  "ip": "192.168.0.123"
}

zbos/domotica/set/setting

publish

Set settings

Sets login, password and ip of a domotics center. Automatically replaces settings from the same brand. Settings are saved to the sd card. If no file exists, it is automatically created.

Channel tags
  • Domotics

Message Settings
Payload

Name

Type

Description

Accepted values

brand

string

Any

login

string

Any

password

string

Any

ip

string

Any

Examples of payload
{
  "brand": "creadomotics",
  "login": "admin",
  "password": "admin",
  "ip": "192.168.0.123"
}

zbos/domotica/delete/settings/all

publish

Delete all settings

Deletes all the plugin settings/configs from the device.

Channel tags
  • Domotics

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/domotica/get/status

publish

Get status

Channel tags
  • Domotics

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

Examples of payload
{
  "key": "ABCxyz"
}

zbos/domotica/get/status/response/{key}

subscribe

response: Get status

Channel tags
  • Domotics

Message Array<PluginState>
Payload

Name

Type

Description

Accepted values

Message Payload

array(object)

Any

Message Payload.brand

string

Any

Message Payload.state

object

Can be: INITIALIZING, CONNECTING, CONNECTION_FAILED, CONNECTION_SUCCEEDED

  • INITIALIZING

  • CONNECTING

  • CONNECTION_FAILED

  • CONNECTION_SUCCEEDED

  • NOT_CONFIGURED

Message Payload.state.name

string

Any

Message Payload.state.ordinal

integer

Any

Examples of payload
{
  "brand": "creadomotics",
  "state": "CONNECTION_FAILED"
}

zbos/domotica/get/devices

publish

Get devices

Channel tags
  • Domotics

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

Examples of payload
{
  "key": "ABCxyz"
}

zbos/domotica/get/devices/response/{key}

subscribe

response: Get devices

Channel tags
  • Domotics

Message Array<DomoticaDevice>
Payload

Name

Type

Description

Accepted values

Message Payload

array(object)

Any

Message Payload.id

string

Any

Message Payload.room

string

Any

Message Payload.tags

array(string)

Any

Message Payload.type

string

Any

Message Payload.brand

string

Any

Examples of payload
{
  "id": "string",
  "room": "kitchen",
  "tags": [
    "string",
    "bar",
    "kitchen"
  ],
  "type": "dimmer",
  "brand": "creadomotics",
  "validDevice": true
}

zbos/domotica/add/device

publish

Add device

Automatically removes device from same brand with same id. devices are saved to the sd card. If no file exists, it is automatically created.

Channel tags
  • Domotics

Message DomoticaDevice
Payload

Name

Type

Description

Accepted values

id

string

Any

room

string

Any

tags

array(string)

Any

type

string

Any

brand

string

Any

Examples of payload
{
  "id": "string",
  "room": "kitchen",
  "tags": [
    "string",
    "bar",
    "kitchen"
  ],
  "type": "dimmer",
  "brand": "creadomotics",
  "validDevice": true
}

zbos/domotica/delete/device

publish

Delete device

Channel tags
  • Domotics

Message DomoticaDevice
Payload

Name

Type

Description

Accepted values

id

string

Any

room

string

Any

tags

array(string)

Any

type

string

Any

brand

string

Any

Examples of payload
{
  "id": "string",
  "validDevice": false
}

zbos/domotica/delete/devices/all

publish

Delete all devices

Deletes all locally configured devices.

Channel tags
  • Domotics

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/domotica/get/rooms

publish

Get rooms

Channel tags
  • Domotics

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

Examples of payload
{
  "key": "ABCxyz"
}

zbos/domotica/get/rooms/response/{key}

subscribe

response: Get rooms

Channel tags
  • Domotics

Message Room
Payload

Name

Type

Description

Accepted values

key

string

Any

devices

array(object)

Any

devices.id

string

Any

devices.room

string

Any

devices.tags

array(string)

Any

devices.type

string

Any

devices.brand

string

Any

Examples of payload
{}

zbos/domotica/set/notifications

publish

Enable notifications on device state changes

To get notifications for all device types, pass "all" as a device type.

Channel tags
  • Domotics

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/domotica/event

subscribe

event: Domotica state changes

Channel tags
  • Domotics

Message DeviceState
Payload

Name

Type

Description

Accepted values

room

string

Any

tags

array(string)

Any

state

object

Any

state.value

object

Any

state.optionalValue

object

Any

state.unit

string

Any

type

string

Any

id

string

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "state": {
    "value": "ON"
  },
  "type": "motion",
  "id": "string"
}

zbos/domotica/device/event

subscribe

event: Domotica device

Domotica device state changes trigger this event. Has no payload, state is in the topic itself.

Channel tags
  • Domotics

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/domotica/plugin/event

subscribe

event: Domotica plugin

Plugin state changes (such as connectivity changes) trigger this event.

Channel tags
  • Domotics

Message PluginState
Payload

Name

Type

Description

Accepted values

brand

string

Any

state

object

Can be: INITIALIZING, CONNECTING, CONNECTION_FAILED, CONNECTION_SUCCEEDED

  • INITIALIZING

  • CONNECTING

  • CONNECTION_FAILED

  • CONNECTION_SUCCEEDED

  • NOT_CONFIGURED

state.name

string

Any

state.ordinal

integer

Any

Examples of payload
{
  "brand": "creadomotics",
  "state": "INITIALIZING"
}

zbos/domotica/set/device/bool

publish

Set device

All devices in given room of given type including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetDeviceOptions
Payload

Name

Type

Description

Accepted values

type

string

The device type. Currently supported types are: light, dimmer, switch, plug, door, shutter, speaker.

Any

state

boolean

True for on/open/…​, false for off/closed/…​

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "type": "string",
  "state": true
}

zbos/domotica/get/light

publish

Get light

All lights in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/light

publish

Set light

All lights in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetBooleanOptions
Payload

Name

Type

Description

Accepted values

state

boolean

True for on, false for off

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "state": true
}

zbos/domotica/get/dimmer

publish

Get dimmer

All dimmers in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/dimmer

publish

Set dimmer

All dimmers in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetIntOptions
Payload

Name

Type

Description

Accepted values

value

integer

Value between 0 and 100 (percentage). To turn off, give value zero

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "value": 100
}

zbos/domotica/get/switch

publish

Get switch

All switches in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/switch

publish

Set switch

All switches in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetBooleanOptions
Payload

Name

Type

Description

Accepted values

state

boolean

True for on, false for off

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "state": true
}

zbos/domotica/get/door

publish

Get door

All doors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/door

publish

Set door

All doors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetBooleanOptions
Payload

Name

Type

Description

Accepted values

state

boolean

True for on, false for off

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "state": true
}

zbos/domotica/get/shutter

publish

Get Shutter

All shutters in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/shutter

publish

Set shutter

All shutters in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetBooleanOptions
Payload

Name

Type

Description

Accepted values

state

boolean

True for on, false for off

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "state": true
}

zbos/domotica/get/speaker

publish

Get speaker

All speakers in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/set/speaker

publish

Set speaker

All speakers in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaSetSpeakerOptions
Payload

Name

Type

Description

Accepted values

command

string

Supported commands: play, pause, mute, unmute, set volume, increase volume, decrease volume, next song, previous song

Any

value

integer

Optional. Only used for 'set volume' command. Value between 0 and 100 (percentage)

Any

room

string

Any

tags

array(string)

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ],
  "command": "play",
  "value": 70
}

zbos/domotica/get/doorsensor

publish

Get doorsensor

All doorsensors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/get/motionsensor

publish

Get motionsensor

All motionsensors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/get/floodsensor

publish

Get floodsensor

All floodsensors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/get/lightsensor

publish

Get lightsensor

All lightsensors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/get/temperature

publish

Get temperature

All temperature sensors in given room including all given tags will be adressed.

Channel tags
  • Domotics

Message DomoticaGetOptions
Payload

Name

Type

Description

Accepted values

room

string

Optional

Any

tags

array(string)

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "tags": [
    "bar",
    "kitchen"
  ]
}

zbos/domotica/play/scene

publish

Set scene

All scenes in given room will be adressed. Use scene property to specify specific scene. Scene names can be found in the tags of scene objects.see zbos/domotica/response/{key} for response

Channel tags
  • Domotics

Message DomoticaPlaySceneOptions
Payload

Name

Type

Description

Accepted values

room

string

Any

scene

string

Optional

Any

Examples of payload
{
  "room": "kitchen",
  "scene": "demo scene"
}

zbos/domotica/response/{key}

subscribe

Domotics response

Response for the various device getters: get light, get dimmer, etc

Channel tags
  • Domotics

Message Any
Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}