Как изменить обработчик протокола URL ( tel, mailto, callto ) в Windows 10
В этой статье будет описано, как в Windows 10 настроить приложение для открытия ссылок URL (tel, mailto, callto и т.д.) в браузере.
Например, сделать так, чтобы при нажатии на телефонный номер на сайте открывался софтфон phonerlite.
Также будет показан общий принцип добавления и изменения приложения по умолчанию через реестр в Windows 10.
Содержание
Введение
Данная статья возникла из-за банальной задачи, которая до Windows 10 решалась достаточно просто, через графический интерфейс «Панель управления — Все элементы панели управления — Программы по умолчанию — Задать сопоставления»
Задача следующая:
Существует отдел продаж, который использует в своей работе ip-телефонию. В качестве телефонов используют софтфоны (Softphone) phonerlite и microsip. Также нужно, чтобы у менеджера при нажатии на телефонный номер на сайте клиента открывалось окно с выбором софтфона, а после выбора выполнялся вызов на этот номер.
Казалось бы, что тут сложного. Выбираем приложение для протокола tel и всё. Но в Windows 10 при выборе приложения отсутствуют установленные софтфоны.
PhonerLite Default Tel
При изучении вопроса оказалось, что не все приложения (не только софтфоны) корректно заносят данные в реестр.
В этой статье приведем пример, как добавить софтфон PhonerPhone в список приложений для выбора протокола tel для браузера Chrome.
Описание тестового стенда
- Для тестирования будем использовать виртуальную машину с установленной Windows 10 Pro Версия:1909
- Устанавливать будем софтфон PhonerLite версия: 2.89
- Открывать будем в браузере Chrome 89.0.
План работ. Краткое описание действий
- Установим софтфон PhonerLite
- Внесем изменения в реестр (изменения реестра и описание ниже в статье)
- Откроем браузер Chrome перейдем по ссылке tel:+788888888888 (номер для примера). Также можно зайти на какой-нибудь сайт, где есть номера телефонов (открытие через протокол tel:) и нажать на него.
- Проверяем, что приложение PhonerLite появилось в списке для выбора.
- Выбираем софтфон PhonerLite и проверяем, что в нем будет выполняться вызов номера +788888888888
Установка и настройка софтфона PhonerLite
Подробно описывать установку softphone PhonerLite в данной статье не будем, там все очень тривиально. Если с этим возникнут проблемы, можете обратиться к нашей статье Обзор и основные возможности софтфона PhonerLite.
Отметим один важный момент. В настройках софтфона PhonerLite есть выбор «Обработчика протокола URL«, можно выбрать: tel:, sip:, callto:, hungup:. При выборе вносятся изменения в реестр. Как выяснилось, изменения не совсем корректные. Работать будет, но только с одним софтфоном. Этим способом не получится добавить в меню «Как вы хотите это открыть?» несколько приложений, например: phonerlite, microsip и blink.
Поэтому рекомендуем внести изменения в реестр самим.
Регистрация в реестре программы для обработчика протокола URL
Добавление ProgID
Для начала добавим так называемый ProgID. Программный идентификатор (ProgID) — это запись реестра, которая может быть связана с CLSID. Как и CLSID, ProgID идентифицирует класс, но с меньшей точностью, поскольку не гарантируется его глобальная уникальность.
Данные в ProgID указывают, как будет обрабатываться ввод, данный ему (ProgID — программному идентификатору).
В нашем примере мы добавили:
- ProgID — PhonerLite
- DefaultIcon — иконка для отображения в меню. Она берется из файла C:\Program Files (x86)\PhonerLite\PhonerLite.exe . Параметр «0» указывает, что берем иконку указанного файла.
- command — программа, которая запускается при обращении к ProgID — PhonerLite. Обратите внимание на параметр %1. В нашем случае это как раз номер телефона, который будет передаеться для набора. Если у вас передаются два параметра и вам нужен второй, то укажите %2.
Добавление Capabilities (возможностей приложения)
Следующим шагом добавляем описание для нашего приложения PhonerLite и ассоциацию протокола tel и созданного выше ProgID — PhonerLite
- ApplicationDescription — описание приложения
- ApplicationIcon — путь к ярлыку приложения
- ApplicationName — имя приложения
- URLAssociations — раздел, в котором содержатся протоколы, которые могут использовать приложение. Формат Protocol=ProgID
Регистрация возможностей приложения [HKEY_CURRENT_USER\Software\RegisteredApplications]
В заключении нужно добавить наше приложение PhonerLite в список программ по умолчанию.
Полный текст reg файла для добавления приложения PhonerLite в список приложений по умолчанию.
Для удобства предлагаем создать файл phonerUrlTel.reg и записать туда данный текст.
После этого запустить данный файл (понадобятся права администратора) и данные будут записаны в реестр.
Проверка того, что приложение PhonerLite появилось в списке приложения по умолчанию для протокола tel
Для проверки откроем браузер Chrome и в адресной строке введем tel:+788888888888 (номер для примера).

PhonerLite Default Tel:
Нажимаем «Выбор приложения» и в открывшемся окне, после наших настроек, появилось приложение PhonerLite.

PhonerLite Default Tel:
Выбираем его и видим, что открылся софтфон и в нем выполняется исходящий вызов по номеру +788888888888

PhonerLite Default Tel:
Задачу выполнили. Теперь по нажатию на телефонный номер в браузере (где протокол tel:) выполняется вызов через приложение PhonerLite.
Настройка приложения для открытия ссылок URL (tel:) в браузере

4. После этого требуется запустить данный файл (понадобятся права администратора) и данные будут записаны в реестр.
5. Для проверки откроем браузер Chrome и в адресной строке введем tel:+788888888888 (номер для примера) .
6. Нажимаем "Выбор приложения" и в открывшемся окне, после наших настроек, появилось приложение Notepad++ ( приложение для примера)

