Страница 1 из 1

QUEUES and GOSUB (MACRO+)

СообщениеДобавлено: 26 июл 2021, 10:44
YakubovskyiVE
Привет уважаемые ЗНАТОКИ)
Есть задача у меня на сервере Asterisk создать такой план:
Звонок поступил в очередь, слушает музыку... в общем ждет, затем оператор поднимает трубку и в этот момент хотелось бы такое :
1) началась запись разговора (сейчас запись включается до вхождения в очередь и пишется файл с музыкой ожидания и анонсами)
2) Вызывающему воспроизвести сообщение ("привет оператор Елена, чем могу вам помочь?")

Решение вопроса я вижу такое: использовать GOSUB когда оператор ответил (поднял трубку) затем выполнить включение Mixmonitor, включить PlayBack.
Вот кусок диалплана перед входом в очередь сейчас
same => n,MixMonitor(${CLIENT1}${Data}/${REC}.wav)
same => n,Queue(managers)

Делаю так
add param for queues > membergosub=connect-operator
в connect-operator

exten => s,1,MixMonitor(${CLIENT1}${Data}/${REC}.wav) (Для включения запии)
same => n,Playtones(ring) (Для красоты о том что пошло соединение с операратором)
same => n,WaitExten(5)
same => n,StopPlaytones()
same => n,WaitExten(1)
same => n,Playback(audio/hello-${manager})
same => n,Return()

Проблемы есть такие:
При ответе оператора оператор слышит гудки и сообщение, а вызывающий не слышит, у него тешена пока все оператору говориться а надо наоборот. Как сделать не знаю(
Так же не знаю как передать в gosub переменную кто ответил из операторов.

Спасибо тем кто сможет подсказать что то полезное.
с ув. Вадим