Standard XML-RPC is used. For specification of interface, please see xmlrpc.org site. There are general rules for calls:
As first parameter to every XML-RPC call, you must pass an identification token. It is always a structure, and holds either credentials, or session ID.
Credentials are passed in structure under login and password fields. So for example if you are calling rts2.mainstatus, the procedure in Python will be:
import xmlrpclib xmlRpcServer = xmlrpclib.ServerProxy("http://localhost", use_datetime = True) res = xmlRpcServer.rts2.mainstatus ({'login': 'myname', 'password': 'test'}) print res
Session ID can be obtained by rts2.login call. Then it should be passed as session_id parameter to all subsequent calls. Following example demonstrates how to use session_id:
res = xmlRpcServer.rts2.login ({'login': 'myname', 'password': 'test'}) sess_id = res['session_id'] res = xmlRpcServer.rts2.mainstatus ({'session_id' : sess_id}) print res
Session id's expire after inactivity. The time of inactivity is defined in response field 'expires'. Before session ID expires, you can renew it by making call to rts2.login, with session_id as only parameter.
There is description of commands. Please see also xmlrpc/r2x.h file for probably more up-to date description.
This call accepts two parameters. The first is login name, the second is password. Returns session id, which can be used in subsequent calls to authorize them.
Set RTS2 variable. Three parameter must be specified, with following meaning:
User login. Provides username and password, out true/false - true if login is OK.
New user. Provides all user parameters (login, email, password,..), out true/false - true if OK