def POST(self): str_xml = web.data() #获得post来的数据 msg = PostMessage(str_xml) #解析消息信息 #retmsg =msg.reply_text(str_xml) self.initConfig(msg) if msg.msgType.lower() == "event": self.logAccessUrl(msg) retmsg = self.event_handler(msg) else: retmsg = self.transferDialogue(msg) #1.优先进入对话状态 #2.其次选择通话对象 #3.最后进入服务咨询状态 #retmsg = msg.reply_transfer_customer_service() return retmsg
sys.path.append(os.path.split(os.path.dirname(__file__))[0]) #import pylibmc from common import templates_root from message import GetMessage,PostMessage from event import Subscribe subscribe_xml=""" <xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[FromUser]]></FromUserName> <CreateTime>123456789</CreateTime> <MsgType><![CDATA[event]]></MsgType> <Event><![CDATA[subscribe]]></Event> </xml>""" msg = PostMessage(subscribe_xml) print Subscribe("test").run(msg) #subscribe_xml=""" # <xml><ToUserName><![CDATA[toUser]]></ToUserName> # <FromUserName><![CDATA[FromUser]]></FromUserName> # <CreateTime>123456789</CreateTime> # <MsgType><![CDATA[event]]></MsgType> # <Event><![CDATA[subscribe]]></Event> # <EventKey><![CDATA[qrscene_123123]]></EventKey> # <Ticket><![CDATA[TICKET]]></Ticket> # </xml> """ #msg = PostMessage(subscribe_xml) #print msg.event=="subscribe" #print msg.eventKey=="qrscene_123123" #print msg.ticket=="TICKET"
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1351776360</CreateTime> <MsgType><![CDATA[location]]></MsgType> <Location_X>23.134521</Location_X> <Location_Y>113.358803</Location_Y> <Scale>20</Scale> <Label><![CDATA[位置信息]]></Label> <MsgId>1234567890123456</MsgId> </xml> """ link_msg =""" <xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1351776360</CreateTime> <MsgType><![CDATA[link]]></MsgType> <Title><![CDATA[公众平台官网链接]]></Title> <Description><![CDATA[公众平台官网链接]]></Description> <Url><![CDATA[url]]></Url> <MsgId>1234567890123456</MsgId> </xml>""" #msg = PostMessage(str_xml) #if msg.msgType == "text": # print msg.reply_text(msg.content) for msg in [text_msg,image_msg,voice_msg,video_msg,location_msg,link_msg,location_msg,link_msg]: print PostMessage(msg).auto_reply()