当流程产生待办任务或已办结时,零达支持以微信、短信、邮件、语音四种方式进行消息的推送。
微信公众号推送
当需要支持微信公众号推送时,零达低代码后台需要配置微信公众号相关信息,相关的配置大致为如下四个步骤:
1、微信公众号配置服务器地址
登录您的公众平台(服务号/订阅号),配置您的服务器地址,地址如下所示:
https://{domain}/enc-oss-easydock/api/runtime/v1/wx

其中的 {domain} 为您自己的域名,确保此域名指向了零达后台,一份示例的nginx配置如下所示:
server {
listen 80;
server_name {domain};
location / {
proxy_pass http://{ip}:28300;
add_header Access-Control-Allow-Origin *;
add_header Content-Security-Policy "upgrade-insecure-requests;connect-src *";
add_header Access-Control-Allow-Methods 'GET,POST,PUT,DELETE,OPTIONS';
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
}
}
注:https 请自行提供与域名匹配的有效证书并更改相应的nginx配置。
2、设置后台服务器IP地址白名单
获取到您的后台服务器所属外网IP地址,并将其配置在公众平台的IP白名单中,如下所示:
3、申请待办/已办/超时模板
为流程的待办提醒和办结提醒申请消息模板(可直接从模板库中搜索得到),如下所示:
待办事项提醒,模板为:
{{first.DATA}}
标题:{{keyword1.DATA}}
启动人:{{keyword2.DATA}}
审批节点:{{keyword3.DATA}}
{{remark.DATA}}

流程办结提醒,模板为:
{{first.DATA}}
办结时间:{{keyword1.DATA}}
流程名称:{{keyword2.DATA}}
流程说明:{{keyword3.DATA}}
{{remark.DATA}}

