System

API for communication with ZBOS by Zora Robotics.

Channels

zbos/alarm/trigger

publish

Call for help

Send an Alarm message, trigger alarm, call for help.

Channel tags
  • System

Message SipConfig
Payload

Name

Type

Description

Accepted values

serverDomain

string

Any

localUsername

string

Any

localPassword

string

Any

localPort

integer

Any

peerUsername

string

Any

peerPassword

string

Any

peerPort

integer

Any

metaData

object

Any

alarmType

object

  • DEFAULT

  • VERKLIZAN

  • SENSOR

alarmType.name

string

Any

alarmType.ordinal

integer

Any

callTimeout

integer

Any

hangupAllowed

boolean

Any

enabled

boolean

Any

Examples of payload
{
  "serverDomain": "string",
  "localUsername": "string",
  "localPassword": "string",
  "localPort": 5060,
  "peerUsername": "string",
  "peerPassword": "string",
  "peerPort": 5060,
  "metaData": {},
  "alarmType": "DEFAULT",
  "callTimeout": 120000,
  "hangupAllowed": false,
  "enabled": false
}

zbos/alarm/trigger/event

subscribe

event: Trigger alarm and call for help

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/call/started

subscribe

Alarm call started

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/call/established

subscribe

Alarm call established

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/call/ended

subscribe

Alarm call ended

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/set

publish

Set alarm call

see zbos/alarm/set/response for response

Channel tags
  • System

Message ZbosAlarm
Payload

Name

Type

Description

Accepted values

key

string

Any

alarmServiceProvider

object

  • verklizan

  • sensor

alarmServiceProvider.name

string

Any

alarmServiceProvider.ordinal

integer

Any

metadata

object

Any

Examples of payload
{
  "key": "string",
  "alarmServiceProvider": "sensor",
  "metadata": {}
}

zbos/alarm/set/response

subscribe

response: Set alarm call

Channel tags
  • System

Message SuccessMessage

Success message

Payload

Name

Type

Description

Accepted values

success

boolean

Any

message

string

Optional error message

Any

Examples of payload
{
  "success": true
}

zbos/alarm/event

subscribe

Alarm has been received

An event indicating an alarm was triggered

Channel tags
  • System

Message Map
Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/config/get

publish

Get alarm configs

Get an object containing all alarm configssee zbos/alarm/config/get/response/{key} for response

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/alarm/config/get/response/{key}

subscribe

Get alarm configs response

Response of configs by alarm name

Channel tags
  • System

Message HashMap
Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/alarm/config/set

publish

*Set alarm config *

Sets the config for a specific alarm type

Channel tags
  • System

Message AlarmConfigRequest
Payload

Name

Type

Description

Accepted values

key

string

Any

type

string

Any

config

object

Any

Examples of payload
{
  "type": "string",
  "config": {
    "string": "string"
  }
}

zbos/alarm/config/set/event

subscribe

Set alarm config response

An event indicating the alarm config was changed

Channel tags
  • System

Message AlarmConfigResult
Payload

Name

Type

Description

Accepted values

success

boolean

Any

error

object

  • MALFORMED_REQUEST

  • MISSING_CONFIG_PROPERTY

  • TYPE_NOT_FOUND

error.name

string

Any

error.ordinal

integer

Any

Examples of payload
{
  "type": "string",
  "config": {
    "string": "string"
  }
}

zbos/alarm/database/get

publish

Get alarm database

Retrieves a list of all the alarms stored in the databasesee zbos/alarm/database/get/response/{key} for response

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/alarm/database/get/response/{key}

subscribe

Get alarm database response

The response to a database get request

Channel tags
  • System

Message Array<MonitoringResult>
Payload

Name

Type

Description

Accepted values

Message Payload

array(object)

Any

Message Payload.id

string

Any

Message Payload.type

string

Any

Message Payload.downloadPath

string

Any

Message Payload.previewPath

string

Any

Message Payload.mediaFile

string

Any

Message Payload.timestamp

number

Any

Message Payload.metadata

object

Any

Examples of payload
{
  "id": "string",
  "type": "string",
  "downloadPath": "string",
  "previewPath": "string",
  "mediaFile": "string",
  "timestamp": 1012001,
  "metadata": {}
}

zbos/alarm/database/remove

publish

Remove alarm database

Remove all alarms from the database

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/alarm/database/remove/event

subscribe

Remove alarm database response

An event indicating the alarm database was removed

Channel tags
  • System

Message SuccessMessage

Success message

Payload

Name

Type

Description

Accepted values

success

boolean

