getCloudRecords: Query device cloud video clips in reverse order
getCloudRecords: Query device cloud video clips in reverse order
Function details
Query all video records according to conditions (display in reverse order).
Request address
https://openapi-[DataCenter].easy4ip.com/openapi/getCloudRecords
Minimum permissions required for sub-account token request
"Permission":"RecordReplay" "Resource":"cam:serial number:channel number"
Incoming parameter description
| Parameter name | Parameter type | Required or not | Default value | Legal value | Parameter description |
|---|---|---|---|---|---|
| token | String | Yes | Administrator or sub-account accessToken | ||
| deviceId | String | Yes | Device serial number | ||
| channelId | String | Yes | Channel ID | ||
| beginTime | String | Yes | Start time, yyyy-MM-dd HH:mm:ss | ||
| endTime | String | Yes | End time, yyyy-MM-dd HH:mm:ss | ||
| count | Long | Yes | Number of pagination queries,Max 30 at a time | ||
| cloudType | String | no | video: video recording; snapshot: snapshot recording. | recording type to query. Default value is video |
Query Strategy:
Sort the cloud video clips in descending order according to the begin and end time, and return the cloud video clip information of the previous count.
In the next query, you can continue to query forward with the minimum beginTime of the previous video clip as an input parameter.
Example:Traverse and query the video clip information from 10:00:00 of 2021-12-01 to 11:00:00 of 2021-12-01.
step 1: Set beginTime = 2021-12-01 10:00:00, endTime = 2021-12-01 11:00:00, count = 30, call getCloudRecords, and the platform returns 30 video clips.
step 2: Take the minimum beginTime(2021-12-01 10:30:00) of the video clip as the endTime input parameter for the next query, continue to call getCloudRecords, and cycle this operation.
step 3: When the minimum beginTime of video clips is less than or equal to the query begin time, or the number of video clips returned by getCloudRecords is less than the count value, the traversal can be considered to be completed.
Sample input
{
"id":"d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"system":{
"ver":"1.0",
"appId":"lcdxxxxxxxxx",
"sign":"74bc756ebd53e9eef2836f8cf1730c10",
"time":1599031074,
"nonce":"8ec8a7bd1d1c95420de20d92422d457d"
},
"params":{
"token":"At_12345678901234567890123456789012",
"deviceId":"TESTQWERXXXX",
"channelId":"0",
"beginTime":"2016-05-19 00:00:00",
"endTime":"2016-05-19 23:59:59",
"count":30
}
}
Return data field description
| Field name | Field type | Field description | |
|---|---|---|---|
| records | recordId | String | Recording Id |
| deviceId | String | Device serial number | |
| channelId | String | Channel number | |
| beginTime | String | Start time | |
| endTime | String | End time | |
| size | String | The size of cloud video (unit byte) | |
| thumbUrl | String | Thumbnail Url | |
| encryptMode | Integer | Encryption mode (0: default encryption mode; 1: user encryption mode) | |
| recordRegionId | String | Recording partition id | |
| type | String | Recording type: 1000 event cloud recording, 2000 continuous cloud recording, 10001 humanoid detection cloud recording | |
Sample output
{
"id":"d5c287b4-5b2f-4f03-baf5-8032c5c354af",
"result":{
"data":{
"records":[{
"recordId":"1234567890",
"deviceId":"TESTQWERXXXX",
"channelId":"0",
"beginTime":"2016-05-19 00:30:59",
"endTime":"2016-05-19 00:31:36",
"size":"123456",
"thumbUrl":"http://lechangecloud/20160519",
"encryptMode":0,
"recordRegionId":"XXXXXXXXX",
"type":"2000"
}]
},
"code":"0",
"msg":"successful operation"
}
}
