Как полностью интегрировать XMPP на веб-сайте с зарегистрированными пользователями

У нас есть сайт социальной сети, где люди имеют контакты, и мы хотим, чтобы он был интегрирован с XMPP. В настоящее время мы используем ejabberd XMPP сервер.

Вот мои вопросы:

Как правильно создать аккаунт? Прямо сейчас, я думаю о регистрации пользователей в нашем веб-приложении, мы бы назвали скрипт, который будет выполнять команду ejabberd для создания пользователя.

Аутентификация пользователя. При входе пользователя на наш веб-сайт пользователь автоматически войдет в систему чата. Как вы делаете это на стороне клиента с strophe.js? Как я понимаю, вам нужно предоставить JID и пароль для аутентификации, поэтому я думаю, что при входе в систему будет ajax-вызов для получения пароля пользователя, а затем используйте текст ответа при входном вызове strophe.js. Это безопасно? Есть ли другие способы сделать это?

Регистрация присутствия. В нашем веб-приложении есть система контактов, но у XMPP есть собственный способ добавления контактов через подписку о присутствии, верно? Пример: когда user1 пытается добавить user2, пользователю user2 будет предлагаться авторизация, прежде чем user1 сможет связаться с user2. Но поскольку у нас уже есть система контактов в нашем веб-приложении, мы хотим обойти эту авторизацию XMPP или отменить ее и просто авторизоваться с помощью скрипта / команды, когда user2 подтверждает user1 как контактна нашем веб-сайте, Мне пока не ясно, но коллега сказал, что это возможно в модуле ejabberd mod_admin_extra (команда, которая создаст подписку без необходимости авторизации на стороне клиента). Возможно ли это, или я должен манипулировать базой данных ejabberd вручную с помощью сценария (при условии, что я перенес из базы данных Mnesia по умолчанию в другую базу данных, скажем, MySQL).

Заранее спасибо.

Ответы на вопрос(2)

Ваш ответ на вопрос