我基本上是在编写一个 XMPP 客户端来自动回复“特定”聊天消息。
我的设置是这样的:
这是我的要求:
我正在尝试自动化我在 gtalk 上收到的某些类型的消息。所以每当我收到一条特定的消息,例如:“你好吗”,我自己的 XMPP 客户端应该自动回复说“很好”。你好吗”。所有发送到 x@xyz.com 的消息(在我的客户回复之前和之后)但应该被所有客户端接收(我自己的客户端没有 UI,只能回复特定的消息。)。
现在我已经对我的客户进行了编码以自动回复。这工作正常。但我面临的问题是,一旦我回复(我使用 smack 库),发送到 x@xyz.com 的所有后续消息都只能由我的 XMPP 客户端接收。这显然是一个问题,因为我自己的客户端非常垃圾并且没有 UI,所以我看不到发送给我的其余消息,从而使我“丢失”消息。
我也观察到其他 XMPP 客户端的相同行为。现在的问题是,这是 XMPP 的要求吗(对不起,我没有很好地阅读 XMPP 协议)。是否可以编写 XMPP 客户端来向用户发送回复,并且仍然能够在当前正在侦听消息的所有客户端中接收所有后续消息?让我的客户端成为一个成熟的 XMPP 客户端是一种解决方案,但我不想走那条路。
我希望我的问题很清楚。