XMPP获取所有花名册的状态和状态消息

时间:2016-08-31 15:03:14

标签: xmpp ejabberd xmppframework

我想在离线前获取他们提供给服务器的所有联系人状态和状态信息。 我找到了以下方法来查询一个联系人的状态信息,但我想在这里做的是立即查询我所有联系人的状态信息。因为如果我有200个名单项目,我不想要200个请求。 有没有办法做这样的事情 或者无论如何要在xmpp服务器(ejabberd)端改变它

由于 托加

1 个答案:

答案 0 :(得分:0)

使用名册获得名册状态&存在。 这是一个例子,

Roster roster = Roster.getInstanceFor(this.connection);
roster.addRosterListener(new RosterListener() {
    @Override
    public void entriesAdded(Collection<String> addresses) {
        // Notified on roster added
    }

    @Override
    public void entriesUpdated(Collection<String> addresses) {
        // Notified on roster updated
    }

    @Override
    public void entriesDeleted(Collection<String> addresses) {
        // Notified on roster deleted
    }

    @Override
    public void presenceChanged(Presence presence) {
        // Notified in roster status changed
        // You will get presences here
    }
});