Назад | Перейти на главную страницу

ejabberd external auth и получение списка зарегистрированных пользователей или поиск пользователя?

У нас есть существующий набор веб-приложений, написанных на .NET (интерфейсы и веб-службы) с серверной частью SQL Server. Пытаюсь переключиться с Openfire в качестве сервера XMPP на ejabberd. Openfire позволяет делегировать аутентификацию пользователя существующей базе данных с помощью SQL-запросов, хранящихся в таблице базы данных openfire.ofProperty. С помощью ejabberd я надеялся либо 1) делегировать аутентификацию / управление пользователями ejabberd нашей системе с помощью внешнего скрипта auth (или эквивалентного модуля ejabberd_auth_http), либо 2) синхронизировать аутентификацию / управление пользователями ejabberd с нашей системой с помощью ejabberd ReST API.

Я пробовал внешнюю аутентификацию, она работает, но ее API не предоставляет никаких методов для получения списка зарегистрированных пользователей и для поиска пользователей. Таким образом, после перехода на внешнюю аутентификацию команда "register_users" больше не работает. я предполагаю Jabber поиск тоже не сработает: как вы могли искать, если не можете найти список для поиска?

Итак, это единственный способ интегрировать чат на основе ejabberd с пользовательской базой существующей системы через ejabberd ReST API? Я имею в виду: когда наша система регистрирует пользователя, она вызывает команду ejabberd ReST API "register" и т. Д. Это дублирует нашу системную таблицу "users" в таблице "users" ejabberd, но, по крайней мере, поддерживает их синхронизацию ...