Any

message

string

Optional error message

Any

Examples of payload
{
  "success": true
}

zbos/alarm/images/remove

publish

Remove alarm images

Remove all alarm images from the robot

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/alarm/images/remove/event

subscribe

Remove alarm images response

An event indicating images were removed

Channel tags
  • System

Message SuccessMessage

Success message

Payload

Name

Type

Description

Accepted values

success

boolean

Any

message

string

Optional error message

Any

Examples of payload
{
  "success": true
}

zbos/alarm/all/remove

publish

Remove alarm images and database

Remove all alarm images and database entries from the robot

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/alarm/all/remove/event

subscribe

Remove alarm images and database response

An event indicating images and databases were removed

Channel tags
  • System

Message SuccessMessage

Success message

Payload

Name

Type

Description

Accepted values

success

boolean

Any

message

string

Optional error message

Any

Examples of payload
{
  "success": true
}

zbos/status/battery/get

publish

Get battery status

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/status/battery/response/{key}

subscribe

response: Get battery status

Channel tags
  • System

Message BatteryEvent
Payload

Name

Type

Description

Accepted values

level

integer

Percentage value between with range 0 to 100

Any

charging

boolean

Any

docked

boolean

Any

Examples of payload
{
  "level": 50,
  "charging": true,
  "docked": true
}

zbos/status/battery/event

subscribe

event: Battery change

A message (json) is published on this topic when the robot battery status changes. Level is the battery level in percent. If the battery status is not yet available, then the level is -1.

Channel tags
  • System

Message BatteryEvent
Payload

Name

Type

Description

Accepted values

level

integer

Percentage value between with range 0 to 100

Any

charging

boolean

Any

docked

boolean

Any

Examples of payload
{
  "level": 50,
  "charging": true,
  "docked": true
}

zbos/status/battery/low/set

publish

Set the battery low level threshold

At what battery percentage the robot will act as if it is at low battery

Channel tags
  • System

Message BatterySetRequest
Payload

Name

Type

Description

Accepted values

percent

integer

Percentage value between with range 0 to 100

Any

Examples of payload
{
  "percent": 30
}

zbos/status/battery/low/get

publish

Get the battery low level threshold

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/status/battery/low/response/{key}

subscribe

Response: battery low level

Response which shows the battery low level threshold

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/status/battery/critical/set

publish

Set the battery critical level threshold

At what battery percentage the robot will act as if it is at critical battery

Channel tags
  • System

Message BatterySetRequest
Payload

Name

Type

Description

Accepted values

percent

integer

Percentage value between with range 0 to 100

Any

Examples of payload
{
  "percent": 10
}

zbos/status/battery/critical/get

publish

Get the battery critical level threshold

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/status/battery/critical/response/{key}

subscribe

Response: battery critical level

Response which shows the battery critical level threshold

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/robot/identification/get

publish

Request robot identification

Use this to ask a detailed list of robot specifics like serial, features, …​

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/robot/identification/event

subscribe

response: Robot identification

A detailed list of robot specifics

Channel tags
  • System

Message RobotIdentification
Payload

Name

Type

Description

Accepted values

robot_type

string

Any

body_id

string

Any

serial

string

Any

name

string

Any

versions

object

Any

network_info

object

Any

network_info.ip

string

Any

network_info.mac_address

string

Any

network_info.ssid

string

Any

features

object

Any

features.audio

object

Any

features.audio.control_parameters

object

Any

features.audio.control_parameters.pitch

object

Any

features.audio.control_parameters.pitch.min

integer

Any

features.audio.control_parameters.pitch.step

integer

Any

features.audio.control_parameters.pitch.default

integer

Any

features.audio.control_parameters.pitch.max

integer

Any

features.audio.control_parameters.speed

object

Any

features.audio.control_parameters.speed.min

integer

Any

features.audio.control_parameters.speed.step

integer

Any

features.audio.control_parameters.speed.default

integer

Any

features.audio.control_parameters.speed.max

integer

Any

features.audio.control_parameters.volume

object

Any

features.audio.control_parameters.volume.min

integer

Any

features.audio.control_parameters.volume.step

integer

Any

features.audio.control_parameters.volume.default

integer

Any

features.audio.control_parameters.volume.max

integer

Any

features.external_displays

array(object)

Any

features.external_displays.video

boolean

Any

features.external_displays.audio

boolean

Any

features.external_displays.width

integer

Any

features.external_displays.height

integer

Any

features.cameras

array(object)

Any

features.cameras.key

string

Any

features.cameras.primary

boolean

Any

features.cameras.rotation

integer

Any

features.cameras.image_rotation

integer

Any

features.can_poi

boolean

Any

features.can_move

boolean

Any

features.can_dance

boolean

Any

features.can_speech

boolean

Any

features.has_storage

boolean

Any

features.can_animate

boolean

Any

features.can_gym

boolean

Any

features.has_sensors

boolean

Any

features.has_emotions

boolean

Any

features.can_video_stream

boolean

Any

features.can_take_picture

boolean

Any

features.has_slam_image_map

boolean

Any

features.has_security_mode

boolean

Any

features.can_detect_motion

boolean

Any

features.can_face_recognize

boolean

Any

features.can_poi_interactive

boolean

Any

features.has_monitoring

boolean

Any

features.has_qr_scanner

boolean

Any

features.can_change_ntp_server

boolean

Any

features.voice_feature

object

Any

features.voice_feature.supports_gesticulate

boolean

Any

features.voice_feature.supports_language

boolean

Any

features.voice_feature.supports_pitch

boolean

Any

features.voice_feature.supports_speed

boolean

Any

features.voice_feature.supports_volume

boolean

Any

features.voice_feature.supports_speech_volume

boolean

Any

features.voice_feature.control_parameters

object

Any

features.voice_feature.control_parameters.pitch

object

Any

features.voice_feature.control_parameters.pitch.min

integer

Any

features.voice_feature.control_parameters.pitch.step

integer

Any

features.voice_feature.control_parameters.pitch.default

integer

Any

features.voice_feature.control_parameters.pitch.max

integer

Any

features.voice_feature.control_parameters.speed

object

Any

features.voice_feature.control_parameters.speed.min

integer

Any

features.voice_feature.control_parameters.speed.step

integer

Any

features.voice_feature.control_parameters.speed.default

integer

Any

features.voice_feature.control_parameters.speed.max

integer

Any

features.voice_feature.control_parameters.volume

object

Any

features.voice_feature.control_parameters.volume.min

integer

Any

features.voice_feature.control_parameters.volume.step

integer

Any

features.voice_feature.control_parameters.volume.default

integer

Any

features.voice_feature.control_parameters.volume.max

integer

Any

features.listen_feature

object

Any

features.listen_feature.can_trigger_manual

boolean

Any

features.listen_feature.can_trigger_hotword

boolean

Any

features.slam_feature

object

Any

features.slam_feature.can_navigate

boolean

Any

features.slam_feature.can_extend_map

boolean

Any

features.slam_feature.can_manage_pois

boolean

Any

features.slam_feature.can_manage_walls

boolean

Any

features.slam_feature.has_docking_station

boolean

Any

features.voip_feature

object

Any

features.voip_feature.supports_voip

boolean

Any

features.face_recognition_feature

object

Any

features.face_recognition_feature.can_detect_known_faces

boolean

Any

features.face_recognition_feature.can_detect_number_of_faces

boolean

Any

features.time_feature

object

Any

features.time_feature.can_change_time_zone

boolean

Any

features.print_feature

object

Any

features.print_feature.can_print

boolean

Any

hardware

object

Any

hardware.heads

array(object)

Any

hardware.heads.moveable

boolean

Any

hardware.heads.can_reset_to_default_position

boolean

Any

hardware.parts

array(object)

Any

hardware.parts.name

string

Any

hardware.parts.moveable

boolean

Any

hardware.parts.can_reset_to_default_position

boolean

Any

hardware.usb

array(object)

Any

hardware.usb.type

object

  • USB_1

  • USB_1_1

  • USB_2

  • USB_3

  • USB_3_1

  • USB_3_2

  • USB_4

hardware.usb.type.name

string

Any

hardware.usb.type.ordinal

integer

Any

composer

object

Any

composer.simple

object

Any

composer.simple.dance

object

Any

composer.simple.dance.enabled

boolean

Any

composer.simple.dance.enabled_sources

array(object)

Any

composer.simple.dance.enabled_sources.topicName

string

Any

composer.simple.dance.enabled_sources.name

string

Any

composer.simple.dance.enabled_sources.ordinal

integer

Any

composer.simple.dance.can_block

boolean

Any

composer.simple.speech

object

Any

composer.simple.speech.enabled

boolean

Any

composer.simple.speech.enabled_sources

array(object)

Any

composer.simple.speech.enabled_sources.topicName

string

Any

composer.simple.speech.enabled_sources.name

string

Any

composer.simple.speech.enabled_sources.ordinal

integer

Any

composer.simple.speech.can_block

