Пожалуйста, войдите здесь. Часто задаваемые вопросы О нас
Задайте Ваш вопрос

Как не допустить смену канала DAHDI при звонке

0

Ситуация такая: файл chan_dahdi.conf

[channels]
callwaiting=no
hanguponpolarityswitch=yes
answeronpolarityswitch=yes
callprogress=yes 
max_call_waiting_calls=0
busydetect=yes
busycount=1
context=from-pstn
switchtype=national
signalling=pri_cpe
group=1
channel=>1-15,17-29
context=from-pstn

group=2
channel=>30-31
context=from-pstn

group=9
channel=>30-31
context=from-pstn

Тут у меня явно ошибка. Делаю тестовые звонки через транк или из консоли. С одного телефона на другой. Из 9 группы звонки идут, из второй нет

channel originate SIP/6999 application dial DAHDI/g9/2340

Главное, что не работает - это звонок с определенного канала (тайм слота). Судя по консоли астериска, звонок начинается на правильном 30-ом канале, а потом перекидывается на любой другой. В общем канал не тот, поэтому категория на мини-АТС другая и задача не решается.

Если задать определенный канал прямо в транке или консоле, то он все равно меняется

channel originate SIP/6999 application dial DAHDI/30/2340

CLI>

 Moving call (DAHDI/i1/2340-30) from channel 30 to 28.

Как не допустить смену канала?


Решение

Отделил 2 канала в группу и сделал для нее транк. 2 человека которые звонят в город звонят через этот транк. Чтобы канал не менялся техподдержка DX-500 написала следующее

На стенде всё работает так, как Вам надо, но при условии, что нужные тайм-слоты выделены (14 параметр в таблице "PORT").

Попросил связистов выставить этот параметр и все заработало. Спасибо всем кто помог.

удалить закрыть спам изменить тег редактировать

спросил 2016-10-20 08:59:44 +0400

rotor33 Gravatar rotor33
27 3 6

обновил 2016-11-07 16:39:34 +0400

Zavr2008 Gravatar Zavr2008 flag of Russian Federation
2886 11 9 40
http://mh.otx.ru/

Comments

Разрешите написать в каменте, поскольку это лишь совет: вообще эти группы - гнойник прошлой, "канальной" телефонии - сейчас правильнее давать абонентам столько одновременных звонков, сколько им нужно, а не обрезать возможность позвонить. В Вашем случае если просто забили поток по-максимуму стоит просто еще 1 поток e1 сделать (плата в DX и плата/шлюз в Asterisk) и не дробить абонентов. Астериск может сам разруливать и верно маршрутизировать, DX500 в данном случае - аналоговый шлюз.. E1 - лишь локальный переходник E1/SIP.. В город если идет SIP - без разницы 30 или больше..

Zavr2008 ( 2016-10-21 18:33:00 +0400 )редактировать

2 Ответа

0

Используйте нормальное E1 оборудование для Asterisk, тогда не будет и проблем с bad channel и дальнецшими траблами с pri fixup.

В Вашем случае явно должны валитца варинги о проблемах с синхронизацией и CRC HDLC.

ссылка удалить спам редактировать

ответил 2016-10-21 15:14:40 +0400

Zavr2008 Gravatar Zavr2008 flag of Russian Federation
2886 11 9 40
http://mh.otx.ru/

Comments

к сожалению ни pri debug, ни лога консоли нет. Хотя мне и так ясна ситуация. Патчить астериск, чтобы он не перекидывал канал - болеутоляющее, а не лечение. Вообще с DX-500 много приключений, особенно в связке с TDMoIP.

Zavr2008 ( 2016-10-21 15:16:21 +0400 )редактировать

Wait(1) попробуйте перед Dial на эту VIP группу. Если DX тормозит с освобождением, должно помочь.

Zavr2008 ( 2016-10-21 15:18:46 +0400 )редактировать

Не факт. Там может запрос со стороны базы на смену несущей.

meral ( 2016-10-21 18:06:05 +0400 )редактировать

meral, ремаппинг при обычном звонке обычно происходит при состоянии, когда на одной стороне он занят, а на другой - нет. Учтите что это - пир-2-пир линк, не сеть. Это возникает обычно при нарушении связанности сторон.

Zavr2008 ( 2016-10-21 18:21:35 +0400 )редактировать

