XMPP 一次只接收一条消息

Chi*_*oni 2 javascript xmpp strophe

这是我在 javascript 中的代码:

var user = {};
var handlerReference = null;

var myMessages = myApp.messages('.messages', {
    autoLayout: true
});

function setListener(name, jid) {
    user.name = name;
    user.jid = jid;

    $("#chatScreenTitle").text(user.name);
    handlerReference = connection.addHandler(onMsgReceive, null, 'message', "chat", null, user.jid, {matchBare: true});
}

function onMsgReceive(stanza) {
    console.log($(stanza).children("body").text());
    myMessages.addMessage({
        text: $(stanza).children("body").text(),
        type: "received"
    }, 'append', true);
}

function sendMessage(message) {
    if (message.length == 0) {
        myApp.alert("please enter some text", "alert");
    }
    else {
        var uniqueID = connection.getUniqueId("my:code");             
        var reqChannelsItems = $msg({id: uniqueID, to: user.jid, from: xmpp_user + "@" + XMPP_DOMAIN, type: "chat"}).c("body").t(message);
        connection.send(reqChannelsItems.tree());

        myMessages.addMessage({
            text: message,
            type: "sent"
        }, 'append', true);
    }
}
Run Code Online (Sandbox Code Playgroud)

我只能发送和接收一条消息,之后我无法发送或接收任何消息。

谢谢。

awM*_*nor 5

我认为您需要return trueonMsgReceive. 如果您不返回true,它将完成此处理程序