【发布时间】:2017-10-02 21:09:12
【问题描述】:
我必须为我的公司创建一个聊天应用程序,而且由于我在 Elixir 中进行编程,所以我的选择是使用 Erlang/Elixir 的 ejabberd。我设法将 ejabberd 作为依赖项安装到我的 Elixir 项目中,对其进行配置,并且我还能够从外部与一些 XMPP 客户端连接到它。
我仍然需要实现的是为用户创建一个基于 Web 的界面,他们可以在其中查看某些对话的消息,并且还可以将文本消息推送到 ejabberd 中。 Phoenix 及其频道是一个完美的工具。
我试图找出的缺失部分是对 ejabberd 内部的一些直接函数调用。即缺少以下内容:
- 如何在 ejabberd 中使用我已经存在的用户群进行自己的身份验证? (Erlang 或 Elixir)
- 当用户从 Phoenix 中使用时,如何通过内部 ejabberd 函数调用设置用户的存在?
- 如何利用通过 ejabberd 的消息流以使用 Phoenix 频道广播这些消息?
- 如何以用户的名义从 Erlang 或 Elixir 发送 ejabberd 消息?
恐怕 ejabberd 的文档记录很差,它主要是帮助我解决问题的源代码。但我希望我是错的,这里有一些关于它内部的教程、博客文章、视频。
我非常感谢任何与 ejabberd 的内部 Erlang API 相关的操作指南、博客文章、示例存储库的链接。
这是我已经拥有的,但这只是皮毛:
【问题讨论】: