我正在尝试为我们的Helpdesk系统设置Bonjour(或Ahavi)聊天机器人,该系统将根据菜单系统回答基本问题。我的问题的基础是如何让Python创建机器人,以使其作为聊天客户端连接到网络。

基本上,我网络上具有ICHAT或同理心的任何人(或任何能够通过本地网络查看用户的聊天程序)都应该看到机器人,就像他们看到另一个用户一样。实际的机器人零件的编程非常简单,但是我不知道如何在网络上获取它。

我已经研究了Zeroconf,但是我不确定它是如何工作的,或如何与Python一起运行聊天服务。我已经看到了Pybonjour,Python bindings for Avahi和Pyzeroconf的引用,但是我再次不知道如何设置它们。

如果有人可以举例说明或参考,甚至可以阅读有关该主题的好文章,这将不胜感激。谢谢!

科里

有帮助吗?

解决方案

您在这里拥有的是您想做的事情和如何做之间的断开连接。 Zeroconf/Avahi是关于服务发现的。您描述的是聊天机器人。聊天机器人连接到现有的聊天服务器。带有iChat的苹果有点模糊了这些线条。

iChat(大概是实现协议的其他聊天客户端)使用Bonjour提供避免外部服务器连接的方法。

从本质上讲,您需要做的是实现也利用Bonjour的聊天服务器。 Bonjour部分宣传服务,聊天部分处理了实际的通信。您可能想使用Python库进行心灵感应,例如Python-Tepathy或Python-Enspathy [Telepathy] [1]。 Ichat似乎说明目标,因此这就是要研究的协议。 IIRC也支持XMPP,因此XMPP Python库可能是一个选择。

我会考虑使用[Bonjour-py] [2]宣传服务。这可能有点棘手,但听起来确实很有趣。如果Bonjour-Py页面有许多其他术语,则可以搜索它,如果它不满足您的需求。

[1]: http://telepathy.freedesktop.org/wiki/ 心灵感应的家

[2]: http://www.mcs.anl.gov/research/project/projects/accessgrid/bonjour-py/ Bonjour-Py

其他提示

最简单的事情是使用心灵感应Salut或Pidgin/libpurple,然后在D-Bus上与之交谈。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top