Как создать правило чтобы при наборе телефона 51240 он преобразовывался в 83882251240

61 просмотров
спросил 13 Май от Mongrell (300 баллов) в категории Редактор маршрутов

2 Ответы

+1 голос
ответил 13 Май от boffart (42,840 баллов)
редактировать 14 Май от boffart

Выполните рекомендации из инструкции

https://wiki.mikopbx.com/faq:outbound-routes:add8

Пример

оставил комментарий 14 Май от Mongrell (300 баллов)
Мне нужно что бы я мог звонить без кода города, т.е. набирать не 83882251240, а 51240, в данный момент отвечает "данный номер не может быть набран"
оставил комментарий 14 Май от boffart (42,840 баллов)
Дополнил ответ скриншотом. Попробуйте настроить как на изображении.
оставил комментарий 14 Май от Mongrell (300 баллов)
Настроил, теперь отвечает "извините в данный момент соединение невозможно"
оставил комментарий 14 Май от boffart (42,840 баллов)
оставил комментарий 14 Май от Mongrell (300 баллов)
-- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- AGI Script Executing Application: (UserEvent) Options: (CdrConnector,AgiData:eyJhY3Rpb24iOiJkaWFsIiwic3JjX2NoYW4iOiJTSVBcLzIxNy0wMDAwMDAwZCIsInNyY19udW0iOiIyMTciLCJkc3RfbnVtIjoiMjA0MDAiLCJzdGFydCI6IjIwMTktMDUtMTQgMTE6MTc6MjUuODcxIiwibGlua2VkaWQiOiJtaWtvcGJ4LTE1NTc4MjE4NDUuMTMiLCJVTklRVUVJRCI6Im1pa29wYngtMTU1NzgyMTg0NS4xM19ZSnNZMmxZVmpZIiwidHJhbnNmZXIiOiIwIiwiYWdpX2NoYW5uZWwiOiJTSVBcLzIxNy0wMDAwMDAwZCIsImRpZCI6IiIsImZyb21fYWNjb3VudCI6IjIxNyIsIklTX09SR05UIjpmYWxzZX0=)
    -- <SIP/217-0000000d>AGI Script cdr_connector.php completed, returning 0
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:5] ExecIf("SIP/217-0000000d", "0?Set(DOPTIONS=tk)") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:6] GosubIf("SIP/217-0000000d", "1?SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom,20400,1") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:1] ExecIf("SIP/217-0000000d", "0?return") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:2] Set("SIP/217-0000000d", "PREFIX_NUMBER=2") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:3] ExecIf("SIP/217-0000000d", "1?Goto(outgoing,220400,4)") in new stack
    -- Goto (outgoing,220400,4)
    -- Executing [220400@outgoing:4] ExecIf("SIP/217-0000000d", "0?Gosub(SIP-PROVIDER-BFB9807C7E17B32091C5FDCE42279C27-22-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:5] ExecIf("SIP/217-0000000d", "0?Gosub(SIP-PROVIDER-11D0005A77C5FCACB156228D51250143-23-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:6] ExecIf("SIP/217-0000000d", "0?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-24-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:7] ExecIf("SIP/217-0000000d", "0?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:8] ExecIf("SIP/217-0000000d", "0?Hangup()") in new stack
    -- Executing [220400@outgoing:9] ExecIf("SIP/217-0000000d", "0?AGI(cdr_connector.php,dial_hangup)") in new stack
    -- Executing [220400@outgoing:10] ExecIf("SIP/217-0000000d", "0?AGI(check_redirect.php,)") in new stack
    -- Executing [220400@outgoing:11] ExecIf("SIP/217-0000000d", "0?AGI(cdr_connector.php,dial)") in new stack
    -- Executing [220400@outgoing:12] Playback("SIP/217-0000000d", "silence/2") in new stack
    -- <SIP/217-0000000d> Playing 'silence/2.alaw' (language 'ru-ru')
    -- Executing [220400@outgoing:13] ExecIf("SIP/217-0000000d", "1?Playback(followme/sorry):Playback(cannot-complete-as-dialed)") in new stack
    -- <SIP/217-0000000d> Playing 'followme/sorry.alaw' (language 'ru-ru')
    -- Executing [220400@outgoing:14] Hangup("SIP/217-0000000d", "") in new stack
  == Spawn extension (outgoing, 220400, 14) exited non-zero on 'SIP/217-0000000d'
    -- Executing [h@outgoing:1] AGI("SIP/217-0000000d", "cdr_connector.php,dial_hangup") in new stack
    -- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- <SIP/217-0000000d>AGI Script cdr_connector.php completed, returning 0
    -- SIP/217-0000000d Internal Gosub(hangup_handler,s,1) start
    -- Executing [s@hangup_handler:1] NoOp("SIP/217-0000000d", "--- hangup - SIP/217-0000000d ---") in new stack
    -- Executing [s@hangup_handler:2] AGI("SIP/217-0000000d", "cdr_connector.php,hangup_chan") in new stack
    -- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- AGI Script Executing Application: (UserEvent) Options: (CdrConnector,AgiData:eyJhY3Rpb24iOiJoYW5ndXBfY2hhbiIsImRpZCI6IiIsImFnaV90aHJlYWRpZCI6Im1pa29wYngtMTU1NzgyMTg0NS4xM19uS2x6QnQ1dzFZIiwibGlua2VkaWQiOiJtaWtvcGJ4LTE1NTc4MjE4NDUuMTMiLCJkaWFsc3RhdHVzIjoiIiwiYWdpX2NoYW5uZWwiOiJTSVBcLzIxNy0wMDAwMDAwZCIsImVuZCI6IjIwMTktMDUtMTQgMTE6MTc6MzEuODA5IiwiT0xEX0xJTktFRElEIjoibWlrb3BieC0xNTU3ODIxODQ1LjEzIiwiVU5JUVVFSUQiOiJtaWtvcGJ4LTE1NTc4MjE4NDUuMTNfWUpzWTJsWVZqWSJ9)
    -- <SIP/217-0000000d>AGI Script cdr_connector.php completed, returning 0
    -- Executing [s@hangup_handler:3] Return("SIP/217-0000000d", "") in new stack
  == Spawn extension (outgoing, h, 2) exited non-zero on 'SIP/217-0000000d'
    -- SIP/217-0000000d Internal Gosub(hangup_handler,s,1) complete GOSUB_RETVAL=
mikopbx*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
оставил комментарий 14 Май от boffart (42,840 баллов)
Вы набираете номер 220400 - он шестизначный.
Изначально, Вы писали про номер 51240, собственно приложенный мной пример правила подходит только для пятизначного номера телефона.
Создайте второе правило, по аналогии с предыдущим.
оставил комментарий 14 Май от Mongrell (300 баллов)
-- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- AGI Script Executing Application: (UserEvent) Options: (CdrConnector,AgiData:eyJhY3Rpb24iOiJkaWFsIiwic3JjX2NoYW4iOiJTSVBcLzIxNy0wMDAwMDAwZiIsInNyY19udW0iOiIyMTciLCJkc3RfbnVtIjoiMjA0MDAiLCJzdGFydCI6IjIwMTktMDUtMTQgMTE6NDA6NDcuNTk2IiwibGlua2VkaWQiOiJtaWtvcGJ4LTE1NTc4MjMyNDcuMTUiLCJVTklRVUVJRCI6Im1pa29wYngtMTU1NzgyMzI0Ny4xNV8xQmhwdUl1QVFTIiwidHJhbnNmZXIiOiIwIiwiYWdpX2NoYW5uZWwiOiJTSVBcLzIxNy0wMDAwMDAwZiIsImRpZCI6IiIsImZyb21fYWNjb3VudCI6IjIxNyIsIklTX09SR05UIjpmYWxzZX0=)
    -- <SIP/217-0000000f>AGI Script cdr_connector.php completed, returning 0
    -- Executing [20400@all_peers:11] GosubIf("SIP/217-0000000f", "0?all_peers-custom,20400,1") in new stack
    -- Executing [20400@all_peers:12] Goto("SIP/217-0000000f", "peer_217,20400,1") in new stack
    -- Goto (peer_217,20400,1)
    -- Executing [20400@peer_217:1] NoOp("SIP/217-0000000f", "Start outgoing calling...") in new stack
    -- Executing [20400@peer_217:2] Ringing("SIP/217-0000000f", "") in new stack
    -- Executing [20400@peer_217:3] GosubIf("SIP/217-0000000f", "0?peer_217-custom,20400,1") in new stack
    -- Executing [20400@peer_217:4] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-BFB9807C7E17B32091C5FDCE42279C27-22-outgoing,20400,1)") in new stack
    -- Executing [20400@peer_217:5] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-11D0005A77C5FCACB156228D51250143-23-outgoing,20400,1)") in new stack
    -- Executing [20400@peer_217:6] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-24-outgoing,20400,1)") in new stack
    -- Executing [20400@peer_217:7] ExecIf("SIP/217-0000000f", "1?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing,20400,1)") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:1] Set("SIP/217-0000000f", "number=83882220400") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:2] ExecIf("SIP/217-0000000f", "0?Hangup()") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:3] Set("SIP/217-0000000f", "ROUTFOUND=1") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:4] AGI("SIP/217-0000000f", "cdr_connector.php,dial") in new stack
    -- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- AGI Script Executing Application: (UserEvent) Options: (CdrConnector,AgiData:eyJhY3Rpb24iOiJkaWFsIiwic3JjX2NoYW4iOiJTSVBcLzIxNy0wMDAwMDAwZiIsInNyY19udW0iOiIyMTciLCJkc3RfbnVtIjoiMjA0MDAiLCJzdGFydCI6IjIwMTktMDUtMTQgMTE6NDA6NDcuNjczIiwibGlua2VkaWQiOiJtaWtvcGJ4LTE1NTc4MjMyNDcuMTUiLCJVTklRVUVJRCI6Im1pa29wYngtMTU1NzgyMzI0Ny4xNV8xQmhwdUl1QVFTIiwidHJhbnNmZXIiOiIwIiwiYWdpX2NoYW5uZWwiOiJTSVBcLzIxNy0wMDAwMDAwZiIsImRpZCI6IiIsImZyb21fYWNjb3VudCI6IjIxNyIsIklTX09SR05UIjpmYWxzZX0=)
    -- <SIP/217-0000000f>AGI Script cdr_connector.php completed, returning 0
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:5] ExecIf("SIP/217-0000000f", "0?Set(DOPTIONS=tk)") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing:6] GosubIf("SIP/217-0000000f", "1?SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom,20400,1") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:1] ExecIf("SIP/217-0000000f", "0?return") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:2] Set("SIP/217-0000000f", "PREFIX_NUMBER=2") in new stack
    -- Executing [20400@SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-outgoing-custom:3] ExecIf("SIP/217-0000000f", "1?Goto(outgoing,220400,4)") in new stack
    -- Goto (outgoing,220400,4)
    -- Executing [220400@outgoing:4] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-BFB9807C7E17B32091C5FDCE42279C27-22-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:5] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-11D0005A77C5FCACB156228D51250143-23-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:6] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-24-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:7] ExecIf("SIP/217-0000000f", "0?Gosub(SIP-PROVIDER-E44E66119AC282B170BBF78BC7E47D2F-27-outgoing,220400,1)") in new stack
    -- Executing [220400@outgoing:8] ExecIf("SIP/217-0000000f", "0?Hangup()") in new stack
    -- Executing [220400@outgoing:9] ExecIf("SIP/217-0000000f", "0?AGI(cdr_connector.php,dial_hangup)") in new stack
    -- Executing [220400@outgoing:10] ExecIf("SIP/217-0000000f", "0?AGI(check_redirect.php,)") in new stack
    -- Executing [220400@outgoing:11] ExecIf("SIP/217-0000000f", "0?AGI(cdr_connector.php,dial)") in new stack
    -- Executing [220400@outgoing:12] Playback("SIP/217-0000000f", "silence/2") in new stack
    -- <SIP/217-0000000f> Playing 'silence/2.alaw' (language 'ru-ru')
    -- Executing [220400@outgoing:13] ExecIf("SIP/217-0000000f", "1?Playback(followme/sorry):Playback(cannot-complete-as-dialed)") in new stack
    -- <SIP/217-0000000f> Playing 'followme/sorry.alaw' (language 'ru-ru')
    -- Executing [220400@outgoing:14] Hangup("SIP/217-0000000f", "") in new stack
  == Spawn extension (outgoing, 220400, 14) exited non-zero on 'SIP/217-0000000f'
    -- Executing [h@outgoing:1] AGI("SIP/217-0000000f", "cdr_connector.php,dial_hangup") in new stack
    -- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- <SIP/217-0000000f>AGI Script cdr_connector.php completed, returning 0
    -- SIP/217-0000000f Internal Gosub(hangup_handler,s,1) start
    -- Executing [s@hangup_handler:1] NoOp("SIP/217-0000000f", "--- hangup - SIP/217-0000000f ---") in new stack
    -- Executing [s@hangup_handler:2] AGI("SIP/217-0000000f", "cdr_connector.php,hangup_chan") in new stack
    -- Launched AGI Script /etc/asterisk/agi-bin/cdr_connector.php
    -- AGI Script Executing Application: (UserEvent) Options: (CdrConnector,AgiData:eyJhY3Rpb24iOiJoYW5ndXBfY2hhbiIsImRpZCI6IiIsImFnaV90aHJlYWRpZCI6Im1pa29wYngtMTU1NzgyMzI0Ny4xNV9DZjY4UXFKRkxmIiwibGlua2VkaWQiOiJtaWtvcGJ4LTE1NTc4MjMyNDcuMTUiLCJkaWFsc3RhdHVzIjoiIiwiYWdpX2NoYW5uZWwiOiJTSVBcLzIxNy0wMDAwMDAwZiIsImVuZCI6IjIwMTktMDUtMTQgMTE6NDA6NTMuNjE5IiwiT0xEX0xJTktFRElEIjoibWlrb3BieC0xNTU3ODIzMjQ3LjE1IiwiVU5JUVVFSUQiOiJtaWtvcGJ4LTE1NTc4MjMyNDcuMTVfMUJocHVJdUFRUyJ9)
    -- <SIP/217-0000000f>AGI Script cdr_connector.php completed, returning 0
    -- Executing [s@hangup_handler:3] Return("SIP/217-0000000f", "") in new stack
  == Spawn extension (outgoing, h, 2) exited non-zero on 'SIP/217-0000000f'
    -- SIP/217-0000000f Internal Gosub(hangup_handler,s,1) complete GOSUB_RETVAL=
