Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Actions

Actions are the operations a device offers: scan for Wi-Fi networks, reconnect, provision an identity. The device lists them with typed arguments and results; rohi generates its help and tables from that description. How a firmware declares an action is in Action.

rohi action                                        # all actions: service, name, privileged
rohi action network                                # the actions of one service with their arguments
rohi action network scan --help                    # arguments and results (generated from the device)
rohi action network scan                           # results as a table, one row per record
rohi action network reconnect
rohi action radio tune channel=11                  # arguments are NAME=VALUE, all required
rohi -o json action network scan

-o json with --help prints the schema. Privileged actions need a link that satisfies the authorization policy of the device. A refusal with a stable reason is reported as the device rejected the action: <reason> (for example already_provisioned).

Identity

The identity is an ordinary service: no dedicated command.

rohi status identity                                   # state, public key; never the secret
rohi action identity provision secret=-               # 32-byte secret as hex, from stdin or a hidden prompt
rohi action identity erase

The secret is derived on a trusted machine (rohi::derive_identity, see Device identity) and only the derived secret is sent. rohi factory-reset erases it with the rest of the configuration storage. A malformed secret is reported without echoing it.