问题标签 [multiuserchat]
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.
android - 未调用“MultiUserChat.addInvitationListener”
我正在处理GroupChat流程。我已成功发送邀请并使用 PSI 我收到了此邀请。但是 M 无法调用我自己的“ MultiUserChat.addInvitationListener
”。我已经做了很多方法,但都是徒劳的。这是我的尝试之一。
而做“ MyClass extends Activity implements InvitationListener
”
xmpp - 发现 MUC 房间的成员作为居住者
作为居住者/成员,我需要使用 ejabberd-14.x 了解房间中的所有“成员”
我关注了 http://xmpp.org/extensions/xep-0045.html#getmemberlist
我因以下节而被禁止(401)-需要管理员权限
如果我改变
从管理员到用户命名空间,然后我得到状态代码 501 - 功能未实现
你知道我怎样才能让房间的成员成为居住者或成员吗?
在这个用例中,我不是管理员/版主。
XEP-0045 确实说:
注意:服务还应该将成员列表返回给仅限会员的房间中的任何居住者;即,当房间中的成员请求成员列表时,它不应该产生错误。此功能可以帮助客户显示所有现有成员,即使其中一些成员不在房间内,例如帮助成员确定是否应该邀请另一个用户。服务还应该允许任何成员检索成员列表,即使还不是居住者。
xmpp - 如何邀请新成员加入现有的 XMPP MultiUserChat aSmack
我想进行群聊,每个用户都可以邀请新用户。为此,我已向每个用户授予所有者权限。以下方法成功执行,没有错误,但新用户没有收到邀请。
如果组创建者邀请成功,其他用户即使被授予权限也不能。
有人可以帮我解决这个问题吗:)
xmpp - 如何在 smack 4.1 beta2 中创建持久的 muc 房间
从 asmack 迁移到 smack 4.1 beta2。创建的 muc 房间不再持久。
当使用 gajim 创建时,房间是持久的。
编辑:这是我们之前使用的代码。默认情况下,聊天室是持久的,
android - ASmack MultiUserChat (MUC) 无法收听消息
我有这个 Android 应用程序,我一直在尝试设置 XMPP MultiUserChat。
至于连接到 XMPP,登录并创建一个 MUC(以及加入一个已经创建的)一切都很好。
我似乎无法正确收听发送的消息,我不知道为什么。
我之前曾使用过几次使用 Javascript 的 XMPP(带有 Bosh 的 StropheJS),所以我对它的协议有点熟悉。
正如我已经尝试过以下帖子中的建议(我发现的关于此事的唯一帖子):
如何在 Smack 中正确收听 MultiUserChat?
所以,我决定问你一些方向,因为我认为这可能只是我一直错过的一个设置。
所以,为了简单起见,我将提供我的整个序列。
我创建了一个服务,因此我的 XMPP 连接可以在整个应用程序中普遍存在。因为我需要在我的应用程序登录后立即连接到 XMPP,并且 MUC 房间只会在其他活动中进一步使用。好吧,你明白了。所以,这里是代码:
(对不起,如果它有点太长了,我并不是要烦人,我只想提供解决问题所需的一切)
因此,当用户应该是某个聊天组的管理员时,我创建传递 GroupName (id) 的组
当它只是一个参与者时,它会加入该组:
因此,我使用了 3 种方法来尝试让用户正确收听传入的消息。
其中之一是在登录后立即设置: setListener(connection);
其他两个在用户加入群聊后被调用:
addMessageListener(muc); 和listen2Group();
我把它们都留在这里,这样你就可以看到我走了多远:
这是我发送消息的方式:
所以,可能你已经看到我做错了。但我已经为此工作了好几天。什么都没有通过!
当我检查我的服务器( openfire )时,所有用户都被设置为在线,并且正在正确登录到 MUC,当消息发送时,没有任何反应!
我在我展示给你的所有侦听器上都设置了断点,但无论我做什么,它们都不会触发。消息已发送,但它永远不会到达任何地方。
有任何想法吗?
ejabberd - MUC 历史消息的延迟元素中的“来自”属性具有占用者的 jid 而不是房间
我观察到 MUC 历史消息中延迟元素的属性具有居住者的 JID 而不是房间。
根据 xmpp.org/extensions/xep-0045.html#enter-history:
讨论历史消息必须标记有延迟交付 (XEP-0203) [14] 信息,这些信息由“urn:xmpp:delay”命名空间限定,以表明它们是延迟交付的,并指定它们最初发送的时间。
'from' 属性必须设置为房间本身的 JID。
为什么设置为居住者的 JID 而不是房间的 JID?请帮我理解。
mysql - ejabberd 是否支持在 MySQL 数据库中存储 muc 房间信息?
我在 Ubuntu Linux 上尝试使用 ejabberd(ProcessOne 站点上的最新版本)并将其配置为将数据存储在 MySQL 数据库中。
当我添加用户时,我可以在 users 表中看到它们,但任何表中都没有显示 muc 房间。
查看指南不清楚 ejabberd 是否支持这一点。我需要轻松访问数据库中的 muc room 信息,因为我们系统的其他部分将使用这些数据。
ejabberd(我使用的是 v15.03)是否支持将 muc 房间信息(房间 jid、房间主题和房间聊天历史)存储在 MySQL 等外部数据库中?如果没有,那么 Openfire 呢?你会推荐 Openfire 吗?
ejabberd - 使用 ejabberd 实现群聊
我想实现像What's App MUC(房间聊天)这样的群聊有一些限制:1.用户无法获得他加入过哪些房间的历史记录。2.如果被邀请用户不在线,则该用户无法加入房间并获取消息。
Multi cast XEP-0033,看起来不错的解决方案,但无法创建组概念,并且在卸载并重新安装客户端时会丢失组历史。
对实施群聊有什么建议吗?
xmpp - Smack MultiUserChatManager 创建不可加入的房间
我在我的 Android 项目中使用 Smack 4.1.1 作为 Gradle 依赖项。
我已经成功地与我的本地 OpenFire 服务器建立了连接。
但是我在从 Android 客户端创建临时房间时遇到了问题。
最棒的是我可以看到这个房间是在 OpenFire 管理面板中创建的,并从另一个客户端获取房间信息。
但是在尝试从第二个客户端加入房间时,我收到XMPPError: recipient-unavailable - wait。
我的joinRoom方法的片段:
所以我在加入房间 org.jivesoftware.smack.XMPPException$XMPPErrorException: XMPPError:recipient-unavailable - wait
所以问题是什么可能是错的?我还尝试从createAnswerForm()方法创建submitForm 。但结果是一样的。
我发现使其工作的一种解决方案是在配置表单的答案中将persistantroom发送为true 。但是这种方法会创建持久的房间,尽管我需要在所有与会者离开房间后销毁这个房间。
也许这是一个简单的问题,但现在我不知道如何解决这个问题。
帮助将不胜感激。
提前致谢。
java - 无服务器群消息(聊天)Xmpp
我想在不关联服务器的情况下实现群组消息(聊天)(点对点聊天)
虽然连接是由 ejabberd 服务器建立的。我可以进行一对一的聊天,但在群发消息中没有成功。
有谁知道如何实现这个功能?