提供一组消息记录的操作服务接口,客户端应用通过本组服务接口可以实现对推送到用户客户端的消息记录的查询、统计和删除等操作。
绑定push通道
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/uc/bindPushChannel | 1.0.2 | 绑定push通道 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
deviceId | String | 是 | push通道的deviceId(消息推送SDK初始化时,根据utdid生成) |
deviceType | String | 是 | 设备类型:iOS或Android |
返回参数
无业务返回参数
示例
- 请求示例
{ "request": { "iotToken": "109049c80xxxxxxxx6f62e29a3ba", "apiVer": "1.0.2" }, "id": 1508212818676, "params": { "deviceId":"xxxx", "deviceType":"iOS" }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "id":"bb179e80-39fd-xxxx-xxxx-48ca87a3f5c5" }
- 异常返回示例
{{ "code":2062, "id":"4fa207ca-fffd-xxxx-xxxx-e6f7ca6c99c3", "localizedMsg":"请求错误", "message":"identityId not exist" }
解绑push通道
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/uc/unbindPushChannel | 1.0.2 | 绑定push通道 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
deviceId | String | 是 | push通道的deviceId |
返回参数
无业务返回参数
示例
- 请求示例
{ "request": { "iotToken": "109049c80xxxxxxxx5f6f62e29a3ba", "apiVer": "1.0.2" }, "id": 1508212818676, "params": { "deviceId":"xxxx" }, "version": "1.0" }
- 正常返回示例
{ "code": 200, "id":"bb179e80-39fd-xxxx-xxxx-48ca87a3f5c5" }
- 异常返回示例
{ "code":2062, "id":"4fa207ca-fffd-xxxx-xxxx-e6f7ca6c99c3", "localizedMsg":"请求错误", "message":"identityId not exist" }
统计用户的消息记录数量
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/record/messagetype/count | 1.0.6 | 统计当前用户的消息记录数量 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
字段名 | 子键 | 类型 | 是否必填 | 备注 |
---|---|---|---|---|
requestDTO | JSON | 是 | ||
startCreateTime | Date | 否 | 查询开始时间 | |
endCreateTime | Date | 否 | 查询结束时间 | |
messageType | String | 否 | 消息类型,取值为device表示设备;announcement表示通知;share表示分享。如果该参数为空,则查询所有类型的数据 | |
type | String | 是 | 推送类型
|
|
maxId | Long | 否 | 查询条件:id <maxId | |
minId | Long | 否 | 查询条件:id >minId | |
isRead | Integer | 否 | 0: 未读 1:已读 | |
eventId | String | 否 | 告警事件ID(由拉取设备对应的告警配置列表接口可以获得) | |
iotId | String | 否 | 设备ID |
返回参数
字段名 | 类型 | 描述 |
---|---|---|
share | Integer | 分享消息数量 |
device | Integer | 设备消息数 |
announcement | Integer | 通知消息数 |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.1", "iotToken": "token" }, "params": { "requestDTO": { "type": "NOTICE" } } }
- 正常返回示例
{ "code": 200, "data": { "share": 6, "device": 0, "announcement": 0 }, "message": "success" }
查询用户的消息记录
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/query/push/message | 1.0.0 | 调用该接口查询用户的消息推送记录。 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
/message/center/push/record/query
和/message/center/record/query
的业务逻辑,并提升了性能,推荐您使用新接口。如果您需要继续使用历史接口,请参见历史文档。
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
nextToken | Integer | 是 | 推送记录查询的偏移量,最小值为0。 |
maxResults | Integer | 是 | 每次查询的条数,最大值为100。 |
type | String | 是 | 推送类型,可取值:NOTICE表示弹窗通知;MESSAGE表示消息。 |
startCreateTime | Long | 否 | 查询推送消息的起始时间,时间戳(毫秒)。 |
endCreateTime | Long | 否 | 查询推送消息的结束时间,时间戳(毫秒)。 |
sortType | Integer | 否 | 查询结果排序类型,0表示按照消息创建时间倒序显示;1表示按照消息创建时间正序显示。 |
messageType | String | 否 | 消息类型,可取值:share表示设备分享;device表示设备告警;announcement表示公告。 |
iotIds | JSONArray | 否 | 设备ID的列表。 |
id | Long | 否 | 主键ID,每条消息对应唯一的主键ID。 |
isRead | Integer | 否 | 消息状态,0表示查询未读消息;null表示查询所有消息。 |
返回参数
参数 | 子参数 | 二级子参数 | 类型 | 描述 |
---|---|---|---|---|
nextToken | Integer | 返回本次请求读取到的推送记录偏移量,最小值为0。 | ||
nextToken | Integer |
本次返回的最大记录条数。 |
||
data | JSON |
返回的业务参数。 |
||
id | Long |
主键ID,每条消息对应唯一主键ID。 |
||
keyId | String |
主键的string格式。 |
||
gmtCreate | Long |
消息创建的时间。 |
||
gmtModified | Long |
消息记录的修改时间。 |
||
messageId | String |
消息ID,由消息通道返回的ID。 |
||
type | String |
推送类型,可取值:NOTICE表示弹窗通知;MESSAGE表示消息。 |
||
deviceType | String |
设备类型,可取值:iOS、Android、ALL。 |
||
target | String |
推送目标,可取值:ACCOUNT表示用户;DEVICE表示设备。 |
||
targetValue | String |
推送目标对应的ID。 |
||
title | String |
返回消息的标题。 |
||
body | String |
返回消息的内容。 |
||
isRead | Integer | 消息状态,0表示查询未读消息;null表示查询所有消息。 | ||
messageType | String |
消息类型,可取值:share表示设备分享;device表示设备告警;announcement表示公告。 |
||
tag | Integer |
返回消息的标签。 |
||
eventId | String |
触发消息的事件ID。 |
||
iotId | String |
设备ID,生活物联网平台为设备颁发的ID,设备的唯一标识符。 |
||
gatewayId | String |
网关设备ID。 |
||
extData | JSON |
扩展参数,由业务自定义的内容。 |
||
iotId | String |
设备ID。 |
||
productKey | String |
产品的Key,设备证书信息之一。创建产品时,生活物联网平台为该产品颁发的全局唯一标识。 |
||
productName | String |
产品名称 |
||
categoryId | Long |
产品分类ID。 |
||
icon | String |
消息对应的图标地址。 |
||
nickName | String |
设备的昵称或别名。 |
||
extParam | String |
其他自定义扩展参数。 |
示例
- 请求示例
{ "id": "1509086454120", "version": "1.0", "request": { "apiVer": "1.0.0", "iotToken": "token" }, "params": { "type": "NOTICE", "nextToken": 0, "maxResults": 20 "startCreateTime":1591268727000, "endCreateTime":1591269731000, "messageType":"device" } }
- 正常返回示例
{ "code":200, "data":{ "data":[ { "body":"我的摄像头检测到有人活动", "deviceType":"ALL", "eventId":"28086", "extData":{ "categoryId":148, "icon":"http://iotx-paas-admin.oss-cn-shanghai.aliyuncs.com/15xxx73.png", "iotId":"jJGMtgUxxxxxxgp000100", "nickName":"我的摄像头", "productKey":"a1zxxxxquML", "productName":"CAMERA_xxxxx00" }, "gmtCreate":1591268727000, "gmtModified":1591270183000, "id":1000000930, "iotId":"jJGMtgUxxxxxxgp000100", "isRead":0, "keyId":"1000000930", "messageId":"-1", "messageType":"device", "tag":0, "target":"ACCOUNT", "targetValue":"503dopcccc7xxxxf812e6304e73759", "title":"有人活动", "type":"NOTICE" } ], "maxResults":1, "nextToken":0 }, "message":"success" }
删除用户的消息记录
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/record/delete | 1.0.6 | 删除用户的消息记录 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
/message/center/record/delete/physical
的业务逻辑,推荐您使用本接口。如果您需要继续使用历史接口,请参见历史文档。
请求参数
字段名 | 子键 | 类型 | 是否必填 | 备注 |
---|---|---|---|---|
requestDTO | JSON | |||
type | String | 是 | 推送类型
|
|
messageType | String | 否 | 消息类型,取值为device表示设备;announcement表示通知;share表示分享。如果该参数为空,则查询所有类型的数据 | |
id | Long | 否 | 消息记录id | |
maxId | Long | 否 | 删除条件:id < maxId | |
minId | Long | 否 | 删除条件:id > minId |
返回参数
无业务返回参数
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.1", "iotToken": "token" }, "params": { "requestDTO": { "type": "NOTICE" } } }
- 正常返回示例
{ "code": 200, "data": 10, "message": "success" }
更新用户的消息记录
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/record/modify | 1.0.6 | 更新当前用户的消息记录,目前仅支持更新只读状态 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
字段名 | 子键 | 类型 | 是否必填 | 备注 |
---|---|---|---|---|
requestDTO | JSON | 是 | ||
id | Long | 否 | 消息记录id | |
type | String | 是 | 推送类型
|
|
messageType | String | 否 | 消息类型,取值为device表示设备;announcement表示通知;share表示分享。如果该参数为空,则查询所有类型的数据 | |
maxId | Long | 否 | 查询条件:id <maxId | |
minId | Long | 否 | 查询条件:id >minId | |
isRead | Integer | 否 | 需要更新的阅读状态, 0:未读; 1:已读 |
返回参数
无业务返回参数
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.1", "iotToken": "token" }, "params": { "requestDTO": { "type": "NOTICE" } } }
- 正常返回示例
{ "code": 200, "data": 5, "message": "success" }
设备所有者设置共享设备的告警提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/notice/sharing/config/set | 1.0.0 | 设备所有者设置共享设备的告警提醒配置 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
targetId | String | 是 | 被分享者身份ID |
eventId | String | 是 | 告警事件ID |
noticeEnabled | Boolean | 是 | 消息推送提醒开关, true表示开启; false表示关闭 |
返回参数
无业务返回参数
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.0", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2xxxx0803d10", "targetId":"xxxx", "eventId" : "18012", "noticeEnabled" : false } }
- 正常返回示例
{ "code": 200, "message": "success", "data": null }
拉取指定用户的共享设备的告警消息开关配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/notice/sharing/config/list | 1.0.0 | 拉取指定设备对应的告警提醒配置列表,只有设备所有者才能使用这个接口,且只有配置为进行App应用推送的告警信息才会被获取到配置列表 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
identityId | String | 是 | 被分享者的统一身份ID |
返回参数
参数 | 类型 | 必有 | 描述 |
---|---|---|---|
alarmNotices | List | 否 | 告警提醒配置列表 |
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
eventId | String | 是 | 告警事件ID |
eventName | String | 是 | 告警事件名称 |
noticeEnabled | Boolean | 是 | 消息推送提醒开关
true:开启 false: 关闭 如果用户之前从未配置过告警提醒配置,则默认返回true |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.0", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2xxxx010803d10", "identityId": "xxxx" } }
- 正常返回示例
{ "code": 200, "message": "", "data": [ { "eventId" : "18012", "eventName": "开门提醒", "noticeEnabled" : true }, { "eventId" : "18013", "eventName": "劫持报警", "noticeEnabled" : false } ] }
拉取设备对应的告警配置列表
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/notice/list | 1.0.5 | 拉取指定设备对应的告警提醒配置列表(只有配置为进行app应用推送的告警信息才会被获取到) | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
返回参数
参数 | 类型 | 必有 | 描述 |
---|---|---|---|
alarmNotices | List | 否 | 告警提醒配置列表 |
alarmNotices
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
eventId | String | 是 | 告警事件ID |
eventName | String | 是 | 告警事件名称 |
noticeEnabled | Boolean | 是 | 消息推送提醒开关
true:开启 false: 关闭 如果用户之前从未配置过告警提醒配置,则默认返回true |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2CExxxxxxxxH0010803d10" } }
- 正常返回示例
{ "code": 200, "message": "", "data": [ { "eventId" : "18012", "eventName": "开门提醒", "noticeEnabled" : true }, { "eventId" : "18013", "eventName": "劫持报警", "noticeEnabled" : false } ] }
设置设备告警提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/notice/set | 1.0.5 | 配置指定设备的某个告警提醒的开关。无论当前登录用户是设备管理员还是非管理员,该接口仅对用户自身生效 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
eventId | String | 是 | 告警事件ID |
noticeEnabled | Boolean | 是 | 消息推送提醒开关
true:开启 false: 关闭 如果用户之前从未配置过告警提醒配置,则默认返回true |
返回参数
无业务返回参数示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2Cxxxxxxxx10803d10", "eventId" : "18012", "noticeEnabled" : false } }
- 正常返回示例
{ "code": 200, "message": "success", "data": null }
设置设备全量告警的提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/global/notice/set | 1.0.7 | 设置指定设备上的所有告警提醒条目的状态。 例如,一个设备上共有10条告警提醒,调用本接口传入true或false,则所有的10条告警提醒都会被设置为true或false。
该设置不包括以后新增的告警,即在此处设置了false后,又新增了一条告警,则对应的提醒默认仍为true |
是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
noticeMode | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
返回参数
无业务返回参数示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2Cxxxxxxxx03d10", "noticeMode" : "MESSAGE_AND_NOTICE" } }
- 正常返回示例
{ "code": 200, "message": "success", "data": null }
获取设备全量告警的提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/message/center/device/global/notice/get | 1.0.7 | 获取设备告警全局提醒配置 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
iotId | String | 是 | 设备ID |
返回参数
参数 | 类型 | 必有 | 描述 |
---|---|---|---|
data | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "iotId" : "ChFrkX2Cxxxxxxxx03d10" } }
- 正常返回示例
{ "code": 200, "message": "success", "data": "MESSAGE_AND_NOTICE" }
设置用户维度的设备告警提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/living/message/device/notice/user/config/set | 1.0.0 | 设置用户维度的设备告警提醒配置。设置后将对用户下所有设备的告警提醒生效。 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
noticeMode | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
返回参数
无业务返回参数示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "noticeMode" : "MESSAGE_AND_NOTICE" } }
- 正常返回示例
{ "code": 200, "message": "success", "data": null }
获取用户维度的设备告警的提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/living/message/device/notice/user/config/get | 1.0.0 | 获取用户维度的设备告警提醒配置 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
无业务请求参数返回参数
参数 | 类型 | 必有 | 描述 |
---|---|---|---|
data | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { } }
- 正常返回示例
{ "code": 200, "message": "success", "data": "MESSAGE_AND_NOTICE" }
设置共享设备全量告警的提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/living/device/global/notice/sharing/config/set | 1.0.0 | 设备所有者设置共享设备的告警提醒配置。 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
targetIdentityId | String | 是 | 被分享者的统一身份ID |
iotId | String | 是 | 设备ID |
noticeMode | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
返回参数
无业务返回参数示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "targetIdentityId": "xxx", "iotId" : "ChFrkX2Cxxxxxxxx03d10", "noticeMode" : "MESSAGE_AND_NOTICE" } }
- 正常返回示例
{ "code": 200, "message": "success", "data": null }
获取共享设备全量告警的提醒配置
定义描述
path | 版本 | 描述 | 是否需要用户身份的鉴权 |
---|---|---|---|
/living/device/global/notice/sharing/config/get | 1.0.0 | 获取共享设备告警全局提醒配置 | 是,客户端SDK需启用身份的鉴权,进行身份认证 |
请求参数
参数 | 类型 | 必填 | 描述 |
---|---|---|---|
targetIdentityId | String | 是 | 被分享者的统一身份ID |
iotId | String | 是 | 设备ID |
返回参数
参数 | 类型 | 必有 | 描述 |
---|---|---|---|
data | String | 是 | 消息推送提醒模式
NONE:关闭 MESSAGE: 仅能查询消息,不会推送消息弹窗 MESSAGE_AND_NOTICE: 既能查询消息, 也会推送消息弹窗 如果用户之前从未配置过告警提醒配置,则默认为 MESSAGE_AND_NOTICE |
示例
- 请求示例
{ "id": "1509086454180", "version": "1.0", "request": { "apiVer": "1.0.5", "iotToken": "token" }, "params": { "targetIdentityId": "xxx", "iotId" : "ChFrkX2Cxxxxxxxx03d10" } }
- 正常返回示例
{ "code": 200, "message": "success", "data": "MESSAGE_AND_NOTICE" }