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

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

2 Ответы

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

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

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

Пример

оставил комментарий 14 Май от Mongrell (200 баллов)
Мне нужно что бы я мог звонить без кода города, т.е. набирать не 83882251240, а 51240, в данный момент отвечает "данный номер не может быть набран"
оставил комментарий 14 Май от boffart (39,610 баллов)
Дополнил ответ скриншотом. Попробуйте настроить как на изображении.
оставил комментарий 14 Май от Mongrell (200 баллов)
Настроил, теперь отвечает "извините в данный момент соединение невозможно"
оставил комментарий 14 Май от boffart (39,610 баллов)
оставил комментарий 14 Май от Mongrell (200 баллов)
-- 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 (39,610 баллов)
Вы набираете номер 220400 - он шестизначный.
Изначально, Вы писали про номер 51240, собственно приложенный мной пример правила подходит только для пятизначного номера телефона.
Создайте второе правило, по аналогии с предыдущим.
оставил комментарий 14 Май от Mongrell (200 баллов)
-- 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 (200 баллов)
В первый раз я ошибся при наборе. Но не суть, тоже самое.
оставил комментарий 14 Май от boffart (39,610 баллов)
ни один из шаблонов исходящих маршрутов не подошел для набираемого номера "220400"

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

пришлите вывод команды
dialplan show 220400@outgoing
оставил комментарий 14 Май от Mongrell (200 баллов)
Решено! В правиле не верно указывал провайдера, у меня их три! Создал правило по вашему примеру на каждую сип линию (провайдера), а не на так сказать объединяющего третьего провайдера(он создан для того что бы входящие работали на 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 очередь-вызовов исходящие-звонки маршрутизация факс ascozia мобильный переадресация интеграция провайдеров логи редактор разговоров входящие-вызовы goip аон маршруты диалплан тишина smtp перевод-вызова звонок транк askozia-5 переадресация-мобильный префиксы голосовая почта перехват-вызова парковка vmware мультифон мегафон nat лицензия веб-интерфейс телефонная-книга история обновление время голосовая-почта gsm перевод номер asterisk skype ssh 2 дополнительный-диск настройка-исходящие-исходящих-вызов-вызовов goip4 статистика callerid bruteforce взлом приложение web cdr времени pickup вызовов ростелеком mango 8 количество восьмерка память виртульная-машина hyper-v bitrix24 городской-формат билайн t21 oktell задержки диалплан-переадресация-мобильный-шаблоны настройка-провайдер синхронизация tde-200 syslog не-слышно firewall zabbix restart сотовый отправка-факса askozia-miko pppoe длительность запрет

1,160 вопросов

994 ответов

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

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

...