微信公众平台的STRUTS
為什么要寫這個文章?
1、前兩天想到阿里來往注冊一個公眾號,但發(fā)現(xiàn)來往公眾平臺做的不是一般的爛!注冊需要填寫excel并發(fā)郵件申請,而且申請條件不是一般的苛刻,我的神!
2、看不慣騰訊的霸王條款、服務(wù)質(zhì)量差(動不動屏蔽第三方自動回復(fù))。
?
3、本來找個朋友基于微信平臺創(chuàng)業(yè),發(fā)現(xiàn)自己不是創(chuàng)業(yè)的料。
?
微信公眾平臺可以做什么?(上PP,求懂!)
?
?
?
什么是sophia?
?
Sophia是一個為方便開發(fā)基于微信公眾平臺應(yīng)用程序的框架,類似于開發(fā)web應(yīng)用的struts。 Sophia將微信用戶回復(fù)的內(nèi)容解析成各種指令以便app能識別和響應(yīng)用戶的請求,實現(xiàn)公眾帳號的智能回復(fù)。
?
Sophia的主要特性:
1、將微信用戶輸入的文本轉(zhuǎn)換為命令;
2、管理微信用戶和第三方應(yīng)用的Session;
3、支持基于命令行的編輯模式和查詢模式
4、內(nèi)置命令幫助查看功能;
5、內(nèi)置查詢命令的上一頁、下一頁功能;
6、支持字母(不區(qū)分大小寫)、中文作為指令
7、注重擴展性
8、非常方便嵌入到web應(yīng)用中
?
其他:
1、Sophia支持菜單模式!
2、為什么命名為sophia?LP的洋名而已。
?
Sophia設(shè)計
?
提示:上圖沿左上角的箭頭開始看。
SophiaServlet是整個框架的入口,
1、負(fù)責(zé)接收微信平臺的請求
2、認(rèn)證請求的合法性
3、解析微信平臺POST過來的xml
?
MessageProcessorFactory根據(jù)配置文件,初始化消息處理器(MessageProcessor對象),并且提供根據(jù)請求獲取處理器的方法。
?
MessageProcessor(消息處理器接口)負(fù)責(zé)提供命令解析器和會話管理。
?
SessionManager(會話管理器)負(fù)責(zé)管理微信用戶的會話狀態(tài),目前只支持內(nèi)存管理,如用戶較多建議自行實現(xiàn)數(shù)據(jù)庫來管理。
?
CommandParsed(命令解析器接口)擁有命令(TextCommand)對象及其代碼的映射關(guān)系。
?
TextCommand(微信文本命令接口),代表公眾帳號響應(yīng)微信用戶回復(fù)的動作。擁有命令代碼、命令別名、待執(zhí)行方法的接口。
?
RequestMessage,代表微信平臺的對Sophia的請求信息;
?
ResponseMessage,代表Sophia對微信平臺的響應(yīng)信息;
?
?
?
給阿里來往一點建議
?
1、不要和微信正面競爭;
2、重點建設(shè)公眾平臺;
3、和第三方開發(fā)者建立良好的互動關(guān)系;
4、降低門檻,方便開發(fā)者基于公眾平臺建立第三方應(yīng)用,占領(lǐng)公眾服務(wù)大廳(醫(yī)院、銀行等);
5、提高公眾平臺在客戶端的操作體驗
?
最后
Sophia也許不能算作一個框架,但它卻幫助我們處理了很多東西。不管怎么樣,希望對開發(fā)微信平臺的第三方開發(fā)者在程序設(shè)計中有一點參考意義罷了。
?
?
《Sophia快速入門》
應(yīng)用Sophia開發(fā)的微信公眾帳號案例,想體驗的可以關(guān)注一下:
?
?
?
?
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的微信公众平台的STRUTS的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 什么是图片的DPI?如何修改图片DPI值
- 下一篇: 那些年你追过的女神:开发人员应该懂多少运