此问题在不同时间以不同形式提出,
但是由于随着时间的推移情况发生了很大的变化,现有的答案开始时并不是很令人满意,我允许自己再次提出这个问题,
我想实现一个聊天机器人,让我们的团队能够回答查询并接受命令(粗略地说就像Github的hubot),我想在Google Talk服务(内部的聊天服务)之上执行此操作Gmail和其他地方),我宁愿在AWS上使用Python或Go(而不是使用Google App Engine),
我的问题是否有python中的Google聊天客户端库或去过那里,过去一年一直在积极开发? 有关实施聊天机器人的任何建议都非常感谢。
我的计划是拥有一个Google Talk客户端,一直在等待人们与之交谈并解释其消息/命令(而不是运行服务器和处理用户身份验证)和...)
答案 0 :(得分:3)
Google Talk服务基于XMPP,但使用了一些open but non-standard extensions,但这些服务都不需要建立连接。任何符合标准的客户都应该可以使用。
引自https://developers.google.com/talk/open_communications#developer
我是IM客户端的开发人员。如何连接到Google Talk 服务?
只要您遵守XMPP规范的要求,您就会 能够连接到Google Talk服务。
没有什么特别的,没有支持连接到Google Talk所需的XMPP-Core和XMPP-IM。由于遗留原因,它甚至支持SASL PLAIN机制。
目前在Go中没有很好的XMPP支持,火灾中的几个铁杆可以这么说,但是远离生产准备和许多废弃的项目。选择一个已建立的Python库是最好的选择。
如果不加考虑,我会选择Twisted Words或Wokkel
答案 1 :(得分:2)
唯一有资格且我知道的是mattn / go-xmpp。
答案 2 :(得分:2)
Google Talk使用普通XMPP ,唯一的转折点是它需要非标准化的身份验证方案才能作为客户端登录他们的服务器(当时它是{{ 1}} SASL机制和now it's supposedly OAuth2) - 与gtalk服务器的服务器到服务器通信无需任何调整即可工作。
请注意,您可以考虑设置自己的XMPP服务器,因为有许多免费的XMPP服务器(ejabberd,韵律,openfire,jabberd2),并且有免费的XMPP-enabled web chat clients(JWChat是{例如,如果您想让人们直接从网络用户界面进行聊天。
至于库,我听说在为Python编写支持网络的应用程序时使用Twisted框架很时髦,所以看看@jnml提到的what's available. X-GOOGLE-TOKEN
似乎不支持尚未在核心XMPP RFC中指定的最低要求。