boolean

Any

composer.simple.animation

object

Any

composer.simple.animation.enabled

boolean

Any

composer.simple.animation.enabled_sources

array(object)

Any

composer.simple.animation.enabled_sources.topicName

string

Any

composer.simple.animation.enabled_sources.name

string

Any

composer.simple.animation.enabled_sources.ordinal

integer

Any

composer.simple.animation.can_block

boolean

Any

composer.simple.emotion

object

Any

composer.simple.emotion.enabled

boolean

Any

composer.simple.emotion.enabled_sources

array(object)

Any

composer.simple.emotion.enabled_sources.topicName

string

Any

composer.simple.emotion.enabled_sources.name

string

Any

composer.simple.emotion.enabled_sources.ordinal

integer

Any

composer.simple.emotion.can_block

boolean

Any

composer.simple.wait_duration

object

Any

composer.simple.wait_duration.enabled

boolean

Any

composer.simple.wait_duration.enabled_sources

array(object)

Any

composer.simple.wait_duration.enabled_sources.topicName

string

Any

composer.simple.wait_duration.enabled_sources.name

string

Any

composer.simple.wait_duration.enabled_sources.ordinal

integer

Any

composer.simple.wait_duration.can_block

boolean

Any

composer.simple.wait_sensor

object

Any

composer.simple.wait_sensor.enabled

boolean

Any

composer.simple.wait_sensor.enabled_sources

array(object)

Any

composer.simple.wait_sensor.enabled_sources.topicName

string

Any

composer.simple.wait_sensor.enabled_sources.name

string

Any

composer.simple.wait_sensor.enabled_sources.ordinal

integer

Any

composer.simple.wait_sensor.can_block

boolean

Any

composer.simple.wait_face

object

Any

composer.simple.wait_face.enabled

boolean

Any

composer.simple.wait_face.enabled_sources

array(object)

Any

composer.simple.wait_face.enabled_sources.topicName

string

Any

composer.simple.wait_face.enabled_sources.name

string

Any

composer.simple.wait_face.enabled_sources.ordinal

integer

Any

composer.simple.wait_face.can_block

boolean

Any

composer.simple.wait_voice

object

Any

composer.simple.wait_voice.enabled

boolean

Any

composer.simple.wait_voice.enabled_sources

array(object)

Any

composer.simple.wait_voice.enabled_sources.topicName

string

Any

composer.simple.wait_voice.enabled_sources.name

string

Any

composer.simple.wait_voice.enabled_sources.ordinal

integer

Any

composer.simple.wait_voice.can_block

boolean

Any

composer.simple.wait_qr_code

object

Any

composer.simple.wait_qr_code.enabled

boolean

Any

composer.simple.wait_qr_code.enabled_sources

array(object)

Any

composer.simple.wait_qr_code.enabled_sources.topicName

string

Any

composer.simple.wait_qr_code.enabled_sources.name

string

Any

composer.simple.wait_qr_code.enabled_sources.ordinal

integer

Any

composer.simple.wait_qr_code.can_block

boolean

Any

composer.simple.wait_monitoring

object

Any

composer.simple.wait_monitoring.enabled

boolean

Any

composer.simple.wait_monitoring.enabled_sources

array(object)

Any

composer.simple.wait_monitoring.enabled_sources.topicName

string

Any

composer.simple.wait_monitoring.enabled_sources.name

string

Any

composer.simple.wait_monitoring.enabled_sources.ordinal

integer

Any

composer.simple.wait_monitoring.can_block

boolean

Any

composer.simple.motion_head

object

Any

composer.simple.motion_head.enabled

boolean

Any

composer.simple.motion_head.enabled_sources

array(object)

Any

composer.simple.motion_head.enabled_sources.topicName

string

Any

composer.simple.motion_head.enabled_sources.name

string

Any

composer.simple.motion_head.enabled_sources.ordinal

integer

Any

composer.simple.motion_head.can_block

boolean

Any

composer.simple.motion_detection

object

Any

composer.simple.motion_detection.enabled

boolean

Any

composer.simple.motion_detection.enabled_sources

array(object)

Any

composer.simple.motion_detection.enabled_sources.topicName

string

Any

composer.simple.motion_detection.enabled_sources.name

string

Any

composer.simple.motion_detection.enabled_sources.ordinal

integer

Any

composer.simple.motion_detection.can_block

boolean

Any

composer.simple.multimedia

object

Any

composer.simple.multimedia.enabled

boolean

Any

composer.simple.multimedia.enabled_sources

array(object)

Any

