在GAE上架设GTalk机器人
玩过GAE的人都知道,GAE很强大而且很实用,只要会写Python或Java就可以将应用放在云端。笔者一直用的英汉互译就是Google的GTalk机器人,但这个机器人并不能达到我想要的最基本功能--互译可在同一个机器人中完成。也就是说Google的机器人,汉译英要一个Bot,英译汉又要再添一个Bot,选择时还要麻烦地先想想究竟点哪个~
好了,既然GAE如此强大简单,那就自己写一个吧,反正有时间。下面先介绍一个GTalk机器人DEMO,分两个文件。
1、[app.yaml]文件
application: YOUR-APP-ID
version: 1
runtime: python
api_version: 1
handlers:
- url: /_ah/xmpp/message/chat/
script: dict.py
inbound_services:
- xmpp_message
2、[dict.py]文件
from google.appengine.api import xmpp
from google.appengine.ext import webapp
from google.appengine.ext.webapp.util import run_wsgi_app
class XMPPHandler(webapp.RequestHandler):
def post(self):
message = xmpp.Message(self.request.POST)
message.reply(message.body[::-1])
application = webapp.WSGIApplication([('/_ah/xmpp/message/chat/', XMPPHandler)])
run_wsgi_app(application)
好了,Update到GAE上就可以看到机器人正确运行了,这个机器人的功能是将你发的信息反转并回复给你,当然了,前提是你已经在GTalk中添加YOUR-APP-ID@appspot.com
这个帐号的机器人为你的好友,下面来张截图~
PS:翻译机器人我已经写出来了,但还没有优化,迟些发上来,嗯,当然会是开源的~ DEMO参考自:http://www.keakon.cn/bbs/thread-1622-1-1.html