Ремаппинг используется еще штатно в режиме QSIG - всякие сервисы типа CF итп. Но в данном случае у ТС скорее всего чистый EDSS/ISDN PRI. В EDSS эта процедура сигнализирует о проблемах как правило

Zavr2008 ( 2016-10-21 18:22:53 +0400 )редактировать

если есть подобные: "[Jan 18 15:32:29] WARNING[21581] chan_dahdi.c: Hangup on bad channel 0/8 on span 1", тогда явно случай что я описал. Но ТС не предоставил логов/трассировки..

Zavr2008 ( 2016-10-21 18:25:05 +0400 )редактировать

смена канала может по куче причин происходить(например,на той стороне шлюз всегда дает отлуп на каналаъ 20-30). толку гадать. дебаг надо.

meral ( 2016-10-22 08:19:27 +0400 )редактировать

Нет у ТС "шлюза на той стороне" - там УАТС DX500. И она не "всегда дает отлуп на каналах 20-30", она делает ремаппинг насколько я понимаю, а не DISCONNECT. Читайте Q.931 и не пишите ерунды.

Zavr2008 ( 2016-10-22 22:53:02 +0400 )редактировать

Еще раз повторяюсь - штатно в Euro ISDN ремаппинг не делается. ТС стоит проверять L1,L2,L3..

Zavr2008 ( 2016-10-22 22:55:59 +0400 )редактировать

а где информация про dx500?

meral ( 2016-10-23 07:56:37 +0400 )редактировать

Всем спасибо за помощь. Проблема пока не решилась. Портянка с отладкой не лезет в коментарий. Создал новую тему http://asterisk-support.ru/question/63271/kak-ne-dopustit-smenu-kanala-dahdi-pri-zvonke-ch2/

rotor33 ( 2016-10-25 10:46:05 +0400 )редактировать

"PRI Span: 1 < Ext: 1 Channel: 17 Type: CPE]" в SETUP ACK прилетает от DX-500. Ее и спрашивайте.

Zavr2008 ( 2016-10-25 23:29:40 +0400 )редактировать

а вот почему - я уже писал выше.. Прочитайте внимательнее..

Zavr2008 ( 2016-10-25 23:30:32 +0400 )редактировать

"а где информация про dx500?" - гуляет по форумам в последние дни. Только беда что на форумах сидят одни и те же люди)

Zavr2008 ( 2016-10-26 19:23:01 +0400 )редактировать
0

Прописать 30 транков по каналу на транк, жестко.

Подругому - никак.

ссылка удалить спам редактировать

ответил 2016-10-20 17:09:47 +0400

meral Gravatar meral flag of Ukraine
23347 24 20 177
http://pro-sip.net/

Comments

Т.е. я создаю 30 групп и делаю транки во FreePBX c идентификаторами DAHDI g0, g1...g30. Но что в этом случае помешает Астериску опять перепрыгивать на произовльные каналы? Ведь 30 и 31 каналы и так не входят сейчав в группу? Я создавал и Custum Trank, где указывал Custom Dial String DAHDI/30/$OUTNUM$ и канал все равно меняется с 30 на произвольный

rotor33 ( 2016-10-21 08:08:11 +0400 )редактировать

Астериск не будет ничего такого делать. Смотрите pri дебаг.

meral ( 2016-10-21 08:41:05 +0400 )редактировать

pri show channels ? Я вижу что звонок висит не на том канале который я задал. Сейчас от безисходности читаю исходники Астериска. Начальник сказал будем делать до упора. Видимо придется патчить prifixupprinciple().

rotor33 ( 2016-10-21 08:50:24 +0400 )редактировать

pri set debug on

meral ( 2016-10-21 08:57:14 +0400 )редактировать

еще желательно убедится в том, что звонилося имеено как канал(посмотреть в консоли как прошла dial)

meral ( 2016-10-21 09:03:38 +0400 )редактировать

толку звонить на 30 канал "в лоб" - там возвращает DX "походу канал busy" и перебрасывает. ТС пусть разбирается почему 2 стороны не в синхре по занятости каналов...

Zavr2008 ( 2016-10-21 18:28:12 +0400 )редактировать

Ваш ответ

Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
[скрыть предварительный просмотр]

Закладки и информация

Добавить закладку

подписаться на rss ленту новостей

Статистика

Задан: 2016-10-20 08:59:44 +0400

Просмотрен: 361 раз

Обновлен: Nov 07 '16

Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией GNU GPL.