Skype Web SDK 中每条消息的两倍

Double of each message in Skype Web SDK

我使用 Skype Web SDK 已有一段时间了。但是,即使在使用示例中给出的相同代码后,我在登录时也会收到 post 每条消息中的 2 条。在代码中使用什么来限制这个?

这可能是由附加到 "added" 事件的两个事件侦听器引起的。我会仔细检查每条消息是否确实加倍:app.toJSON() returns 可以在开发控制台中检查的应用程序快照 - 在那里你可以找到 activityItems 数组并查看是否存在是骗局。

你的问题和我的很相似,你可以在这里找到我的处理方法:https://github.com/OfficeDev/skype-web-sdk-samples/issues/11

基本上,消息首先处于 "pending" 状态,然后处于 "succeeded" 状态。所以它出现了两次。 这就是为什么您想在这样的状态上添加条件:

else if (message.direction() == 'Outgoing' && message.status() === "Succeeded")

上面antonkh提到的问题就是重复消息的原因。这已被修复为仅在时间戳实际更改足以需要排序时才重新插入消息(以保留按时间戳排序)。在大多数情况下,这意味着消息顺序不会发生变化,因此您不会再看到重复的消息。