Вход | Регистрация
Вы здесь: Главная / Форум / Главный форум по Asterisk / Конфигурация и настройка / Изменение входящего CallerID

Изменение входящего CallerID

1 2>
Сообщений: 8

Изменение входящего CallerID

Доброе время суток.

занимаюсь asterisk-ом не долго так, что сразу прошу прощения за глупый вопос и на данный момент могу привести только конфиги из FreePBX

Немного раскужу, что установлено и что делал.
Установлено asterisk 1.6.2.13 к нему по транку подлючены 2 шлюза. 1 FXO Nateks и 1 GSM шлюз allvoip AV3200.

во FreePBX в Incoming Route прописываю входящий маршрут для определнного номера к примеру (89171234567) после направляю его определенный Extention. данная схема прекрасно работает когда входящий вызов идет через FXO шлюз (шлюз отдает CallerID 89171234567). Но когда звонок приходит через GSM шлюз даный маршрут не работает (шлюз отдает CallerID +79171234567). Пробывал в Incoming Route создавать еще один маршрут где Caller ID Number указывал +79171234567 и .9171234567. но все равно входящий звонок по данному маршруту идти не хочет, уходит по маршруту по умолчанию.

отсюда возникает несколько вопросов:
1. как привести входящий CallerID number пришедший со шлюза FXO в международный формат (помоему Е.164).
2. как можно маршрутизить входящие звонки с GSM шлюза. т.е. убрать знак "+" в самом начале.

Заранее благодарен за ответ.
2010-11-28 23:01

Сообщений: 1530

Re: Изменение входящего CallerID

Расскажу на примере, как убрать "+":



exten => s,1,NoOp(ля-ля)
...
exten => s,n,Set(CALLERID(num)=${CALLERID(num):1})


Остальное -- самообучение.
P.S. Переделайте под текущий синтаксис asterisk'а.
http://www.telecomtechnology.net - premium терминация
2010-11-28 23:32

Сообщений: 8

Re: Изменение входящего CallerID

а как это сделать во freePBX? просто я знаю что если использовать FreePBX то править файлы конфигурации бесполезно.
2010-11-28 23:40

Сообщений: 1530

Re: Изменение входящего CallerID

Этого не подскажу, т.к. не пользовался им...
http://www.telecomtechnology.net - premium терминация
2010-11-28 23:58

Сообщений: 8

Re: Изменение входящего CallerID

Спасибо и на этом.
только можно по подробнее, где данные изменения нужно вносить.
2010-11-29 00:00

Avatara of zzuz
Откуда: SPb
Сообщений: 1307

Re: Изменение входящего CallerID

пользуйте regexp в отдельном контексте для gsm шлюза и приводите к нормельному виду номер.
http://линия24.рф - Астериск и прочие бубны!
2010-11-29 00:40

Сообщений: 127

Re: Изменение входящего CallerID

tma:

Расскажу на примере, как убрать "+":
Неправильно.



exten => s,1,NoOp(CALLERID=${CALLERID(num)) - тут не ля-ля, а выводим содержимое переменной ${CALLERID(num) до трансформации CALLERID, и это значение будет = s
...
exten => s,n,Set(CALLERID(num)=${CALLERID(num):1}) - тут от этого значения s пытаемся отрезать первую цифру или знак +
exten => s,1,NoOp(CALLERID=${CALLERID(num)) - тут выводим опять значение переменной ${CALLERID(num) после трансформации, т.е. что получилось, так сказать.

На самом деле переделывать надо не для s, а для конкретного
exten => _+Х.,1,NoOp(CALLERID=${CALLERID(num)) - тут выводим содержимое переменной ${CALLERID(num) до трансформации CALLERID, и это значение будет = набранному экстену
exten => _+Х.,n,Set(CALLERID(num)=${CALLERID(num):1}) - тут от этого набранного номера пытаемся отрезать знак +
exten => _+Х.,1,NoOp(CALLERID=${CALLERID(num)) - тут выводим опять значение переменной ${CALLERID(num) после трансформации, т.е. что получилось, так сказать.

Во freePBX всё проще: создать outbound route где указать
+|X.
и направить его в нужный транк.
2010-11-29 01:35

Сообщений: 1530

Re: Изменение входящего CallerID

Entry, какое отношение имеет контекст 's' к CallerID?

Entry:

На самом деле переделывать надо не для s, а для конкретного

А теперь подумайте над тем, что предложили относительно CallerID... ;)

А обработку входящих вызовов я и не показывал, это был пример.
Сами входящие да, нужно делать типа:


exten => _+79XXXXXXXXXX,1,...
или
exten => _+79X.,1,...

Но к CallerID это не имеет никакого отношения.
Хотя, автор и смешал все в кучу, но это не означает, что нужно поддерживать эту кучу в его голове.
http://www.telecomtechnology.net - premium терминация
2010-11-29 01:55

Сообщений: 127

Re: Изменение входящего CallerID

ОК, сбой в программе.

exten => s/_+ZXXXXXXXXXX,1,NoOp(CALLERID=${CALLERID(num)) - тут не ля-ля, а выводим содержимое переменной ${CALLERID(num) до трансформации CALLERID, и это значение допустим +89012345678
exten => s/_+ZXXXXXXXXXX,n,Set(CALLERID(num)=${CALLERID(num):1}) - тут от этого значения пытаемся отрезать +
exten => s/_+ZXXXXXXXXXX,1,NoOp(CALLERID=${CALLERID(num)) - тут выводим опять значение переменной ${CALLERID(num) после трансформации, т.е. что получилось, так сказать - 89012345678.

Я как бы хотел сказать, что не надо всё трансформировать
exten => s,n,Set(CALLERID(num)=${CALLERID(num):1})
такое правило будет резать все CALLERID, а не только те, которые начинаются с +

Во freeBSD это делается во входящей маршрутизации, делается маршрут по CID маске _+ZXXXXXXXXXX
2010-11-29 02:14

Avatara of SolarW
Откуда: Днепропетровск, Украина
Сообщений: 199

Re: Изменение входящего CallerID

How to change incoming CallerID
Убирание плюса / добавление других символов рассмотрены очень подробно.
2010-11-29 12:39

1 2>
Добавить страницу в закладки:  Delicious Google Slashdot Yahoo Yandex.ru Reddit Digg Technorati Bobrdobr.ru Newsland.ru Smi2.ru Rumarkz.ru Vaau.ru Memori.ru Rucity.com Moemesto.ru News2.ru Mister-Wong.ru Myscoop.ru 100zakladok.ru