android - pubnub 邀请其他人加入群聊

标签 android pubnub

我正在尝试使用 pubnub 在 android 中建立一个群组以及一对一聊天。我面临的问题是:

假设我有三个用户:A、B、C。

让我们假设这三个都有一个以唯一 uuid 运行的 pub nub 实例。

A 想与 B 和 C 开始群聊。在后端,我可以创建一个新的动态 channel ,然后将 A 订阅到该 channel 。

现在,我必须自动为 B 和 C 订阅该 channel ,以便 A 可以与他们聊天。

我该怎么做?我如何通知/发送更新给 B 和 C,A 想与他们开始群聊?

我考虑的一个选择是创建一个所有用户都订阅的全局 channel (G)。然后,当A想和B、C群聊时,

  • 在后端创建一个动态生成的 channel 。
  • 订阅 A 到该 channel

  • 发布一条消息(包含B和C的uuid,以及新的
    channel 名称)到 G channel 。

  • 现在,所有其他人将从 G channel 收到该消息,然后, B和C会看到消息中包含他们的uuid,所以他们
    将订阅该 channel 。

但是,看起来,这种方法效率不高。

请建议如何去做。

构建问题的另一种方法是,如果我只知道它是 uuid,我可以将事件发送到 pub nub 实例吗?

编辑:

我想涵盖以下场景:

1) A 可以仅与 B 或仅与 C 发起聊天。

2) A 可以发起与 B 和 C 或 B 和 D 的聊天。

3) B 应该在单独的 channel 中看到来自 A 的消息,在单独的 channel 中看到来自 C 的消息,以及来自与 A 和 C 在不同 channel 中的群聊的消息。

最佳答案

根据 Pubnub 社区论坛,无法直接与特定订阅者进行通信。我的建议是为每个 uuid 创建一个专用 channel 并直接发送到该 channel 。因此应用程序需要在启动时订阅 channel (它自己的 uuid)。

关于android - pubnub 邀请其他人加入群聊,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36371018/

相关文章:

ios - PubNub 显示打字指示器

ios - 已取消订阅 channel ,但仍在 channel 中

python - 想使用 PubNub 将实时更新发送到用户的网络浏览器

android - 无法解析 com.android.support :support-v7:25. 2.0

android - 基于 Android Tab 的 Activity 中的 LogCat 错误 “you must specify a way to create tab indicator”

java - 在 imageview 中显示来自 firebase 数据库的图像

java - 在maven依赖中添加pubnub后Spring Boot应用程序无法启动

javascript - 将 17 位精度 unix 时间 (UTC) 转换为日期格式 在 javascript 中

java - Android HttpsURLConnection post 问题

android - 无法切换到 Holo Dark 主题