超时消息提醒,模板为:
{{first.DATA}}
流程名称:{{keyword1.DATA}}
发起人:{{keyword2.DATA}}
任务名称:{{keyword3.DATA}}
{{remark.DATA}}
4、后台配置公众号及消息模板
打开并编辑后台属性文件,修改如下内容,改成自己的公众号及模板:
# 公众号 AppId
enn.easydock.wx.gzh-app-id=******
# 公众号 AppSecret
enn.easydock.wx.gzh-app-secret=******
# 公众号待办消息模板
enn.easydock.wx.todo-template-id=******
# 公众号已办消息模板
enn.easydock.wx.done-template-id=*******
# 超时消息模板
enn.easydock.wx.due-template-id=******
5、自定义消息模板格式(可选)
上面申请的待办模板和已办模板在后台对应的配置为:
# 待办模板配置
enn.easydock.wx.todo-message-config.first=#taskUserName#,您好!您收到了一条新的待办任务:
enn.easydock.wx.todo-message-config.keywords.keyword1=#processName#
enn.easydock.wx.todo-message-config.keywords.keyword2=#startUserName#
enn.easydock.wx.todo-message-config.keywords.keyword3=#taskName#
enn.easydock.wx.todo-message-config.remark=点我即可直接处理!
# 已办模板配置
enn.easydock.wx.done-message-config.first=#startUserName#,您好,您申请的流程#status#:
enn.easydock.wx.done-message-config.keywords.keyword1=#endTime#
enn.easydock.wx.done-message-config.keywords.keyword2=#processName#
enn.easydock.wx.done-message-config.keywords.keyword3=#status#
enn.easydock.wx.done-message-config.remark=点我即可查看详情!
# 超时模板配置
enn.easydock.wx.due-message-config.first=#taskUserName#,您好!您收到了一条超时任务提醒:
enn.easydock.wx.due-message-config.keywords.keyword1=#processName#
enn.easydock.wx.due-message-config.keywords.keyword2=#startUserName#
enn.easydock.wx.due-message-config.keywords.keyword3=#taskName#
enn.easydock.wx.due-message-config.remark=#status#,点击查看详情!
推送的消息格式如下所示:
如果用户对默认的模板格式、文案、展示的数据不满意,可以自行申请新的模板或更改消息模板配置,如:
- 将待办模板的启动人更改为于启动
- 将待办模板的备注改为:*测试1
- 将已办模板的说明改为:,您好,您于*申请的流程已办结:
- 将已办模板的备注改为:*测试2
调整后的配置为:
## 微信消息模板配置
enn.easydock.wx.todo-message-config.first=#taskUserName#,您好!您收到了一条新的待办任务:
enn.easydock.wx.todo-message-config.keywords.keyword1=#processName#
# 有调整
enn.easydock.wx.todo-message-config.keywords.keyword2=#startUserName#于#startTime#启动
enn.easydock.wx.todo-message-config.keywords.keyword3=#taskName#
# 有调整
enn.easydock.wx.todo-message-config.remark=#startUserName#测试1
# 有调整
enn.easydock.wx.done-message-config.first=#startUserName#,您好,您于#startTime#申请的流程#status#:
enn.easydock.wx.done-message-config.keywords.keyword1=#endTime#
enn.easydock.wx.done-message-config.keywords.keyword2=#processName#
enn.easydock.wx.done-message-config.keywords.keyword3=#status#
# 有调整
enn.easydock.wx.done-message-config.remark=#startUserName#测试2
将推送的消息如下:
以#…#格式(如#startUserName#)包裹的内容为零达提供的系统变量,目前提供的系统变量有:
- projectId:项目id
- processId:流程Id(子应用Id)
- processName:流程名称(子应用名称)
- processInstanceId:流程实例Id
- startUserName:流程发起用户
- startTime:流程发起/任务创建时间
- endTime:流程结束时间
- taskKey:任务元数据key
- taskId:任务实例Id
- taskName:任务名称
- taskUserName:任务用户名称
- status:流程状态
注:部分变量只在待办/已办中独有,如办结模板中,taskId、taskKey、taskUserName等不可用。
补充:配置消息跳转到小程序
零达也支持小程序,方便当用户收到公众号的推送消息时,可以点击消息直接跳转到小程序进行办理。
第一步:公众号关联小程序,如下所示:
第二步:后台配置小程序
# 是否启用从公众号消息跳转到小程序
enn.easydock.wx.enable-gzh-to-xcx=true
# 小程序 AppId
enn.easydock.wx.xcx-app-id=******
# 小程序 AppSecret
enn.easydock.wx.xcx-app-secret=******
# 小程序中的待办页面路径,携带参数id,值为任务实例id
enn.easydock.wx.todo-xcx-path=todo
# 小程序中的已办页面路径,携带参数id,值为流程实例id
enn.easydock.wx.done-xcx-path=finish
# 小程序中的超时页面路径,携带参数id,值为任务实例id
enn.easydock.wx.due-xcx-path=due
短信/语音/邮件推送
短信、语音、邮件的推送由统一消息产品负责,统一消息部署好后,需要在统一消息中申请相关模板,模板如下:
1、申请模板
待办模板:
【零达】您收到了一条待办任务:${taskName},此任务来自于${startUserName}发起的${processName},请登录${projectName}查看。
办结模板:
【零达】${userName},您好。您于${startTime}申请的流程${processName}${status},请登录${projectName}查看。
超时模板:
【零达】您的待办任务${taskName}已超过办理时限,${status}。此任务来自于${startUserName}发起的流程${processName},可登录${projectName}查看详情。
注:相关的文案可以根据自己的需要进行调整,但是所支持的占位符只能是上述示例中各自所列出来的,可以去掉不需要的占位符,但是不能新增不存在的占位符。
2、后台配置模板
申请到相关的模板后,将得到各自对应的模板ID,将其配置在后台配置文件中,如下所示:
# 消息的标题
enn.easydock.message.app-name=零达
# 项目名称,如阳光智采
enn.easydock.message.project-name=***
# 待办消息短信模板id
enn.easydock.message.todo-sms-template-id=113
# 待办消息邮件模板id
enn.easydock.message.todo-email-template-id=113
# 待办消息语音模板id
enn.easydock.message.todo-voice-template-id=114
# 已办消息短信模板id
enn.easydock.message.done-sms-template-id=111
# 已办消息邮件模板id
enn.easydock.message.done-email-template-id=111
# 已办消息语音模板id
enn.easydock.message.done-voice-template-id=112
# 超时消息短信模板id
enn.easydock.message.due-sms-template-id=129
# 超时消息邮件模板id
enn.easydock.message.due-email-template-id=129
# 超时消息语音模板id
enn.easydock.message.due-voice-template-id=130
更改配置文件后,后台需要重新启动。
