Tema anterior: ScriptTema siguiente: Información de inicio de sesión remoto


API del script en línea del operador Ejecutar script de Telnet

El producto utiliza un script que se escribe en shell de bean o JavaScript para el campo Script en línea del operador Ejecutar script Telnet. El script utiliza el objeto conn, que expone los API siguientes:

void send (cadena str, registro booleano) produce una excepción

Este método envía datos al host remoto.

String str

Define los datos que se enviarán al host remoto.

boolean log

Expone/oculta los datos enviados al host remoto en los registros de CA Process Automation.

Para depurar, siga la interacción entre el operador y el host remoto. Establezca el siguiente código en el archivo <directorio_instalación>/server/conf/log4j.xml:

<category name="com.company.c2o.servicegroup.netutils">	
   <priority value="DEBUG" /> 
</category>

Además, configure el archivo de registro de CA Process Automation (c2o.log) para aceptar sentencias DEBUG en log4j.xml.

Cuando establece el nivel de depuración, la categoría de operador Ejecución de comandos empieza a registrar en el archivo de registro de CA Process Automation (c2o.log) en el nivel de DEBUG. Los registros de CA Process Automation muestran los datos enviados al host remoto a través de enviar o sendLine.

Valores:

Verdadero: registra el valor de String str cuando se registra en el nivel de DEBUG.

Falso: no registra el valor de String str.

Nota: c2o.log es el archivo de registro de CA Process Automation, no los registros del proceso. Los operadores no escriben mensajes en el registro del proceso.

Este método no tiene ningún valor de retorno. El producto genera una excepción si la API no puede escribir los datos en el host remoto.

public void sendLine (cadena str, registro booleano) produce una excepción

Este método añade un carácter de nueva línea a los datos y lo envía al host remoto. Para obligar el host remoto a empezar a ejecutar el comando que se envía en el parámetro, utilice este método.

Este método tiene los mismos parámetros y los valores que "void send (String str, boolean log) throws Exception".

void send (String str) throws Exception

Este método es equivalente a Enviar (cadena str, verdadero).

void sendLine (String str) throws Exception

Este método es equivalente a SendLine (cadena str, verdadero).

public boolean waitFor(String pattern, int timeout) throws Exception

Este método lee el resultado del host remoto y se detiene cuando se produce cualquiera de los resultados siguientes:

El producto almacena el resultado del host remoto por cada llamada al método waitFor en un búfer accesible a través del método getLastOutput(). Cada llamada a waitFor anula el contenido del búfer de la llamada anterior.

La llamada de waitFor siguiente empieza a leer el resultado a partir del lugar en que dejó de leer la llamada a waitFor anterior. Esto es relevante cuando se utiliza el método con getLastOutput.(). Por ejemplo, si una llamada a waitFor no coincide con el resultado del comando entero, la llamada siguiente puede contener el resultado restante del comando anterior.

Importante: Para evitar mezclar el resultado del comando anterior con el resultado del comando actual, llame a waitFor después de cada llamada a sendLine.

Los operadores de script de Telnet y de script SSH utilizan mecanismos diferentes para leer datos del host remoto:

Los parámetros incluyen:

String pattern

Define una expresión regular para buscar coincidencias con los datos que lee el producto del host remoto. Normalmente, este patrón coincide con cualquier dato hasta la petición siguiente (por ejemplo: ".*[$]"). Dado que se pueden buscar coincidencias (y recuperar) los datos de resultado de un comando (incluidas nuevas líneas hasta la petición siguiente), inicie el patrón con .*.

Nota: El método busca coincidencias de todos los datos leídos (durante esta llamada a waitFor) con el patrón. El método no coincide con el patrón como subcadena de los datos leídos. También, un punto ( . ) puede coincidir con un finalizador de nueva línea (se puede utilizar para hacer coincidir con datos de respuesta multilínea).

Int timeout

Define el intervalo (en segundos) durante el cual se leen los datos del host remoto y buscar coincidencias con respecto al patrón.

Los retornos son booleanos:

Verdadero

Los datos leídos antes de que el tiempo de espera caducara coinciden con el patrón.

Falso

Los datos leídos antes de que el tiempo de espera caducara no coinciden con el patrón.

Nota: El método devuelve un valor en cuanto coincide con el patrón o el tiempo de espera caduca.

El producto genera una excepción en los casos siguientes:

Este método devuelve el contenido del búfer donde la última llamada a waitFor guardó los datos leídos del host remoto. Estos datos no siempre coinciden con el patrón de waitFor. El búfer almacena lo que lea la llamada de waitFor más reciente, tanto si waitFor devuelve un valor verdadero o falso.

Este método tiene parámetros.

Este método no genera excepciones.