使用 SleekXMPP 在消息节中发送带有自定义元素的 XMPP 消息

Send XMPP message with custom element in message stanza using SleekXMPP

我正在开发一个 XMPP 机器人,它会 send/reply 向发件人发送一条消息,其中包含以下附加元素

<message to="user1@example.com" from="user2@example.com">
  <my_element_1>foo</my_element_1> 
  <my_element_2>bar</my_element_2>
  <body>Hi!</body>
</message>

我试过使用 SleekXMPP ObjectIqMessage 但无法实现目标。此外,我还尝试使用 send_message 方法。

我不确定我的谷歌搜索关键字是否不正确,但我找不到与此相关的任何文档或指南。但是,我确实找到了可能有助于与插件创建相关的指南。如果有人可以帮助我,将不胜感激。

谢谢

我才发现我的理解不正确。从技术上讲,要实现这一点,我只需要执行以下操作。

# create XML for element 1
element1 = ET.Element('my_element_1')
element1.text = 'foo'

# create XML for element 2
element2 = ET.Element('my_element_2')
element2.text = 'foo'

如果需要,我可以简单地为 xml 添加 child。

child = ET.Element('child-key')
child.text = 'child-value'
media.append(child)

Message object 中,我将追加如下

msg = self.Message()
msg.appendxml(element1)
msg.appendxml(element2)
msg.send()