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

Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 13:00
RomanL
Ребят, помогите разобраться с перенаправлением звонков. В features
[featuremap]
atxfer => *2

Звоню с одного локального телефона 104 на другой 110, второй отвечает, нажимаю на нём *2 и ничего не происходит, в какую сторону хоть смотреть?

[Mar 28 04:40:30] WARNING[3659]: res_rtp_asterisk.c:2135 ast_rtp_read: RTP Read too short
== Spawn extension (LocalAndRussia, 110, 1) exited non-zero on 'SIP/104-00000032'
== Using SIP RTP CoS mark 5
== Using SIP RTP CoS mark 5
-- Executing [110@LocalAndRussia:1] Dial("SIP/104-00000034", "SIP/110") in new stack
== Using SIP RTP CoS mark 5
-- Called SIP/110
-- SIP/110-00000035 is ringing
-- SIP/110-00000035 answered SIP/104-00000034
[Mar 28 04:40:42] WARNING[3669]: res_rtp_asterisk.c:2135 ast_rtp_read: RTP Read too short
[Mar 28 04:40:50] WARNING[3669]: res_rtp_asterisk.c:2135 ast_rtp_read: RTP Read too short

В logger включил dtmf, при нажании *2 ничего не происходит. Подскажите, пожалуйста, в какую сторону смотреть. dtmfmode = rfc2833, телефоны grandstream GXP285. Не могу понять почему RTP слишком короткие проходят, внятного ответа из-за чего может быть такая петрушка в интернете не нашёл, есть только частные случаи и как их исправить. [Mar 28 04:40:50] WARNING[3669]: res_rtp_asterisk.c:2135 ast_rtp_read: RTP Read too short. Подумал сначала, что разница в портах для RTP в астере и в телефоне, но получается что что каждая из сторон открывает чётный порт для приёма и отправки под себя и немного не ясно, связаны dtmf сигналы с RTP или нет.
В астериске новичёк, многое ещё не понимаю, задачу надо решить, как всегда, вчера, так что прошу помощи у более сведущих людей. Заранее Спасибо за ответы.

P.S. Если нет желания помочь, прошу воздержаться от чмырения и троллинга, которого тут 90 процентов в ответах. Взрослые же люди. Спасибо.

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 14:03
Vlad1983
Dial(SIP/110,,Tt)

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 14:53
RomanL
Спасибо большое - попробовал. И пробовал в extensions_additional прописать ко всем вызовам dial
exten => _XXX,1,Dial(SIP/${EXTEN},,Tt)

Не помогло, к сожалению. А подскажите пожалуйста, ведь если логгирование dtmf включено, то я буду видеть их на астере при нажатии клавиш на 110ом?

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 14:58
ded
пробовал в extensions_additional ? Оказывается мы имеем дело с freePBX или аналогом? И тогда конечно самый верный ход - писать в extensions_additional! В котором даже в заголовке написано WARNING! Do not edit this file!
Видеть логгирование dtmf нужно обязательно, если оно включено.
Думаю, что не включено.
Что такое за телефоны 104, 110 (в физическом плане)? Как подключены? Если это аналоговые в портах FXS - то это дополнительный гимор.

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 15:47
RomanL
Это Elastix, прошу прощения что не пояснил.

Вот единственная запись в additional, тоесть вообще лучше не трогать его, даже для таких малостей как разрешение трансфера?
[globals]
DIAL_OPTIONS = Tt

Телефоны подключены сиповые GrandStream в одной подсети с астером
[110]
type = friend
username = 110
secret = pass
host = dynamic
context = LocalAndWorld

[104]
type = friend
username = 104
secret = pass
host = dynamic
context = LocalAndWorld

Вот что включено в логгере
[logfiles]
console => notice,warning,error,dtmf
messages => notice,warning,error,dtmf

Спасибо большое.

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 15:50
RomanL
Забыл добавить что Tt добавилось
-- Executing [104@LocalAndRussia:1] Dial("SIP/110-0000008f", "SIP/104,,Tt") in new stack

А вот dtmf так и не отображаются в cli, может что-то неправильно в логгере прописал?

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 16:01
ded
Ваши записи в additional исчезнут при первом же применении изменений через вэб интерфейс.
dtmf так и не отображаются в cli, потому что Астериск не видит их, потому что отсутствует параметр dtmftype= на пирах, или он неверный.
Вам опять рекомендую читать книги по Астериск, Ваши вопросы относятся к самым базовым, задавались много раз, перечитал ваши диалоги тут - никто Вас не чморил и не троллил, не понимаю Вашего болезненного отношения к себе.

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 16:28
RomanL
А я про себя и не говорил. Опаску вызывает сама мысль писать на форум, видя какое отношение к ищущим ответа. Ведь если всё прочитать и со всем разобраться самому, то для чего вообще нужен форум? Я не понимаю многое - это так, но какие-то моменты нужны "вчера", и есть надежда что кто-то сталкивался с подобным и есть какой-то простой способ решения. Никого не хотел задеть, постараюсь выкроить время и заняться астериском поплотнее и изучить этот вопрос, просто он для моей профессии троестепенный, но иногда приходится пользоваться. Никого не хотел задеть.

По теме: вебинтерфейсом я не пользуюсь, в sip.conf стоит dtmfmode = rfc2833 в генерал, такойже стоит на аппаратах. Ведь dtmfmode и dtmftype однозначные? Спасибо.

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 16:48
ded
Вопрос вопросу рознь. 90% вопросов задаваемых новичками уже задавались 100500 раз, и надо немного ума чтобы набрать этот вопрос в окошечке гугля а не тут. В чём Вы лично специалист?

Меняйте dtmfmode. Оно не совпадает на пирах и на аппаратах. Если логгирование включено, то Вы должны видеть нажатия кнопок на телефоне во время установленной сессии. RTP Read too short говорит о том, что Астериск скорее всего видит их как inband. Это тоже пройдёт, если соединение по alaw | ulaw

Re: Не получается сделать перенаправление звонка

Добавлено: 28 мар 2013, 17:17
RomanL
Спасибо большое за ответ, сейчас попробую. Я занимаюсь системами планирования воздушного движения на авиабазах РФ если в двух словах.