ВидеоКонф(ВКС)  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Подмена номера EXTEN, в контексте вывода CLI

Проблемы и их решения Asterisk как такового

Модераторы: april22, Zavr2008

Подмена номера EXTEN, в контексте вывода CLI

Сообщение Mitsumo » 11 дек 2017, 11:27

Приветствую коллеги, есть реализованный функционал отправки сообщений о пропущенных звонках, вида "Пропущенный вызов 2017-12-11 в 13:42:10 с номера ХХХХХХ на номер ZZZZZ Длительность вызова 29 сек" Вот задался таким вопросом, а можно ли поменять этот ZZZZZ например на "ZZZZ (Питер)". Суть в том что транков много и отслеживать их по бумажки аля вида 000112345 и т.п. по номеру линии неудобно, хочется понятней. Подозреваю нужно копать в сторону исключений к примеру использовать тот же ExecIF, но как его вывести в правильно русло... сейчас стоит так
Код: выделить все
с номера 8${CALLERID(name):-10:10} на номер ${CDR(realdst)} Длительность вызова ${CDR(duration)} сек

Использовать базу MySQL не выйдет я думаю, туда не пишется номер реальный, только то что указано в extensions.conf. Так же не выйдет использовать
Код: выделить все
exten => ZZZZ,1,ExecIF...)
так как там стоит
Код: выделить все
exten => h,1,ExecIf...)
а он как мы знаем по всему extensensions Отрабатывает "h". Кто-то такой затеей вообще занимался или мне так и сказать работайте по бумажке) Провайдер вряд-ли мне имя канала поменяет на номер телефона.
Mitsumo
 
Сообщений: 23
Зарегистрирован: 11 мар 2013, 06:38

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение april22 » 11 дек 2017, 11:43

загоните все ваши транки в кастомную ASTDB и от туда дергайте .
предворительно в h какие есть переменные , и привяжитесь к ним .
Своими вопросами , вы загоняете меня в ГУГЛЬ.
april22
 
Сообщений: 2187
Зарегистрирован: 09 июл 2012, 09:47

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение Mitsumo » 11 дек 2017, 11:53

Идея интересная, надо подумать, но то ли я не смог понять то ли у меня тригеры в MySQL не работают. Если я правильно понял отправлять попутно в другую DB имя DID и его уже менять там и отправлять обратно?
Mitsumo
 
Сообщений: 23
Зарегистрирован: 11 мар 2013, 06:38

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение virus_net » 12 дек 2017, 08:13

Не совсем понимаю зачем тут astdb.
На входе сетим переменную, откуда получен вызов (или прямо в пире через setvar) и пользуемся значением этой переменной при отправке мыла.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение Mitsumo » 12 дек 2017, 11:17

Не совсем понимаю зачем тут astdb.
На входе сетим переменную, откуда получен вызов (или прямо в пире через setvar) и пользуемся значением этой переменной при отправке мыла.

Спасибо, я почему то сам не догадался, это же просто.
Если кому пригодится вот кусок диалплана:
Код: выделить все
exten => XXXXXX,n,Set(EXTEN=m)
exten => XXXXXX,n,Set(m=Kemerovo)

в данном случае "m" это просто переменная, можно указать любую другую.
Код: выделить все
с номера 8${CALLERID(num):-10:10} на номер ${m} Длительность вызова ${CDR(duration)}
Mitsumo
 
Сообщений: 23
Зарегистрирован: 11 мар 2013, 06:38

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение virus_net » 13 дек 2017, 08:12

Опять не понимаю зачем тут это:
Mitsumo писал(а):exten => XXXXXX,n,Set(EXTEN=m)

${EXTEN} перезапишется в любом случае.
Asterisk variables
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение Mitsumo » 14 дек 2017, 08:03

Опять не понимаю зачем тут это:
Mitsumo писал(а):
exten => XXXXXX,n,Set(EXTEN=m)

${EXTEN} перезапишется в любом случае.
Asterisk variables


Все потому что транков много, мне не нужно менять один екстеншен, мне на каждый нужно свое имя, в данном случае переменная m, которую я использую и после меняю на нужны город, если я тут
Код: выделить все
exten => h,1,ExecIf($["${CDR(dstchannel)}"=""]?System(/usr/local/bin/sendEmail -f asterisk@xxx.ru -t missedcalls@xxx.ru -u Пропущенный вызов -m Пропущенный вызов ${STRFTIME(${EPOCH},,%Y-%m-%d в %H:%M:%S)} с номера 8${CALLERID(num):-10:10} на номер ${m}, длительность вызова ${CDR(duration)} сек -o message-charset=UTF-8)
буду использовать ${EXTEN}, то мне вместо номера который я хочу, будет писать "h".
Mitsumo
 
Сообщений: 23
Зарегистрирован: 11 мар 2013, 06:38

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение virus_net » 14 дек 2017, 09:22

1. Не надо цитировать предыдущий пост полностью. Это дурной тон.
2. Вы так и не прочли инфу по ссылке, которую я дал.
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение Mitsumo » 14 дек 2017, 10:40

1. Не надо цитировать предыдущий пост полностью. Это дурной тон.

Принял к сведению.
2. Вы так и не прочли инфу по ссылке, которую я дал.

Прочитал, про глобальные переменные я понял, я могу конечно это прописать в [globals], но мне придется менять диалплан под новую структуру, подумаю как оптимизировать используя глобальные переменные, но пока работает и так и все устраивает.
Mitsumo
 
Сообщений: 23
Зарегистрирован: 11 мар 2013, 06:38

Re: Подмена номера EXTEN, в контексте вывода CLI

Сообщение virus_net » 14 дек 2017, 17:22

Значит прочли через строчку. Там как раз рассказывается про ${EXTEN}:
${EXTEN}: The current extension - cannot be modified with the set command
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
virus_net
 
Сообщений: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

След.

Вернуться в Конфигурация и настройка Asterisk

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 14

© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH