BOW API
BOW API Reference Documentation.
NAMESPACE BOW API
The BOW API namespace provides the core functionality for connecting to and communicating with BOW robots. It manages user authentication, robot discovery, and data transfer through communication channels like vision, audition, and motor control. The API supports both local and remote robot connections.
METHOD Version
Get the BOW API and BOW Messages library version information.
METHOD StartEngine
StartEngine configures the variables required for the BOW API to be instantiated. This function sets up the audio sampling and playback settings, sets the folder name for the log files and otherwise initialises all the variables required for the API.
METHOD LoginUser
Login with your BOW username and password to initialise communication session and therefore communicate with robots associated with your account. If you have the BOW Hub installed, then you can bypass entering your username and password by setting use_bow_hub to True which will login using the credentials used for the BOW Hub.
METHOD QuickConnect
The QuickConnect function simplifies the process of connecting to a robot and opening its channels. Quick connect talks to the BOW Hub to login, get a list of robots, connect to the robot chosen via the BOW Hub and open the requested channels.
METHOD GetRobots
GetRobots returns a list of robots associated with the user account. You can filter robots according to whether they are available remotely or locally. Or you can fetch only the robot currently selected on your BOW Hub.
METHOD StopEngine
StopEngine closes the BOW Engine, any and all open connections to robots will be closed and the BOW Engine will be stopped. If you would like to restart the BOW Engine after stopping, the start function will need to be called again.
CLASS BaseChannel
The BaseChannel class is a generic channel template that facilitates sending and receiving typed messages over a named communication channel. This class is a base class that is inherited and explicitly typed by the Robot class channels.
Method IsOpen
Check if channel is open or not.
Method Get
A virtual function to Get data from the channel designed to be overriden by data type specific Robot class channels.
Method Set
A virtual function to Set data to the channel designed to be overriden by data type specific Robot class channels.
CLASS Robot
The Robot class represents a connection to a BOW robot. Each instance manages a separate robot connection, allowing you to control multiple robots simultaneously. The class handles all communication, data transfer, and modality management between your application and the robot.
Property Details
Property Channels
Channel Vision
Channel Audition
Channel Tactile
Channel Proprioception
Channel Exteroception
Channel Interoception
Channel Motor
Channel Speech
Channel Voice
Method Init
The Robot class initialiser. The constructor accepts the robot details obtained from GetRobots
Method Connect
Starts a connection with the robot. This method will start a peer to peer connection with the robot using the robot details provided in the constructor.
Method OpenChannel
Opens a channel for the given modality. This channel is between the robot and client and makes available data from the chosen modality to be transmitted.
Method Set
Sends data on an open channel.
Method Get
Reads data from an open channel. This reads a data message from the robot on the named open channel.
Method CloseChannel
Closes an open channel. This closes the named open channel.
Method Disconnect
Close the connection to the robot.This closes the peer to peer connection between the API and the robot.