问题标签 [ejabberd-module]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
push-notification - 如何配置或连接 ejabberd 18 xmpp 服务器到 App 服务器以进行推送通知 ( XEP-0060 XEP-0357 )?
我使用 ejabberd 18 作为 xmpp 服务器,要使用实现 mod_push 的推送通知,我们需要将 ejabberd 服务器连接到扩展 ejabberd 18 的应用服务器,是否有可用的插件或扩展?启用推送通知的任何其他方式。
如果我错了,请纠正我。
ejabberd - 如何在 ejabberd 中直接将用户添加到 muc 房间
如何在不发送邀请的情况下直接将用户添加到 ejabberd 中的 muc 房间。将用户添加到 muc 房间仅由管理员完成。他们是使用 ejabberd rest api 的任何方法吗?请建议。提前致谢。
ejabberd - org.apache.xmlrpc.XmlRpcException: 错误 -118 {error,access_rules_unauthorized}
我正在尝试get_roster
通过 XML-RPC 客户端获取 ejabberd 的响应,但我使用的是 ejabberd 18.9 版本,它向我显示此错误:
org.apache.xmlrpc.XmlRpcException: 错误 -118 执行带有参数 [{user,<<"admin">>},{server,<<"localhost">> 的命令 get_roster 时出现问题“{error,access_rules_unauthorized}” }]
有人可以建议我如何解决这个问题吗?
这是我的java客户端代码:
erlang - 用erlang解析ejabberd数据包
我正在使用 ejabberd18.09 进行 IM 应用程序。该应用程序几乎没有需要向 ejabberd(xmpp) 消息添加扩展的功能。
我在 offline_message_hook 上创建了一个自定义模块来捕获离线消息并将它们发送到我自己的 url 以进行进一步处理。
发送到 ejabberd 的消息有不同的情况,具体取决于消息的类型,如下所示
如果我要发送照片,消息将如下所示
发送文本时
发送位置时
我使用 .erl 代码读取正文和消息 ID,如下所示
我想要的是如何(在 erlang 中)读取mtype标记的值属性,在(媒体、位置、测试)值上创建一个 switch 语句,以便我可以分别处理每条消息?
xmpp - 无法在 ejabberd-18-06 上处理自定义 iq
我在 ec2 实例上使用 ejabberd-18.06。当我将自定义 iq 节发送为
我收到如下回复:
在服务器上,我得到这些日志:
相同的节在 ejabberd-17.03 上运行良好。
请在这里帮助我。
erlang - 处理自定义 iq 节的模块不适用于 ejabberd-18.09
我正在尝试从 ejabberd-17.03 迁移到 ejabberd-18.09。我有这个模块,以便我可以将自定义 iq 节发送到 ejabberd。
该模块适用于ejabberd-17.03。但是当我将它与 ejabberd-18.09 一起使用时,我收到以下错误:
我已按照这些步骤注册自定义 iq https://github.com/processone/xmpp/issues/9但仍然没有运气。这是我在 xmpp/specs/xmpp_codec.spec 文件中添加的元素
我是否遗漏了什么,或者在 ejabberd-18.09 中应该做的方式有什么变化?
xmpp - 应用程序终止时的 Ejabberd 消息传递
我正在为 IOS 和 Android 使用 ejabberd 服务器开发一个聊天应用程序。我还为 ejabberd 编写了一个模块来获取发送到我自己的服务器 api 的离线消息。
我自己的服务器 api 将使用 FCM 向 IOS/Android 平台发送通知。
在客户端,如果应用程序在前台或后台,它将保持与 ejabberd 的连接,如果客户端收到消息,则 ejabberd 将发送消息传递状态。
我在应用程序终止(服务未运行)时遇到问题,这意味着它没有连接到 ejabberd(离线)。如果我在此应用程序未终止的情况下向它发送消息,它将收到通知,但消息仍未送达。在应用程序终止时收到通知时如何将消息标记为已送达。
为了进一步解释,whatsapp 可以正常使用相同的功能:
- 设备 A 已安装 whatsapp 并且 whatsapp 已关闭(终止)
- 设备 B 正在运行 whatsapp
- 设备 B 向设备 A 发送消息
- 设备 A 收到 whatsapp 通知
- 在设备 A 上不做任何事情,设备 B 上的消息状态被标记为已传递。
如何使用 ejabberd 实现此场景?
ejabberd - 在 ejabberd 的 vcard 中添加字段时无法理解崩溃
我正在尝试在 vcard 中添加一个新字段作为“Abc”。为此,我在 xmpp_codec.spec 文件中为这个“Abc”字段添加了一个 xml。并在#vcard_temp 中引用了它。我将在“make spec”之后生成的xmpp_codec.erl、xmpp_codec.hrl、xep0054.erl文件放在它们各自的目录中。
但是当我尝试通过发送这个 iq 来添加这个字段的值时
我收到这个错误
在 mod_avtar.erl 中的第 320 行是这个函数
并且第 320 行在case VCard#vcard_temp.photo of
这个函数里面。
而且我无法理解这个错误,因为我没有更改#vcard_photo
记录,为什么它说这vcard_temp
是一个坏记录?
编辑
这是添加xml并制定规范后生成的#vcard_temp记录
hbase - 使用 Ejabberd 配置 HBase
我打算将 HBase 用于我的 Ejabberd 服务器。我试图获取一些关于如何配置它的文档,但我不能,所以请任何人都可以通过提供一些文档链接来帮助我。
谢谢, 湿婆普拉萨德 G
xmpp - 从哪里获取 Ejabberd api url 和主机名
我将使用 ReactJs 使用 ejabberd 开发一个聊天应用程序。我在我们的服务器上安装了 ejabberd。我遵循了以下链接中的 API 文档。
https://docs.ejabberd.im/developer/ejabberd-api/admin-api/#registered-users
在实施之前,我想在邮递员中尝试任何 api。但是我没有从任何文档中获取 API URL 和主机名。
我的 ejabberd 服务器管理 URL 是http://192.168.5.242:5280/admin
另外,我希望使用https://www.npmjs.com/package/ejabberd。但是在那里我可以看到主机名的用法。
我尝试了很多端口而不是 5280。但不适合我。