Public Member Functions | |
def | __init__ (self, client_id) |
def | add_capability (self, capability_class) |
def | deserialize (self, msg, cid=None) |
def | finish (self) |
def | incoming (self, message_string="") |
def | log (self, level, message, lid=None) |
def | outgoing (self, message) |
def | register_operation (self, opcode, handler) |
def | send (self, message, cid=None, compression="none") |
def | serialize (self, msg, cid=None) |
def | unregister_operation (self, opcode) |
Public Attributes | |
bson_only_mode | |
buffer | |
capabilities | |
client_id | |
delay_between_messages | |
old_buffer | |
operations | |
Static Public Attributes | |
bool | bson_only_mode = False |
string | buffer = "" |
bool | busy = False |
int | delay_between_messages = 0 |
dictionary | external_service_list = {} |
fragment_size = None | |
string | old_buffer = "" |
parameters = None | |
png = None | |
The interface for a single client to interact with ROS. See rosbridge_protocol for the default protocol used by rosbridge The lifecycle for a Protocol instance is as follows: - Pass incoming messages from the client to incoming - Propagate outgoing messages to the client by overriding outgoing - Call finish to clean up resources when the client is finished
Definition at line 67 of file protocol.py.
def rosbridge_library.protocol.Protocol.__init__ | ( | self, | |
client_id | |||
) |
Keyword arguments: client_id -- a unique ID for this client to take. Uniqueness is important otherwise there will be conflicts between multiple clients with shared resources
Definition at line 98 of file protocol.py.
def rosbridge_library.protocol.Protocol.add_capability | ( | self, | |
capability_class | |||
) |
Add a capability to the protocol. This method is for convenience; assumes the default capability constructor Keyword arguments: capability_class -- the class of the capability to add
Definition at line 371 of file protocol.py.
def rosbridge_library.protocol.Protocol.deserialize | ( | self, | |
msg, | |||
cid = None |
|||
) |
Turns the wire-level representation into a dictionary of values Default behaviour assumes JSON. Override to use a different container. Keyword arguments: msg -- the wire-level message to deserialize cid -- (optional) an ID associated with this. Is logged on error Returns a dictionary of values
Definition at line 315 of file protocol.py.
def rosbridge_library.protocol.Protocol.finish | ( | self | ) |
Indicate that the client is finished and clean up resources. All clients should call this method after disconnecting.
Definition at line 280 of file protocol.py.
def rosbridge_library.protocol.Protocol.incoming | ( | self, | |
message_string = "" |
|||
) |
Process an incoming message from the client Keyword arguments: message_string -- the wire-level message sent by the client
Definition at line 120 of file protocol.py.
def rosbridge_library.protocol.Protocol.log | ( | self, | |
level, | |||
message, | |||
lid = None |
|||
) |
Log a message to the client. By default just sends to stdout Keyword arguments: level -- the logger level of this message message -- the string message to send to the user lid -- an associated for this log message
Definition at line 383 of file protocol.py.
def rosbridge_library.protocol.Protocol.outgoing | ( | self, | |
message | |||
) |
Pass an outgoing message to the client. This method should be overridden. Keyword arguments: message -- the wire-level message to send to the client
Definition at line 229 of file protocol.py.
def rosbridge_library.protocol.Protocol.register_operation | ( | self, | |
opcode, | |||
handler | |||
) |
Register a handler for an opcode Keyword arguments: opcode -- the opcode to register this handler for handler -- a callback function to call for messages with this opcode
Definition at line 351 of file protocol.py.
def rosbridge_library.protocol.Protocol.send | ( | self, | |
message, | |||
cid = None , |
|||
compression = "none" |
|||
) |
Called internally in preparation for sending messages to the client This method pre-processes the message then passes it to the overridden outgoing method. Keyword arguments: message -- a dict of message values to be marshalled and sent cid -- (optional) an associated id
Definition at line 239 of file protocol.py.
def rosbridge_library.protocol.Protocol.serialize | ( | self, | |
msg, | |||
cid = None |
|||
) |
Turns a dictionary of values into the appropriate wire-level representation. Default behaviour uses JSON. Override to use a different container. Keyword arguments: msg -- the dictionary of values to serialize cid -- (optional) an ID associated with this. Will be logged on err. Returns a JSON string representing the dictionary
Definition at line 289 of file protocol.py.
def rosbridge_library.protocol.Protocol.unregister_operation | ( | self, | |
opcode | |||
) |
Unregister a handler for an opcode Keyword arguments: opcode -- the opcode to unregister the handler for
Definition at line 361 of file protocol.py.
|
static |
Definition at line 94 of file protocol.py.
rosbridge_library.protocol.Protocol.bson_only_mode |
Definition at line 112 of file protocol.py.
|
static |
Definition at line 84 of file protocol.py.
rosbridge_library.protocol.Protocol.buffer |
Definition at line 115 of file protocol.py.
|
static |
Definition at line 86 of file protocol.py.
rosbridge_library.protocol.Protocol.capabilities |
Definition at line 106 of file protocol.py.
rosbridge_library.protocol.Protocol.client_id |
Definition at line 105 of file protocol.py.
|
static |
Definition at line 90 of file protocol.py.
rosbridge_library.protocol.Protocol.delay_between_messages |
Definition at line 111 of file protocol.py.
|
static |
Definition at line 92 of file protocol.py.
|
static |
Definition at line 81 of file protocol.py.
|
static |
Definition at line 85 of file protocol.py.
rosbridge_library.protocol.Protocol.old_buffer |
Definition at line 116 of file protocol.py.
rosbridge_library.protocol.Protocol.operations |
Definition at line 107 of file protocol.py.
|
static |
Definition at line 96 of file protocol.py.
|
static |
Definition at line 82 of file protocol.py.