问题标签 [mongoose-im]
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.
mongoose-im - 如何在 MongooseIM 中设置名册
是否可以将名册修改锁定到某个组?Ejabberd 像这样启用它:
react-native - 如何在 xmpp.js(在 react-native 中)和 MongooseIM(作为聊天服务器)中使用流管理确认?
我在 react-native 中使用 xmpp.js 作为 xmpp 聊天客户端,用于 android+ios 和 MongooseIM 作为聊天服务器。我想在应用程序中实现流管理确认。但是根据issue#540, xmpp.js 暂时不支持流管理。什么可以替代这个?
我只需要流管理模块来发送/接收 c2s 和 s2s 之间的确认。请指导。
react-native - 为什么 MongooseIM 会在 60 秒后关闭 websocket 连接?
我使用 MongooseIM 作为聊天服务器,并在 react-native 应用程序中使用 xmpp.js 通过 websocket 连接它。服务器在不活动 60 秒后强制关闭连接。我想知道:
- 如果这是默认配置?
- 我应该/我可以改变它吗?
- 我是否应该设置 ping 机制,以便我的客户端必须在每 60 秒后发送一些 ping 以避免断开连接
debugging - 如何在 MongooseIM 的 rebar.config 中添加调试器应用程序?
我正在使用带有 MongooseIM 的 MAC OS 10.14。我想在 MongooseIM 中使用调试器。当我执行im(). 在 MongooseIm shell 中,我收到以下错误:
在应用程序调试器中调用 i:im/0 失败。好的
我可以验证我可以运行im()。在 erlang shell $ erl中。看来我必须在 MongooseIM 中启用调试器,但我不知道该怎么做。我在 Erlang/Ejabberd/MongooseIM 文档中找不到它。我还阅读了与此相关的以下内容:
在应用程序调试器中调用 i:im() 在 mongooseim 中失败 https://github.com/esl/MongooseIM/issues/1788
根据第二个 URL,我需要在 MongooseIM 的 rebar.config 中添加调试器应用程序,但我不知道如何,请帮忙。
erlang - 如何找回失去的Ejabberd/MongooseIM 中与 XEP-0022 相关的事件
我正在使用 MongooseIM 和 XEP-0022 <消息> 事件,如 <离线>、<已交付>、<显示>、<撰写> 以确认消息传递等。我对 <离线> 和 <撰写> 的工作感到满意,但是与其他两个有一些困难。
如果两个用户(聊天)都在线,那么一切都会很好。但如果考虑以下用例:
- 假设第 2 个用户离线,第 1 个用户在线并发送带有所有 4 个事件的 <message>,然后离线。
- 然后第二个用户上线(请记住,第一个用户现在离线)并且该用户收到 < message > 作为回报,他发送 <delivery> 和 <displayed> 事件,现在第二个用户进入离线阶段。
- 一段时间后,当第一个用户再次上线时,他没有收到任何 <delivery> 和 <displayed> 事件。
简而言之,两者都需要同时在线才能使其工作。所以,我担心的是:
- 如何确保将消息传递并显示给第二个用户,而不会同时使两者在线而头疼。
- 我是否遗漏了什么或者可以通过一些配置更改来解决?
- 我应该在这里使用 FCM 吗?
erlang - 什么是损坏的序列化 SCRAM 错误?
我正在使用 mongooseim,突然我开始收到以下错误: [警告]损坏的序列化 SCRAM:<<>>并且不再能够与用户连接。我无法找到是否以某种方式启用了除 PLAIN TEXT 身份验证之外的身份验证。
另外,如果我从终端命令注册一个新用户,例如:mongooseimctl register user10 localhost pass,它总是有效的。但是从数据库中,所有其他用户看起来都像 user10 但所有这些都不起作用。
erlang - 无法从 iq 接收隶属关系变更通知
我在源代码(ver-3.1.0)的 MongooseIM 中使用 mod muc_light 并从本文中获得帮助,我能够成功地执行以下操作而没有任何问题:
- 创建一个新的 muc light 房间。
- 发送/接收短信节
- 查询 MAM 并接收常规群聊消息。[来自上述文章的'6.2.1 来自居住者的群聊消息'] [即使,我在这里获得了 muc 信息,但因为这与特定的 muc light 房间有关。所以,没有多大用处。]
但我无法查询 MAM 并收到隶属关系变更通知。请参阅上述文章链接中的主题[6.2.2 隶属关系变更]。
以下是“隶属关系变更通知”的请求/响应
MongooseIM 配置:
问题/疑虑:
- 我在配置中做错了吗?- [我对此表示怀疑,因为上面提到的其他一些操作运行良好]
- 我是否发送了不正确的 IQ 节 - [我对此表示怀疑,因为我正在复制上面链接中提供的完全相同的节示例]
- 我应该更新 MongooseIM。[或许]
- 还要别的吗?
请帮忙
sql - MongooseIM 可以在 PostgreSQL 后端处理多少用户?
我正在使用 PostgreSQL 作为后端的 MongooseIM 服务器。我需要所有基本功能,例如:
- 一对一在线聊天。
- 群聊(仅限 Muc light)
- MAM 存储和所有其他基本功能。
我可以使用集群扩展 MongooseIM(使用 Mnesia 存储会话)。但我觉得我可能会在使用 PostgreSQL 的后端遇到瓶颈。PostgreSQL 可以处理的用户数量的粗略估计是多少,而无需像 Riak 这样的 No-sql 进行转移。因为从可扩展性的角度来看,我不想搞砸后端。
示例 - 假设我需要处理超过 1000 万用户。我可以为此使用 PostgreSQL。如果是,那么我是否需要像 Postgresql 中的分片这样的特殊技术才能继续使用它,或者在某些时候我必须转移到 Riak 或其他 Nosql。你有什么建议吗?
amazon-web-services - 通过 AWS ELB 的 MongooseIM SSL 连接
我在 AWS 的 EC2 实例中使用 docker-compose 配置了 MongooseIM 服务器。
我打算通过以下方式通过端口 5222(mongooseim 的模块 ejabberd_c2s)上的 ELB(AWS)使用 SSL 访问一些移动客户端:
在 ejabberd_c2s 模块配置中,我有以下内容:
但是客户无法连接,我在服务器上得到的唯一消息是:
Mongoose 文档没有为我提供任何解决方案,我没有看到任何人出现此错误。
任何帮助或线索?
erlang - 如何通过 Mongooseim 中的终端与已经运行的实例进行交互?
我正在使用 ubuntu 服务器上源代码中的 Mongooseim 3.2.0。以下是关注:
- 将 mongooseim 作为服务运行以便在 mongooseim 崩溃或系统重新启动时自动重新启动的最佳方法是什么?
- 如何通过终端与 ubuntu 服务器上已经运行的 mongooseim 实例进行交互,例如“mongooseimctl live”。我的猜测是运行“mongooseimctl live”会尝试创建另一个实例。我只想查看实时日志和交互,不想为此目的继续滚动长日志文件。
如果上面的答案很明显,我很抱歉,但只是想遵循最好的指导。