【问题标题】:Where/how does Skype queue group chat messages when users are offline?当用户离线时,Skype 在哪里/如何排队群聊消息?
【发布时间】:2014-06-03 11:45:43
【问题描述】:

this SuperUser.com question 和其他地方,我了解到Skype 不会以用户可访问的方式将您的历史聊天消息存储在他们的服务器上。 (当然,他们出于内部存档和分析目的所做的事情是另一回事——正如他们的隐私政策所反映的那样。

但群聊的用户体验是:当您离线并重新登录 Skype 时……您错过的所有消息都会出现。即使已经有一段时间了,并且有很多消息。 (不知道有没有限制多长多少。)

那么:如果消息不是来自 Skype 服务器,这个 UX 是如何实现的?

我读过this offhand description 声明:

群聊(“聊天中超过 2 人”)的同步由这些聊天中的聊天同步伙伴完成,而不是由 Skype 服务器提供。

如果那是正确的,我想了解更多有关其工作原理的详细信息,例如:

  • 协议是否已指定或反向工程?
  • 是否可以通过 API 获得?
  • 请求是通过 Skype 路由的,还是直接点对点的?
  • 如果是点对点的,如何验证请求?
  • 我的经验是我只能“看到”我加入聊天时的历史;客户端可以请求或接收更早的历史消息吗?

我知道其中一些协议是currently in flux——因此,如果您能解释这些细节是否/如何发生变化,则可以加分。

【问题讨论】:

  • 超级用户链接似乎很旧,不要依赖它。自从微软收购 Skype 以来,客户端和服务器端都发生了很多变化。我想我已经看到了服务器同步的简单聊天消息的日志(当然我可能误解了一些关于到底发生了什么的细节)。我的猜测是,群聊在这方面已经不特别了。

标签: protocols messaging user-experience skype


【解决方案1】:

当您登录时,您的客户拥有该对话的最后收到的 id。

将其发送给其他客户端。收到该 ID 的客户端会查找该 ID 之后的所有消息,然后将其发回给您。

这样他们就不必将消息存储在他们的服务器上。

【讨论】:

    猜你喜欢
    • 2015-12-22
    • 2012-05-06
    • 2014-11-14
    • 1970-01-01
    • 2011-08-22
    • 2014-12-18
    • 2015-05-31
    • 2018-08-20
    • 2012-11-02
    相关资源
    最近更新 更多