我使用的是erlang 17.0,ejabberd 14.07。我正在尝试创建聊天应用程序,我已完成注册部分。现在我想从注册用户登录,但我无法登录,所以如何在ejabberd上以用户身份登录。 基本上我的问题是,用户如何成为在ejabberd服务器上(在本地主机上)?以Ejabberd用户身份登录
我知道这是非常愚蠢的问题,但我无法找到任何方式引导我。
我使用的是erlang 17.0,ejabberd 14.07。我正在尝试创建聊天应用程序,我已完成注册部分。现在我想从注册用户登录,但我无法登录,所以如何在ejabberd上以用户身份登录。 基本上我的问题是,用户如何成为在ejabberd服务器上(在本地主机上)?以Ejabberd用户身份登录
我知道这是非常愚蠢的问题,但我无法找到任何方式引导我。
使用函数yourconnection.login(username,password)。
首先确保您已成功通过命令
> sudo ejabberdctl registered_users localhost
这将所有注册用户的localhost节点上列出的注册用户ejabberd。希望你会在那里找到你的用户。
现在您已成功设置您的ejabberd(XMPP服务器)。您需要XMPP客户端才能让用户登录。
所以,如果您使用的是java编程语言,那么您应该使用SMACK XMPP库连接到ejabberd服务器。使用此代码与您的用户名和密码连接到ejabberd服务器。
// Create a connection to the igniterealtime.org XMPP server.
XMPPTCPConnection con = new XMPPTCPConnection("igniterealtime.org");
// Connect to the server
con.connect();
// Most servers require you to login before performing other tasks.
con.login("jsmith", "mypass");
// Start a new conversation with John Doe and send him a message.
Chat chat = ChatManager.getInstanceFor(con).createChat("[email protected]", new MessageListener() {
public void processMessage(Chat chat, Message message) {
// Print out any messages we get back to standard out.
System.out.println("Received message: " + message);
}
});
chat.sendMessage("Howdy!");
// Disconnect from the server
con.disconnect();
关于该代码段的详细信息,请访问link。
如果你想使用其他的客户端比在Java中那么这里就是list of XMPP client libraries
连接到你需要ejabberd服务器后坚持这一方面发送和接收进一步的消息。