如何启用用户注册 - eJabberd for mac?

Posted

技术标签:

【中文标题】如何启用用户注册 - eJabberd for mac?【英文标题】:How to Enable user registration - eJabberd for mac? 【发布时间】:2015-09-21 10:04:01 【问题描述】:

我目前正在使用 xmpp 来启用聊天功能。 作为 我参考这个链接:link 1

所以我成功地能够从控制台注册用户。 但我想从我的应用程序中注册用户名。

我找到了一些链接, 我还找到了“在控制面板中启用用户注册”的解决方案。

Solution of a new user register 这是我的试用代码

NSMutableArray *elements = [NSMutableArray array];
[elements addObject:[NSXMLElement elementWithName:@"username" stringValue:@"venkat"]];
[elements addObject:[NSXMLElement elementWithName:@"password" stringValue:@"dfds"]];
[elements addObject:[NSXMLElement elementWithName:@"name" stringValue:@"eref defg"]];
[elements addObject:[NSXMLElement elementWithName:@"accountType" stringValue:@"3"]];
[elements addObject:[NSXMLElement elementWithName:@"deviceToken" stringValue:@"adfg3455bhjdfsdfhhaqjdsjd635n"]];

[elements addObject:[NSXMLElement elementWithName:@"email" stringValue:@"abc@bbc.com"]];

[[[self appDelegate] xmppStream] registerWithElements:elements error:nil];

但不工作。

能否请您准确地告诉我真正的问题是什么?

【问题讨论】:

嗯,什么不工作?你能详细说明一下吗?在您显示的代码中,您甚至没有尝试发送数据包,所以是的,在当前状态下,代码是部分的并且无法工作。 我没有一个提示如何在 xmpp 中注册用户。我刚刚找到了一个解决方案并尝试实施。你能指导我吗? XMPP用户注册协议在XEP中定义- 【参考方案1】:

您显示的代码无法运行。它甚至没有发送 XMPP 数据包。

XMPP 用户注册协议在XEP-0077 - In-Band Registration 中定义。 XMPPFramework 注册的实现在这里:https://github.com/robbiehanson/XMPPFramework/tree/master/Extensions/XEP-0077

您还可以使用原生方式在 ejabberd 中创建用户,例如使用 ejabberctl 命令行,如 ejabberd 文档中所述:ejabberd Post Install Operations。

【讨论】:

以上是关于如何启用用户注册 - eJabberd for mac?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Ejabberd 16.09-4 Debian9 上启用 omemo?

如何在 ejabberd 服务器中启用流管理?

当用户加入房间时,如何将没有隶属关系的用户直接设置为成员 - Ejabberd

如何强制eJabberd将加密的消息存储到数据库(mod_mam)而不是将消息存储为纯文本?

配置 ejabberd 以用作游戏服务器

如果我使用 Ejabberd 身份验证和 JWT,我不需要注册用户吗?