stanzajs 向群聊发送简单消息

时间:2021-02-22 19:15:49

标签: xmpp ejabberd stanza.io

我正在尝试实现简单的 stanzajs 群聊,但在测试中它不清楚来自和到变量。

test('MUC chat', () => {
    const client = createClient({});

    const incoming: ReceivedMessage = {
        body: 'yayyyy',
        from: 'room@rooms.test/member',
        to: 'tester@localhost',
        type: 'groupchat'
    };

    client.on('groupchat', msg => {
        expect(msg).toStrictEqual(incoming);
    });

    client.emit('message', incoming);
});

https://github.com/legastero/stanza/blob/master/test/muc/messages.ts 没有错误,但其他用户和房间看不到消息。如何向房间发送公共消息。我不明白为什么要:变量是用户而不是房间名称

this.client.on('groupchat', msg => {
    console.log("groupchat new")
    console.log(msg)
});

1 个答案:

答案 0 :(得分:0)

只有加入房间的帐户(房间内的住客)才能向房间发送消息。

您应该安装一个众所周知的 Jabber/XMPP 客户端,例如 Gajim、Psi、Tkabber……这些客户端有一个“XML 控制台”,允许您查看它们发送和接收的节。

将他们发送的内容与您发送的内容进行比较,您会发现问题所在。