it-swarm-es.com

Enviar mensajes de notificación OSD a todos los sistemas en una red

Lo que intento hacer es enviar información de identificación de llamadas (CID) desde un sistema que ejecuta Asterisk + FreePBX a todos los (3) sistemas frontales MythTV en mi red. Me gustaría que la información del CID aparezca sobre lo que está sucediendo (por ejemplo, ya sea en un menú o reproduciendo una grabación). Eventualmente puede haber otra información también, pero por ahora CID sería un gran comienzo.

Las notificaciones de estilo libnotify están bien (aunque probablemente necesite aumentar el tamaño del texto para que sea visible). Estaba pensando en algo como Growl , aunque esto no parece existir para Linux.

Lo ideal sería poder transmitir algún tipo de transmisión a toda la red, por ejemplo, desde el sistema FreePBX, podría ejecutar un comando como:

notify --broadcast  --title "Incoming Call"  "Smith J\n613-555-1234"

Y luego, en cualquier interfaz de mythtv, aparecería en algún lugar de la pantalla.


Nota: hay un complemento MythNotify , que he usado en una iteración anterior de mi configuración, pero tiene una limitación severa (creo que según la forma en que funciona el material OSD de MythTV) que solo puede mostrar notificaciones durante la reproducción de video: no mientras está en los menús. También recuerdo que fue difícil mostrarlo correctamente: utiliza XML para mensajes y luego XSLT para cambiar al formato XML de mythtv. Si desea mostrar algo un poco diferente, debe hacer un pequeño puñado de nuevos archivos XML e incluso obtener el mensaje "callerid-from-phonebook.xml" para que realmente se muestre en el (remoto) "callerid-from-phonebook- El archivo osd.xml "para mostrar es una especie de arte negro.

4
gregmac

Puede hacerlo utilizando las herramientas de notificación de línea de comandos.

  1. Instale el paquete 'libnotify-bin' en todos los sistemas de su red, que proporciona una herramienta llamada 'notificar-enviar'.
  2. Instale el servidor ssh en todos los sistemas de su red y asegúrese de que estén configurados para permitir inicios de sesión ssh sin contraseña (consulte http://www.debian-administration.org/articles/152 para obtener más información sobre esta).
  3. Configure su script de notificación en su servidor para ejecutar el envío de notificaciones, de esta manera:

    ssh username @ system1 'notify-send "Llamada entrante de Smith J\n613-555-1234"'

    ssh username @ system2 'notify-send "Llamada entrante de Smith J\n613-555-1234"'

Esto provocará una ventana emergente de notificación en los sistemas llamados 'system1' y 'system2'.

2
fader