SIP-user 101 - это аналоговый аппарат, подключенный к FXS порту голосового шлюза типа D-Link DVG2102S. Внутренние абоненты УПАТС 205 и 307 - это абоненты УПАТС, которая доступна по городскому номеру XXXXXXX.
1. SIP-user 101 осуществляет вызов в направлении номера _XXXXXXX, вызов н который asterisk маршрутизирует через соответствующий exten;
2. На номере XXXXXXX отвечает DISA, донабираем внутренний 205, последний отвечает, начинается разговор во время которого SIP-user 101 ставит его на HOLD;
3. Пока вызванный на УПАТС контрагента 205-й слушает наш MOH, наш 101-й набирает тот же самый XXXXXXX, проходит через тот же самый соответствующий exten, где в DISA донабирает 307.
4. При попытке положить трубку с целью объединить 205-го с 307-м все соединения разрушаются
Exten, через который проходят оба вызова выглядит следующим образом:
Код: Выделить всё
exten => _XXXXXXX,1,Set(CALLERID(all)=7ABCXXXxxxx)
exten => _XXXXXXX,2,Dial(SIP/${EXTEN}@X.X.X.X:5061,200,tT)
Собственно вопрос: Как сделать так, чтобы такой трансфер осуществлялся?
Осуществлять перевод при двойном исходящем на один и тот же городской номер одного контакта контрагента (205) на другого этого же контрагента (307) и иже с ними конечно же не панацея - это наиболее простой способ проверять работу целевой схемы.
Целевая схема - это наладка взаимодействия между пользователями нового Asterisk и существующей УПАТС на среднем предприятии с помощью FXO-шлюза.
Суть целевой схемы следующая. Есть УПАТС со своими юзерами 1001-2500. Рядом ставим Asterisk с SIP-пользователями 101-150 (среди них пока что только аналоговые аппараты, подключенные к FXS-шлюзам). К свободным 8 абонентским (FXS) портам УПАТС (1010-1017) подключен FXO-шлюз. Для того, чтобы SIP-user мог позвонить абоненту УПАТС сделан префикс "1" по набору которого с помощью exten => _1,.... осуществляется вызов в FXO-шлюз и в установленном соединении SIP-user набирает внутренний номер абонента УПАТС. При таком раскладе никак не выходит сделать трансфер между двумя исходящими вызовами в сторону абонентов УПАТС