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

Физический смысл Answer()

Проблемы Asterisk без вэб-оболочек и их решения

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

KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Физический смысл Answer()

Сообщение KeeperAD »

Уважаемые гуру, не мог бы кто-нибудь в доступной форме пояснить смысл функции Answer(), т. к. то что написано о ней не до конца позволяет понять ее реальный смысл! Проблема в том, что, если использовать Answer(), то начинает некорректно отрабатываться некоторый функционал астера.
Предыстория: нужно было сделать так, чтобы при наборе внутреннего номера, цифры подменялись именем из callerid. В случае если использовать Answer() этот функционал либо работает "через раз", либо вообще не работает. Если же убрать Answer(), то все отлично начинает работать. И вообще, наличие Answer() приводит к тому, что вызов проходит, как бы в режиме транка... Плиз, помогите разобраться... Убил почти весь день на эту долбанную функцию...
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Физический смысл Answer()

Сообщение zzuz »

функционал либо работает "через раз", либо вообще не работает
- Не верю!
Линия24 - Системы Массового Телефонного Обслуживания
KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Re: Физический смысл Answer()

Сообщение KeeperAD »

Проверь! :D Под функционалом в данном конкретном случае, я имел ввиду именно то, что описал... Я понимаю так, что при Answer() вызов проходит через астера, а в случае его отсутствия вызов проходит. что называется, "по пути наименьшего сопротивления", т. е. напрямую peer2peer. При наличии Answer() время начинает тикать, как только Абонент А набрал номер, при ее отсутствии, время начинает тикать с момента ответа абонента Б.
KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Re: Физический смысл Answer()

Сообщение KeeperAD »

zzuz писал(а):
функционал либо работает "через раз", либо вообще не работает
- Не верю!
Проверь! :D Под функционалом в данном конкретном случае, я имел ввиду именно то, что описал... Я понимаю так, что при Answer() вызов проходит через астера, а в случае его отсутствия вызов проходит. что называется, "по пути наименьшего сопротивления", т. е. напрямую peer2peer. При наличии Answer() время начинает тикать, как только Абонент А набрал номер, при ее отсутствии, время начинает тикать с момента ответа абонента Б.
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Физический смысл Answer()

Сообщение zzuz »

Ну я думаю , что нам с Вами еще рано переходить на "ты".
Билинговое время начинает тикать всегда , когда происходит ответ на вызов, с самого первого Answer. Без разницы кто ответил - сервер или удаленный пир на сервере. Работа peer-2-peer возможна только в случае отключения проксирования голоса астериском и поддержкой пиров. Само собой после Answer на сервере о peer2peer можно и не думать. Также проксирование сервером включается некоторыми опциями команды Dial() , такие как tT.
Линия24 - Системы Массового Телефонного Обслуживания
KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Re: Физический смысл Answer()

Сообщение KeeperAD »

Простите! Не хотел обидеть. Привычка среди коллег :)
Однако, отсчет у меня без Answer() начинается исключительно после ответа Абонента Б! Да и хотелось бы все-таки знать смысл применения Answer().
Аватара пользователя
zzuz
Сообщения: 1658
Зарегистрирован: 21 сен 2010, 13:33
Контактная информация:

Re: Физический смысл Answer()

Сообщение zzuz »

Смысл прост - ответить на вызов и контролировать голос на астериске. Некоторые приложения просто не будут корректно работать, такие как MusicOnHold или Playback.
Линия24 - Системы Массового Телефонного Обслуживания
ded
Сообщения: 15630
Зарегистрирован: 26 авг 2010, 19:00

Re: Физический смысл Answer()

Сообщение ded »

... например два сценария: в одном не обязательно Аnswer, в другом - обязательно.
1) exten => 1234,1,Dial(SIP/trunk/79012345678) - насквозь, direct inward dial (DID) http://ru.wikipedia.org/wiki/DID - прочитайте описание двух моделей поведения шлюза, то же самое!

2) exten => 1234,1, Answer() - а тут без снятия трубки Answer дальнейший сценарий просто невозможен. И тарификация позвонившему абоненту будет тикать с этого момента.
exten => 1234,n,Wait(2)
exten => 1234,n,Playback(wellcome-to-ABC-company)
exten => 1234,n,Background(please-enter-the-num-who-would-you-like-to-call)
exten => 1234,n,WaitExten(5)
exten => 1234,n,Goto(1234,4)

Смысл понятен?
KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Re: Физический смысл Answer()

Сообщение KeeperAD »

Теперь кажется понятен... Ключевое слово "звонок на вылет" )) Если, диалпланом подразумевается нечто более интерактивное, нежели банальное соединение Абонента А с Абонентом Б, тот же например IVR, то без Answer() никак... Надо будет проверить ) Спасибо!!!
KeeperAD
Сообщения: 103
Зарегистрирован: 20 ноя 2011, 00:25

Re: Физический смысл Answer()

Сообщение KeeperAD »

Гыы... проверил... IVR без Answer() прекрасно себя чувствует. IVR проговаривается через Read(). Вывод... В астере 10.4.0 функция Answer() "на хэ" бы не нужна!
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH