Ejabberd帐户注册问题

时间:2016-04-20 16:08:53

标签: xmpp ejabberd agsxmpp

我正在尝试使用agsXMPP库在我的eJabberd服务器上注册帐户。这是我的代码,就像这里一样:

http://www.codeproject.com/Articles/21267/Creating-a-Jabber-Client-using-the-agsXMPP-Library

static void Main(string[] args)
{
    string JID_Sender = "newaccount@pc-michi";
    string Password = "123";

    Jid jidSender = new Jid(JID_Sender);
    XmppClientConnection xmpp = new XmppClientConnection(jidSender.Server);

    xmpp.RegisterAccount = true;

    try
    {
        xmpp.Open(jidSender.User, Password);
        xmpp.OnLogin += new ObjectHandler(xmpp_OnLogin);
    }
    catch (Exception e)
    {
        Console.WriteLine(e.Message);
    }


    Console.Write("Wait for Login ");
    int i = 0;
    _wait = true;
    do
    {
        Console.Write(".");
        i++;
        if (i == 10) _wait = false;
        Thread.Sleep(500);
    } while (_wait);
    Console.WriteLine();
}

static void xmpp_OnLogin(object sender)
{
       _wait = false;
       Console.WriteLine("Logged In");
}

所以,这应该可以正常工作,至少它有时会这样做。存在问题。该帐户仅在我重新启动服务器时创建。为什么会这样?我没有更改任何有关服务器上的设置,它是新安装的。我也已经尝试重新安装eJabberd。但结果仍然相同。你知道这个问题的解决方案吗?或者它只是我在代码中缺少的东西?

您可以在此处找到我的配置文件:http://textuploader.com/5yu90

1 个答案:

答案 0 :(得分:0)

您在ejabberd.yml

中缺少移民

access_from:deny 替换为 access_from:allow

## Local c2s or remote s2s users cannot register accounts
##
access_from: allow

并评论此行

ip_access:trusted_network

不要忘记重启服务器或重新加载配置文件。