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

Re: Автодозвон с уведомлением в линию

Добавлено: 30 июл 2013, 18:47
chubaka
Проблему решил так звонок шел по кодеку gsm , а на пире стоял запрет на использование других кодеков кроме alaw,ulaw разрешил gsm.

Re: Автодозвон с уведомлением в линию

Добавлено: 14 сен 2013, 20:36
chubaka
Не подскажите как сделать чтобы клиенту куда делали звонок проговаривалось сначала запись
exten => s,n,System(echo "Playback(autodial-client)" >> /tmp/${ARG2}${UNIQUEID}.call)

а когда приходит звонок сотруднику проговаривалось

exten => s,n,System(echo "Playback(autodial-office)" >> /tmp/${ARG2}${UNIQUEID}.call)

вот так пытаюсь сделать (сильно не бейте):

Код: Выделить всё

[macro-autodial]
; небольшая проверка от наличие "*" вначале номера и на длину номера сотрудника"
exten => s,1,ExecIf($["${ARG1:0:1}" = "*" | ${LEN(${ARG2})} != 4 ],Hangup)
exten => s,n,System(echo "Channel: Local/${ARG1}@from-internal/n" > /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Playback(autodial-client)" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "MaxRetries: 10" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "RetryTime: 20" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "WaitTime: 40" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo -e "Callerid: \\x22CallBack ${ARG1}\\x22 \\x3C${ARG2}\\x3E" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Context: internal" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Extension: ${ARG2}" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Priority: 1" >> /tmp/${ARG2}${UNIQUEID}.call)

[internal]
exten => _XXXX,1,Dial(SIP/${EXTEN})
exten => _XXXX,n,Playback(autodial-office)
exten => _XXXX,n,Hangup()

файлы autodial-client.wav autodial-office.wav лежат /var/lib/asterisk/sounds/

Заранее благодарен за помощь!

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 10:18
virus_net
В таком ключе Playback нужно использовать в диалплане, а не в call файле.
chubaka писал(а):Local/${ARG1}@from-internal
chubaka писал(а):[internal]
ты уж определись с контекстом
chubaka писал(а):вот так пытаюсь сделать
Давай я поищу в google за тебя: И во избежании такой проблемы создавай call файлы не в /tmp, а в дире /var/spool/asterisk и например папке outgoing-tmp или tmp, а потом, по готовности, мувь их в основную /var/spool/asterisk/outgoing

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 10:48
chubaka
Спасибо, для клиентов переделал call вышло вот так

Код: Выделить всё

Channel: Local/091112223333@from-internal/n
Application:Playback
Data:autodial-client
MaxRetries: 10
RetryTime: 20
WaitTime: 40
Callerid: "Обратный звонок 091112223333" <1009>
Context: internal
Extension: 1009
Priority: 1
StartRetry: 1855 1 (1379227008)
но как сообщение заканчивается, клиента не соединяет с сотрудником =( что я не так делаю ?

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 12:30
chubaka

Код: Выделить всё

[from-internal-custom]
exten => _*20X.,1,Macro(autodial,${EXTEN:3},${CALLERID(number)})
exten => _*20X.,2,Busy()

[macro-autodial]
exten => s,1,ExecIf($["${ARG1:0:1}" = "*" | ${LEN(${ARG2})} != 4 ],Hangup)
exten => s,n,System(echo "Channel: Local/${ARG1}@autodial-outside/n" > /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "MaxRetries: 10" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "RetryTime: 20" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "WaitTime: 40" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo -e "Callerid: \\x22CallBack ${ARG1}\\x22 \\x3C${ARG2}\\x3E" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Context: autodial-internal" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Extension: ${ARG2}" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(echo "Priority: 1" >> /tmp/${ARG2}${UNIQUEID}.call)
exten => s,n,System(sleep 15 && mv -f /tmp/${ARG2}${UNIQUEID}.call /var/spool/asterisk/outgoing/ &)

[autodial-outside]
exten => _X.,1,Dial(SIP/ROOT-SRV/${EXTEN:1})
exten => _X.,n,Playback(autodial-client)

[autodial-internal]
exten => _XXXX,1,Dial(SIP/${EXTEN})
exten => _XXXX,n,Playback(autodial-office)
exten => _XXXX,n,Hangup()
Звонок клиенту приходит и соединяет с сотрудником , но запись клиенту не проговаривается , что я не так делаю ?

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 12:37
Vlad1983
1. в колфайле можно задать либо Application либо Extension. оба выполняться не будут
2. после ответа Dial ничего больше не выполнится из диалплана до разрыва канала, если на это не указывают соответствующие опции app_Dial

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 12:52
chubaka
Если брать данный шаблон Dial(type/identifier,timeout,options,URL) http://www.voip-info.org/wiki/view/Aste ... cmd%20Dial

Надо делать вот так (если не прав не пинайте):

Код: Выделить всё

exten => _X.,1,Dial(SIP/ROOT-SRV/${EXTEN:1},15,A(autodial-client))
Дмитрий и Влад спасибо ! Все заработало но хочется у знать все я правильно сделал ?

Re: Автодозвон с уведомлением в линию

Добавлено: 15 сен 2013, 12:58
Vlad1983
пойдет для сельской местности, но без колфайлов было б лучше