Траблшутинг АТС Panasonic в связке с Asterisk
Случается, что отлаженная связка между Asterisk и Panasonic выходит из строя. Поиск проблем требует наличия определённого набора знаний, а так же, обычно, двух специалистов: один со стороны сервера Asterisk, другой со стороны АТС Panasonic KX TDA-200. Вариативность проблем носит необъемлемый характер, потому в рамках данной статьи будет описан конкретный случай. Описание схемы подключения. Описание проблемной […]
Случается, что отлаженная связка между Asterisk и Panasonic выходит из строя. Поиск проблем требует наличия определённого набора знаний, а так же, обычно, двух специалистов: один со стороны сервера Asterisk, другой со стороны АТС Panasonic KX TDA-200. Вариативность проблем носит необъемлемый характер, потому в рамках данной статьи будет описан конкретный случай.
- Описание схемы подключения.
- Описание проблемной ситуации.
- Разбор логов, согласование конфигурации, сбор индикации с Panasonic и Parabell Quasar.
- Диагностика серверной платы Parabell Quasar-M х2 port’s.
- Рекомендации по траблшутингу.
Описание схемы подключения
Для начала давайте ознакомимся со схемой подключения:
АТС Panasonic служит аналоговым шлюзом, к которому подключаются аналоговые телефоны в нумерации 1ХХ-4ХХ. Коммутация Asterisk и Panasonic происходит посредством E1 кабеля от Panasonic в серверную плату Parabell Quasar x2 ports. Так же, к Asterisk подключены IP-телефоны с нумерацией 5ХХ. Всей маршрутизацией вызовов занимается Asterisk за исключением случая, при котором абоненты, которые находятся за Panasonic, совершают исходящий вызов. На Asterisk имеются внешние операторские SIP-линии.
Описание проблемной ситуации
Суть проблемной ситуации в следующем: абоненты 5ХХ не могут звонить на 1ХХ-4ХХ, а абоненты 1ХХ-4ХХ вовсе находятся без связи, за исключением внутренней между собой, т.е. на 5ХХ они не могут дозвониться, но между собой связь есть.
Разбор логов, согласование конфигурации, сбор индикации с Panasonic и Parabell Quasar.
Во время совершения вызовов со стороны Asterisk на Panasonic было следующее:
Ответом Panasonic служит 34 HangupCause, что означает, что Panasonic не может создать канал.
В то время на Panasonic:
QSIG line->PBX No.3029 Port:1 (elapsed time from LPR reset) 01/01/01 00:58:14
L2: I SAPI:0 TEI:0
L3:
SETUP crn:008A (O)
Bearer Capability: 80 90 A3 (Speech A-Law)
Channel Identity: A1 83 81 (channel=B1 pref.)
Called Party Number: A1 31 30 38
Type of Number= National Number, Numbering Plan= ISDN/Telephony
Number= 108
Sending Complete
00 01 DE DE 08 02 00 8A 05 04 03 80 90 A3 18 03
A1 83 81 70 04 A1 31 30 38 A1
PBX->QSIG line No.3030 Port:1 (elapsed time from LPR reset) 01/01/01 00:58:14
L2: I SAPI:0 TEI:0
L3:
RELEASE COMPLETE crn:008A (D)
Cause: 81 A2
Cause Value= "#34 No channel available"
Location= "private network serving the local user"
02 01 DE E0 08 02 80 8A 5A 08 02 81 A2
Аналогичный ответ о том, что ATC не может сформировать канал связи.
Во время совершения обратного вызова с Panasonic на Asterisk, абоненты Panasonic получали сообщение о том, что нет доступных каналов связи.
В то время Asterisk не получал никаких сообщений с противоположной стороны.
Регулярно в лог Asterisk сыпались сообщения о нарушении синхронизации и разрушении канала:
- Перегрузка канала синхронизации.
- Red Alarm на канале связи, что говорит о его полной неработоспособности, как следствие, потерей связи с Panasonic.
- Падение канала синхронизации вследствие перегрузки.
- Падение голосовых каналов типа B.
После этого произошло восстановление синхронизации.
Источником синхронизации, а иначе – Master (pri_net) является Asterisk. Стороной, принимающей синхронизацию – Slave (pri_cpe), является Panasonic, обе стороны работали по протоколу ISDN.
Конфигурация драйвера платы Parabell Quasar выглядела следующим образом:
Конфигурация модуля chan_dahdi.so:
Собранная индикация с платы PRI 30 на Panasonic и Parabell Quasar на сервере с Asterisk о проблемах не сообщали:
Asterisk Server
ATC Panasonic
Исходя из вышестоящих фотографий, никаких проблем на физическом уровне не имелось.
Диагностика серверной платы Parabell Quasar-M х2 port’s.
Для диагностики серверной платы. Была использована утилита Dahdi_Tools. Транковая линия Е1 приходила в Span1, т.е. в первый порт.
В примере выше также говорится о том, что проблем нет.
Ничто не указывало на суть проблемы, до тех пор, пока на телефонных станциях не начали менять конфигурацию, а именно, изменили протокол сигналинга на QSIG, после этого в Dahdi_Tool начал изменяться параметр Bipolar Violation, что является плохим признаком.
Данная зацепка говорит о том, что имеется проблема физического характера на противоположной стороне. Проблема с принимающим устройством, либо же плохо обжата приёмная пара.
Параметр Bipolar Violation в идеальных условиях должен быть равен 0, либо всегда одному и тому же значению. Если параметр меняет значение, значит, имеется проблема. Изначально, во время начала траблшутинга, значение было равным нулю, впоследствии же оно менялось следующим образом:
Вначале значение стало равным 241:
Затем359:
В данном случае источником проблемы оказался слот для платы PRI 30 на Panasonic. Плата была переставлена в другой свободный слот, переконфигурирована в полном соответствии с Master-стороной, т.е. Asterisk. Так же у данного экземпляра IP-ATC Panasonic KX TDA-200 было обнаружено, что конфигурация очень медленно считывается с флеш-накопителя, что так же могло стать причиной сбоев.
Рекомендации по траблшутингу.
- Чтобы видеть полную информацию о статусе вызова через Е1, используйте команду в консоли Asterisk:
CLI> pri set debug on span1 – span1 – это номер порта, в который приходит поток Е1. Может отличаться от примера. Если присутствуют проблемы при звонках, необходимо смотреть на Cause Codes звонка. Полное описание можно найти в гугле при запросе “ISDN Cause Codes”
- Для полной диагностики платы пользуйтесь утилитами Dahdi_Tool, Dahdi_Test.
# dahdi_tool – утилита для диагностики серверной платы.
# dahdi_test – утилита для диагностики готовности сервера обрабатывать прерывания платы. Значения 99,9% — норма, всё, что ниже – плохо. Если значение ниже, значит, что у сервера большой износ, либо какое-то устройство пытается работать на одном прерывании с платой.
- Чтобы узнать, есть ли иные устройства, прерывания которых, конфликтуют с прерываниями платы, используйте:
# cat /proc/interrupts – вывод файла прерываний в терминал.
В идеальных условиях карта должна работать на одном прерывании. При попытке какого-либо устройства работать на том же прерывании, что и карта рекомендуется отключать устройства с тем же прерыванием, в противном случае карта будет плохо работать.
- В случае, когда Вы конфигурируете драйвер платы system.conf, большое значение имеет параметр crc4. CRC4 – это циклические избыточные коды, которые носят сервисный характер, а именно помогают проверять целостность передаваемой информации. CRC4 опция определяется на стороне оператора связи, либо в случае связки 2 АТС, стороной, которая является источником синхронизации. Если её включить, а оператор связи её не предоставляет, то информация будет искажаться до нечитаемой, возможно возникновение Blue статуса в dahdi_tool, что говорит о том, что канал работает, но его нельзя использовать для связи, потому что невозможно провести декодирование информации. Данная опция должна быть в обязательно порядке согласована с оператором связи.
- Обращайте внимание на то, кто Вы по отношению к противоположной стороне: Если Вы связываете Asterisk и Panasonic, согласуйте с администратором Panasonic, кто будет источником синхронизации, а кто будет синхронизироваться с источником. Если Вы подключаете многоканальную Е1 линию, предоставляемую оператором связи, то Вы всегда будете синхронизироваться источником, т.е. оператором связи.
В противном случае, в логе Asterisk Вы будете видеть подобного рода сообщения:
Это общие рекомендации к траблшутингу проблем, возникающих в интеграции АТС Asterisk с Panasonic и им подобным. В каждом конкретном случае методы шутинга будут отличаться.
Остались вопросы?
Я - Компаниец Никита, менеджер компании Voxlink. Хотите уточнить детали или готовы оставить заявку? Укажите номер телефона, я перезвоню в течение 3-х секунд.
категории
- DECT
- Linux
- Вспомогательный софт при работе с Asterisk
- Интеграция с CRM и другими системами
- Интеграция с другими АТС
- Использование Elastix
- Использование FreePBX
- Книга
- Мониторинг и траблшутинг
- Настройка Asterisk
- Настройка IP-телефонов
- Настройка VoIP-оборудования
- Новости и Статьи
- Подключение операторов связи
- Разработка под Asterisk
- Установка Asterisk
VoIP оборудование
ближайшие курсы
Новые статьи
10 доводов в пользу Asterisk
Распространяется бесплатно.
Asterisk – программное обеспечение с открытым исходным кодом, распространяется по лицензии GPL. Следовательно, установив один раз Asterisk вам не придется дополнительно платить за новых абонентов, подключение новых транков, расширение функционала и прочие лицензии. Это приближает стоимость владения станцией к нулю.
Безопасен в использовании.
Любое программное обеспечение может стать объектом интереса злоумышленников, в том числе телефонная станция. Однако, сам Asterisk, а также операционная система, на которой он работает, дают множество инструментов защиты от любых атак. При грамотной настройке безопасности у злоумышленников нет никаких шансов попасть на станцию.
Надежен в эксплуатации.
Время работы серверов некоторых наших клиентов исчисляется годами. Это значит, что Asterisk работает несколько лет, ему не требуются никакие перезагрузки или принудительные отключения. А еще это говорит о том, что в районе отличная ситуация с электроэнергией, но это уже не заслуга Asterisk.
Гибкий в настройке.
Зачастую возможности Asterisk ограничивает только фантазия пользователя. Ни один конструктор шаблонов не сравнится с Asterisk по гибкости настройки. Это позволяет решать с помощью Asterisk любые бизнес задачи, даже те, в которых выбор в его пользу не кажется изначально очевидным.
Имеет огромный функционал.
Во многом именно Asterisk показал какой должна быть современная телефонная станция. За многие годы развития функциональность Asterisk расширилась, а все основные возможности по-прежнему доступны бесплатно сразу после установки.
Интегрируется с любыми системами.
То, что Asterisk не умеет сам, он позволяет реализовать за счет интеграции. Это могут быть интеграции с коммерческими телефонными станциями, CRM, ERP системами, биллингом, сервисами колл-трекинга, колл-бэка и модулями статистики и аналитики.
Позволяет телефонизировать офис за считанные часы.
В нашей практике были проекты, реализованные за один рабочий день. Это значит, что утром к нам обращался клиент, а уже через несколько часов он пользовался новой IP-АТС. Безусловно, такая скорость редкость, ведь АТС – инструмент зарабатывания денег для многих компаний и спешка во внедрении не уместна. Но в случае острой необходимости Asterisk готов к быстрому старту.
Отличная масштабируемость.
Очень утомительно постоянно возвращаться к одному и тому же вопросу. Такое часто бывает в случае некачественного исполнения работ или выбора заведомо неподходящего бизнес-решения. С Asterisk точно не будет такой проблемы! Телефонная станция, построенная на Asterisk может быть масштабируема до немыслимых размеров. Главное – правильно подобрать оборудование.
Повышает управляемость бизнеса.
Asterisk дает не просто набор полезных функций, он повышает управляемость организации, качества и комфортности управления, а также увеличивает прозрачность бизнеса для руководства. Достичь этого можно, например, за счет автоматизации отчетов, подключения бота в Telegram, санкционированного доступа к станции из любой точки мира.
Снижает расходы на связь.
Связь между внутренними абонентами IP-АТС бесплатна всегда, независимо от их географического расположения. Также к Asterisk можно подключить любых операторов телефонии, в том числе GSM сим-карты и настроить маршрутизацию вызовов по наиболее выгодному тарифу. Всё это позволяет экономить с первых минут пользования станцией.