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

Посылка DTMF в линию во время разговора и после завершения

Новичком считается только что прочитавший «Астериск - будущее телефонии»
http://asterisk.ru/knowledgebase/books
и пытающийся сделать большее

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

soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Посылка DTMF в линию во время разговора и после завершения

Сообщение soh »

Как всегда, руководству "вчера" понадобилось сделать ГГС (Громкоговорящая связь) в складском комплексе. Для этого была куплена железяка SNOM PA1. Все замечательно. Все работает, но еще понадобилось управлять реле на этой железяке. Релюхами можно управлять через посылку DTMF сигналов. И возник вопрос, как можно заставить Астериск послать определенный DTMF сигнал без участия пользователя, после того, как эта железка сняла трубку. Стоит Астериск 1.8. К примеру, после того, как поднята трубка на удаленной стороне, нужно послать два символа DTMF - "1*" и аналогичный после того, как сеанс связи закончен.
awsswa
Сообщения: 2390
Зарегистрирован: 09 июн 2012, 10:52
Откуда: Россия, Пермь skype: yarick_perm

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение awsswa »

Dial с ключём D
SendDTMF
платный суппорт по мере возможностей
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

Спасибо, попробуем :)
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

awsswa писал(а):Dial с ключём D
SendDTMF
Покопавшись, получилось сделать вот что:

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

[office]
exten => _199,1,Dial(SIP/199,,D(1#),g)
exten => _199,2,Wait(3)
exten => _199,3,SendDTMF(1*)
exten => _199,4,Verbose(Hangaping)
В итоге, DTMF последовательность 1* прошла. А вот дальше затык случился, ибо SendDTMF(1*) и следующая команда не сработала, после того, как абонент повесил трубку.
На самом деле меня волнует даже не это. Мне нужно соединить абонента, набравшего номер 199, с несколькими аппаратами. Как я понимаю, для этого нужно использовать Пейджинг вида exten => _199,n,page(SIP/199&SIP/200), но как можно будет передать последовательность DTMF, как только на удаленной стороне сняли трубку и как это сделать, после того, как абонент ее положил?
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

А без конференции никак?
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

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

exten => _199,1,Dial(SIP/199,,D(1#),g)
И мне непонятно, почему не работают команды, после того, как абонент положил трубку :(
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

ded писал(а):MeetMe?
Просто задача такова, что стоит несколько железок, которые берут трубку автоматом. Нужносделать групповой вызов на них и чтобы после того, как эти несколько железок взяли трубок, Asterisk послал DTMF последовательность. После того, как позвонивший вешает трубку, Asterisk должен послать еще одну DTMF последовательность на все эти железки.
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение Vlad1983 »

"После того, как позвонивший"

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

    F: Proceed with dialplan execution at the next priority in the current
    extension if the source channel hangs up.
ЛС: @rostel
soh
Сообщения: 154
Зарегистрирован: 06 мар 2012, 15:42

Re: Посылка DTMF в линию во время разговора и после завершен

Сообщение soh »

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

[office]
exten => _199,1,Dial(SIP/199,,D(1#),g)
exten => _199,2,Wait(3)
exten => _199,3,SendDTMF(1*)
exten => _199,4,Verbose(Hangaping)
Команды после Dial(SIP/199,,D(1#),g), когда вешат трубку инициатор разговора (source, как я понимаю), не выполняются :(
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH