LINUX.ORG.RU

Как дела обстоят с VoIP-интеграцией в браузерах?

 , , ,


0

2

Вопрос общий. По всем дистрибутивам. Облазил все гуглы, не нашёл решения для следующей задачи: есть sip-клиент (пробовал Linphone, Blink), на страничке указана ссылка (<a href....sip...) на номер sip - нужно, чтобы при нажатии на неё вызывался sip-клиент с уже вбитым номером, указанным в ссылке и происходил его набор - всё то же самое, как в skype. Только в skype всё это дело работает отлично, а вот с sip...

Решение тут https://lists.nongnu.org/archive/html/linphone-users/2013-06/msg00098.html

★★★★★

Последнее исправление: Desmond_Hume (всего исправлений: 2)

номер sip

это что за зверь такой? проблема с тем что у шкайпа директория единая. а так парсить номер телефона браузеры умеют

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

сорри, не так написал... по сути, речь идёт о VoIP-телефонии, но не про Skype - как сделать кликабельными номера телефонов, чтобы происходил сразу набор номера в указанном софтфоне на примере, как это реализовано в скайпе - там кликаешь на нике, указанном на вэб-страничке и сразу происходит звонок в скайпе

Desmond_Hume ★★★★★
() автор топика
Последнее исправление: Desmond_Hume (всего исправлений: 2)
Ответ на: комментарий от Deathstalker

Да простой код хотя бы, для проверки

html
a href=sip:1234567890@sip.linphone.org Позвонить a
html
Максимум, чего удалось добиться - открытие VoIP-клиента по нажатию на ссылку. Номер впечатываться и звонить само не хочет ни в какую...

Desmond_Hume ★★★★★
() автор топика
Последнее исправление: Desmond_Hume (всего исправлений: 1)
Ответ на: комментарий от Desmond_Hume

набор номера в указанном софтфоне

вот этого точно нет. софтфонов как собак

как это реализовано в скайпе - там кликаешь на нике,

угу, в единой директории

upcFrost ★★★★★
()
Последнее исправление: upcFrost (всего исправлений: 1)
Ответ на: комментарий от Zoominger

Какая разница? Мне нужно код показать)). Pastebin его рвёт, LOR - рвёт. Переделал уже в .html

Desmond_Hume ★★★★★
() автор топика
Ответ на: комментарий от Desmond_Hume

Firefox не знает, как открыть данный адрес, так как один из следующих протоколов (sip) не связан ни с одной программой или не разрешен в этом контексте.

См. TringMe 🙂

Deathstalker ★★★★★
()
Ответ на: комментарий от Karthago

Регистрация протокола дальше вызова софтфона ничего не дала. А то, что если написать скрипт и всё заработает... это и так понятно. Готовых решений, я так понимаю, нет. Кстати, на оффтопике тоже не густо с этим, как мне показалось. Вот тут всё так подробно написано, но не работает, к сожалению :(

Desmond_Hume ★★★★★
() автор топика
Последнее исправление: Desmond_Hume (всего исправлений: 1)
Ответ на: комментарий от Desmond_Hume

Видимо, приложение некорректно обрабатывает ссылку. Проиллюстрирую на конкретном примере: есть стрелялка warsow и есть страница https://www.warsow.net/wmm_servers , где ссылки вида connect ведут на адрес warsow://<ip:port>. Пишем обёртку наподобии этой:

#!/bin/sh

# будет передан только <ip:port>
exec /usr/lib/games/warsow/warsow +connect "$@"

Создаём в about:config булеву network.protocol-handler.expose.warsow, ставим значение в false. Нажимаем на warsow-ссылку, выбираем написанную обёртку и готово.

Попробуй сначала приконнектится к кому-нибудь своей программой из консоли с аргументом (и необходимыми опциями) вида 1234567890@sip.linphone.org, нормальные программы должны уметь обрабатывать такое.

Karthago ★★
()
Последнее исправление: Karthago (всего исправлений: 3)
Ответ на: комментарий от Karthago

У linphone есть командный вид, который вызывается командой linphonec, а при помощи ключа -s можно сделать звонок абоненту из терминала. Вот только как приложить к этой команде получаемый со странички номер? «$@» не подойдёт же?)

Desmond_Hume ★★★★★
() автор топика
Ответ на: комментарий от YAR

Да это понятно всё, но как передать номер со странички в браузере демону?

Desmond_Hume ★★★★★
() автор топика
Ответ на: комментарий от Karthago

https://yadi.sk/d/R54pXS3A32DeMY - это ссылка.. а вызов программы - linphone (/usr/bin/linphone). Вышеуказанная linphonec находится в том же каталоге. Даже если скрипт написать, то как ему указать номер из браузера?

Desmond_Hume ★★★★★
() автор топика
Последнее исправление: Desmond_Hume (всего исправлений: 1)

По идее, вот так работает:

xdg-mime default transmission-remote-gtk.desktop application/x-bittorrent x-scheme-handler/magnet

Firefox это переваривает вполне адекватно, и не нужно никаких извращений с about:config.
Соответственно, для SIP и Linphone будет примерно так:
xdg-mime default linphone.desktop x-scheme-handler/sip

И linphone.desktop должен содержать что-то типа:
Exec=linphone %U

ArcFi
()
Ответ на: комментарий от ArcFi

Если для запуска клиента и для звонка используются разные команды, то:

xdg-mime default linphone-call.desktop x-scheme-handler/sip

linphone-call.desktop
Exec=linphone_call_command --linphone --call --options %U

ArcFi
()
Ответ на: комментарий от ArcFi

Кроме того, надо иметь ввиду следующее:

  • /usr/share/applications/*.desktop — системное, лучше не трогать
  • ~/.local/share/applications/*.desktop — пользовательское, при совпадении имён перекрывает системное
  • desktop-файлы из указанных каталогов кэшируюся, изменение может требовать рестарта сеанса, что в gnome-shell решается через Alt+F2, r
  • ~/.config/mimeapps.list — ассоциации, в т.ч. обработки протоколов
ArcFi
()
Ответ на: комментарий от ArcFi

Я так и делал, и окошко Linphone появлялось, с этим проблемы нет. Проблема с параметром Exec, т.к. появляющееся окошко Linphone не содержало вызываемого номера. %u, %U - пробовал, безуспешно. А найти какой-то мануал по этим ключам с % - по-моему, нереально)). Почему, например, именно %U, а не %а или %Z? Где бы это почитать...

Desmond_Hume ★★★★★
() автор топика
Последнее исправление: Desmond_Hume (всего исправлений: 1)
Ответ на: комментарий от Karthago

Класс! То, что нужно. Буду изучать. Спасибо!

Desmond_Hume ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.