Como integrar totalmente o XMPP em um site com usuários registrados
Temos um site de rede social em que as pessoas têm contatos e queremos que ele seja integrado ao XMPP. Atualmente, usamos o servidor ejabberd XMPP.
Aqui estão as minhas perguntas:
Como criar uma conta corretamente? No momento, o que eu estou pensando é no registro do usuário em nosso aplicativo Web, chamaríamos um script que executaria um comando ejabberd para criar um usuário.
Autenticação de usuário. Após o login do usuário em nosso site, o usuário será automaticamente conectado ao sistema de bate-papo. Como você faz isso no lado do cliente com strophe.js? Pelo que entendi, você precisa fornecer JID e senha para autenticação, então estou pensando que, no login, haveria uma chamada ajax para obter a senha do usuário e, em seguida, use o texto de resposta na chamada de login do strophe.js. Isso é seguro? Existem outras maneiras de fazer isso?
Registro de presença. Nosso aplicativo da web tem um sistema de contatos, mas o XMPP tem sua própria maneira de adicionar contatos por meio da assinatura de presença, certo? Exemplo: Quando o usuário1 tenta adicionar o usuário2, uma autorização é solicitada ao usuário2 antes que o usuário1 possa ser um contato do usuário2. Mas como já temos um sistema de contatos em nosso aplicativo Web, queremos ignorar essa autorização do XMPP ou suprimi-la e apenas autorizar com um script / comando quando o usuário2 confirmar o usuário1 como um contatoEm nosso site. Ainda não está claro para mim, mas um colega disse que isso é possível no módulo mod_admin_extra do ejabberd (um comando que criará uma assinatura sem a necessidade de autorização do cliente). É possível ou tenho que manipular o banco de dados ejabberd manualmente com um script (desde que eu tenha transferido do banco de dados Mnesia padrão para outro banco de dados, digamos MySQL).
Desde já, obrigado.