0

我正在开发一个 openfire 插件并停留在某一点。

下面是我的插件代码。我已经实现了 MUCEventListener并且我也收到了回调。但现在我想在messageReceived()方法中从roomJID获取占用者列表。研究了很多,但没有成功。请有人让我突破。

public class OfflineMessageTrigger implements Plugin,
        MUCEventListener {

    private static final Logger Log = LoggerFactory
            .getLogger(OfflineMessageTrigger.class);


    public OfflineMessageTrigger() {
    }

    // Plugin Interface

    public void initializePlugin(PluginManager manager, File pluginDirectory) {
        MUCEventDispatcher.addListener(this);
    }

    public void destroyPlugin() {
        MUCEventDispatcher.removeListener(this);
    }



    @Override
    public void roomCreated(JID roomJID) {
        Log.debug("TASOL-OfflineMessageTrigger -> MUC ->  roomCreated(): "
                + "RoomID : " + roomJID);
    }

    @Override
    public void roomDestroyed(JID roomJID) {
        Log.debug("TASOL-OfflineMessageTrigger -> MUC ->  roomDestroyed(): "
                + "RoomID : " + roomJID);
    }

    @Override
    public void occupantJoined(JID roomJID, JID user, String nickname) {
        Log.debug("TASOL-OfflineMessageTrigger -> MUC ->  occupantJoined(): "
                + "RoomID : " + roomJID + " UserID : " + user + " NickName : "
                + nickname);


    }

    @Override
    public void occupantLeft(JID roomJID, JID user) {
        Log.debug("TASOL-OfflineMessageTrigger -> MUC ->  occupantLeft(): "
                + "RoomID : " + roomJID + " UserID : " + user);

    }

    @Override
    public void nicknameChanged(JID roomJID, JID user, String oldNickname,
            String newNickname) {

    }

    @Override
    public void messageReceived(JID roomJID, JID user, String nickname,
            Message message) {



        // HERE I WANT TO FETCH OCCUPANTS LIST OF "roomJID". HOW TO GET?

    }

    @Override
    public void privateMessageRecieved(JID toJID, JID fromJID, Message message) {

    }

    @Override
    public void roomSubjectChanged(JID roomJID, JID user, String newSubject) {

    }

}

感谢 Biraj Zalavadia。

4

1 回答 1

1

这个问题似乎在 Openfire 论坛上得到了解决。所以这里是线程的链接,以防有人会在 Stackoverflow 上搜索解决方案:https ://igniterealtime.jiveon.com/thread/52016

于 2014-09-22T11:21:49.830 回答