文档章节

CCBPM工作流引擎的消息机制与设计

ccflow
 ccflow
发布于 2015/08/24 16:45
字数 862
阅读 119
收藏 1
点赞 0
评论 0

CCBPM工作流引擎的消息机制与设计

关键字:ccflow jflow 消息机制 流程引擎 自动发送短信 发送邮件 发送消息 流程引擎微信连接 消息接口

关于ccbpm: 我们把ccflow jflow两个版本的工作流引擎统称为ccbpm.

工作流引擎的消息产生:在发送、抄送、退回、转发、加签、删除等等操作过程中,需要对当时人进行提醒,并且在设置提醒的情况下,就会产生消息。

Ccbpm的消息删除机制:对于已经过期无意义的提示,ccbpm就会删除,比如:a节点发送到b节点有n (n>=1)个人可以处理,这个时间如果设置了消息提醒在启动消息服务的情况下,就会提示给这N个人,如果一个人处理了发送到c点上去,那么ccbpm就会自动删除b节点的提示,防止重复提示。

消息定义:消息是与系统与用户,用户与用户,用户与系统之间沟通的渠道,在一个mis系统的运行过程中会有很多类型的消息,这些消息通过一定的渠道来传递,这些渠道包括,短信、手机在线提示、邮件提示、即时通讯系统、微信推送。

消息服务:ccbpm的消息,是通过ccbpm的服务来发送的,如下图ccflow的服务器。

clip_image001

Ccflow的服务,能够把工作流引擎运行过程中的消息,发送出去。比如发送到下一步,有待办。

Ccbpm支持的消息传递渠道:如上图所示,ccbpm流程引擎的消息传递渠道有如上5中,下面分别介绍这五种消息推送渠道。

第1:向ccim写入消息:必须使用ccim才有效,当然您也可以与其他的即时通讯集成,到网上搜索,ccbpm与其他即时消息集成的demo.

clip_image003

第2:发送邮件:顾名思义,就是发送邮件给当事人,当事人必须在个人设置里设置email地址才可以。
clip_image005

第3:发送sms短信:需要连接短信猫才可以运行,短信猫是一个硬件设备,每个短信猫的型号不同,驱动也不同,但大体相同,如果你使用与我们一样型号的短信猫,就没有必要调试接口了。

第4:向app手机写入消息:这个需要启动ccbpm的ios 与andriod的客户端才可以,系统就会自动推送消息到客户端上。

clip_image007

第5: 向微信写入消息: ccbpm与微信集成,可以方便的通过微信的企业号,把产生的消息,免费的推送到指定用户的微信上。

clip_image009

CCBPM的消息存储表:所有在ccbpm流程引擎产生的消息,都会记录到TA_SMS的表里,每次把消息推送出去以后,系统就会做一个标记,下面是表结构,信息。当然如果你愿意自己在这个表上去写接口,产生消息更新状态也未尝不可。

clip_image011

如果你要对该表进行二次开发,首先要了解好每个字段,在消息推送成功后,就把该字段修复成发送成功状态,请参考我们的ccbpm服务代码。

===OVER===

© 著作权归作者所有

共有 人打赏支持
ccflow

ccflow

粉丝 176
博文 215
码字总数 143886
作品 2
济南
后端工程师

暂无相关文章

懒惰根本就不存在

简评:芝加哥大学心理学教授,懒惰根本就不存在。(本文表面讲行为心理学实则讲教育) 金句:以好奇而不是判断来回应一个人的无效行为,是非常有帮助的。 本文「我」代表原作者 E Price。 自...

极光推送 ⋅ 20分钟前 ⋅ 0

Excel提取单元格中最后一个“.”后面的数据

java.lang.String ----- String =TRIM((MID(SUBSTITUTE(B2,".",REPT(" ",99)),(LEN(B2)-LEN(SUBSTITUTE(B2,".","")))*99,99)))...

klog ⋅ 22分钟前 ⋅ 0

mac远程桌面

下载安装remote-desktop-mac Mac beta 客户端 mac通过远程桌面访问windows服务器。

亚林瓜子 ⋅ 26分钟前 ⋅ 0

firrtl

动手---sbt(2)之后,再回头看 chisel第一个实验,根据 https://github.com/freechipsproject/firrtl 发现firrtl没有执行sbt assembly命令,重新执行这个命令,结果成功。如下图: joe@joe-As...

whoisliang ⋅ 30分钟前 ⋅ 0

NIO

一、通道(Channel):用于源节点与目标节点的连接。在 Java NIO 中负责缓冲区中数据的传输。Channel 本身不存储数据,因此需要配合缓冲区进行传输。 二、通道的主要实现类 java.nio.channel...

stars永恒 ⋅ 31分钟前 ⋅ 0

Android悬浮窗的实现

0. 前言   现在很多应用都使用到悬浮窗,例如微信在视频的时候,点击Home键,视频小窗口仍然会在屏幕上显示。这个功能在很多情况下都非常有用。那么今天我们就来实现一下Android悬浮窗,以...

猴亮屏 ⋅ 31分钟前 ⋅ 0

日志采集中的关键技术分析

概述 日志从最初面向人类演变到现在的面向机器发生了巨大的变化。最初的日志主要的消费者是软件工程师,他们通过读取日志来排查问题,如今,大量机器日夜处理日志数据以生成可读性的报告以此...

tqyin ⋅ 32分钟前 ⋅ 0

使用Navicat将数据导出为text文本 然后再导入

将数据导出为text文本效率很高 1. 准备工作 1.1 准备表结构 1.2 目标库 执行生成表结构sql 2.将表数据导出为text文本 生成的text文本 3. 目标库 导入text 4.效果...

Lucky_Me ⋅ 38分钟前 ⋅ 0

IntelliJ IDEA 乱码解决方案 (项目代码、控制台等)

文章介绍了idea下,项目乱码、控制台乱码及运行tomcat控制台乱码的解决方案,文章链接:https://www.cnblogs.com/vhua/p/idea_1.html

Funcy1122 ⋅ 41分钟前 ⋅ 0

IDEA使用sonarLint

一、IDEA如何安装SonarLint插件 1.打开 Idea 2.点击【File】 3.点击【Settings】 4.点击【Plugins】 5.在搜索栏中输入“sonarlint”关键字 6.点击【Install】进行安装 7.重启Idea 二、IDEA如...

开源中国成都区源花 ⋅ 46分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部