哪个 jabber 客户端接收消息?

哪个 jabber 客户端接收消息?

jabber我的计算机 ( pidgin) 和移动电话 ( ) 上都有客户端im+。目前,每条消息都由其中任意一个接收(至少看起来如此)。例如,如果一个人接连发送两条消息,则一条消息可以进入一个客户端,第二条消息可以进入另一个客户端。是什么使得消息被某个特定的客户端接收?有没有办法让一个特定的客户端接收消息?所有的客户?

答案1

(这个答案忽略了一些更具体的细节,有利于有用的回应,还有比这更多的内容)

每个 XMPP 会话都有一个与之关联的“优先级”以及一个资源。发送消息时,您可以包含或不包含要发送消息的资源 - 如果包含要发送消息的资源,则消息将始终传递到该资源(客户端)。当您不将消息发送到特定资源时,它将根据服务器设置的一些规则进行传递,但这些规则通常是它会转到具有最高优先级的一个或多个会话(您的客户端可能会设置该规则)在你不知情的情况下为你服务)。

有些客户端非常不擅长向某些资源发送消息并且从不停止,即使您登录其他客户端,我怀疑这就是您所看到的(也就是说,您的联系人的客户端会认为“哦,你在那边,我会在那里和你说话!”并且当您离线或更换客户端时永远不会费心改变这一点)。

(是的,Carbons(XEP-0280)将更改这些路由规则,交付给所有“选择加入”carbons 的客户端 - 但我猜你没有使用这个)

相关内容