co2 visible(API) v --------------------------------- xmlrpc | http transparent ^ ------------- tcp/ip ...
the co2 protocol
mandatory xmlrpc-methods (must be callable through xmlrpc):
server: ping()
co2.get_method_names()
co2.get_method_help()
co2.get_method_signature()
relay: relay.register()
relay.relay(data)
satellite: notify(data)
('server' refers to both relay and satellite)
argument format:
naming conventions for method calls:
for methods exposed by plugins:
optional xmlrpc-methods and synonyms:
plus some undocumented stuff for testing and debugging (look at the code)
co2.
system.
(in the python implementation the above are simply synonyms)
web.get_method_names, system.listMethods = co2.get_method_names
web.get_method_help, system.methodHelp = co2.get_method_help
web.get_method_signature, system.methodSignature = co2.get_method_signature
web.ping = ping
xmlrpc-methods not in the protocol but in the python implementation:
(don't rely on them!)
test(data) (synonym = web.test):
returns
method_call(data) (synonym = web.method_call):
kind of a meta-method to call other methods
data: {'method_name':