Opened 5 years ago
Closed 5 years ago
#323 closed баг (готово)
Не происходит регистрация?
Reported by: | san | Owned by: | alx |
---|---|---|---|
Priority: | средний | Milestone: | 1 очередь |
Component: | any | Keywords: | |
Cc: |
Description
Тикет составил alx со слов san.
Имеется две платы VE-02.
На первой плате создается SIP-пользователь.
Канальное окончание FXS второй платы регистрируется на первой плате под именем созданного пользователя.
Результат: в веб-интерфейсе второй платы в колонке регистрации появляется "да", но в таблице SIP-пользователей первой платы не появляется запись с контактом и юзер-агентом. Вызов пользователя после этого неуспешен.
Дополнительные обстоятельства: имеется третья плата - VE-01. Вторая плата успешно регистрируется на VE-01, и VE-01 успешно регистрируется на первой плате.
Change History (4)
comment:1 by , 5 years ago
comment:2 by , 5 years ago
Еще один момент. На момент жалобы в конфигурациях плат VE-02 были записаны неверные адреса шлюза и DNS. а также пустое значение в поле "Сервер NTP" (платы сконфигурированы в режиме статических настроек, не DHCP).
comment:3 by , 5 years ago
Исправление ошибок конфигурации (добавление адресов сервера NTP и изменение адресов шлюза и DNS) не привели к видимым изменениям в процессе регистрации.
comment:4 by , 5 years ago
Resolution: | → готово |
---|---|
Status: | new → closed |
Исправлено в r1603.
При переходе с repro-1.9 на repro-1.10 изменились ключевые слова в кониг-файле, задающие расположение баз данных BDB. Так как блок VIP продолжает использовать repro-1.9, базы данных создались не в /tmp, а в ПЗУ (в корневом каталоге). В результате в базе данных оказалось записано, что адрес платы, на которой требуется зарегистрироваться, является собственным доменом платы, которая должна регистрироваться. Как результат, собственный repro сразу отвечал "200 OK" на запрос регистрации.
Анализ кода показал, что слово "да" появляется (переменная reged класса SIPChannel становится равной true) только при возникновении события EXOSIP_REGISTRATION_SUCCESS. Насколько я понимаю (код libeXosip специально не смотрел) событие EXOSIP_REGISTRATION_SUCCESS генерируется при получении ответа "200 OK" на запрос REGISTER...
Похоже, что регистратор, получив REGISTER, отвечает "200 OK", но затем почему-то не добавляет запись в свою базу данных (либо эта запись потом по каким-то причинам сразу удаляется)...
Наверное было бы полезно получить дамп обмена сообщениями SIP между первой и второй платами при регистрации.