7. Выбираем его и видим, что открылся выбранный нами софт и в нем выполняется исходящий вызов по номеру +788888888888
Теперь по нажатию на телефонный номер в браузере (где протокол tel:) выполняется вызов через выбранное приложение.
Ниже представлено пояснение:
- ProgID — PhonerLite
- DefaultIcon — иконка для отображения в меню. Она берется из файла C:\Program Files (x86)\PhonerLite\PhonerLite.exe . Параметр "0" указывает, что берем иконку указанного файла.
- command — программа, которая запускается при обращении к ProgID — PhonerLite. Обратите внимание на параметр %1. В нашем случае это как раз номер телефона, который будет передается для набора. Если у вас передаются два параметра и вам нужен второй, то укажите %2.
Добавление Capabilities (возможностей приложения)
- ApplicationDescription — описание приложения
- ApplicationIcon — путь к ярлыку приложения
- ApplicationName — имя приложения
- URLAssociations — раздел, в котором содержатся протоколы, которые могут использовать приложение. Формат Protocol=ProgID
Регистрация возможностей приложения
В заключении нужно добавить необходимое приложение (прим. Notepad++) в список программ по умолчанию.
Использование tel Протокола с 3CXPhone для Windows

Самый простой способ охарактеризовать что такое tel Протокол, это просто представить себе это как ссылку, передающую телефонный номер. Это означает, что когда Вы кликаете на tel ссылку, протокол попытается передать номер на приложение, которое может совершить вызов. Tel ссылка принимает форму: tel: +35722444032.
Первая часть URI определят протокол, а вторая часть определяет набранный номер (который может быть как в местном или международном формате). Клиент 3CXPhone теперь интегрируется с tel протоколом для предоставления пользователям функции вызова одним кликом.
Использование CXPhone с tel Протоколом
Для выполнения вызовов через tel протокол, установите клиент 3CXPhone для Windows на Ваш компьютер, а затем выполните эти шаги:
- Найдите Веб страницу, на которой есть tel ссылки. В этом примере мы будем использовать https://www.3cx.com/office/usa-office/. Кликните на tel ссылку.
alt=» tel протокол» width=»600″ height=»346″ /> - Появится диалоговое окно с названием ” Запрос Внешнего Протокола”, которое попросит Вас запустить зарегистрированное приложение (3CXPhone для Windows) для обработки ссылки.
- Выберите “Запустить Приложение” для использования клиента 3CXPhone для Windows.
alt=»tel Протокол» width=»187″ height=»301″ /> - Появится 3CXPhone для Windows и произведет вызов на номер находящийся в ссылке.
Объединение tel Протокола с 3CXPhone
Во время установки, 3CXPhone для Windows автоматически зарегистрируется как обработчик tel протокола. Если Вы обнаружите,что зарегистрировано другое приложение для управления tel ссылками, на более позднем этапе, Вы можете поменять регистрацию обратно на 3CXPhone:
alt=»tel Протокол» width=»600″ height=»415″ />
- Откройте Панель Управления Windows и кликните на “Программы по умолчанию“.
alt=»tel Протокол» width=»600″ height=»417″ /> - Выберите “Сопоставление типа файлов или протоколов с программой” из списка программ по умолчанию.
alt=»tel Протокол» width=»600″ height=»416″ />
- Прокрутите вниз к нижней части списка в разделе протоколов, выберите и кликните на “Заменить программу“.
alt=»tel Протокол» width=»600″ height=»416″ />
- Выберите “3CXPhone для Windows” из списка программ. Кликните на кнопку закрыть для закрытия панели “Установить сопоставление” .
Теперь CXPhone для Windows установлен как обработчик tel ссылок по умолчанию.
Ссылка для набора телефонных звонков (ссылка-номер)

В наше время мобильные устройства, используемые для обозревания веб-сайтов перестали быть чем-то необычным. По этому, важно на своем сайте предусмотреть удобство пользования не только для пользователей персональных компьютеров, но и для пользователей мобильных устройств, таких как телефоны и планшеты. Особенностью таких устройств является сенсорное управление — и некоторые вещи, которые на обычном компьютере могут показаться не особо нужными, на таких устройствах могут существенно облегчить жизнь. Одной из таких вещей является так называемая ссылка на номер телефона — пользователю достаточно лишь нажать на неё, и у него на устройстве наберется определенный номер, за счет чего исчезнет необходимость его ручного набора. О том, как сделать такую ссылку, мы и поговорим в этой статье.
Делаем номера телефонов ссылкой
И так, допустим у нас есть номер +7123456789, который на сайте отображен как +7(123)456789. По хорошему, чтобы пользователю не пришлось его набирать вручную, нужно сделать так, чтобы по нажатию на номер телефона, он сам «набрался» у пользователя на телефоне. Делается это с помощью html тега <a> , где атрибут href ведет на ссылку, начинающуюся на tel. То есть для выше приведенного номера телефона это будет выглядеть следующим образом:
Все, что пользователю нужно будет сделать — это нажать на такой номер телефона, и номер сам «наберется» на устройстве.
Добавочные номера
Если вы звонили по какому-нибудь телефону крупной компании, или социальной службы, вы наверное обращали внимание на так называемый добавочный номер — после звонка вам автоответчик предлагает нажать определенную цифру, чтобы вы попали в определенный отдел, определенному человеку и т. д.
В качестве примера представим, что к телефонному номеру +712345678 нужно добавить добавочный номер 1. Если попробовать это сделать следующим образом:
То такая ссылка будет не рабочей, так как по факту получится не верный номер телефона. Добавочный номер нужно добавлять в ссылку через символ запятой, сразу после основного номера. Правильная ссылка выглядит следующим образом: