Есть простенький скрипт, использующий библиотеку pjsua, в котором указываются Server,Login,Password для подключения к SIP-серверу и воспроизведения wav-файлов при звонке.
Переменная заполняется SIP URI, которая является стандартным форматом username[@]sipserver.tw или 1800phonenumber[@]sipserver.tw, параллельно имеется функция библиотеки wave, которая срабатывает, если инициирован звонок, проигрывается sample.wav > Simple Rate: 8000 в сессию и скрипт завершается.
ТЗ:
Импорт библиотеки pygtk, pulsectl или ctypes
Затем имплементировать GtkText, вынести переменную SIP URI,
Добавить gtk.Button, где будет основное действие "Call" (функция вызова) и "End" (остановить вызов), дополнительно gtk.Label и 2 состояния: running/stopped
10 gtk.Button'ов, в которых присутствуют названия wav-файлов, таким образом изменить готовый скрипт на логику проигрывания разных файлов на 1 сессию при звонке, был 1 wav-файл = стало много
При этом, подключив pulsectl сделать взаимосвязь с pjsip, чтобы включить звук с 2 сторон на стандартный hw0,0 к примеру (PulseAudio)
Сейчас работает только проигрывание 1 файла, используя сессию при звонке, вывод в звуковую карту отсутствует.
Знание протокола не обязательно, ограничивается REGISTER авторизацией/INVITE в соответствии с SIP URI
Пришлю python-скрипт, работает с версией 2.7, инструкцию по установке pjproject 2.5.5, данные авторизации на SIP-сервер и PCM файл воспроизведения
Скидывайте E-mail,Jabber или ICQ.
Готовое API позволяет быстро понять что делать. Прилагаю дополнительное описание к ТЗ.
Оплата 40 WMZ или Bitcoin