如何管理 converse.js xmpp 库中的事件

How to manage events in converse.js xmpp library

我实际上正在为我的公司开发自定义 ERP,我需要使用 Converse.js.

实施基于 xmpp 网络的聊天应用程序

但是我找不到任何使用 api 管理事件回调的解决方案。

根据文档,应使用以下语法:

_converse.api.listen.on('message', function (messageXML) { ... });

converse.api.listen.on('message', function (messageXML) { ... });

但是"converse.api"它是未定义的

Converse.js版本6.0.1

希望得到您宝贵的帮助。

抱歉我的英语不好

Conerse.js 有一个 public(即全局可访问)API,可通过 converse global. The most used method there would be converse.initialize.

然而,大多数 API 方法仅限于私有(即封闭)_converse object (note the leading underscore) and is available via _converse.api

只有 register a plugin.

才能访问 _converse.api

例如:

converse.plugins.add('myplugin', {

    initialize: function () {
        // This method gets called once converse.initialize has been called
        // and the plugin itself has been loaded.

        // Inside this method, you have access to the closured
        // _converse object as an attribute on "this".
        // E.g. this._converse
        const { api } = this._converse;
        api.listen.on('message', function (messageXML) { ... });
    }
});