composer.simple.multimedia.enabled_sources.topicName

string

Any

composer.simple.multimedia.enabled_sources.name

string

Any

composer.simple.multimedia.enabled_sources.ordinal

integer

Any

composer.simple.multimedia.can_block

boolean

Any

composer.simple.poi

object

Any

composer.simple.poi.enabled

boolean

Any

composer.simple.poi.enabled_sources

array(object)

Any

composer.simple.poi.enabled_sources.topicName

string

Any

composer.simple.poi.enabled_sources.name

string

Any

composer.simple.poi.enabled_sources.ordinal

integer

Any

composer.simple.poi.can_block

boolean

Any

composer.simple.mqtt

object

Any

composer.simple.mqtt.enabled

boolean

Any

composer.simple.mqtt.enabled_sources

array(object)

Any

composer.simple.mqtt.enabled_sources.topicName

string

Any

composer.simple.mqtt.enabled_sources.name

string

Any

composer.simple.mqtt.enabled_sources.ordinal

integer

Any

composer.simple.mqtt.can_block

boolean

Any

composer.simple.app_start

object

Any

composer.simple.app_start.enabled

boolean

Any

composer.simple.app_start.enabled_sources

array(object)

Any

composer.simple.app_start.enabled_sources.topicName

string

Any

composer.simple.app_start.enabled_sources.name

string

Any

composer.simple.app_start.enabled_sources.ordinal

integer

Any

composer.simple.app_start.can_block

boolean

Any

composer.simple.change_datasource

object

Any

composer.simple.change_datasource.enabled

boolean

Any

composer.simple.change_datasource.enabled_sources

array(object)

Any

composer.simple.change_datasource.enabled_sources.topicName

string

Any

composer.simple.change_datasource.enabled_sources.name

string

Any

composer.simple.change_datasource.enabled_sources.ordinal

integer

Any

composer.simple.change_datasource.can_block

boolean

Any

composer.simple.input

object

Any

composer.simple.input.enabled

boolean

Any

composer.simple.input.enabled_sources

array(object)

Any

composer.simple.input.enabled_sources.topicName

string

Any

composer.simple.input.enabled_sources.name

string

Any

composer.simple.input.enabled_sources.ordinal

integer

Any

composer.simple.input.can_block

boolean

Any

composer.simple.multimedia_stop

object

Any

composer.simple.multimedia_stop.enabled

boolean

Any

composer.simple.multimedia_stop.enabled_sources

array(object)

Any

composer.simple.multimedia_stop.enabled_sources.topicName

string

Any

composer.simple.multimedia_stop.enabled_sources.name

string

Any

composer.simple.multimedia_stop.enabled_sources.ordinal

integer

Any

composer.simple.multimedia_stop.can_block

boolean

Any

composer.simple.browser

object

Any

composer.simple.browser.enabled

boolean

Any

composer.simple.browser.enabled_sources

array(object)

Any

composer.simple.browser.enabled_sources.topicName

string

Any

composer.simple.browser.enabled_sources.name

string

Any

composer.simple.browser.enabled_sources.ordinal

integer

Any

composer.simple.browser.can_block

boolean

Any

composer.simple.gym

object

Any

composer.simple.gym.enabled

boolean

Any

composer.simple.gym.enabled_sources

array(object)

Any

composer.simple.gym.enabled_sources.topicName

string

Any

composer.simple.gym.enabled_sources.name

string

Any

composer.simple.gym.enabled_sources.ordinal

integer

Any

composer.simple.gym.can_block

boolean

Any

composer.simple.print

object

Any

composer.simple.print.enabled

boolean

Any

composer.simple.print.enabled_sources

array(object)

Any

composer.simple.print.enabled_sources.topicName

string

Any

composer.simple.print.enabled_sources.name

string

Any

composer.simple.print.enabled_sources.ordinal

integer

Any

composer.simple.print.can_block

boolean

Any

composer.simple.text_overlay

object

Any

composer.simple.text_overlay.enabled

boolean

Any

composer.simple.text_overlay.enabled_sources

array(object)

Any

composer.simple.text_overlay.enabled_sources.topicName

string

Any

composer.simple.text_overlay.enabled_sources.name

string

Any

composer.simple.text_overlay.enabled_sources.ordinal

integer

Any

composer.simple.text_overlay.can_block

boolean

Any

composer.advanced

object

Any

composer.advanced.math_formula

object

Any

composer.advanced.math_formula.enabled

boolean

Any

composer.advanced.math_formula.enabled_sources

array(object)

Any

