消息渠道扩展开发详解,你不容错过!


1 为什么要做渠道的开发?
用户上线苍穹系统,往往会与某种移动办公软件一起使用,比如云之家、钉钉、泛微、蓝凌等。
第三方移动办公软件特点是灵活机动,使用条件限制少,操作简单,往往只用一部手机即可完成所有操作。这种业务处理方式更加符合当下主流形式,所以用户希望苍穹产生的任务或者业务消息可实时并准确地推送至手机端,满足用户使用习惯。
所以,消息中心提供了消息渠道功能,来满足上述用户需求。
2 原厂支持哪些消息渠道?
清楚了消息渠道的定位以及概念后,那苍穹消息中心原厂预置了哪些标准渠道呢?且听小编为你逐一道来~
目前,消息中心预置了8种标准渠道,主要分为3种类型:邮件、短信、移动办公软件,如下图所示:

8种标准消息渠道
原厂8种渠道,可以满足大部分用户的使用需求,但是不排除在此范围之外的使用习惯,比如,客户使用泛微、蓝凌或者自研系统作为日常办公软件。
为了满足更多用户的个性化需求,消息中心提供了渠道扩展能力。
3 如何开发扩展消息渠道?
渠道开发分几步?其实很简单,只需两步即可实现。
步骤一:配置消息渠道参数
关于消息渠道参数的配置,消息中心提供了基础界面,用户可以直接使用,也可以在该界面的基础上进行扩展开发。路径为:【系统服务云】→【系统管理】→【消息平台】→【消息渠道】,参数配置界面如下图所示:

消息渠道参数配置界面
其中实现类,需要录入用户开发的渠道解析类。如何编写解析类呢?不用着急,接下来为大家详细说明~
步骤二:编写消息渠道解析类
消息中心API工程中提供了抽象类,并规定所有渠道解析类都需要继承该抽象类,在此基础上实现相应方法。
工程名 | bos-mservice-message-api |
抽象类 | AbstractMessageServiceHandler |
下面我们详细介绍下抽象类中,各个方法的作用以及使用过程中的注意点:
public void createToDo(MessageContext ctx, ToDoInfo info){ 1. 流程创建任务方法; 2. 方法入参包含所有任务场景所需参数数据; 3. 标准产品中没有记录任务日志,扩展开发可以根据需求决定是否将任务日志落库处理,数据库表以及落库方式没有具体要求; 4. 方法逻辑执行过程中,若是出现异常,请向上游抛出,平台会根据异常,自动重试再次推送任务。 } |
public void dealToDo(MessageContext ctx, ToDoInfo info){ 1. 流程处理任务方法; 2. 在该方法中调用第三方系统接口,推送任务处理请求。 } |
public void deleteTodo(MessageContext ctx, ToDoInfo info){ 1.流程删除任务方法; 2.在该方法中调用第三方系统接口,推送任务处理请求。 } |
public void checkTodo(MessageContext ctx, ToDoInfo info){ 校验OA系统任务处理状态,特殊渠道需要使用。 } |
public void sendMessage(MessageContext ctx, MessageInfo message) { 1. 业务推送消息方法; 2. 链接消息中URL可以酌情改造,以适用OA系统单点登录要求; 3. 调用接口部分请求失败,请向上游抛出异常,异常方式可以参考标准渠道逻辑,系统会自动重试并再次推送消息。 } |
public void deleteProcessIns |
消息渠道扩展开发详解,你不容错过!
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



