我想知道是否有可能决定何时从xmmp服务器上消费?
让我试着更好地解释一下...想象一下,我开发了一个机器人来读取消息正文以“MESSAGETOBOTONLY:”开头的所有消息,如果我使用通常的方法来阅读消息:
public void processMessage(Chat chat, Message message) {
if (message.getType() == Message.Type.chat) { ... }
}
我收到的所有消息都将消耗和丢失...我想要的只是消费以以下内容开头的消息:“MESSAGETOBOTONLY:”并让其他消息仍在服务器上由xmpp聊天客户端使用。
最好的问候,
答案 0 :(得分:1)
不要滥用消息体元素中的魔术字符串来指示特殊的消息类型。
如果要控制机器人,请使用IQ数据包或在消息类型数据包中添加额外的扩展名,以指示此消息用于特殊目的。然后,您可以添加带有packetFilter的packetListener,以便在收到这些类型的XMPP节时收到通知。