Как позвонить на экстеншен через определенный транк с помощью AMI?
Имеется FreePBX, есть транк по умолчанию.
Хочется сделать так, чтобы из корп. системы пользователь мог позвонить клиенту, через другой транк с помощью AMI, собственно проблема в том, что не могу додумать как верно оформить схему, когда сначала идет звонок сотруднику на внутренний телефон, а потом клиенту
С обратным звонком (когда звоним сначала клиенту, потом сотруднику) все ок и выглядет он так:
Channel: SIP/{TrunkName}/{ClientNumber}
Extension: {EmplNumber}
Context: from-internal
Для того, чтобы отправить звонок через нужный вам транк, в том же freepbx в исходящей маршрутизации есть правила набора. В них описываете шаблон, под который должен попасть ваш исходящий и указываете нужный вам транк.
Drill, мой вопрос не в том, как в АТСке дефолтный маршрут и звонить из него.
Мой вопрос о том, как сделать так, чтобы я мог через AMI, позвонить как с транка #1, так и с транка #2, в зависимости от условий внутренний корп. системы. В АТСке же самой можно сделать только простую логику, условно 200 номер звонит с транка #1, 300 - с транка #2, мне же нужна возможность звонить с 200, либо с 1, либо со 2 транка в зависимости от нужд. и собственно проблема в том, что дефлотный маршрут это 200 -транк #1, а как позвонить с 200 через 2й транк вот уже это и вызвает сложности.
Начнем с того, что я не знаю, как там у вас маршрутизация описана.
Я не телепат.
А вообще, никаких сложностей в вашей задаче нет.
Вариантов много, если прочитать документацию на freepbx и на астериск, в частности.
Вариант 1
К клиентскому номеру добавляете какй-нибудь префикс
ClientNumber = Prefix + Phone
(Prefix=100 Phone=1234567)
ClientNumber = 1001234567
AMI:
Channel: SIP/{EmplNumber}
Extension: {ClientNumber}
Context: outbound-allroutes
В freepbx создаете исходящий марщрут через нужный транк,
в правилах набора указываете отрезать Prefix (100)
Звонок клиенту будет уходить только через этот транк.
Вариант 2
Создаете кастом контекст, например:
[outbound-allroutes-custom]
; Здесь описываете что делать с вашим исходящим
; и через какой транк его отправить
AMI:
Channel: SIP/{EmplNumber}
Extension: {ClientNumber}
Context: outbound-allroutes-custom
Звонок клиенту будет уходить только через этот транк.
Drill, извините если обидел :(
Я думал это можно будет провернуть через AMI, не хотелось конфиги править, т.к. АТСок несколько.
В целом я думаю будут делать originate с переменной где будет содержатся имя транка, на свой кастомный контекст, а там в диалплане уже рулить в нужный транк эту через переменную.