composer.advanced.math_formula.enabled_sources.topicName

string

Any

composer.advanced.math_formula.enabled_sources.name

string

Any

composer.advanced.math_formula.enabled_sources.ordinal

integer

Any

composer.advanced.math_formula.can_block

boolean

Any

composer.advanced.math_operations

object

Any

composer.advanced.math_operations.enabled

boolean

Any

composer.advanced.math_operations.enabled_sources

array(object)

Any

composer.advanced.math_operations.enabled_sources.topicName

string

Any

composer.advanced.math_operations.enabled_sources.name

string

Any

composer.advanced.math_operations.enabled_sources.ordinal

integer

Any

composer.advanced.math_operations.can_block

boolean

Any

composer.advanced.if_else

object

Any

composer.advanced.if_else.enabled

boolean

Any

composer.advanced.if_else.enabled_sources

array(object)

Any

composer.advanced.if_else.enabled_sources.topicName

string

Any

composer.advanced.if_else.enabled_sources.name

string

Any

composer.advanced.if_else.enabled_sources.ordinal

integer

Any

composer.advanced.if_else.can_block

boolean

Any

composer.advanced.variables

object

Any

composer.advanced.variables.enabled

boolean

Any

composer.advanced.variables.enabled_sources

array(object)

Any

composer.advanced.variables.enabled_sources.topicName

string

Any

composer.advanced.variables.enabled_sources.name

string

Any

composer.advanced.variables.enabled_sources.ordinal

integer

Any

composer.advanced.variables.can_block

boolean

Any

composer.advanced.api

object

Any

composer.advanced.api.enabled

boolean

Any

composer.advanced.api.enabled_sources

array(object)

Any

composer.advanced.api.enabled_sources.topicName

string

Any

composer.advanced.api.enabled_sources.name

string

Any

composer.advanced.api.enabled_sources.ordinal

integer

Any

composer.advanced.api.can_block

boolean

Any

composer.advanced.loop

object

Any

composer.advanced.loop.enabled

boolean

Any

composer.advanced.loop.enabled_sources

array(object)

Any

composer.advanced.loop.enabled_sources.topicName

string

Any

composer.advanced.loop.enabled_sources.name

string

Any

composer.advanced.loop.enabled_sources.ordinal

integer

Any

composer.advanced.loop.can_block

boolean

Any

composer.advanced.start

object

Any

composer.advanced.start.enabled

boolean

Any

composer.advanced.start.enabled_sources

array(object)

Any

composer.advanced.start.enabled_sources.topicName

string

Any

composer.advanced.start.enabled_sources.name

string

Any

composer.advanced.start.enabled_sources.ordinal

integer

Any

composer.advanced.start.can_block

boolean

Any

composer.advanced.stop

object

Any

composer.advanced.stop.enabled

boolean

Any

composer.advanced.stop.enabled_sources

array(object)

Any

composer.advanced.stop.enabled_sources.topicName

string

Any

composer.advanced.stop.enabled_sources.name

string

Any

composer.advanced.stop.enabled_sources.ordinal

integer

Any

composer.advanced.stop.can_block

boolean

Any

supported_file_types

array(object)

Any

supported_file_types.mime_type

string

Any

supported_file_types.type

string

Any

connection_features

object

Any

connection_features.has_wifi

boolean

Any

connection_features.has_cable

boolean

Any

connection_features.has_hotspot

boolean

Any

connection_features.cable_features

object

Any

connection_features.cable_features.adapter_names

array(string)

Any

connection_features.wifi_features

object

Any

connection_features.wifi_features.can_configure

boolean

Any

connection_features.wifi_features.adapter_names

array(string)

Any

connection_features.hotspot_features

object

Any

connection_features.hotspot_features.can_activate

boolean

Any

connection_features.hotspot_features.can_change_ssid

boolean

Any

connection_features.hotspot_features.can_change_password

boolean

Any

connection_features.hotspot_features.adapter_names

array(string)

Any

