2017-04-07 92 views
0

我想將XMPP聊天整合到我的網站中。試圖創建一個裸骨聊天,它應該自動登錄並自動打開一個聊天窗口。它只是可以自動登錄,但之後什麼都不做。如何在XMPP聊天客戶端自動打開聊天匡威.js

整個代碼如下。爲什麼它不會自動打開聊天窗口?

<body> 


<script> 
    converse.initialize({ 
     show_controlbox_by_default: true, 
     allow_muc: false, 
     show_controlbox_by_default: true, 
     auto_login: true, 
     authentication: 'login', 
     jid: '[email protected]', 
     password: 'kelvin', 
     websocket_url: 'wss://xmpp.mydomainhere.com:5280/websocket' 
    }); 

    console.log("000"); 

    converse.plugins.add('myplugin', { 
     initialize: function() { 
      this._converse.chats.open('[email protected]') 

      var msg = converse.env.$msg({ 
       from: '[email protected]', 
       to:'[email protected]', 
       type:'chat' 
      }); 
      this._converse.send(msg); 
     } 
    }); 

    </script> 

    </body> 

回答

0

從3.0.0及以後版本,插件需要被列入白名單(通過whitelisted_plugins設置),否則他們不會被初始化。

所以你只需要添加whitelisted_plugins: ['myplugin']到你的converse.initialize電話。

除此之外,您還需要在致電converse.initialize之前註冊該插件。

+0

我添加了whitelisted_plugins,如下所示,但它仍然不起作用。任何幫助?謝謝。 converse.initialize({ whitelisted_plugins:[ '爲myplugin'], show_controlbox_by_default:真, allow_muc:假, AUTO_LOGIN:真, 認證: '登錄', JID: '[email protected]' , password:'kelvin', websocket_url:'wss://xmpp.mydomainhere.com:5280/websocket' }); – Dopinder

+0

您需要在調用converse.initialize之前註冊該插件。我更新了我的答案。 –

+0

我已經切換了兩個代碼塊。現在插件塊在converse.initialize塊之前。但它仍然不起作用。 – Dopinder