Openfire Android PubSub 订阅请求批准

2024-01-27

我是 Openfire 的新手,因此我对 pubsub 功能有疑问。实际上,我已经创建了一个节点设置访问模型 as 授权,如下所示。

PubSubManager mgr = new PubSubManager(xmpp.getConnection());
try {
    LeafNode leaf = mgr.createNode("testNode");
    ConfigureForm form = new ConfigureForm(DataForm.Type.submit);
    form.setAccessModel(AccessModel.authorize);
    form.setDeliverPayloads(true);
    form.setNotifyRetract(true);
    form.setPersistentItems(true);
    form.setPublishModel(PublishModel.open);
    leaf.sendConfigurationForm(form);
} catch (SmackException.NoResponseException e) {
        e.printStackTrace();
} catch (XMPPException.XMPPErrorException e) {
        e.printStackTrace();
} catch (SmackException.NotConnectedException e) {
        e.printStackTrace();
}

我的问题是,当有人想要订阅上述节点时,该节点的所有者如何处理订阅请求?订阅部分如下:

PubSubManager mgr = new PubSubManager(xmpp.getConnection());

// Get the node
LeafNode node = null;
try {
     node = mgr.getNode("testNode");
     node.addItemEventListener(new ItemEventCoordinator());
     node.subscribe(senderUser+"@desi.loc");
    } catch (SmackException.NoResponseException e) {
        e.printStackTrace();
    } catch (XMPPException.XMPPErrorException e) {
        e.printStackTrace();
    } catch (SmackException.NotConnectedException e) {
        e.printStackTrace();
    }

class ItemEventCoordinator  implements ItemEventListener {
    @Override
    public void handlePublishedItems(ItemPublishEvent items) {
        final ItemPublishEvent itemstemp=items;
        runOnUiThread(new Runnable() {
            @Override
            public void run() {
                //stuff that updates ui
                    dspySub.setText("Item: " + itemstemp.getItems());
            }
        });
    }
}

当我设置 form.setAccessModel(AccessModel.open)一切都很好。用户可以轻松发布和订阅,但是当其 AccessModel 被授权时,所有者不听,或者可能是我不知道如何使用上面的代码在所有者端处理订阅请求。请指导我。


Jawad,我刚刚回答了另一个人关于监听订阅请求的问题。请看一下:

我如何在 smack openfire android 中监听传入的订阅请求 https://stackoverflow.com/questions/40206137/how-can-i-listen-incoming-subscription-request-in-smack-openfire-android/44380529#44380529

我真的希望它能帮助你。

祝你好运!

PS:抱歉,但我没有足够的声誉来发表评论:(

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Openfire Android PubSub 订阅请求批准 的相关文章

随机推荐