Examples of payload
{
  "serial": "SH-J01-00096",
  "name": "Jamesy",
  "versions": {},
  "features": {
    "audio": {
      "control_parameters": {
        "pitch": {
          "min": 0,
          "step": 1,
          "default": 50,
          "max": 100
        },
        "speed": {
          "min": 0,
          "step": 1,
          "default": 50,
          "max": 100
        },
        "volume": {
          "min": 0,
          "step": 1,
          "default": 50,
          "max": 100
        }
      }
    },
    "cameras": [
      {
        "key": "kiosk",
        "primary": true,
        "rotation": 0
      }
    ],
    "external_displays": [
      {
        "video": true,
        "audio": true,
        "width": 1280,
        "height": 800
      }
    ],
    "can_poi": true,
    "can_move": true,
    "can_dance": false,
    "can_speech": true,
    "has_storage": true,
    "can_animate": false,
    "can_gym": false,
    "has_sensors": true,
    "has_emotions": false,
    "can_video_stream": true,
    "can_take_picture": true,
    "has_slam_image_map": true,
    "has_security_mode": true,
    "can_detect_motion": true,
    "can_face_recognize": true,
    "can_poi_interactive": true,
    "has_monitoring": false,
    "has_qr_scanner": false,
    "can_change_ntp_server": false,
    "voice_feature": {
      "supports_gesticulate": false,
      "supports_language": true,
      "supports_pitch": true,
      "supports_speed": true,
      "supports_volume": true,
      "supports_speech_volume": true
    },
    "listen_feature": {
      "can_trigger_manual": true,
      "can_trigger_hotword": true
    },
    "slam_feature": {
      "can_navigate": true,
      "can_extend_map": true,
      "can_manage_pois": true,
      "can_manage_walls": true,
      "has_docking_station": false
    },
    "voip_feature": {
      "supports_voip": true
    },
    "face_recognition_feature": {
      "can_detect_known_faces": false,
      "can_detect_number_of_faces": true
    },
    "time_feature": {
      "can_change_time_zone": true
    },
    "print_feature": {
      "can_print": true
    }
  },
  "hardware": {
    "heads": [
      {
        "moveable": true,
        "can_reset_to_default_position": true
      }
    ],
    "parts": [
      {
        "name": "Leg",
        "moveable": false,
        "can_reset_to_default_position": false
      }
    ]
  },
  "composer": {
    "simple": {
      "dance": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "speech": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "animation": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "emotion": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "multimedia": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "poi": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "mqtt": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "input": {
        "enabled": true,
        "enabled_sources": [
          "composer"
        ],
        "can_block": true
      },
      "browser": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "gym": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "wait_duration": {
        "enabled": true,
        "enabled_sources": [
          "composer"
        ],
        "can_block": true
      },
      "wait_sensor": {
        "enabled": true,
        "enabled_sources": [
          "composer"
        ],
        "can_block": true
      },
      "wait_face": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "wait_voice": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "wait_qr_code": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "motion_head": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "motion_detection": {
        "enabled": true,
        "enabled_sources": [
          "composer"
        ],
        "can_block": true
      },
      "app_start": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "change_datasource": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      },
      "multimedia_stop": {
        "enabled": true,
        "enabled_sources": [
          "scheduler",
          "composer"
        ],
        "can_block": true
      }
    },
    "advanced": {
      "variables": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "api": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "loop": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "start": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "stop": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "math_formula": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "math_operations": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      },
      "if_else": {
        "enabled": false,
        "enabled_sources": [],
        "can_block": true
      }
    }
  },
  "robot_type": "James",
  "body_id": "D2EE32C8F3EFF59FDFEAF6E21834F71C",
  "network_info": {
    "ip": "172.16.0.100",
    "ssid": "string",
    "mac_address": "02:00:00:00:00:00"
  },
  "supported_file_types": [
    {
      "type": "string",
      "mime_type": "string"
    }
  ],
  "connection_features": {
    "has_wifi": true,
    "has_cable": false,
    "has_hotspot": true,
    "cable_features": {
      "adapter_names": []
    },
    "wifi_features": {
      "can_configure": false,
      "adapter_names": [
        "wlan0"
      ]
    },
    "hotspot_features": {
      "can_activate": true,
      "can_change_ssid": true,
      "can_change_password": true,
      "adapter_names": [
        "WIFI1",
        "WIFI2"
      ]
    }
  }
}

zbos/system/name/set

publish

Set robot name

Use this to change the robot name. The change will be published through zbos/system/robot/identification/event

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Examples of payload
"Betsy"

zbos/system/version/get

publish

Get system version

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/version/response/{key}

subscribe

response: Get system version

Channel tags
  • System

Message AppVersion
Payload

Name

Type

Description

Accepted values

name

string

Any

version

string

Any

Examples of payload
{
  "name": "CR-16",
  "version": "4.2.0"
}

zbos/system/serial/get

publish

Get system serial number

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/serial/response/{key}

subscribe

response: Get system serial number

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/event/system/poke

subscribe

Poke robot

When robot receives this event, it responds by showing he received the event. This can be by flashing a led. This is useful to see which robot your are controlling.

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/ready/event

