Fundamentos dos scripts

Esta seção descreve as informações essenciais necessárias para criar seus próprios scripts.

Esse exemplo de script Python toma o nome de um servidor, o nome da chamada e um conjunto de argumentos de sequência na linha de comando e imprime o resultado da chamada.

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

Estas linhas de código são uma parte essencial de qualquer script que você desenvolver com o Connect.

Métodos de listas

Um script que utiliza a codificação mostrada acima, chamada xcall neste exemplo, pode executar System.listMethods para retornar uma lista de métodos de um determinado sistema. Você poderá então usar esses métodos para interagir com o sistema. Você pode tornar a lista mais legível, canalizando o resultado para o comando tr para passar as vírgulas para novas linhas.

Por exemplo:

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

Observação: remotesys é uma máquina em sua rede RICOH ProcessDirector pode ser acessada usando a porta 1801.

Os métodos listados variarão de acordo com as extensões instaladas. Veja a seguir uma pequena amostra de métodos retornados.

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

Assinatura de métodos

Use System.methodSignature para obter as assinaturas do método TrackingGroup.get. (TrackingGroup.get faz parte do documento Manipulação de Documentos.)

xcall remotesys System.methodSignature TrackingGroup.get

Esta chamada retorna uma tupla:

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

Esta tupla é um conjunto de matrizes em que o primeiro índice de cada matriz é o tipo de retorno e os valores restantes da matriz são os parâmetros.

Para esta matriz:

['array', 'array']

Uma matriz é retornada, e uma matriz é o parâmetro.

Para esta matriz:

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

Uma matriz é retornada, uma matriz é o primeiro parâmetro e as sequências são o segundo e o terceiro parâmetros.

Exemplo: Obtendo propriedades da tarefa

Você pode obter todos os dados da tarefa no sistema remotesys - tarefas atuais no sistema e todas as propriedades de tarefa associadas - com:

xcall remotesys Job.get