如何阻止谷歌随机化xmpp资源



在XMPP(即gtalk)中,我们可以根据需要设置资源(指定机器/位置/等),这适用于所有/大多数服务器和客户端。但是在谷歌的情况下,它并没有完全按预期工作,因为每次用户连接谷歌都会将随机字符串附加到用户设置的资源中。这特别烦人,因为许多客户端通过jid AND资源部分来区分用户聊天,这会导致在重新连接一个窗口/选项卡(并生成新资源)后打开多个窗口/选项卡。

TL;DR - 有没有办法防止谷歌将随机字符串附加到用户设置的资源中?

简短的回答,没有办法。出于安全原因,资源应该是不可预测的。GTalk 服务器通过向资源添加随机字符串来强制执行这一点。

除了@Alex的正确答案外,不要在语义上使用资源。 对于聊天,客户真的不应该再将每个资源视为单独的对话。 我们在十多年前就吸取了这一教训。 若要标识客户端,请使用 XEP-0115 而不是硬编码资源。

最新更新