用户通知
Note
该接口为用户API(地址为user-openapi.hekr.me)
查询用户通知
Tip
用户调用该接口会将通知标记为已读,如果拉取消息却不想设置为已读,则使用参数 markRead=false
,具体参数如下:
GET /api/v1/notification?type=WARNING HTTP/1.1
Accept-Language: zh-CN
Authorization: Bearer {JWT_TOKEN}
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
{
"content": [
{
"id": "591c4bdae4b0b5834f1675ea",
"isRead": true,
"reportTime": 1495026650733,
"subject": "subject",
"content": "foo",
"sender": {
"type": "device",
"ppk": {
"pid": "01240737641",
"mid": "IyFauxgNdjFs"
},
"devTid": "01_0d1c17d1007d16cdb7c4160d41e04",
"subDevTid": null
},
"data": {
"cmdId": 1,
"light": 2
}
}
],
"last": false,
"totalPages": 38,
"totalElements": 38,
"sort": [
{
"direction": "DESC",
"property": "reportTime",
"ignoreCase": false,
"nullHandling": "NATIVE",
"ascending": false
}
],
"first": true,
"numberOfElements": 1,
"size": 1,
"number": 0
}
请求参数
参数 |
类型 |
是否必须 |
默认 |
含义 |
type |
String |
false |
|
通知类型(String), 可取值 [WARNING, INFO ] |
devTid |
String |
false |
|
设备devTid(deprecated,请使用设备唯一的ctrlKey) |
ctrlKey |
String |
false |
|
设备ctrlKey(设备唯一ID) 如果指定该参数,没有指定 type,返回默认级别为 WARNING的消息 |
subDevTid |
String |
false |
|
子设备ID |
startTime |
String |
false |
|
查询起始时间 yyyy-MM-ddTHH:mm:ss.SSSZ 例如 2001-07-04T12:08:56.235-0700 |
endTime |
String |
false |
|
查询结束时间 yyyy-MM-ddTHH:mm:ss.SSSZ 例如 2001-07-04T12:08:56.235-0700 |
page |
Integer |
false |
0 |
第几页(从0开始) |
size |
Integer |
false |
20 |
每页多少条记录 |
markRead |
Boolean |
false |
true |
是否将拉取到的消息标记为已读 |
sort |
String |
false |
reportTime,DESC |
排序方法,例如sort=foo 按foo升序,sort=foo,DESC 按foo倒序 |
请求头
参数 |
类型 |
是否必须 |
默认 |
含义 |
Accept-Language |
String |
false |
en |
客户端Langulage-Tag,例如zh-CN、en-US |
返回体
参数 |
含义 |
isRead |
是否已读,调用该查询接口后将会标记告警为已读 |
reportTime |
告警上报(产生)UNIX 毫秒时间戳 |
subject |
通知标题 |
content |
通知内容 |
data |
额外数据(厂家自定义上报数据) |
sender.type |
消息来源类型,设备告警(查询时指定type=WARNING) 只可能是Device |
sender.devTid |
设备devTid |
sender.subDevTid |
子设备subDevTid |
sender.ppk.pid |
设备所属厂家的pid |
sender.ppk.mid |
设备所属产品的mid |
删除用户通知
DELETE /api/v1/notification/{ids} HTTP/1.1
Authorization: Bearer {JWT_TOKEN}
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
请求参数
参数 |
类型 |
是否必须 |
默认 |
含义 |
ids |
String |
true |
|
需要删除的通知id,指定多个时以","分隔 |
删除用户通知2
删除某个设备的所有消息可以调用DELETE /api/v1/notification?ctrlKey={ctrlKey}
ctrlKey 是设备唯一ID,
网关子设备设备可以调用DELETE /api/v1/notification?ctrlKey={ctrlKey}&subDevTid={subDevTid}
DELETE /api/v1/notification HTTP/1.1
Authorization: Bearer {JWT_TOKEN}
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
请求参数
参数 |
类型 |
是否必须 |
默认 |
含义 |
type |
String |
false |
|
通知类型(String), 可取值 [ WARNING, INFO ] |
devTid |
String |
false |
|
设备devTid(deprecated, 请使用设备唯一的ctrlKey) |
ctrlKey |
String |
false |
|
设备ctrlKey(设备唯一ID) |
subDevTid |
String |
false |
|
子设备ID |
标记消息为已读
PATCH /api/v1/notification/{ids} HTTP/1.1
Authorization: Bearer {JWT_TOKEN}
HTTP/1.1 200 OK
Content-Type: application/json;charset=UTF-8
请求参数
参数 |
类型 |
是否必须 |
默认 |
含义 |
ids |
String |
true |
|
需要标记为已读通知的id,指定多个时以","分隔 |