问题标签 [ejabberd]

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.

0 投票
1 回答
2706 浏览

python - slimxmpp 组件是如何工作的?

这听起来可能很愚蠢,但我遵循了本教程:

https://github.com/fritzy/SleekXMPP/wiki/Creating-a-SleekXMPP-Plugin

这是最后使用创建的 XEP-0077 插件的组件:

但我不知道如何使用它,我也找不到任何关于如何使用这个组件的 slimxmpp 文档。我在这里想要完成的是能够在 python 的 xmpp 服务器上注册/注销用户。

0 投票
2 回答
11483 浏览

xmpp - XMPP 服务器名和 XMPP 服务名之间的区别?

在 Smack API 中,有一个用于连接的配置类,在此页面中进行了描述

连接配置

我对服务名称和服务器名称之间的区别感到困惑。

假设我有一台名为“mybox.mydomain.com”的计算机,并且我在上面安装了 ejabberd,并配置了一个名为“myhost”的主机(使用{hosts, ["myhost"]}.ejabbed.cfg 中的行),

在这种情况下,主机名、服务器名和服务名是什么?

0 投票
1 回答
1768 浏览

xmpp - ejabberd、名册和 mySQL

一个快速的背景。

我们正在运行一个 ejabberd 服务器,连接到它的用户群相当大(700k+ 用户)。我们遇到了一个问题,mnesia 无法处理名册大小,因此我们决定使用 Web 界面,在用户登录/注销时为用户添加和删除名册条目。这种方法的问题在于它延迟了他们的登录,这是我们无法做到的。为此,我们的工作是让名册请求进入延迟任务表,该任务表将被 cron 拾取并添加条目。然后我们遇到的问题是数据库中条目堆积的速度超出了处理它所花费的时间。测试表明这不是脚本,而是来自 ejabberd 服务器的实际响应时间。

在此之后,我们决定将名册从内部 menesia DB 移动到 mysql。通过这样做,我们可以直接从数据库中插入/删除名册条目,这对 ejabberd 服务器没有影响。

我已经成功地为用户添加和删除了名册条目,并且它们成功地显示在 Web 界面中。

现在解决问题:在我添加了互惠花名册条目后,我需要告诉用户此人在线,以便他们在 Web 界面中在线显示。目前,在我添加了名册条目后,用户只是显示为离线。

据我了解,这应该是一个相当简单的出席请求,但我无法让它工作。是否有一个模块,或者一种发送出席请求的简单方法,以便让您在您的名册中的人知道您在线,并且也是一种快速探测您自己的名册的方法。

任何帮助表示赞赏。

0 投票
2 回答
1333 浏览

ruby-on-rails - 将 XMPP 服务器集成到现有的 Rails Web 应用程序中

我们正在使用 iphone/android 客户端运行 ruby​​ on rails Web 应用程序(数据库:mysql),并使用现有用户和数据。在即将发布的版本中,我们希望添加一个聊天功能,一个解决方案是:使用 XMPP。

但是,考虑到 XMPP 服务器有很多选择。而且,像我们这样的小团队可能很难修改/调试/维护大型开源项目的源代码。

那么您对易于集成的 xmpp-servers 有什么建议?

我们需要与 XMPP 服务器集成的东西,(包括但不限于,因为我们将来会有更多的功能) 1. 我们所有的用户属性(姓名,电子邮件)及其关系 2. 当用户从 XMPP 服务器获取回调向离线朋友发送消息(因为我们需要向 iphone 推送通知) 3. 在 XMPP 服务器中查询用户状态

我们准备修改他们的代码,但越少越好。

埃贾伯德?开火?蒂加酶?韵律?哪个更好?

0 投票
1 回答
1605 浏览

xmpp - 一次获取多个 JID XMPP

我正在开发一个 XMPP 应用程序,并将执行一个全局共享名册,这样我就不必进行状态订阅请求。我还需要获得一定范围的 JabberID,而不是整个全球名册。我们不想做单个定向出席信息节,因为这将需要每个页面加载多达 15 个出席信息调用。XMPP 中是否有一种方法可以让我一次获得多个但特定的 JID?

就像是:

提前致谢!

0 投票
2 回答
598 浏览

xmpp - Strophe & Ejabberd:发送消息后重新认证的问题

我使用 Strophe 附加方法通过外部身份验证连接到 ejabberd (2.1.6)。附加后一切正常,但是当我尝试向某个用户发送消息节时,该用户没有收到他的消息。消息节存储在数据库的假脱机表中。我不知道为什么消息没有直接传递给用户。

我在 ejabberd 日志中看到的唯一内容是,在发送消息后,ejabberd 正在测试我通过外部 isuser 调用向其发送消息的用户,然后 ejabberd 重新验证了我的身份。

我不知道重新认证是正常的还是我做错了什么。

你们以前有过这种类型的问题吗?如果是这样,您是如何设法解决的?

0 投票
1 回答
230 浏览

ejabberd - Ejabberd + Bandersnatch 存在表未更新

我已经设置了bandersnatch + ejabberd 2.1.6,我发现它只能将消息记录到消息表中,用户和状态表保持为空。我需要做一些额外的配置来设置它吗?

谢谢

0 投票
1 回答
732 浏览

random - 将随机用户分配给匿名用户(ejabberd,strophe)

我正在使用 strophe 和 ejabberd 构建一个基于 Web 的聊天应用程序。我现在想做的是:

用户可以匿名登录聊天应用程序,登录后会自动分配给他一个管理员。到目前为止,我已经设法在 ejabberd 中启用匿名登录,但我必须手动添加管理员的 JID。所以我的问题是如何为用户分配一个随机管理员?

0 投票
0 回答
678 浏览

ruby-on-rails - 在 Rails 中使用 ejabberd

我正在尝试创建一个聊天组件以添加到现有的 Rails Web 应用程序中(并可能在此过程中优化与客户的通信)。我想到的架构是:当用户在 Rails 上进行身份验证时,创建他/她的 Jabber 凭据并在页面加载时在 JS 中设置它们。使用 ejabberd 接受来自客户端的 flash TCP 或 BOSH(可能使用jquery-bosh)连接,使用 xmpp4r 将 Rails 连接到 ejabberd(作为常规客户端)并查看来自客户端的消息。如果它们是特定于应用程序的消息,请执行相关操作,如果它们是用户到用户的消息,请将它们传递给适当的用户/组。同时,继续使用 Thin/Apache 服务于常规网页。

我有一些问题:

  1. 这种架构是否有意义,或者其中有什么不可行的?
  2. 除了我目前正在阅读的 ejabberd 文档和 xmpp4r 文档之外,您还可以指出我可能感兴趣的其他资源吗?

谢谢你。

0 投票
1 回答
366 浏览

python - xmpp:2个具有相同帐户的客户

是否可以使用相同的帐户 2 个或更多客户端连接到同一台服务器(ejabberd)?如果是 - 如何用 pyxmpp 做到这一点?