VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

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

Обо всем касательно FreePBX, MetPBX, TrixBox, Elastix, AstPBX и всех других дистрибутивов

Модераторы: april22, Zavr2008

chubaka
Сообщения: 43
Зарегистрирован: 25 июн 2013, 14:05

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

Сообщение chubaka »

Проблему решил так звонок шел по кодеку gsm , а на пире стоял запрет на использование других кодеков кроме alaw,ulaw разрешил gsm.
chubaka
Сообщения: 43
Зарегистрирован: 25 июн 2013, 14:05

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

Сообщение 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/

Заранее благодарен за помощь!
virus_net
Сообщения: 2337
Зарегистрирован: 05 июн 2013, 08:12
Откуда: Москва

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

Сообщение 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
мой SIP URI sip:virus_net@asterisk.ru
bitname.ru - Домены .bit (namecoin) .emc .coin .lib .bazar (emercoin)

ENUMER - звони бесплатно и напрямую.
chubaka
Сообщения: 43
Зарегистрирован: 25 июн 2013, 14:05

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

Сообщение 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)
но как сообщение заканчивается, клиента не соединяет с сотрудником =( что я не так делаю ?
chubaka
Сообщения: 43
Зарегистрирован: 25 июн 2013, 14:05

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

Сообщение 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()
Звонок клиенту приходит и соединяет с сотрудником , но запись клиенту не проговаривается , что я не так делаю ?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

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

Сообщение Vlad1983 »

1. в колфайле можно задать либо Application либо Extension. оба выполняться не будут
2. после ответа Dial ничего больше не выполнится из диалплана до разрыва канала, если на это не указывают соответствующие опции app_Dial
ЛС: @rostel
chubaka
Сообщения: 43
Зарегистрирован: 25 июн 2013, 14:05

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

Сообщение 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))
Дмитрий и Влад спасибо ! Все заработало но хочется у знать все я правильно сделал ?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

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

Сообщение Vlad1983 »

пойдет для сельской местности, но без колфайлов было б лучше
ЛС: @rostel
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH