За основу берем приложение
https://www.linphone.org/news/linphone-37-windows-desktop-mac-osx-and-linux. Гипотезу работы проверили через скрипты на BASH. Собирать
linphone 3.7 из исходного кода не нужно, устанавливаем уже готовый вариант. Копию рабочего скрипта смогу передать.
Задача: Написать на rust или go приложение способное принимать запросы на порт (
socket) и далее управлять программой linphonecsh. Все работает через порт, запросы можно тестировать через telnet, интерфейс для работы не делаем. Нужный три версии для Linux Windows и MacOS
Пример команды help. Почти все соответствует linphonecsh (https://manpages.ubuntu.com/manpages/jammy/man1/linphonecsh.1.html).
Use:
help
secret <*******> - authorize for more options
quit - close session
Secret commands:
register <IP> <USER> <PASSWD> - register to SIP
dial <SIP> - dial to SIP number
status - out phone status
command - out generic command
hangup - hangup phone
unregister - unregister from SIP
initialize - запускает демон
terminate - останавливает демон
Работать сможем только по договору самозанятого или ИП