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

Таймаут времени звонка при звонке группе абонентов (page)

Добавлено: 05 дек 2016, 11:08
galleon2006
Подскажите пожалуйста, хочу создать конференцию на asterisk из нескольких абонентов.
Asterisk - FreeBSD
Клиенты - телефоны SPA942

Нужно сделать 2 варианта.

1 вариант (в exstension.conf - это intercom)

Нажимаем на кнопку быстрого вызоыва на телефоне, телефон набирает короткий номер и астерикс создает конференцию.
Затем, по нажатию кнопки "*" на телефоне, вызывает все номера , указанные в extensions.conf
На телефонах стоит автоподнятие трубки и они заходят в конференцию автоматически.

С этим проблем не возникло

2 вариант (в exstension.conf - это nabor)

Нажимаем на другую кнопку быстрого вызова - телефон набирает короткий номер и астерикс создает конференцию.
Затем, по нажатию кнопки "*" на телефоне, вызывает все номера , указанные в extensions.conf

Но в этом случае, авто поднятие трубки отключено, т.е. кто хочет - тот возьмет трубку и присоединится к конференции.

У меня не получается сделать ограничение вызова в 20 секунд.
То есть, чтобы по прошествию 20 секунд, после нажатия на "*", те кто успел взять трубку - оставались в конференции.
А те кто не успел - им вызов переставал идти и все.

На http://asterisk.ru/knowledgebase/Asterisk+cmd+page - тут вижу только опции
d - полнодуплексный звук
q - тихий режим, не проигрывать звуковой сигнал вызывающему абоненту
Вот конфиг extension.conf

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

;intercom
exten => 76,1,Goto(intercom,s,1)

;nabor
exten => 77,1,Goto(nabor,s,1)


[intercom]
exten => s,1,Answer
exten => s,2,Playback(beep)
exten => s,3,Set(TIMEOUT(digit)=5)
exten => s,4,WaitExten(10)

exten => *,1,SIPAddHeader(Call-Info:\;answer-after=0)
exten => *,2,Page(SIP/334&SIP/335,d) ;add all extensions here

exten => _XXX,1,SIPAddHeader(Call-Info:\;answer-after=0)
exten => _XXX,2,Dial(SIP/${EXTEN}

[nabor]
exten => s,1,Answer
exten => s,2,Playback(beep)
exten => s,3,Set(TIMEOUT(digit)=5)
exten => s,4,WaitExten(10)

exten => *,1,SIPAddHeader
exten => *,2,Page(SIP/334&SIP/335,d) ;add all extensions here

exten => _XXX,1,SIPAddHeader
exten => _XXX,2,Dial(SIP/${EXTEN}
Таймаут вызоывать нужно добавить в экстеншн "nabor"
Что нужно добавить в строчку

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

exten => *,2,Page(SIP/334&SIP/335,d
чтобы добавить таймаут вызова

Спасибо!

Re: Таймаут времени звонка при звонке группе абонентов (page

Добавлено: 05 дек 2016, 11:28
ded
Это ТЗ в раздел Бизнес?
Фраза "У меня не получается" не пройдёт, даже если топик создавать в разделе для новичков.
Правильные действия - справиться самостоятельно и опубликовать в топике как это получилось.

Re: Таймаут времени звонка при звонке группе абонентов (page

Добавлено: 05 дек 2016, 11:35
galleon2006
Согласен, тему надо было в разделе "Конфигурация и настройка Asterisk" создать, извиняюсь.

Re: Таймаут времени звонка при звонке группе абонентов (page

Добавлено: 05 дек 2016, 12:57
ded
*CLI> core show application page

-= Info about application 'Page' =-

[Synopsis]
Page series of phones

[Description]
Places outbound calls to the given <technology>/<resource> and dumps them
into a conference bridge as muted participants. The original caller is dumped
into the conference as a speaker and the room is destroyed when the original
callers leaves.

[Syntax]
Page(Technology/Resource[&Technology2/Resource2[&...]][,options[,timeout]])

Re: Таймаут времени звонка при звонке группе абонентов (page

Добавлено: 05 дек 2016, 13:05
galleon2006
Спасибо!
Не догадался посмотреть ман, а нужно было в первую очередь :(

Ради эксперимента пробовал написать:

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

exten => *,2,Page(SIP/334&SIP/335,30,d)
но не сработало и подумал, что здесь таймаут как то по другому задается.
а в конец строки таймаут не стал уже пробовать писать.