mikopbx*CLI>
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups
оставил комментарий 14 Май от Mongrell (300 баллов)
В первый раз я ошибся при наборе. Но не суть, тоже самое.
оставил комментарий 14 Май от boffart (42,840 баллов)
ни один из шаблонов исходящих маршрутов не подошел для набираемого номера "220400"

ExecIf("SIP/217-0000000f", "0?
У Вас судя по всему 4 исходящих маршрута описано.
0? - означает, что шаблон не соответсвует номеру 220400

пришлите вывод команды
dialplan show 220400@outgoing
оставил комментарий 14 Май от Mongrell (300 баллов)
Решено! В правиле не верно указывал провайдера, у меня их три! Создал правило по вашему примеру на каждую сип линию (провайдера), а не на так сказать объединяющего третьего провайдера(он создан для того что бы входящие работали на 2 линии. "Router").
0 голосов
ответил 14 Май от Sailfer (200 баллов)
редактировать 14 Май от Sailfer

1. В чем заключается вся хитрость маршрутизации - в том в каком формате Ваш провайдер принимает номер 

2. Правильно оформить правило маршрутизации.

На моем примере используется номер мобильный я заведомо заношу 007 985 45 а остальную часть номера набираю как Вы пытаетесь реализовать. т.е 12345.

Где у меня 007 - это то что я должен отправить своему оператору т.е (79854512345). а остальное мой мобильный номер распиленный на нужные части

по этому алгоритму вы можете настроить исходящие вызовы у себя со своими номерами

Что бы вы понимали АТС это как ресторан - а ваш провайдер гор номера - это посетитель (клиент) - который не все подряд будет кушать из того что вы сможете ему предложить.


оставил комментарий 14 Май от Sailfer (200 баллов)
И еще не мало важный момент вы можете принимать входящие звонки на вашей атс с указанного номера? У вас исходящие не получаться если вы не завели провайдера на свою атс либо завели не правильно не с теми кодеками или портом - это тоже имеет место быть. Проверьте входящую связь, проверьте если ли звук и слышно ли вас?
Добро пожаловать на сайт Askozia Q&A, где вы можете задавать вопросы и получать ответы от других членов сообщества.

Популярные теги

askozia провайдер запись-разговоров маршрут настройка очередь ivr askozia6 провайдеры запись маршрутизация факс очередь-вызовов исходящие-звонки транк askozia7 входящие-вызовы ascozia мобильный переадресация перехват-вызова веб-интерфейс интеграция провайдеров логи редактор разговоров goip аон обновление маршруты диалплан тишина smtp перевод-вызова звонок askozia-5 переадресация-мобильный префиксы история callerid голосовая почта парковка перевод vmware мультифон мегафон nat лицензия телефонная-книга статистика время голосовая-почта gsm перехват вызовов номер asterisk skype ssh 2 дополнительный-диск настройка-исходящие-исходящих-вызов-вызовов goip4 digium установка bruteforce взлом приложение web cdr времени pickup панель-телефонии-1с ростелеком mango 8 количество панель перенос-истории-звонков восьмерка распределение память 20fxo 4fxs tdm2400p виртульная-машина hyper-v bitrix24 городской-формат билайн t21 oktell задержки диалплан-переадресация-мобильный-шаблоны настройка-провайдер синхронизация tde-200

1,263 вопросов

1,096 ответов

2,457 комментариев

1,275 пользователей

...