Замечательный прибор - телефонный голосовой VoIP-адаптер, позволяет организовать телефонные вызовы поверх сети Интернет, с использованием существующих обычных телефонных аппаратов. Т.с. вторая жизнь старого железа.
Итак, настройка плана вызовов адаптера Cisco SPA112, в домашних условиях, в городе Санкт-Петербурге.
Подключение к VoIP-провайдеру, выполняется в соответсвии с описанием на сайте провайдера. В моем случае это SIPNET.
Для удобства пользования телефоном людьми не знакомыми с VoIP, применяется имитация поведения обычного телефонного аппарата.
План набора номеров (Dial plan) находится в разделе Voice Line1 встроенного web-интерфейса адаптера Cisco SPA112.
Итак, настройка плана вызовов адаптера Cisco SPA112, в домашних условиях, в городе Санкт-Петербурге.
Подключение к VoIP-провайдеру, выполняется в соответсвии с описанием на сайте провайдера. В моем случае это SIPNET.
Для удобства пользования телефоном людьми не знакомыми с VoIP, применяется имитация поведения обычного телефонного аппарата.
План набора номеров (Dial plan) находится в разделе Voice Line1 встроенного web-интерфейса адаптера Cisco SPA112.
Dial plan. План набора номеров
Имитация правил набора местного санкт-петербургского телефона, с некоторыми ограничениями для коротких номеров
План набора номеров записывается серией шаблонов совпадения разделённых символом | и заключенный в скобки ().
(шаблон|шаблон|шаблон|шаблон...)
Между набранными символами есть интервал 3 секунды. Т.н. Interdigit_Short_Timer. Он применяется, когда пользователский ввод уже попал в какой-либо шаблон.
Есть т.н. Interdigit_Long_Timer, 10 секунд, он применятся пока пользовательский ввод не попал в шаблон.
x - любая цифра
, - вторичный гудок
[xxxxxx] - цифры в квадратных скобках, ограничивают набранную пользователем цифру, на конкретном месте в номере. Т.е. можно набрать в этом месте только те цифры, которые заключены в квадратные скобки. Применяется для ограничения и следования ограничениям телефонных номеров.
<xxx:xxx> - символы замены-подмены-измены, при отсылке номера провайдеру.
# - символ окончания набора номера и начала отправки в SIPNET. Применяется чтобы не ждать интервал в конце набора номера
S - ожидание, в секундах. S0 - не ждать, а сразу отправлять номер в SIPNET.
L - ожидение, в секундах. Влияет на Interdigit_Long_Timer. Т.е. для задумчивых людей, можно увеличить интервал.
P - пауза, в секундах. P5 - ждать 5 секунд.
x. - указывает что элемент x может повторятся от 0 до любого число раз. В данном случае x - любая цифра.
Итак, для Санкт-Петербурга
Код страны РФ: 7
Код города Санкт-Петербурга: 812
Семизначный городской номер xxxxxxx
Междугородний номер 8 473 ххххххх
Мобильные номера через 8 либо в международном формате 7 xxx xxxxxxx
Международный номер 8 10 380 ххх ххххххх
Т.е. набрав семизначный городской номер, я должен отправить в sipnet последовательность +7812ххххххх, т.к. SIPNET принимает номера в международном универсальном формате.
Итак, простейшие пример для sipnet
я набираю только городской номер xxxxxxx или xxxxxxx#
и шаблон (усечённый план набора) будет выглядить так:
(<:7812> xxxxxxx )
Производится подстановка цифр 7812, перед каждым набранным пользователем номером xxxxxxx.
Усечённый план набора (<:7812> xxxxxxx ) сообщает, что только местные городские номера доступны.
Далее,
Я набираю только междугородний номер
8 xxx xxxxxxx или 8 xxx xxxxxxx#
заменяем набранную восьмёрку на 7
( <8:7> xxx xxxxxxx )
если я начинаю набирать номер с 7 то,
( 7 xxx xxxxxxx )
объединяем два правила с помощью символа |
( <8:7> xxx xxxxxxx | 7 xxx xxxxxxx )
Далее,
Я набираю только международный номер или номер в международном формате 810 xxx xxx xxxxxxx
( <810:> xxx xxx xxxxxxx )
Набранные цифры 810 отбрасываются, а то, что пользователь набрал (предполагается в верном формате) отправляется в SIPNET.
Такие шаблоны получаются, т.к. я не знаю ограничений на цифры в номерах, кодах городов и пр.
Теперь их можно объединить с помощью символа | в единый план.
( <:7812> xxxxxxx | <8:7> xxx xxxxxxx | 7 xxx xxxxxxx | <810:> xxx xxx xxxxxxx )
Это зачаток плана набора. Но он работает.
Улучшение шаблонов путем наложения ограничений.
Т.к. предполагаю, что городских номеров начинающихся с цифры 8 нет, исключены телефонными станциями, то шаблон для городского номера выглядит так, в первой итерации.
(<:7812> [12345679]xxxxxx )
или
(<:7812> [1-79]xxxxxx )
Теперь, чтобы система не ждала следующую цифру после набор 7 цифр, ставится символзадержки S0, где 0 - ноль секунд
и набор номера начнётся сразу.
(<:7812> [1-79]xxxxxxS0 )
Чтобы имитировать гудок телефонной станции после набора восьмёрки и восьмёрки и десятки, используется запятая.
( <:7812> [1-79]xxxxxxS0 | <8,:7> xxx xxxxxxx | 7 xxx xxxxxxx | <8,10:> xxx xxx xxxxxxx)
Теперь надо понять, как набирать SIP-номера (SIP ID).
Для набор SIP номера, нужен какой-то префикс в начале:
"В настоящее время у абонентов SIPNET могут быть как 7-значные, так и более длинные 10-значные SIP ID" - цитата из wiki SIPNET.
На сайте Sipnet[1] указан пример шаблона:
<0,:>xxx.
0, гудок, затем хотя бы 2 цифры SIP ID,
в конце нет S0, т.е. нет принудительного окончания набора после ввода определенного количества цифр, набор начнётся либо по таймауту либо по нажатию клавиши #
Итак, получим простейший рабочий план набора:
( <:7812> [1-79]xxxxxxS0 | <8:7> xxx xxxxxxx | 7 xxx xxxxxxx | <810:> xxx xxx xxxxxxx | <0,:>xxxxxxx. )
Короткие номера
Короткие (01,02,03,04) и бесплатные номера (8 800), провайдер SIPNET не позволяет набирать при вызовах в телефонные сети общего пользования (ТФоП).
Но адаптер позволяет набирать короткие номера, и путем подстановки передавать в SIPNET полные.
На сайте правительства СПб, есть номера служб. В том числе и полные:
http://gov.spb.ru/helper/phones/
Есть дежурный телефон региональной службы спасения: 380-91-19, так что можно его сконвертировать в шаблон и потом добавить в план набора.
(<112:78123809119>)
Для проверки работоспособности, чтобы не беспокоить зря службы, можно использовать шаблон с собственным мобильным номером.
Куда перенаправить службы 01,02,03,04 - это надо подумать.
Горячая линия с автонабором
"Горячая линия" (Hotline).
При поднятии трубки и ожидании некоторого времени, производится набор определённого номера.
70000000000 - набираемый номер, после 12 секунд поднятой трубки.
( P12 <:7000000000> )
Пока всё.
※※※
Ресурсы
1. Dialplan в Linksys. https://wiki.sipnet.ru/index.php/Dialplan_%D0%B2_Linksys
2. Звонок в ТФОП. https://wiki.sipnet.ru/index.php?title=%D0%97%D0%B2%D0%BE%D0%BD%D0%BE%D0%BA_%D0%B2_%D0%A2%D0%A4%D0%9E%D0%9F
3. Explaining Dial Plan. http://www.cisco.com/c/en/us/support/docs/collaboration-endpoints/spa901-1-line-ip-phone/108747-pqa-108747.html
4. Экстренные телефоны. http://gov.spb.ru/helper/phones/
5. Пишем план для Cisco SPA122. http://forum.3dnews.ru/showthread.php?t=135568
※※※
※
1 комментарий:
Отличная статья, спасибо огромное!
Отправить комментарий