LINUX.ORG.RU
решено ФорумAdmin

Asterisk вываливает ошибку при регистрации сипа

 ,


0

2

Регаю 2 сипа. При попытке позвонить друг другу в CLI ничего не происходит. Sngrep отправляет ACK с трубки на АТС и на этом всё.

INVITE (SDP)  
─────────>  
401 Unauthorized  
<─────────  
ACK  
─────────>  

При регистрации сипа АТС регистрирует, но с варнингом WARNING[78017]: res_pjsip_pubsub.c:3396 pubsub_on_rx_publish_request: No registered publish handler for event presence from Ydoglbet62b1 == Endpoint Ydoglbet62b1 is now Reachable

Включил логгер. -> Тут <- кусок лога с ошибкой, в котором SIP/2.0 489 Bad Event – Сервер не понял пакет событий, указанный в поле заголовка события (RFC6665). Может кто подскажет чего? Что не понял сервер…?
tcpdump с АТС UDP и SIP



Последнее исправление: Shprot (всего исправлений: 3)

Ответ на: комментарий от Turbid

ps_aors;

+--------------+--------------+-----------------+-------------------+
| id           | max_contacts | remove_existing | qualify_frequency |
+--------------+--------------+-----------------+-------------------+
| Aivp305nAy2j |            1 | yes             |                30 |
| Ydoglbet62b1 |            1 | yes             |                30 |
+--------------+--------------+-----------------+-------------------+

ps_auths;

+--------------+-----------+--------------------+--------------+
| id           | auth_type | password           | username     |
+--------------+-----------+--------------------+--------------+
| Aivp305nAy2j | userpass  | супермегапассоврд1 | Aivp305nAy2j |
| Ydoglbet62b1 | userpass  | супермегапассоврд2 | Ydoglbet62b1 |
+--------------+-----------+--------------------+--------------+

ps_endpoints;

+--------------+---------------+--------------+--------------+---------+----------+-------+--------------+
| id           | transport     | aors         | auth         | context | disallow | allow | direct_media |
+--------------+---------------+--------------+--------------+---------+----------+-------+--------------+
| Aivp305nAy2j | transport-udp | Aivp305nAy2j | Aivp305nAy2j | first   | all      | alaw  | no           |
| Ydoglbet62b1 | transport-udp | Ydoglbet62b1 | Ydoglbet62b1 | first   | all      | alaw  | no           |
+--------------+---------------+--------------+--------------+---------+----------+-------+--------------+

pjsip.conf

[transport-udp]
type=transport
protocol=udp
bind=0.0.0.0

Все остальные поля в БД не заполнены

Shprot
() автор топика

В общем путём эксперимента завёл сипов конкретно числовых с id 100 и 200. Проблема испарилась, но всё равно непонятно почему? Полез в БД за тем, чтоб узнать тип данных поля id - он varchar(255). Будь он integer, запись чисел+букв выдала бы ошибку.

Грешу на баг в самом астере. Кажися механизм реалтайм астера может читать данные из БД только int, но у структуры самой БД тип данных varchar.

Опять же из Asterisk: Полное руководство, 5 издание, на 34-ой странице (50-ой по документу), автор заводит сипов непосредственно по mac-адресу, в котором присутствуют и числа и буквы.

Чё происходит…? =)

Shprot
() автор топика