En casi una década dedicada al software de empresa, he aprendido que hay tres palabras que a los clientes raramente les gusta escuchar. Esas palabras son: «así está diseñado», que es lo que muchos distribuidores de software dicen cuando no quieren enfrentarse con los desafíos específicos de un cliente. Pero eso no tiene por qué ser necesariamente malo. «Así está diseñado» puede ser algo positivo o negativo, dependiendo de quién diseñó el software.
En LRS, sabemos que las grandes empresas tienen complejos entornos de TI y no hay dos exactamente iguales. Diseñamos nuestros productos con esto en mente, de forma que podamos responder a los requisitos operativos y de aplicación específicos mediante diferentes niveles de personalización. Esta capacidad proporciona un elevado valor de negocio a nuestros clientes y demuestra la flexibilidad de nuestra arquitectura de producto. Déjeme darle un ejemplo de lo que quiero decir.
He hablado con clientes que desean disponer de la capacidad de recibir notificaciones cuando una impresora contenga una cantidad superior a un número determinado de trabajos en la cola de salida (Output Queue) de VPSX. ¿Por qué? Porque cuando una impresora tiene un gran número de trabajos en la cola de salida, a menudo significa que existe un problema creciente con la cola de impresión o con esa impresora. En lugar de esperar a que un usuario notifique el problema, algunos administradores proactivos quieren comenzar a resolver esos trabajos pendientes antes incluso de que los propios usuarios detecten el problema.
En la vista estándar del panel de control (Dashboard) de nuestro producto VPSX, puede configurar una máscara de colas con un mínimo de trabajos (Queue Minimum) en la lista de impresoras (Printer List) para mostrar este tipo de información. Esta sería una información útil para cualquier administrador que esté conectado y supervisando activamente el sistema. ¿Pero qué sucede cuando no están conectados y revisando la red? Aunque el software VPSX tiene la capacidad para enviar notificaciones acerca del funcionamiento de la impresora a través del correo electrónico, el cliente estaba buscando algo más adaptado a sus necesidades. Una sencilla herramienta de gestión de la cola de impresión que pudiera avisar en caso de que las colas de impresión se estuvieran sobrecargando. No un complejo administrador de colas de impresión sino más bien una señal de alarma en caso de emergencia.
Para afrontar esta situación, escribí un script en Perl que usa la interfaz de programación de aplicaciones (API, por sus siglas en inglés) SOAP de LRS y un script VBScript que usa la API de VPSX para digitalizar la lista de impresoras definidas y buscar aquellas que han alcanzado o superado un número determinado de trabajos en la cola de salida. Cuando se cumplen estas condiciones, el sistema envía un correo electrónico al administrador de VPSX. La información sobre la impresora, incluyendo información del protocolo SNMP, está incluida en el correo electrónico para ayudarle a determinar qué está provocando que los trabajos se amontonen. Puede usar el programador de tareas de Windows o un trabajo cron para plataformas UNIX/LINUX para ejecutar este script tan a menudo como desee.
Para evitar que se envíen notificaciones para impresoras determinadas (impresoras PERSONALQ, por ejemplo), puede especificar una lista de impresoras excluidas en el script o añadir NOTIFY=N en el campo de contacto (Contact) de una impresora VPSX. También puede añadir SNMP=N en el campo de contacto de una impresora VPSX para impedir que el protocolo SNMP incluya una impresora específica. Es posible que desee hacer esto en caso de que tenga impresoras que no soportan SNMP o que tienen SNMP deshabilitado, para evitar que se escriban mensajes de error en el registro de VPSX.
Cuando use un script SOAP, puede especificar una máscara de identificación VPSX para limitar qué impresoras generarán notificaciones. Mejor aún, puede configurar específicamente un nuevo usuario ServerX para usarlo con este script y controlar qué impresoras supervisar con ServerX Printer Security. En el caso del script API de VPSX, solo puede dirigirlo hacia un elemento de VPSX al mismo tiempo con el URI de VPSX.
Existe más información sobre la estructura y algunos consejos en la sección de comentarios del script. Existen dos versiones de cada uno; una que puede aceptar opciones de líneas de comando (QueueMonitor.pl; QueueMonitor.vbs) para modificar los valores especificados en el script y una segunda que no acepta opciones de líneas de comando (QueueMonitor_noargs.pl, QueueMonitor_noargs.vbs). Creé esto con Perl para limitar el número de dependencias y simplemente reproduje este concepto con los scripts VBScripts.
He compartido este script con mis demás compañeros técnicos en LRS por si se encuentran clientes con una necesidad similar. Del mismo modo, estos compañeros a menudo comparten sus propios scripts y modificaciones personalizados conmigo y con otros empleados de LRS. De hecho, contamos con una biblioteca de scripts especiales de este tipo que nos permite aprovechar al máximo la arquitectura flexible de VPSX.
Mediante el uso de las API de Windows, Java y SOAP, las formas en que puede interactuar con la aplicación VPSX son ilimitadas. La capacidad de esta arquitectura para responder a necesidades únicas del cliente es un ejemplo positivo de «así está diseñado». Si está interesado en este u otros scripts diseñados específicamente, póngase en contacto con LRS y cuéntenos cómo podemos ayudarle a ofrecer un servicio mejor y más fiable a sus clientes finales.