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