These docs are for v1.0. Click to read the latest docs for v2.0.

Update Device Command

Adds one or more commands in a JSON array of dictionaries for the device of the specified account. When the device requests commands the next time, they will be sent from the queue once and then be deleted.

Example Payload:

[
    {
      "message": {
        "msg": "Hi there, this is my name.",
        "level": 4,
      },
      "platform": "ros",
      "topic": "/rosout_agg",
      "type": "rosgraph_msgs/Log",
      "expiration_secs": 100,
      "repeat": {
        "rate": 4,
        "length": 5,
        "cancel_on_next_message": true
      }
    }
  ]

The maximum text length of an individual command should be 300 KB including all encoding

For the first command message you send on a topic, Mission Control will wait until there is at least a subscriber on that topic before sending the message and adds slightly more padding time after the first one for any stragglers which take a little while. This usually means it takes 1-2 seconds before it triggers the first command on that topic. Otherwise, the messages would be lost. After this, it is immediately delivered. (This is a constraint of ROS, not Mission Control)

Path Params
string
required
string
required
Body Params
string
required

the ros topic to send the command out on

string
required

The data type of this message. For ROS, this would be the message type.

string

the lifetime where this command is valid. lifetime is the delta in server time between when the command was uploaded and when it was requested by the device. If a lifetime is 10 seconds and the device requests all commands in 0.5 seconds from the time it is uploaded, the command will be sent. If it does not request commands for 60 seconds due to being turned off, the command will be silently deleted as it is no longer valid

string
required

is the platform you will most likely be designing for. This specified who should deal with the command and replay it. Mission Control talks with other parts of the system over different platform extensions such as ['ros', 'mission_control_link', 'mission_control_controller'].

string

(Optional - to send once, do not put this in) If you want to send a repeating message at a high rate and reliably, the internet is not stable enough, so you can specify to repeat the message at a rate for a length of time. This is useful for setting velocity commands or others that must be updated frequently

Responses

Language
Credentials
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json