Я пытаюсь заставить работать функцию click to call, используя Qutecom для софтфона и скрипт Greesemonkey для преобразования телефонных номеров в кликабельные URL-адреса. Всякий раз, когда я нажимаю на ссылку с номером телефона, я получаю следующее сообщение об ошибке:
Firefox не знает, как открыть этот адрес, поскольку протокол (tel) не связан ни с одной программой.
Как бы мне связать Qutecom или любой другой софтфон с этой ссылкой? Скрипт Greasemonkey можно найти по ссылке ниже:
http://userscripts.org/scripts/show/56262
Любая помощь будет высоко оценена.
решение1
Под Windows, вы можете создать новый протокол с помощью редактора реестра:
Start / Run / regedit
Найдите HKEY_CLASSES_ROOT
улей и создайте новую серию ключей со следующей структурой:
tel\shell\open\command
На tel
уровне отредактируйте (Default)
строку и измените ее значение на URL:tel Protocol
Снова на tel
уровне добавьте новую строку с именем URL Protocol
и без значения.
Затем на command
уровне отредактируйте (Default)
строку и в разделе значений введите команду, которую хотите выполнить:
c:\path\to\telephone\application.exe %1
%1 будет заменен тем, что указано после последовательности tel:, т. е. номером телефона.
И этого должно хватить.
Под Ubuntu
Это может зависеть от версии, но следующее должно сработать:
gconftool-2 -t string -s /desktop/gnome/url-handlers/tel/command "/path/to/telephone/application %s"
gconftool-2 -s /desktop/gnome/url-handlers/tel/needs_terminal false -t bool
gconftool-2 -t bool -s /desktop/gnome/url-handlers/tel/enabled true
В этом случае %s будет заменен на номер телефона.
В случае с qutecom командная строка Windows, по-видимому, должна быть следующей:
"c:\program files\qutecom\qutecom.exe" -c call\%1
(скорректируйте в соответствии с местом установки и попробуйте сначала выполнить это из командной строки DOS, заменив %1 на номер телефона)
решение2
Если вы оказались в такой же ситуации, то я придумал решение, которое заключается в том, чтобы указать команде реестра для протокола пакетный файл, который оценивает параметр командной строки, удаляя часть «tel:» и запускает QuteCom...
Итак, вот что я ввел в качестве строки в ключ реестра:
"C:\telProtocolHandler.bat" %1
Вот содержимое моего telProtocolHandler.bat:
set PathExe="C:\Program Files (x86)\QuteCom\QuteCom.exe"
set CLcmd=-c call/
set CLprm=%1
set CLprm=%CLprm:tel:=%
start "" %PathExe% %CLcmd%%CLprm%
Теперь это работает как часы под Windows 7.
решение3
Ответ Пола приемлем, но лучше использовать протокол «sip» вместо «tel», иначе QuteCom попытается вызвать «tel:#########», поскольку браузеры передают URI в %1.
Также в Windows 7 и последней версии QuteCom мой путь выглядит так (обратите внимание на косую черту вместо обратной):
C:\Program Files (x86)\QuteCom\QuteCom.exe -c call/"%1"