检查用户是否在OpenFire中进行了身份验证

时间:2015-06-22 14:02:30

标签: authentication xmpp openfire packets user-presence

如何检查接收方用户当前是否已通过身份验证?

当拦截数据包时,我想知道接收者用户当前是在线还是离线。

我该怎么检查?

先谢谢你。

1 个答案:

答案 0 :(得分:0)

如果对接收者进行身份验证检查,我相信收件人jid字段会照顾。当此字段不正确时,服务器将生成相应的错误消息。此外,如果您考虑了用户名 - 密码身份验证,那么将无法识别收件人密码。

对于状态信息,发送者最好订阅收件人presence,并且这种状态会在客户端本身显示,因为这是正常的方法。如果你想在服务器端监视这个,那么你需要一个消息拦截器,它将执行以下操作:

  • 拦截消息
  • 从数据库获取用户状态
  • 采取适当的行动

由于此任务耗时且将针对每条消息执行,因此我建议您遵循基于协议的实现。

您可以找到官方文档here