XMPP MUC - 如果机器人发送消息没有通知

时间:2021-07-15 08:32:08

标签: xmpp

我正在使用 slixmpp 将机器人带入 Cisco Jabber 中的多用户房间。我正在使用他们的 example,有一些小的变化。 代码中有趣的部分是我发送消息的函数:

def session_start(self, msg):
    self.get_roster()
    self.send_presence()
    self.plugin['xep_0045'].join_muc(self.room, self.nick, pfrom='bot@domain')
    self.send_message(mto="room@domain",
                      mbody="Hello World",
                      mhtml="Hello World",
                      mtype="groupchat")

如果我运行脚本,机器人就会将消息发送到房间里。但我像往常一样没有收到通知。如果您不熟悉 Cisco Jabber,通知会出现在任务菜单的 Cisco 徽标处,并且是一个红色气泡。

我不知道如何解决这个问题。如果我向用户而不是群组发送消息,我会收到来自机器人的通知,告知我有未读消息。

我在调试中运行了错误,这里是消息节:

DEBUG    RECV: <message from="room@domain/Chips" id="4d993f51b61241088930acf94a48ef32" notify="0" to="user@domain" type="groupchat" uuid="450b0b00-729c-4192-8791-f3d8e1382620" xml:lang="en"><origin-id xmlns="urn:xmpp:sid:0" id="4d993f51b61241088930acf94a48ef32" /><body>Hello World</body><html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">Hello World</body></html><delay xmlns="urn:xmpp:delay" from="user@domain" stamp="2021-07-15T07:48:36Z" /></message>
DEBUG    Event triggered: message
DEBUG    Event triggered: groupchat_message
DEBUG    Event triggered: muc::room@domain::message

这是我向其他人收到通知的房间发送消息的消息节:

DEBUG    RECV: <message from="room@domain/usernick" id="eb7e1156:05ed:452b:a97f:acf37b216886" notify="1" to="user@domain" type="groupchat" uuid="f37c122b-a078-4638-8728-2db01d0a63b7" xml:lang="en"><body>This message is from me</body><html xmlns="http://jabber.org/protocol/xhtml-im"><body xmlns="http://www.w3.org/1999/xhtml"><span style="font-family:Segoe UI;color:#1a1a1a;font-size:10pt;font-weight:normal;font-style:normal;text-decoration:none;"><div><span style="font-weight:normal;font-style:normal;text-decoration:none;">This message is from me</span></div></span></body></html><active xmlns="http://jabber.org/protocol/chatstates" /><delay xmlns="urn:xmpp:delay" from="user@domain" stamp="2021-07-15T08:20:57Z" /></message>
DEBUG    Event triggered: message
DEBUG    Event triggered: groupchat_message
DEBUG    Event triggered: muc::room@domain::message

显然我可以看到参数 notify 在机器人消息节中设置为 0,在我自己的消息节中设置为 1。这可能是问题吗?如果是,我该如何更改?我试图找到有关此属性的更多信息,但找不到任何对 XMPP 有用的信息。

有什么想法吗?

0 个答案:

没有答案