Consulta varias propiedades enviadas por un dispositivo dentro de un periodo especificado.
Límites
Se pueden consultar hasta 10 propiedades a la vez. Se pueden obtener como máximo 100 registros por cada propiedad.
-
Puede consultar datos de propiedades generados en los últimos 30 días.
NotaEl periodo de almacenamiento de un registro de propiedad se calcula a partir del día en que se generó dicho registro.
-
Cada cuenta de Alibaba Cloud puede ejecutar un máximo de 10 consultas por segundo (QPS).
NotaLos usuarios RAM de una cuenta de Alibaba Cloud comparten la cuota de dicha cuenta.
Notas de uso
Al llamar a esta operación para consultar registros de propiedades dentro de un periodo especificado, es posible que el número de registros de una propiedad en un momento dado alcance el límite. Este límite se define mediante el parámetro PageSize. En este caso, la consulta se detiene y es posible que no se devuelvan algunos registros de otras propiedades. Compruebe si se han devuelto todos los registros de una propiedad mediante el parámetro de respuesta NextValid:
-
Si el valor del parámetro NextValid es true, existen registros sin recuperar en el periodo indicado por los parámetros NextTime y EndTime.
Utilice
el valor del parámetro de respuesta
NextTime
como valor del parámetro de solicitud StartTime y vuelva a llamar a esta operación para consultar los registros restantes. Llame a esta operación varias veces hasta que el valor del parámetro
NextValid
sea false.
NotaPara recuperar todos los registros de propiedades dentro de un periodo especificado, establezca el parámetro
PageSize
en su valor máximo. Luego, llame a esta operación varias veces hasta que el valor del parámetro
NextValid
sea false.
Si el valor del parámetro NextValid es false, se han devuelto todos los registros de propiedades.
Depuración
Parámetros de solicitud
| Parámetro | Tipo | Obligatorio | Ejemplo | Descripción |
| Action | String | Sí | QueryDevicePropertiesData | La operación que desea ejecutar. Establezca el valor en QueryDevicePropertiesData. |
| Asc | Integer | Sí | 0 | El orden de clasificación de los registros de propiedades devueltos. Valores válidos:
|
| DeviceName | String | Sí | airconditioning | El DeviceName del dispositivo. |
| EndTime | Long | Sí | 1579249499000 | El final del intervalo de tiempo a consultar. El valor es una marca de tiempo de 13 dígitos en milisegundos; por ejemplo, 1579249499000. |
| Identifier.N | RepeatList | Sí | temperature | Los identificadores de las propiedades. Los identificadores de propiedad deben ser únicos. Consulte los identificadores de propiedad en la consola de IoT Platform. Vaya a la pestaña Define Feature de la página Product Details. También puede llamar a la operación QueryThingModel y ver los identificadores de propiedad en los datos TSL devueltos. Nota Si una propiedad llamada temperature pertenece a un módulo personalizado llamado testFb, establezca este parámetro en testFb:temperature. El módulo personalizado no es el módulo predeterminado. |
| PageSize | Integer | Sí | 10 | El número máximo de registros que se devuelve por cada propiedad. Valor máximo: 100. El número de registros devueltos para cualquier propiedad no puede superar este límite. |
| ProductKey | String | Sí | a1BwAGV**** | El ProductKey del producto al que pertenece el dispositivo. |
| StartTime | Long | Sí | 1579249499000 | El inicio del intervalo de tiempo a consultar. El valor es una marca de tiempo de 13 dígitos en milisegundos; por ejemplo, 1579249499000. |
| IotInstanceId | String | No | iot_instc_pu****_c*-v64******** | El ID de la instancia. Consulte el ID de la instancia en la página Overview de la consola de IoT Platform. Importante
Para más información, consulte Descripción general. |
| IotId | String | No | Q7uOhVRdZRRlDnTLv****00100 | El ID del dispositivo. IoT Platform asigna este identificador. Nota El parámetro IotId es un identificador único global (GUID) y corresponde a una combinación de los parámetros ProductKey y DeviceName. Si especifica el parámetro IotId y una combinación de los parámetros ProductKey y DeviceName al mismo tiempo, se utilizará el parámetro IotId. |
Además de los parámetros de solicitud específicos de la operación mencionados anteriormente, debe especificar los parámetros de solicitud comunes al llamar a esta operación. Para más información, consulte Parámetros de solicitud comunes.
Parámetros de respuesta
| Parámetro | Tipo | Ejemplo | Descripción |
| Code | String | iot.system.SystemException | El código de error devuelto si la llamada falla. Para más información, consulte Códigos de error. |
| ErrorMessage | String | A system exception occurred. | El mensaje de error devuelto si la llamada falla. |
| NextTime | Long | 1579249499000 | La hora de inicio para consultar la siguiente página. Use el valor del parámetro NextTime como valor del parámetro StartTime cuando consulte la siguiente página de resultados. |
| NextValid | Boolean | true | Indica si existe la siguiente página.
Si el valor devuelto del parámetro NextValid es true, use el valor del parámetro NextTime como valor del parámetro StartTime cuando consulte la siguiente página de resultados. |
| PropertyDataInfos | Array of PropertyDataInfo | La lista de registros de propiedades devuelta si la llamada es exitosa. Para más información, consulte PropertyDataInfo. | |
| PropertyDataInfo | |||
| Identifier | String | temperature | El identificador de la propiedad. |
| List | Array of PropertyInfo | La lista de registros de propiedades. | |
| PropertyInfo | |||
| Time | Long | 1579249499000 | La hora en que se envió la propiedad. El valor es una marca de tiempo en milisegundos, como 1579249499000. |
| Value | String | 21.3 | El valor de la propiedad. |
| RequestId | String | E55E50B7-40EE-4B6B-8BBE-D3ED55CCF565 | El ID de la solicitud. |
| Success | Boolean | true | Indica si la llamada fue exitosa.
|
Ejemplos
Solicitudes de ejemplo
https://iot.cn-shanghai.aliyuncs.com/?Action=QueryDevicePropertiesData
&Asc=0
&DeviceName=water
&EndTime=1540115948152
&Identifier.1=Temperature
&Identifier.2=Humidity
&PageSize=100
&ProductKey=a1bd***
&StartTime=1540116010723
&<Common request parameters>
Respuestas exitosas de ejemplo
Formato XML
<QueryDevicePropertiesData>
<NextValid>false</NextValid>
<RequestId>CC4CAC00-ED4C-4004-9E8D-E8B4A78552FA</RequestId>
<PropertyDataInfos>
<PropertyDataInfo>
<List>
<PropertyInfo>
<Value>32.46</Value>
<Time>1579249151178</Time>
</PropertyInfo>
</List>
<Identifier>Temperature</Identifier>
</PropertyDataInfo>
<PropertyDataInfo>
<List>
<PropertyInfo>
<Value>48</Value>
<Time>1579249151178</Time>
</PropertyInfo>
</List>
<Identifier>Humidity</Identifier>
</PropertyDataInfo>
</PropertyDataInfos>
<Success>true</Success>
</QueryDevicePropertiesData>
Formato JSON
{
"NextValid": false,
"RequestId": "CC4CAC00-ED4C-4004-9E8D-E8B4A78552FA",
"PropertyDataInfos": {
"PropertyDataInfo": [
{
"List": {
"PropertyInfo": [
{
"Value": "32.46",
"Time": 1579249151178
}
]
},
"Identifier": "Temperature"
},
{
"List": {
"PropertyInfo": [
{
"Value": "48",
"Time": 1579249151178
}
]
},
"Identifier": "Humidity"
}
]
},
"Success": true
}
Códigos de error
Para obtener una lista de códigos de error, visite el Centro de errores de API.