スクリプトの必須情報

このセクションでは、独自のスクリプトを作成するときに必要な必須情報について説明します。

この Python スクリプトの例では、サーバー名、呼び出し名、および文字列の引数のセットをコマンドラインに指定し、呼び出しの結果を印刷しています。

#!/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) + ")"

これらのコード行は、Connect を使用してスクリプトを開発するときに必ず必要な部分になります。

メソッドのリスト

上記のコーディングを使用するスクリプト (この例では xcall) は、System.listMethods を実行して、特定のシステムでメソッドのリストを返すことができます。このメソッドを使用して、システムとやり取りできます。結果を tr コマンドにパイピングして、コンマを改行に変更すると、リストが読みやすくなります。

例:

xcall remotesys System.listMethods | tr ',' '\n'

注: remotesys は、ポート 1801 を使用してアクセス可能な RICOH ProcessDirector ネットワーク上のマシンを示します。

リストされるメソッドは、インストールされる拡張機能によって異なります。次に、返されるメソッドのサンプルを示します。

'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'

メソッドシグニチャー

System.methodSignature を使用して、TrackingGroup.get メソッドのシグニチャーを取得できます(TrackingGroup.get は、Document Tracking 拡張機能の一部です)。

xcall remotesys System.methodSignature TrackingGroup.get

この呼び出しは、次のタプルを返します。

[['array', 'array'], ['array', 'array', 'string', 'string'], ['array'], ['string', 'string'], ['string', 'array', 'struct'], ['array', 'array', 'string']]

このタプルは、各配列の最初のインデックスが戻り型で、配列の残りの値がパラメーターになる配列の集まりです。

この配列では、次のようになります。

['array', 'array']

配列が返され、配列がパラメーターとなります。

この配列では、次のようになります。

['array', 'array', 'string', 'string']

配列が返され、配列が最初のパラメーターとなり、文字列は 2 番目および 3 番目のパラメーターとなります。

例: ジョブプロパティーの取得

remotesys システム上のすべてのジョブデータ (システム上の現在のジョブと、それに関連付けられているすべてのジョブプロパティー) は、次のコマンドで取得できます。

xcall remotesys Job.get