Как определять CallerID абонента для двух связанных астерисков с одинаковой нумерацией?

Дано: 2 астериска (freepbx), соединенные между собой через IAX. На обоих астерисках одинаковая нумерация (100...). Диалплан настроен таким образом, что абоненты с одной АТС могут соединяться с абонентами другой АТС, набирая 501, 502 и т.п., то есть меняя первую единицу на 5.
Все работает замечательно, кроме того, что неправильно определяются абоненты, т.е. определение абонента происходит, исходя из аналогичного номера на принимающей АТС. Если такого номера нет, то все ок.
Пример: АТС "А" 101 - Петя, АТС "Б" 101 - Вася. Если Петя позвонит на АТС "Б", то он определиться там, как Вася.
Как можно решить эту проблемку. Главное условие, нумерацию менять нельзя.

Настройки транка:
Исходящие:
username=***
host=***
type=peer
secret=***
qualify=yes
context=from-trunk
disallow=all
allow=alaw

Входящие:
host=***
type=user
secret=***
qualify=yes
context=from-internal
disallow=all
allow=alaw
  • Вопрос задан
  • 100 просмотров
Решения вопроса 1
@Gold_68 Автор вопроса
Всем спасибо! Решение было на поверхности. Это оказался мой косяк: необходимо было во всех экстеншенах прописать CallerID. Как оказалось, там где CallerID не был прописан (было только имя), он мог определяться неправильно при конфигурации, заданной в условиях. Сейчас все стало ок.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Не знаю, как это сделать во FreePBX, на чистом Asterisk можно просто подставить нужный CALLERID перед исходящим вызовом или после получения входящего вызова.
same => n,Set(CALLERID(num)=5${CALLERID(num):1})
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы