O2OA教程
  • 概述
  • 安装管理及配置
    • 服务器主机推荐配置
    • 平台下载及安装部署
    • 平台升级操作说明
    • 平台基本能力介绍
    • 平台目录结构说明
    • 平台配置文件说明
    • O2OA与移动办公
      • 连接O2云使用APP
      • 集成到企业微信
      • 集成到阿里钉钉(DingTalk)
      • 配置绑定微信扫码登录
    • 平台数据库配置
      • 接入第三方数据库
      • 数据库驱动JAR包的更新或新增
      • 数据库配置信息样例
      • 访问和操作H2数据库
      • 清除废弃的业务数据
      • 压缩H2数据库
    • 平台存储库配置
    • 组织人员架构及管理
      • 密码管理
        • 管理员密码管理
        • 普通初始化密码
        • 用户重置密码
      • 组织架构,组织职位,组织属性
        • 组织架构创建过程
          • 顶组织创建
          • 下级组织创建
          • 组织管理设定
        • 组织职位管理
        • 组织职务意义与使用
      • 人员身份,人员属性
        • 人员信息创建
        • 人员与组织的关系(人员身份)
        • 人员数据导入
      • 角色管理
        • 内置角色介绍
        • 角色信息管理
      • 群组管理
      • 常用脚本
        • 人员信息
        • 组织信息
        • 群组信息
        • 角色信息
      • 数据同步接口
        • 人员数据接口
          • 新增用户
          • 修改用户
          • 删除用户
          • 修改用户密码
          • 修改汇报对象
        • 组织数据接口
          • 新增组织
          • 修改组织
          • 删除组织
    • O2OA集群部署
      • 非对称集群配置
    • 平台消息提醒配置
    • 平台审计日志配置
    • 平台工作日节假日配置
    • API接口服务
    • 启用HTTPS(SSL)
      • 自签名SSL证书验证HTTPS功能
    • SSO与单点认证
      • SSO配置
      • 约定密钥单点认证配置
      • SSO客户端程序
      • SSO服务端程序
    • 平台维护工具
      • 备份恢复数据
      • 自动执行数据备份与恢复
      • 待办
      • 已办
      • 待阅
      • 已阅
      • 流转中工作
      • 已完成工作
      • 授权管理
    • 相关数据表
    • 全文检索功能部署
    • 平台错误日志
      • 日志所在目录
      • 日志使用class
  • 业务开发与设计
    • 流程应用开发与设计
      • 流程开发设计入口
      • 应用创建及权限设置
      • 创建流程
        • 新建流程
        • 新建活动
        • 修改活动属性
        • 修改路由
        • 保存流程
        • 活动配置
        • 路由配置
      • 创建表单
        • 创建表单
        • 修改表单字段
        • 保存表单
      • 常用事件脚本说明
      • 数据字典配置
      • Excel数据导入数据网格(仅支持IE)
      • 流程实际样例需求准备
      • 流程应用的导出导入
      • 拆分流程样例
      • 流程服务调用环节使用
        • 服务地址URL动态参数
        • 自定义HTTP头信息
    • 内容管理与信息发布
      • 创建栏目
      • 创建分类
      • 创建表单
      • 设置表单
      • 栏目的权限
      • 分类的权限
      • 测试发布
      • 如何使用流程发布信息
        • 新建信息发布流程
        • 给分类配置信息发布流程
    • 门户管理与应用包装
      • 功能简介
      • 表单设计
      • 部件设计
      • 脚本开发
      • 数据源使用
      • 相关接口
      • 门户样例
      • 模板导入
      • 其他
    • 数据视图与数据统计
      • 视图
      • 数据表
      • 查询语句
    • 定时任务与服务接口
      • 前后端脚本的差异
      • 代理和接口的脚本编写
      • 代理
      • 接口
    • 系统交互样例
      • 登录认证 For Java
        • 发送用户账号密码进行登录认证
        • 发送用户名使用SSO进行登录认证
      • 流程控制 For Java
        • 启动一个新的流程实例(工单)
      • 外系统启动流程
      • 数据导出
        • 数字档案
    • 项目样例说明
      • 公文
    • 数据字典使用说明
    • 前端开发API说明
      • 业务数据 - Object: data
      • 流程实例 - Object: workContext
      • 内容管理实例 - Object: documentContext
      • 组织架构管理 - Object: org
        • 人员信息: person 操作
        • 人员属性: personAttribute操作
        • 组织信息: unit操作
        • 组织职务: unitDuty
        • 组织属性: unitAttribute
        • 身份信息: identity
        • 角色信息: role
        • 群组信息: group
  • 平台内置应用介绍
    • 会议管理
    • 日程安排
    • 个人文件
    • 执行力管理
    • 考勤管理
    • 论坛管理
    • 办公中心
    • 脑图管理
    • 系统应用权限控制
  • 源码的编译及管理
    • 服务器源码编译
    • 移动端源码介绍
      • Android端编译打包处理
      • IOS端打包处理
    • 平台程序调试方法
      • 前端代码调试定位
      • 后端代码的远程调试
  • 常见问题
    • H2数据库异常修复
    • O2OA平台异常
      • 阿里云ECS服务器的端口启用
      • IOS移动办公无法收到验证码
      • 集群配置
    • 数据导出或者导入时发生OOM异常
    • 服务器错误
Powered by GitBook
On this page
  • 一、消息提醒配置文件
  • 二、事件说明
  • 三、关于consumers产生的消息的处理机(消费者)相关配置:
  • 四、配置外部消费者
  • 1、添加新的consumer,比如sms(名称可以根据业务来自由决定,支持英文):
  • 2、通过服务获取所有的需要提醒的消息列表:
  • 3、消费后,需要由自定义程序将消息主动标识为已消费,否则将一直存在于数据库中,每次查询都会将消息重新查询出来:
  • 五、消息信息表自动清理相关设置

Was this helpful?

  1. 安装管理及配置

平台消息提醒配置

O2OA服务器提醒了配置文件,支持自定义系统内部分事件的消息提醒类别。

一、消息提醒配置文件

文件路径:o2server/config

文件名:messages.json

注意:如果o2server/config目录下没有该文件,请从o2server/configSample目录中COPY一份到o2server/config目录中,直接在configSample目录中修改将不会生效。

二、事件说明

attachment_editor                 #文件被编辑
attachment_editorCancel           #文件编辑被撤消
attachment_editorModify           #文件编辑被修改
attachment_share                  #文件被分享
attachment_shareCancel            #文件分享被取消
meeting_delete                    #会议被删除
meeting_invite                    #收到会议邀请
readCompleted_create              #文件已阅
readCompleted_delete              #文件已阅被删除
read_create                       #收到文件待阅
read_delete                       #文件待阅被删除
taskCompleted_create              #收到已办信息
taskCompleted_delete              #已办信息被删除
task_create                       #收到待办信息
task_delete                       #待办信息被删除
task_press                        #待办被点击打开
teamwork_taskCreate               #收到工作任务
teamwork_taskUpdate               #工作任务被更新
teamwork_taskDelelte              #工作任务被删除
teamwork_taskOvertime             #工作任务已超时
teamwork_taskChat                 #收到工作任务交流信息

三、关于consumers产生的消息的处理机(消费者)相关配置:

ws : 内部处理器,PC端websocket消息推送的处理器

pms : 内部处理器,pushMail通过极光推送向移动设备推送应用通知(Notifacation)的处理器

dingding : 内部处理器,发送钉钉待办消息的处理器

zhengwudingding : 内部处理器,发送政务钉钉待办消息的处理器

qiyeweixin : 内部处理器,发送企业微信消息提醒的处理器

四、配置外部消费者

适应需求:比如分离出一组消息,由程序通过第三方短信网关发送"待办到达"提醒短信:

1、添加新的consumer,比如sms(名称可以根据业务来自由决定,支持英文):

"task_create": {
    "consumers": [
        "ws",
        "pms",
        "dingding",
        "zhengwuDingding",
        "qiyeweixin",
        "sms"
    ]
},

(注意,修改完成后,整个JSON的格式必须保证正确。)

2、通过服务获取所有的需要提醒的消息列表:

服务请求地址:jaxrs/consume/list/{consume}/count/{count}

参数说明:

consume - 需要查询消息的消费者

count - 返回列表最大数量

返回数据格式:

{
  "type": "success",
  "data": [
    {
      "id": "665958e7-f590-43d5-9f0c-906514329e31",
      "title": "您有新的待办:流程调用:12323, (拟稿,测试并行流程)",
      "body": "{'id':'c8168b76-aa41-4223-bc0d-6b0a4143ca29','job':'712154cb-41aa-44ff-a7c2-b7c29a0f3db0','title':'流程调用:12323','startTime':'2019-09-13 08:21:03','startTimeMonth':'2019-09','work':'a0cb81b1-609a-40df-9a34-6813957c32ea','application':'45475aa6-1651-4014-ae6b-625f9dd5948b','applicationName':'001test','applicationAlias':'001test','process':'c5b46aed-4d1e-4da6-a1ef-bc591eb296b5','processName':'测试并行流程','processAlias':'','serial':'','person':'罗晶@luojing@P','identity':'罗晶@a553fb21-9354-4344-8eba-d8e284b7b460@I','unit':'开发部@22@U','trustIdentity':'纪桂丹@ed052254-23ae-4809-a5cc-8d12b95697de@I','activity':'fbb22a88-14fe-4154-b435-a4e410f78648','activityName':'拟稿','activityAlias':'','activityDescription':'','activityType':'manual','activityToken':'b084b040-3067-49bb-8e48-ea0f95eca59f','creatorPerson':'纪桂丹@JiGuiDan@P','creatorIdentity':'纪桂丹@e868844b-bcea-4b31-8ddd-ea3becda290a@I','creatorUnit':'开发部@22@U','expired':false,'urged':false,'routeList':['5ca98a7f-8a8b-4efb-8a0f-f6051501eb34','37345194-2456-4beb-8775-3b6c3108cad0'],'routeNameList':['go','选择'],'routeOpinionList':['',''],'routeDecisionOpinionList':['',''],'routeName':'','opinion':'','modified':false,'viewed':false,'allowRapid':false,'first':true,'createTime':'2019-09-13 08:21:03','updateTime':'2019-09-13 08:21:03','sequence':'20190913082103c8168b76-aa41-4223-bc0d-6b0a4143ca29'}",
      "type": "task_create",
      "consumer": "sms",
      "person": "罗晶@luojing@P",
      "consumed": false,
      "instant": "c619de29-166b-4571-96f0-da4f11c6ed63",
      "createTime": "2019-09-13 08:21:03",
      "updateTime": "2019-09-13 08:21:03"
    },
    {
      "id": "63eb790c-9b02-4faa-80c8-e9b9b93a4083",
      "title": "您有新的待办:流程调用:测试一分N个流程0001, (拟稿,测试并行流程)",
      "body": "{'id':'16ff7d53-dd0e-405f-9351-845d8ed697ab','job':'3fdeb09f-d3dc-48e6-962d-dd34d7aa8d7d','title':'流程调用:测试一分N个流程0001','startTime':'2019-09-13 08:21:03','startTimeMonth':'2019-09','work':'d7a4e5de-260b-496e-b73b-33fcf4c35629','application':'45475aa6-1651-4014-ae6b-625f9dd5948b','applicationName':'001test','applicationAlias':'001test','process':'c5b46aed-4d1e-4da6-a1ef-bc591eb296b5','processName':'测试并行流程','processAlias':'','serial':'','person':'罗晶@luojing@P','identity':'罗晶@a553fb21-9354-4344-8eba-d8e284b7b460@I','unit':'开发部@22@U','trustIdentity':'纪桂丹@ed052254-23ae-4809-a5cc-8d12b95697de@I','activity':'fbb22a88-14fe-4154-b435-a4e410f78648','activityName':'拟稿','activityAlias':'','activityDescription':'','activityType':'manual','activityToken':'d5240f24-515c-46a4-a386-d7188b3bcb8e','creatorPerson':'纪桂丹@JiGuiDan@P','creatorIdentity':'纪桂丹@e868844b-bcea-4b31-8ddd-ea3becda290a@I','creatorUnit':'开发部@22@U','expired':false,'urged':false,'routeList':['5ca98a7f-8a8b-4efb-8a0f-f6051501eb34','37345194-2456-4beb-8775-3b6c3108cad0'],'routeNameList':['go','选择'],'routeOpinionList':['',''],'routeDecisionOpinionList':['',''],'routeName':'','opinion':'','modified':false,'viewed':false,'allowRapid':false,'first':true,'createTime':'2019-09-13 08:21:03','updateTime':'2019-09-13 08:21:03','sequence':'2019091308210316ff7d53-dd0e-405f-9351-845d8ed697ab'}",
      "type": "task_create",
      "consumer": "sms",
      "person": "罗晶@luojing@P",
      "consumed": false,
      "instant": "0f0e0928-98be-44d4-ab4b-2fb244520297",
      "createTime": "2019-09-13 08:21:03",
      "updateTime": "2019-09-13 08:21:03"
    },
    {
      "id": "210c7c7d-b90b-4547-aef7-02e352233b3c",
      "title": "您有新的待办:纪桂丹的变革及重大事项积分个人申报, (部门积分管理员初审,个人申报流程)",
      "body": "{'id':'bc9bca9e-f9a1-42a2-8753-0767c08c7975','job':'dda07279-8692-46ac-b175-8106f53f4172','title':'纪桂丹的变革及重大事项积分个人申报','startTime':'2019-09-13 08:21:25','startTimeMonth':'2019-09','work':'b2113d2a-3e70-4c96-bbfe-3b14f913c4a3','application':'d205e63a-126a-4344-8115-3d7b9c25e8c8','applicationName':'积分管理-流程','applicationAlias':'pointManagerProcess','process':'7201edad-d86e-4eaf-b176-ca54ce956b36','processName':'个人申报流程','processAlias':'','serial':'','person':'罗晶@luojing@P','identity':'罗晶@a553fb21-9354-4344-8eba-d8e284b7b460@I','unit':'开发部@22@U','trustIdentity':'纪桂丹@ed052254-23ae-4809-a5cc-8d12b95697de@I','activity':'4b7b363c-57e3-410e-8b2b-583719411651','activityName':'部门积分管理员初审','activityAlias':'audit','activityDescription':'','activityType':'manual','activityToken':'6c03308e-d4cd-42cf-910c-145a12ee4e2e','creatorPerson':'纪桂丹@JiGuiDan@P','creatorIdentity':'纪桂丹@ed052254-23ae-4809-a5cc-8d12b95697de@I','creatorUnit':'开发部@22@U','expired':false,'urged':false,'routeList':['b24bfcc0-2a0b-4c6e-a5ec-bdcddc5594e6','e6475ed3-31cd-4edd-b30e-522670d64d67'],'routeNameList':['送积分行为管理单位管理员复审并公示','退回拟稿人'],'routeOpinionList':['',''],'routeDecisionOpinionList':['',''],'routeName':'','opinion':'','modified':false,'viewed':false,'allowRapid':false,'first':false,'createTime':'2019-09-13 08:21:25','updateTime':'2019-09-13 08:21:25','sequence':'20190913082125bc9bca9e-f9a1-42a2-8753-0767c08c7975'}",
      "type": "task_create",
      "consumer": "sms",
      "person": "罗晶@luojing@P",
      "consumed": false,
      "instant": "ed69ece9-b194-4344-addc-a2bc4b77b574",
      "createTime": "2019-09-13 08:21:25",
      "updateTime": "2019-09-13 08:21:25"
    },
    {
      "id": "9bf0cb36-5f37-4e13-9c85-bf6724738e08",
      "title": "日程提醒",
      "body": "{'id':'42e267b5-d5c6-4b96-b0f6-7b89a6f65586','calendarId':'fa61c4e5-2424-4a89-9ada-341aaf05162c','repeatMasterId':'73d39f2d-7718-463f-9d6a-e1a90957cac4','eventType':'CAL_EVENT','title':'三国杀--兰德杯-预赛','color':'#428ffc','comment':'\r\n三国杀--兰德杯-预赛\r\n\r\n\\n','startTime':'2019-09-15 08:26:00','startTimeStr':'2019-09-15 08:26:00','endTime':'2019-09-15 23:59:00','endTimeStr':'2019-09-15 23:59:00','locationName':'三国杀--兰德杯-预赛','recurrenceRule':'FREQ=WEEKLY;UNTIL=20191005T160000Z;BYDAY=SU','alarm':true,'alarmTime':'2019-09-15 08:21:00','alarmAlready':false,'valarmTime_config':'0,0,-5,0','valarm_Summary':'日程提醒','isAllDayEvent':false,'daysOfDuration':0,'isPublic':true,'source':'PERSONAL','createPerson':'纪桂丹@JiGuiDan@P','updatePerson':'纪桂丹@JiGuiDan@P','targetType':'PERSON','participants':['纪桂丹@JiGuiDan@P','xadmin'],'manageablePersonList':['纪桂丹@JiGuiDan@P','xadmin'],'viewablePersonList':['纪桂丹@JiGuiDan@P','xadmin'],'viewableUnitList':[],'viewableGroupList':[],'createTime':'2019-09-05 08:26:50','updateTime':'2019-09-05 08:26:50','sequence':'2019090508265042e267b5-d5c6-4b96-b0f6-7b89a6f65586'}",
      "type": "calendar_alarm",
      "consumer": "sms",
      "person": "纪桂丹@JiGuiDan@P",
      "consumed": false,
      "instant": "dc8eaf90-28b6-40e0-8fcb-ca972a30c8b3",
      "createTime": "2019-09-15 08:24:54",
      "updateTime": "2019-09-15 08:24:54"
    },
    {
      "id": "1f257456-0a88-4d6b-bfe0-d8d099874bdf",
      "title": "日程提醒",
      "body": "{'id':'42e267b5-d5c6-4b96-b0f6-7b89a6f65586','calendarId':'fa61c4e5-2424-4a89-9ada-341aaf05162c','repeatMasterId':'73d39f2d-7718-463f-9d6a-e1a90957cac4','eventType':'CAL_EVENT','title':'三国杀--兰德杯-预赛','color':'#428ffc','comment':'\r\n三国杀--兰德杯-预赛\r\n\r\n\\n','startTime':'2019-09-15 08:26:00','startTimeStr':'2019-09-15 08:26:00','endTime':'2019-09-15 23:59:00','endTimeStr':'2019-09-15 23:59:00','locationName':'三国杀--兰德杯-预赛','recurrenceRule':'FREQ=WEEKLY;UNTIL=20191005T160000Z;BYDAY=SU','alarm':true,'alarmTime':'2019-09-15 08:21:00','alarmAlready':false,'valarmTime_config':'0,0,-5,0','valarm_Summary':'日程提醒','isAllDayEvent':false,'daysOfDuration':0,'isPublic':true,'source':'PERSONAL','createPerson':'纪桂丹@JiGuiDan@P','updatePerson':'纪桂丹@JiGuiDan@P','targetType':'PERSON','participants':['纪桂丹@JiGuiDan@P','xadmin'],'manageablePersonList':['纪桂丹@JiGuiDan@P','xadmin'],'viewablePersonList':['纪桂丹@JiGuiDan@P','xadmin'],'viewableUnitList':[],'viewableGroupList':[],'createTime':'2019-09-05 08:26:50','updateTime':'2019-09-05 08:26:50','sequence':'2019090508265042e267b5-d5c6-4b96-b0f6-7b89a6f65586'}",
      "type": "calendar_alarm",
      "consumer": "sms",
      "person": "xadmin",
      "consumed": false,
      "instant": "b2caf573-7933-483c-a3de-7446e37a8cb2",
      "createTime": "2019-09-15 08:24:54",
      "updateTime": "2019-09-15 08:24:54"
    }
  ],
  "message": "",
  "date": "2019-09-20 13:38:43",
  "spent": 12,
  "size": 5,
  "count": 0,
  "position": 0
}

3、消费后,需要由自定义程序将消息主动标识为已消费,否则将一直存在于数据库中,每次查询都会将消息重新查询出来:

更新(消费)消息服务地址:jaxrs/consume/{id}/type/{type}

参数说明:

id - 需要标识的消息ID

type - 需要标识的消息类别(在查询时返回数据中的type值)

服务地址示例: http://o2server_host:20020/x_message_assemble_communicate/jaxrs/consume/1f257456-0a88-4d6b-bfe0-d8d099874bdf/type/calendar_alarm

返回数据格式:

{
  "type": "success",
  "data": {
    "value": true
  },
  "message": "",
  "date": "2019-09-20 13:59:34",
  "spent": 12,
  "size": -1,
  "count": 0,
  "position": 0
}

五、消息信息表自动清理相关设置

参数说明:

enable - 是否启用 cron - 定时cron表达式 keep - 消息保留天数

"clean": {
    "enable": true,
    "cron": "30 30 6 * * ?",
    "keep": 7.0,
    "###enable": "是否启用###",
    "###cron": "定时cron表达式###",
    "###keep": "消息保留天数###"
}

Previous非对称集群配置Next平台审计日志配置

Last updated 5 years ago

Was this helpful?

服务地址示例:

http://o2server_host:20020/x_message_assemble_communicate/jest/index.html
http://o2server_host:20020/x_message_assemble_communicate/jaxrs/consume/list/sms/count/10
http://o2server_host:20020/x_message_assemble_communicate/jest/index.html
消息管理服务API
消息管理服务API