有没有办法实现可以从XMPP服务器接收所有消息的XMPP客户端或消息接收器?

时间:2010-02-02 01:55:48

标签: php xmpp

基本上我正在尝试构建一个机器人,它可以使用众多帐户中的一个向用户发送消息,并且能够接收到最初使用的帐户的消息进程并执行我需要它做的任何事情。到目前为止,我找到了JAXL库(http://code.google.com/p/jaxl/),但基于示例,它一次只能处理一个用户。有什么建议或想法吗?

先谢谢你。

顺便说一句,如果无论如何都要让服务器自动将这些消息转发给另一个程序或其他任何程序。

3 个答案:

答案 0 :(得分:1)

我认为您正在寻找外部组件.... Jaxl v 2.0允许您使用PHP http://github.com/abhinavsingh/JAXL编写组件机器人

答案 1 :(得分:0)

我认为您要问的是:“我可以将服务器上所有'传出'消息的副本发送给XMPP客户端吗?”这个问题的答案是“有点”。

您正在查看两个部分,服务器配置和客户端/组件配置。你可能不想要一个客户。因为它需要以特定用户身份登录。您正在描述一个组件,它是在XMPP服务器上或附近运行的受信任应用程序,并作为服务器的一部分。

服务器配置部分取决于您使用的服务器。我知道XCP可以做这种事情,比如使用消息存档组件。使用ma,您可以创建一个组件来将消息写入日志或数据库。你会制作一个类似的组件,用于为街道地址设置字符串并发出鲜花或其他东西 - 无论你需要采取什么行动。

我正在做的一个重要假设就是你完全控制了服务器。如果你不这样做,答案就是“不”。

答案 2 :(得分:0)

我最近使用smack library来托管数十个'Xmpp机器人'。没有这样的限制,您只能作为单个用户连接。刚刚为每个机器人生成一个线程,使他在服务器(甚至在不同的服务器上)作为单独的xmpp用户进行连接并完成其工作。在我的情况下,机器人只是发送测试消息来测试聊天室,但代理服务(我从你的问题中理解)也是可能的。

线程甚至被设计为创建用户并在停止后删除它。

相关问题