FreePBX(Asterisk): Колхозный метод перехода с SIP на PJSIP

Хочу сразу проговорить, почему метод назвал колхозным - отсутствие автоматизации. Руками, всё руками... Тем не менее, бывают единичные задачи, которые требуется выполнить "вчера" и желания писать скрипты не возникает. Одной из таких задач(после смены платформы) была "Перенос внутренних номеров SIP на PJSIP".

Создаем новый внутренний в PJSIP, например 101;

Булком выгружаем внутренние номера и получаем файл со строками типа:

100,,"FIO User",novm,0,,,,,,,,,,,default,100,sip,SIP/100,fixed,100,"FIO User",,,dontcare,dontcare,dontcare,dontcare,disabled,10,,,100,0,,,no,"device <100>",no,Corp,,0.0.0.0/0.0.0.0,,rfc2833,no,no,dynamic,no,100@device,,,no,,0.0.0.0/0.0.0.0,5060,yes,60,no,046fd7b96dbb64cea9ab,no,accept,chan_sip,udp,yes,friend,inherit,,ENABLED,ringallv2-prim,20,,100,0,"ext-local,100,dest",,,0,0,Ring,7,novm,,yes,default,,,

И новым номером, например 101:

101,,FIO User,novm,0,,,,,,,,,,,default,101,pjsip,PJSIP/101,fixed,101,FIO User,,,yes,yes,yes,yes,disabled,10,,,101,3,,,no,FIO User <101>,,from-internal,,,,rfc4733,,,,no,,,,,,,,,60,no,046fd7b96dbb64cea9ab,pai,,chan_pjsip,,yes,,,,yes,0,yes,yes,,1,7200,no,no,no,60,auto,yes,yes,yes,ENABLED,ringallv2-prim,20,,101,,"ext-local,101,dest",,,,,Ring,7,novm,,yes,default,,,

Открываем полученный файл в Notepad++ и жмем: Ctrl+H -> Режим поиска "Расширенный"

В поле "Ищем:" указываем , (запятая) В поле "Меняем на:" \t (слеш тэ);

Результат копируем буфером в эксель, выделяем строку в PJSIP отличным от остальных цветом и начинаем править значения по аналогу с новым номером;

Столбец "callerid" меняем формулой: =V2&" <"&AG2&">";

Копируем полученное содержимое в Notepad++ и вновь Ctrl+H, только теперь меняем \t (слеш тэ) на , (запятая) и сохраняем.

Импортируем полученный файл через Bulk Handler;

Готово!

Posted in Asterisk on Oct 24, 2019