Страница 1 из 2
Set CID
Добавлено: 18 ноя 2016, 13:21
skynetyar
Коллеги, добрый день!
Астериск 13 FreePBX 13 Может это не совсем сюда,но может быть поможете с этим вопросом?!
В данный момент Все входящие обрабатываются таким образом
Код: Выделить всё
extension_custom.conf
[from-pstn-custom]
exten => _X.,1,ExecIF($[${VALID_EXTEN(fix-cid,${CALLERID(num)})}]?Gosub(fix-cid,${CALLERID(num)},1))
[fix-cid]
exten => _.,1,Set(CALLERID(all)=+7${CALLERID(num):-10:10})
exten => _.,n,Set(CALLERID(ANI-all)=${CALLERID(num)})
exten => _.,n,Return()
С разных провайдеров звонок приходи по разному где то с 8 в начале, где то с +7 а где то просто с 7 , задача преобразовать все номера в международный единый стандарт для дальнейшей обработки..
Данный код нормально пока справляется, но хотелось бы это делать силами FreePBX и модулем Set CID
При создании правила там такие значения
CallerID Name значение ${CALLERID(name)}
CallerID Number значение ${CALLERID(num)}
Destination значение куда хочу
Правильно ли я понял что нужно примерно так
CallerID Number значение +7${CALLERID(num):-10:10}
Ну и Destination на группу..
Re: Set CID
Добавлено: 18 ноя 2016, 13:25
ded
Нет, не правильно. задача преобразовать все номера в международный единый стандарт е164 (где то с 8 в начале, где то с +7 а где то просто с 7) носит название Нормализация Caller ID для дальнейшей обработки..
Надо скачать модуль Set Caller ID в Module admin из бесплатных репозиториев, и встроить его в цепочку Inbound route, а не творить кастомные безобразия.
Re: Set CID
Добавлено: 18 ноя 2016, 13:29
skynetyar
Дак это он и есть, идет в поставке с FreePBX просто когда его открываешь вверху написано "Set CID"..
Ну значения то я верно указал ?
Да все верно, нормализовать все номера..
Re: Set CID
Добавлено: 18 ноя 2016, 13:31
ded
А зачем extension_custom.conf ?
[from-pstn-custom] ?
Делаем сначала входящий маршрут (для понимания и примера)
ANY DID / _8ZXXXXXXXXX и направляем его в созданный уже Set Caller ID там в правило для восьмёрок (звонок с 84951234567)
+7${CALLERID(num):1} - на выходе получается звон/ят с +74951234567
откуда оно направляется на группу, ИВР, или ещё куда.
[from-pstn-custom] не нужен.
Re: Set CID
Добавлено: 18 ноя 2016, 13:36
skynetyar
Ну это сейчас так, по кривому,но работает, а хотелось бы как положено!
[from-pstn]-->[from-pstn-custom] это вроде как по стандарту
В данный момент так
Код: Выделить всё
[from-pstn-custom]
exten => _X.,1,ExecIF($[${VALID_EXTEN(fix-cid,${CALLERID(num)})}]?Gosub(fix-cid,${CALLERID(num)},1))
[fix-cid]
exten => _.,1,Set(CALLERID(all)=+7${CALLERID(num):-10:10})
exten => _.,n,Set(CALLERID(ANI-all)=${CALLERID(num)})
exten => _.,n,Return()
Но хочется как следует через FreePBX сделать.
Re: Set CID
Добавлено: 18 ноя 2016, 13:43
ded
Следующий входящий маршрут (для понимания и примера)
ANY DID / _7ZXXXXXXXXX и направляем его в созданный уже Set Caller ID там в правило для семёрок (звонок с 74951234567)
+${CALLERID(num)} - на выходе получается звон/ят с +74951234567
откуда оно направляется на группу, ИВР, или ещё куда.
[from-pstn-custom] не нужен.
Re: Set CID
Добавлено: 18 ноя 2016, 14:08
skynetyar
Да все верно custom это черный ход был...
Но в Inbound Routes в Set Destination что то не нахожу Set Caller ID
И с +7${CALLERID(num):-10:10} я правильно правило написал?
Да,по инструкции все верно с кодом..
Осталось понять как его применить...
Re: Set CID
Добавлено: 18 ноя 2016, 14:44
ded
Есть, если Вы создали такой объект.
skynetyar писал(а):И с +7${CALLERID(num):-10:10} я правильно правило написал?
У меня тут стопка тетрадей с диктантом по синтаксису диалплана.
Сплошные ошибки, подчёркиваю красным! И двойки ставлю.
Re: Set CID
Добавлено: 18 ноя 2016, 15:09
skynetyar
Брр, простите за невежество...но
Насколько я понял из дискуссии ,нужно:
1.Создать в модуле Set CallerID нужный параметр.
1.В нужном Inbound Routes добавить в пункте Set Destination Set CallerID
Но у меня нет в Inbound Routes в поле Set Destination этого Set CallerID
Re: Set CID
Добавлено: 18 ноя 2016, 16:00
ded
Значит мы выяснили с Вами, что у Вас нет, а у нас есть.