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

Bagckground не в фоне, почему?

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

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

Ответить
Darg
Сообщения: 4
Зарегистрирован: 04 окт 2011, 18:06

Bagckground не в фоне, почему?

Сообщение Darg »

Привет читающим!
Недавно решил сделать такую фигню:
звонящий оповещается о том, что тот кому он звонит, занят (и предлагается подождать) если вызываемый уже общается с кем то, если нет то просто идет вызов
exten => _[123]XXX,1,Set(ASTATE=${DEVSTATE(SIP/${EXTEN})})
exten => _[123]XXX,2,GotoIf($["${ASTATE}" = "INUSE"]?:notuse)
exten => _[123]XXX,3,Answer
exten => _[123]XXX,4,Background(/var/lib/asterisk/sounds/nomerzanyat)
exten => _[123]XXX,5(notuse),Dial(Sip/${EXTEN},50,tTr)

Но случается так что, некоторые сессии звонков висят и соответственно DEVSTATE возвращает "INUSE" , даже если линия свободна. Но это ладно, не могу понять почему Dial ждет пока проиграется весь Background-файл, и только потом идет вызов?

-- Executing [1113@1110:1] Set("SIP/1111-08cf2390", "ASTATE=INUSE") in new stack
-- Executing [1113@1110:2] GotoIf("SIP/1111-08cf2390", "1?:notuse") in new stack
-- Executing [1113@1110:3] Answer("SIP/1111-08cf2390", "") in new stack
-- Executing [1113@1110:4] BackGround("SIP/1111-08cf2390", "/var/lib/asterisk/sounds/nomerzanyat") in new stack
-- <SIP/1111-08cf2390> Playing '/var/lib/asterisk/sounds/nomerzanyat' (language 'ru')
-- Executing [1113@1110:5] Dial("SIP/1111-08cf2390", "Sip/1113|50|tTr") in new stack

Как я понимаю background должен играться в фоне при выполнении следующих шагов.
Может кто подсказать, где я ошибаюсь?
Аватара пользователя
Aven
Сообщения: 798
Зарегистрирован: 28 янв 2011, 16:20

Re: Bagckground не в фоне, почему?

Сообщение Aven »

Вы описание приложения Background не осилили прочитать?
> core show application BackGround
-= Info about application 'BackGround' =-
[Synopsis]
Play an audio file while waiting for digits of an extension to go to.
Используйте параметр m приложения Dial для замены гудков на музыку.
Решения телефонии на базе Asterisk || http://it-need.ru
Darg
Сообщения: 4
Зарегистрирован: 04 окт 2011, 18:06

Re: Bagckground не в фоне, почему?

Сообщение Darg »

офигеть, везде в инете в описании "Начинает проигрывать заданный звуковой файл и сразу же возвращает управление, проигрывая звуковой файл в фоновом режиме, пока исполняются следующие команды " , а тут на тебе " while waiting for digits". Придется делать через m.
Спасибо за подсказку !
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH