Я пытаюсь отправить информацию об идентификаторе вызывающего абонента (CID) из системы, в которой работает Asterisk + FreePBX, во все (3) фронт-системы MythTV в моей сети. Мне бы хотелось, чтобы информация CID всплывала поверх всего происходящего (например, в меню или при воспроизведении записи). Со временем может появиться и другая информация, но сейчас CID будет отличным началом.
С уведомлениями в стиле libnotify все в порядке (хотя мне, вероятно, нужно увеличить размер текста, чтобы сделать его видимым). Я думал что-то вроде Growl , хотя, похоже, этого не существует для Linux.
В идеале, я бы просто мог сделать какую-то трансляцию для всей сети, например, из системы FreePBX, я мог бы выполнить команду вроде:
notify --broadcast --title "Incoming Call" "Smith J\n613-555-1234"
И затем на любом интерфейсе mythtv, это появилось бы где-нибудь на экране.
Примечание: есть плагин MythNotify , который я использовал на предыдущей итерации моей установки, но у него есть серьезное ограничение (я полагаю, основываясь на способе OSD MythTV) работает), что он может отображать уведомления только во время воспроизведения видео, а не в меню. Я также помню, что было трудно получить правильное отображение: он использует XML для обмена сообщениями, а затем XSLT, чтобы перейти на XML-формат mythtv. Если вы хотите отобразить что-то немного по-другому, вам нужно создать небольшую горстку новых файлов XML и даже получить сообщение «callerid-from-phonebook.xml» для фактического рендеринга (удаленному) «callerid-from-phonebook-». osd.xml "файл для отображения - это какая-то черная графика.
Вы можете сделать это с помощью инструментов уведомлений командной строки.
Настройте скрипт уведомления на своем сервере для выполнения уведомления-отправки, например:
ssh username @ system1 'notify-send "Входящий вызов от Смита J \ n613-555-1234" '
ssh username @ system2' notify-send "Входящий звонок от Смита J \ n613-555-1234" '
Это вызовет всплывающее уведомление в системах с именами 'system1' и 'system2'.