292  
查询码:00000741
概要设计-消息中心-BIM运维平台V3.3报警中心
作者: 戴海林 于 2020年04月24日 发布在分类 / 物联网组 / 公司消息中心 / 项目管理 下,并于 2020年05月20日 编辑

概要设计-消息中心-BIM运维平台V3.3报警中心

重要(红色代表新增、修改;绿色代表删除)

一、报警配置

提供报警类别、报警级别新增、查询、修改、删除的接口

1.1 报警级别新增、查询、修改、删除的接口     

    采用现有消息中心接口:(7. 报警级别管理接口

1.2 报警类型新增、查询、修改、删除的接口

 模型调整:

    粘贴图片


接口调整

报警类型 

  • 新增修改、入参增加 一级分类编码、一级分类名称
  • 查询、出参增加 一级分类编码、一级分类名称   
  • 规则配置 报警类型下拉列表 返回2级列表
  • 规则配置 保存 入参增加 一级分类

二、报警记录状态修改

2.1 模型调整

            粘贴图片

调整为:

0未处理;1处理中;2已处理;3关闭


2.2、API接口定义

名称


  消息修改接口


类型

P OST

地址

http://xxxx/messageIn/update 

方向

参数

类型

是否必填

备注

In

id

String

N

报警消息 id

In
templateCode String N 模板编码(物联网误报使用)
In devCode String
N 设备编码(物联网误报使用)
In alarmMeasurePoint
String
N 报警测点(物联网误报使用)

In

status

S tring

N

报警消息 发送状态

0待发送

1队列中

2已发送

In

workOrderId

String

N

工单id

In

remark

String

N

备注信息

In

actionType

String

N

报警处理状态 

0未处理;1处理中;2已处理;3关闭

In

processingMethod  

String
N

报警处理方法 

0 误报;1 工单;2 其它;


In

actionUser

S tring

N

处理 人guid

In

actionUserName

String

N

处理人姓名

In

actionTime

String

N

处理 时间

out

result

String

Y

操作结果, 成功:success ;失败 :fail

out

errorMsg

String

N

错误提示信息

参数示例

In

 

O ut

{

"result":"success",

"errorMsg":""

}


三、消息上报和CMQ推送

物联网等上报


报警上报接口(不支持模板)

  1.     通过项目ID + 报警类型(二级报警类型:唯一) 找到规则。
  2.     通过规则 找到 发送人员信息。
  3.     发送消息。

报警上报接口(支持模板)

  1.     通过模板编码 找到规则。
  2.     通过规则 找到 发送人员信息。
  3.     发送消息。

推送到BIM

消息上报和 消息处理状态 变化 均需要推送

名称

C MQ 推送公司BIM实时 报警消息

地址

 

方式

CMQ队列 推送

输出参数

队列

bim_queue

消息体

json 格式

消息 体说明

参数名

类型

必填(Y /N

备注

id

String

N

报警 消息id

devCode

String

N

设备 编号

messageInfo

String

N

消息 内容

location

S tring

N

位置 信息

alarmTypeCodeGradeOne

String

N

报警类型一级分类编码

alarm Type

String

N

报警消息 类型

alarm Level

S tring

N

报警 消息 级别

alarm Time

String

N

报警消息 接收时间

source

S tring

N

消息 来源

actionType

String

N

报警消息 状态

remark

S tring

N

备注

orderId

String

N

工单id

cameraIds

List<String>

N

视频 地址列表

pictureUrls

List<String>

N

图片 地址列表

appendData

String

N

额外透传字段



四、查询与统计

4.1分页获取报警信息接口

名称

分页获取报警信息

地址

http://xxxx/messageIn/alarmMsgByPage

方式

POST

传入参数

参数名

类型

必填(Y /N

备注

appkey

String

Y

类似用户ID ,唯一标识第三方应用,方便平台 HTTP-OpenAPI 统计与维护

time

String

Y

时间戳是指UTC 时间 1970 01 01 00 00 00 ( 北京时间 1970 01 01 08 00 00 ) 起至现在的总毫秒数。服务端需要校验请求的时效性(服务端只处理有效时间范围内的请求,有效时间默认为 5 分钟)

project Code

String

Y

项目编号,根据项目验证是否有该项目的接口权限,平台级项目编号为空

devCode

String

N

设备 编号

alarmStatus

String

N

状态 【全部(默认, 不传值 全部,下同 )、未处理:0、处理中:1】


alarmType

String

N

类型【全部、设备报警:0、消防报警:1、安防报警:2】

actionType
String N

报警处理状态 

0未处理;1处理中;2已处理;3关闭

alarmTypeCodeGradeOne
String N

报警消息 类型编码 (一级分类

设备报警:1、

安防报警:2  

消防报警:3、

能源报警:4、

环境报警:5


alarmLevel

String

N

级别【全部、一般: 101 、紧急: 102 、危急: 103

startTime

String

N

报警 记录 时间查询:开始 时间
例:2019-10-31 11:05:03,

end Time

String

N

报警 记录 时间查询: 结束时间

pageNo

String

N

页码, 默认为 1

pageSize

String

N

每页 展示条数 默认为 10

输出参数

参数名

类型

必填(Y /N

备注

ErrorCode

String

Y

 0:正确,其它:错误

Data

Object

Y

数据结果

其中 Data 的参数

参数名

类型

必填(Y /N

备注

totalNumber

I nt

Y

总记录

alarmList

L ist

Y

报警信息 列表

alarmList 实体属性说明:

id

S tring

Y

消息主键

messageInfo

S tring

N

报警内容

devCode

S tring

N

设备编号

location

S tring

N

位置 信息 (大部分 报警消息 没有 这个信息 )

errorType

S tring

N

报警类型【同 输入参数

alarmTypeCodeGradeOne
String N 报警消息 类型编码 (一级分类)

errorLevel

S tring

N

报警级别【同 输入参数

errorTime

S tring

N

错误时间

errorStatus

String

N

报警 状态 【同 输入参数

actionType String
N

0未处理;1处理中;2已处理;3关闭

4.2消息管理- -消息详情接口

名称

消息详情查询接口

地址

http://xxxx/messageIn/info

方式

GET

传入参数

参数名

类型

必填(Y /N)

备注

id

String

Y

报警 消息id

userId

String

N

报警消息 接收人 ID

输入参数示例

https://xxxxxx/messageIn/info?id=12312312

输出参数

参数名

类型

必填(Y /N

备注

ErrorCode

String

Y

 0:正确,其它:错误

Data

Object

Y

数据结果

其中 Data 的参数

参数名

类型

必填(Y /N

备注

rowNum

String

N

行号

receivedTime

S tring

N

消息 接收时间

sendTime

String

N

消息 发送时间

appKey

S tring

N

第三方 应用唯一 标识

appKeyString

String

N

第三方 应用汉字

title

S tring

N

标题

type

String

N

消息 类型   100 报警 300通知

typeString

S tring

N

消息 类型 汉字

content

String

N

消息 内容

sendTo

S tring

N

消息接收

ruleId

String

N

消息 规则id

projectId

S tring

N

项目 id

projectName

String

N

项目 名称

projectCode

S tring

N

项目 编号

status

String

N

消息状态

0:待发送

1:成功

2:失败

sender

S tring

N

消息 来源

senderId

String

N

发送人 id

templateId

S tring

N

模板 id

msgCode

String

N

消息 编号

isSendNow

S tring

N

是否为即时发送  0即时发送 1定时发送

devCode

String

N

设备 编号

alarmLevel

S tring

N

报警 级别

workOrderId

String

N

关联工单 ID

remark

S tring

N

备注

actionType

String

N

报警处理状态 

0未处理;1处理中;2已处理;3关闭


limitTime

S tring

N

超时 时间

actionUser

String

N

处理人

actionTime

S tring

N

处理 时间

actionUserName

String

N

处理人姓名

endTime

S tring

N

结束 时间

alarmLevelString

String

N

报警 级别汉字

errorTypeString

S tring

N

报警 类型汉字

alarmTypeCodeGradeOne String N 报警消息 类型编码 (一级分类)

uuid

String

N

微瓴视频 UUID,用于拉取视频流

location

S tring

N

位置 信息

bakDevcode

String

N

25位 标准编码 (只 针对长安中心调用时使用 )

paramJson

S tring

N

外部接口参数 json

eventTime

String

N

事件 发生时间

4.3 根据时间范围获取新增报警数量


接口不变

实现逻辑: 0未处理;1处理中;2已处理;3关闭

0 代表新增。


4.4  根据时间范围获取报警类型数量统计

名称

根据 时间范围获取报警类型数量统计

类型

P OST

地址

http://xxxx/messageIn/ alarmTypeStatisticsByTime

方向

参数  

类型

是否必填

备注

In

appkey

String

Y

运营平台HTTP-OpenAPI提供给第三方接入的唯一标识符参数,同时与secret值用来做签名认证

In

p rojectCode

S tring

N

项目编号

In

time

String

Y

第三方应用发起请求时的时间戳采用UTC时间戳,自1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总毫秒数

In

alarmLevel

String

Y

级别【全部、一般: 101 、紧急: 102 、危急: 103

In alarmTypeCodeGradeOne String Y 报警消息 类型编码 (一级分类)

In

startTime

String

Y

开始时间(yyyy-MM-dd HH:mm:ss)

I n

endTime

String

Y

结束 时间(yyyy-MM-dd HH:mm:ss)

out

errorCode

String

Y

错误编码

out

errorMessage

String

Y

错误提示信息

out

D ata

String

Y

返回 参数json

out alarmCount int Y 报警次数

out

deviceAlarmCount

int

Y

设备 报警次数

out

fireAlarmCount

int

Y

消防 报警次数

out

securityAlarmCount

int

Y

安防 报警次数



五、其它

4.1 支持报警消息状态更新

1 运营平台和BIM通过 报警消息ID,更新状态。

2 物联网通过(设备25位编码+模板编码+报警测点),更新状态。

3 状态更新后,推送消息到BIM,运营平台。


粘贴图片



    方案: 

1 报警消息上报接口 入参增加报警测点


名称

消息中心报警上报接口

类型

P OST

地址

http://njrgrj.imwork.net:8826/MessageCenter/ s endMessage ?token=XXXXXXXXXXXXX

方向

参数

类型

是否必填

备注

In

app K ey

String

Y

运营平台HTTP-OpenAPI提供给第三方接入的唯一标识符参数,同时与secret值用来做签名认证

In

templateCode

String

Y

模板 编码(业务标识:包含了项目编码+报警类型+接收人员+接收方式)

In

templateParam

J son

N

提供给 模板使用的键值对

In

d ev C ode

String

N

设备编码,2 5 位标准编码

In

alarmL evel

S tring

Y

报警等级 103:高,102:中,101:低

I n

alarmT ime

String

Y

故障时间,时间格式Y YYY-MM-DD HH :mm : ss

I n

appendData

String

N

透传给第三方的额外字段

In

alarmMeasurePoint

String

N

报警测点(物联网误报使用)

In

token

S tring

Y

签名值,运营平台HTTP-OpenAPI服务端用来做token校验的参数 ,  不拼接在POST数据的JSON串上 生成后把toke参数及值拼接在POST请求URL后面即可

out

errorCode

String

Y

错误编码,详情见附件1

out

errorMessage

String

Y

错误提示信息

参数示例

In

{

"app K ey":"f8524632",

" requestT ime ":"1447756521042",

     " templateCode ": "T20200509154212191",

" template P aram":  {

"K ey1 " : " value1 " ,

" Key2 " : " value2 " ,

     "ItemList":[

            {

             "IKey1":"value1",

             "Ikey2":"value2"

            },

           {

             "IKey1":"value3",

             "Ikey2":"value4"

            },

]

},

" d ev C ode":   "0020204002000301010010001",

" alarmT ime":   " 2 018 - 12 - 01 09 : 00 : 00",

" alarmL evel":   " 1 03",

" appendData ":   " 设备故障无法运行 "

}

O ut

{

"errorCode":0,

"errorMessage":""

}

T oken规则

token=MD5(请求URI+参数串+secret);参数串包括:接口业务参数、必传参数appkey和time。

注:加密的字符串统一采用UTF-8编码,结果为32位大写

token生成后把toke参数及值拼接在POST请求URL后面即可。

注:不是拼接在POST数据的JSON串上。

Appkey secret 由运营平台进行提供

目前 可用 值:

Appkey lt0606lt
secret 51131c8f13e249738b13c0f19e502763

 



 推荐知识

 历史版本

修改日期 修改人 备注
2020-05-20 14:09:48[当前版本] 戴海林 报警消息状态定义修改
2020-05-15 11:22:03 戴海林 其他原因...
2020-05-12 17:52:46 戴海林 格式调整
2020-05-12 17:39:09 戴海林 去除requestTime

 附件

附件类型

PNGPNG

知识分享平台 -V 4.8.7 -wcp