Éléments essentiels concernant les scripts
Cet exemple de script Python utilise un nom de serveur, un nom d'appel et un ensemble d'arguments de chaîne sur la ligne de commande et imprime le résultat de l'appel.
#!/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) + ")"
Ces lignes de code constituent une partie essentielle de tout script développé avec Connect.
Méthodes de liste
Un script utilisant le codage indiqué ci-dessus, baptisé xcall
dans cet exemple, peut exécuter System.listMethods pour renvoyer une liste de méthodes
sur un système particulier. Vous pouvez ensuite utiliser ces méthodes pour interagir
avec le système. Il est possible d'obtenir une liste plus lisible en transmettant
le résultat à la commande tr
pour convertir les virgules en nouvelles lignes.
Par exemple :
xcall remotesys System.listMethods | tr ',' '\n'
Remarque : remotesys
est une machine de votre RICOH ProcessDirector réseau, accessible par le port 1801.
Les méthodes répertoriées pourront varier selon les extensions installées. Voici un petit échantillon des méthodes renvoyées.
'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'
Signature de méthode
Vous pouvez utiliser System.methodSignature pour obtenir les signatures de la méthode TrackingGroup.get. (TrackingGroup.get fait partie de l'extension Document Tracking.)
xcall remotesys System.methodSignature TrackingGroup.get
Cet appel renvoie un n-uplet :
[['array', 'array'], ['array', 'array', 'string', 'string'], ['array'], ['string',
'string'], ['string', 'array', 'struct'], ['array', 'array', 'string']]
Ce n-uplet est un ensemble de tableaux dans lesquels le premier index de chaque tableau contient le type de retour, et les valeurs restantes sont les paramètres.
Pour ce tableau :
['array', 'array']
Un tableau est renvoyé, avec un tableau pour paramètre.
Pour ce tableau :
['array', 'array', 'string', 'string']
Un tableau est renvoyé, avec un tableau pour premier paramètre et des chaînes pour deuxième et troisième paramètres.
Exemple : Accès aux propriétés d'un travail
Vous pouvez obtenir l'ensemble des données d'un travail sur le système remotesys — travaux en cours sur le système et propriétés de travaux associées — avec la commande :
xcall remotesys Job.get