XMPP、openfire 和 bot 问题
Posted
技术标签:
【中文标题】XMPP、openfire 和 bot 问题【英文标题】:XMPP, openfire and bot issue 【发布时间】:2011-01-11 12:29:48 【问题描述】:我有兴趣做一个聊天机器人。我的脚本目前在 imified.com 机器人上运行良好。然而,imified 几乎每天都在下降。所以我正在寻找自己的解决方案。
在我的发现过程中,我发现(通过这个网站)openfire 并且我已经对其进行了配置,即使使用 gmails 用户它也能正常工作。
但我仍然没有得到我需要的东西。
当每个 gmail 或其他外部用户向我发送消息时,我需要请求一个 URL(包含聊天脚本和一些其他用户数据,例如 imified 提供的)。让我解释一下。
我的 openfire 为 mybot.com 托管并工作,我的 ID 是:autobot@mybot.com。
现在一个 gmail 用户说 client@gmail.com 在他的 gtalk/piding 中添加了我,我们可以相互交流。他可以给我发消息,我可以回复。
但我需要一个机器人来代替我。当 client@gmail.com(和任何其他用户)向我发送消息时,我需要请求一个 URL,以便我可以根据他/她发送的消息动态生成响应。
我应该通过哪种方式实现这一目标?有没有办法自定义 openfire 来做到这一点?
或者我应该制作一个 php/python(不过我需要学习 python)脚本来监听 xmpp 端口并生成响应?如果是这样,有什么有用的脚本可以指导我吗?
非常感谢您阅读并提前感谢您提供任何回复。
【问题讨论】:
【参考方案1】:OpenFire 了解 XMPP,您需要的是 XMPP 库/API(如果您是 Rubyist,则如 XMPP4R)。使用它,您的应用程序将登录到 OpenFire(通过发送 gmail/yahoo 凭据),其他人将看到您在线。但是当他们回复您时,您会在您的申请中收到通知。您可以在哪里接收、处理消息并发送响应(通过编写所需的程序/逻辑)。
我们已经在我们的 SMS 聊天应用程序中与 Gmail/Yahoo Messenger 朋友/联系人进行了此操作。
【讨论】:
感谢 Asif 的意见!你知道像 XMPP4R 这样好的 php 或 python 库吗?当你回答的时候,我问谷歌:)。 嗨,阿西夫,我认为这个线程会帮助我 :) ***.com/questions/910737/… 我没有将 XMPP 与 PHP/Python 一起使用。如果你得到它,我祝你好运:)【参考方案2】:Openfire 是 XMPP 服务器。它是 XMPP 客户端之间的路由消息。
您需要 XMPP-client 连接到服务器并处理来自其他客户端的消息。
例如,您可以查看here。该页面包含两个简单的机器人。
【讨论】:
嗨,我仍然愿意接受其他回复:)。【参考方案3】:你也可以使用 xmpp js lib 'strophe'
https://github.com/metajack/strophejs
和 xmpp python 库
https://github.com/fritzy/SleekXMPP
和 xmpp php 库
https://github.com/alexmace/Xmpp
试试看,祝你好运
【讨论】:
【参考方案4】:您可以试用我们的 XMPP 聊天机器人,它已经过 openfire 测试: http://github.com/gbin/err
设置起来超级简单,制作一个最小的 hello world 插件也很容易,不需要操作 XMPP: 见https://gist.github.com/2902497
【讨论】:
以上是关于XMPP、openfire 和 bot 问题的主要内容,如果未能解决你的问题,请参考以下文章
hava jabber-bot。 XMPP over smack 4.2.0 with TLS
XMPP——openfire、PHP 和 python 网络服务
OpenFire后台插件上传获取webshell及免密码登录linux服务器