stanzajs 向群聊发送简单的消息

Posted

技术标签:

【中文标题】stanzajs 向群聊发送简单的消息【英文标题】:stanzajs send simple message to groupchat 【发布时间】:2021-02-22 19:15:49 【问题描述】:

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

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】:

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

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

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

【讨论】:

以上是关于stanzajs 向群聊发送简单的消息的主要内容,如果未能解决你的问题,请参考以下文章

使用 Telegram - API 或 CLI 发送消息?

如何防止用户向群组发送消息,但继续接收来自该群组的消息(只读)?

使用Python创建自定义机器人向群组人员发送消息

向群组发送推送通知

在群聊中,新消息事件(websocket)应该由客户端发送还是API发送?

Android Smack MUC 400 错误请求发送群聊消息