subscribe

event: System ready

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/ready/request

publish

Get system ready

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/ready/response/{key}

subscribe

response: System ready

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/hotword/rotation

publish

Enable hotword rotation

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/hotword/rotation/changed/event

subscribe

Hotword rotation changed event

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/hotword/rotation/get

publish

Get hotword rotation

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/hotword/rotation/response/{key}

subscribe

Response: hotword rotation

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/adblogs/upload

publish

Enable adb logs upload

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/adblogs/changed/event

subscribe

Adb logs changed event

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/adblogs/get

publish

Get adb logs

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/adblogs/response/{key}

subscribe

Response: Get adb logs

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/cloud/enable

publish

Enable cloud broker

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/cloud/enable/changing/event

subscribe

Cloud broker state is currently changing

Channel tags
  • System

Message EmptyMessage

Empty message

Payload

Name

Type

Description

Accepted values

Message Payload

object

Any

Example of payload (generated)
{}

zbos/system/cloud/enable/changed/event

subscribe

Cloud broker enable changed event

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/cloud/enable/get

publish

Get cloud broker enabled state

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/cloud/enable/response/{key}

subscribe

Response: cloud broker enabled state

Channel tags
  • System

Message String
Payload

Name

Type

Description

Accepted values

Message Payload

string

Any

Example of payload (generated)
"string"

zbos/system/license/get

publish

Retrieve license information about this robot

Channel tags
  • System

Message KeyResult

Random key

Payload

Name

Type

Description

Accepted values

key

string

Required random key

Any

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

zbos/system/license/response/{key}

subscribe

response: Retrieve license information about this robot

Channel tags
  • System

Message LicenseResult
Payload

Name

Type

Description

Accepted values

id

string

Any

valid_until

number

Any

created_timestamp

number

Any

status

object

  • VALID

  • EXPIRED

  • MISSING

  • FACTORY

status.name

string

Any

status.ordinal

integer

Any

valid_from

number

Any

Examples of payload
{
  "id": "some_id",
  "status": "valid",
  "valid_until": 1776463200,
  "created_timestamp": 1618783200,
  "valid_from": 1618783200
}

zbos/system/license/event

subscribe

event: License information has changed

Channel tags
  • System

Message LicenseResult
Payload

Name

Type

Description

Accepted values

id

string

Any

valid_until

number

Any

created_timestamp

number

Any

status

object

  • VALID

  • EXPIRED

  • MISSING

  • FACTORY

status.name

string

Any

status.ordinal

integer

Any

valid_from

number

Any

Examples of payload
{
  "id": "some_id",
  "status": "valid",
  "valid_until": 1776463200,
  "created_timestamp": 1618783200,
  "valid_from": 1618783200
}

zbos/cloud/broker/status/event

subscribe

event: Broker status

Channel tags
  • System

Message BrokerStatus
Payload

Name

Type

Description

Accepted values

connected

boolean

Any

graceful

boolean

Any

Examples of payload
{
  "connected": true,
  "graceful": true
}

zbos/system/multimedia/rename

publish

Rename file

Rename a multimedia filesee zbos/system/multimedia/rename/response for response

Channel tags
  • System

Message RenameRequest
Payload

Name

Type

Description

Accepted values

path

string

Path of existing file

Any

name

string

New name of file with extension

Any

Examples of payload
{
  "path": "string",
  "name": "string"
}

zbos/system/multimedia/rename/response

subscribe

response: Rename file

Channel tags
  • System

Message SuccessMessage

Success message

Payload

Name

Type

Description

Accepted values

success

boolean

Any

message

string

Optional error message

Any

Examples of payload
{
  "success": true
}

zbos/system/multimedia/delete/request

publish

Remove a file from the robot

Removes a file from the robot; limited to files inside of the zbos_media_library directory.see zbos/system/multimedia/delete/response/{key} for response

Channel tags
  • System

Message DeleteRequest
Payload

Name

Type

Description

Accepted values

key

string

Any

path

string

Any

Examples of payload
{
  "path": "string"
}

zbos/system/multimedia/delete/response/{key}

subscribe

response: Remove a file from the robot

Result if file is successfully deleted

Channel tags
  • System

Message DeleteResponse
Payload

Name

Type

Description

Accepted values

success

boolean

Any

error

object

  • FILE_NOT_EXIST

  • NOT_PERMITTED

  • FAILED

error.name

string

Any

error.ordinal

integer

Any

Examples of payload
{
  "success": false,
  "error": "FILE_NOT_EXIST"
}