Script essentials
This example Python script takes a server name, call name, and a set of string arguments on the command line and prints the result of the call.
#!/usr/bin/python import sys import xmlrpclib host=sys.argv[1] try: proxy = xmlrpclib.ServerProxy("http://" + host + ":1801/"); token = proxy.user.login('<aiw-system-userid>','<aiw-system-user-password>') proxy = xmlrpclib.ServerProxy("http://" + host + ":1801/?credential=" + token); print getattr(proxy,sys.argv[2])(*sys.argv[3:]) except xmlrpclib.Fault, err: print err.faultString + " (" + str(err.faultCode) + ")"
These lines of code will be an essential part of any script you develop with Connect.
List methods
A script that uses the coding shown above, named xcall
in this example, can run System.listMethods to return a list of methods on a particular
system. You can then use those methods to interact with the system. You can make the
list more readable by piping the result to the tr
command to translate the commas to new lines.
For example:
xcall remotesys System.listMethods | tr ',' '\n'
Note: remotesys
is a machine on your RICOH ProcessDirector network that is accessible using port 1801.
The listed methods will vary depending on the extensions that are installed, Here is a small sampling of methods that are returned.
'InputTray.get' 'InputTray.getAllInputTrays' 'InputTray.getMessages' 'InserterSystem.enable' 'InserterSystem.equals' 'JobType.getAuthorityToken' 'JobType.getClass' 'JobType.getMessages' 'Printer.backspaceJob' 'Printer.cancelJob' 'Printer.create' 'Update.importChoiceEnum' 'Update.importFromUpdate' 'User.getUserPreferences' 'User.login, 'WorkflowSystem.exportMessages, 'WorkflowSystem.findReferencedObjects'
Method signature
You can use System.methodSignature to get the signatures of the TrackingGroup.get method. (TrackingGroup.get is part of the Document Tracking extension.)
xcall remotesys System.methodSignature TrackingGroup.get
This call returns a tuple:
[['array', 'array'], ['array', 'array', 'string', 'string'], ['array'], ['string',
'string'], ['string', 'array', 'struct'], ['array', 'array', 'string']]
This tuple is a collection of arrays where the first index of each array is the return type, and the remaining values in the array are the parameters.
For this array:
['array', 'array']
An array is returned, and an array is the parameter.
For this array:
['array', 'array', 'string', 'string']
An array is returned, an array is the first parameter, and strings are the second and third parameters.
Example: Getting job properties
You can get all job data on the remotesys system—current jobs on the system and all associated job properties—with:
xcall remotesys Job.get