微信公众平台开发框架sophia新版本1.2特性

虽然sophia对微信公众平台的各种api都有良好的支持,比如文本回复、菜单事件、图片信息、订阅、退订等。
但处理特殊场景方面有些不足,比如高级api调用及异常情况处理。

有个客户提出希望在手机上(1)能够查看订阅者对服务号发送的信息,(2)并能通过手机回复(在线客服)。
目前,我了解到的情况是可以通过公众号助手群信息,这个可以不实现。

对于这种情况,sophia需要增加一些逻辑处理。如下:

1、高级api调用
服务号必须通过腾讯认证才能开通高级api,这个有客户自己去认证。有了调用高级api权限后,sophia需要提供如下能力:
a、获取token
b、缓存token
c、定时更新token
d、通用调用api接口封装

这些逻辑如何组织到相关类里?思考中....

2、异常情况处理
sophia有非常好的异常处理机制,对于订阅者回复的不是系统命令,则提醒订阅者查阅帮助。
这个跟上面的两点需求有什么关系呢?
因为系统的命令(智能回复功能)毕竟有限,而且有些订阅者不会使用,或者订阅者需要向公众号发起一个咨询(一段文字)时,sophia将认为它不是系统命令,见作为异常并提醒订阅者查阅帮助。

所以,需要对这类异常做两种处理:要么当异常(默认),要么将消息放到队列里等待客服介入,并提示订阅者等待客服介入。

因此,在sophia的抽象命令解析器里将加入这样的处理逻辑,命令解析器找不到命令后抛出异常,由消息处理器俘获,并将消息放到带处理池里。

 

最后,当sophia有了上面的逻辑后,很容易的实现客户要求的两点需求。仅需要一个ViewAndReplyMessagesCommand类。
此类将作为sophia的继承command,但不会想HelpCommand、NextCommand那样强制每个消息处理器必须有。
有客户决定。


 

微信公众平台开发框架sophia新版本1.2特性,布布扣,bubuko.com

微信公众平台开发框架sophia新版本1.2特性

上一篇:集线程池应用、多次HttpWebRequest请求,自动切换账号等等的移动信息查询软件


下一篇:[c#]asp.net开发微信公众平台(7)前6篇的整体框架demo源码