Я использую Asterisk 13 AMI для запуска atxfer. Пока работает. Но как я могу отменить действие передачи?
Пример: Боб звонит Алисе. Затем, поговорив некоторое время, Алиса начинает автоматический перевод к Чарльзу. Чарльзу это не интересно, и он не повесит трубку по любой причине. Как теперь Боб может повесить трубку Чарльза и вернуть Алису?
Если я использую функцию отключения (и вариант плана набора H), Боб вешает вызов Чарльзу, но не возвращает Алису. Затем у Боба продолжается беззвучный звонок, а Алиса все еще слушает MOH. Если один из обоих вешает трубку, другой вызов автоматически вешает трубку.
Какая функция или код функции необходимы, чтобы вернуть Алису? Правильно ли я делаю?
Либо с помощью dtmf-ing * 1 (обычно * 2 для передачи, проверьте в features.conf), либо вручную соедините исходные каналы. Действие "Atxfer" фактически отправляет dtmf внутри.
Возможно, вы захотите взглянуть на флаги «t» и «T» приложения Dial, поскольку они решают, кто может dtmf на конкретный канал.
https://wiki.asterisk.org/wiki/display/AST/Application_Dial
Кстати: Atxfer означает сопровождаемый перевод.