У меня на столе ip-телефон Yealink, и я хочу удаленно управлять им, чтобы вместо этого можно было звонить со своего компьютера, а не набирать номера прямо на телефоне. Эта ссылка объясняет, как это сделать:
Как набрать или сделать звонок с помощью пульта дистанционного управления | Yealink Поддержка
Есть 2 способа сделать это. Один отправляет запрос http на телефон. И другой вариант, отправив сообщение уведомления SIP.
А) Отправка HTTP-запроса (Работает!)
- Сначала убедитесь, что телефон настроен на удаленные подключения.
Тогда просто сделайте этот запрос
wget
wget --user admin --password PASSWORD_PHONE http://IP_OF_PHONE/servlet?key=SPEAKER
После этого запроса на клавиатуре телефона нажата!
B) Отправка SIP-уведомления (НЕ работает)
Это опция, которую я хочу использовать, потому что я не хочу хранить имена пользователей и пароли. Также может измениться IP-адрес телефона. В любом случае, вот что я пробовал, и по какой-то причине я не могу заставить эту опцию работать:
Я выполняю первый шаг, который я сделал для части (A), позволяя телефону управлять удаленно.
Я подключаю телефон к серверу Asterisk и проверяю, подключен ли он.
Теперь, когда подключен SIP-партнер Eduardo, мне нужно отправить ему сообщение SIP Notify с телом, содержащим ключ = SPEAKER.
Я открываю
/etc/asterisk/sip_notify.conf
и добавляю следующий контекст:[test] Событие => Содержимое ACTION-URI => Ключ = SPEAKER
Я перезагружаю звездочку, потому что я не знаю, как перезагрузить sip_notify.conf
asterisk -rx "core restart gracefully"
Затем на CLI звездочки я набираю следующую команду, чтобы отправить sip-уведомление:
sip notify test Eduardo
когда я запускаю эту команду, звездочка говорит:
Sending NOTIFY of type 'test' to 'Eduardo'
но телефон никогда не нажимает клавишу SPEAKER! Что я могу делать не так?Вот глоток, захваченный Wireshark!
- Даже если я следую указаниям, клавиша SPEAKER не нажимается! Что я могу делать не так?