BatchPutMessage esempi di un sistema HVAC in AWS IoT Events - AWS IoT Events

Avviso di fine del supporto: il 20 maggio 2026, AWS terminerà il supporto per AWS IoT Events. Dopo il 20 maggio 2026, non potrai più accedere alla AWS IoT Events console o AWS IoT Events alle risorse. Per ulteriori informazioni, consulta AWS IoT Events Fine del supporto.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

BatchPutMessage esempi di un sistema HVAC in AWS IoT Events

In questo esempio, BatchPutMessage viene utilizzato per creare un'istanza del rilevatore per un'area e definire i parametri operativi iniziali.

Comando CLI utilizzato:

aws iotevents-data batch-put-message --cli-input-json file://seedExample.json --cli-binary-format raw-in-base64-out

File: seedExample.json

{ "messages": [ { "messageId": "00001", "inputName": "seedTemperatureInput", "payload": "{\"areaId\": \"Area51\", \"desiredTemperature\": 20.0, \"allowedError\": 0.7, \"rangeHigh\": 30.0, \"rangeLow\": 15.0, \"anomalousHigh\": 60.0, \"anomalousLow\": 0.0, \"sensorCount\": 10, \"noDelay\": false}" } ] }

Risposta:

{ "BatchPutMessageErrorEntries": [] }

In questo esempio, BatchPutMessage viene utilizzato per riportare le letture del sensore di temperatura per un singolo sensore in un'area.

Comando CLI utilizzato:

aws iotevents-data batch-put-message --cli-input-json file://temperatureExample.json --cli-binary-format raw-in-base64-out

File: temperatureExample.json

{ "messages": [ { "messageId": "00005", "inputName": "temperatureInput", "payload": "{\"sensorId\": \"05\", \"areaId\": \"Area51\", \"sensorData\": {\"temperature\": 23.12} }" } ] }

Risposta:

{ "BatchPutMessageErrorEntries": [] }

In questo esempio, BatchPutMessage viene utilizzato per modificare la temperatura desiderata per un'area.

Comando CLI utilizzato:

aws iotevents-data batch-put-message --cli-input-json file://seedSetDesiredTemp.json --cli-binary-format raw-in-base64-out

File: seedSetDesiredTemp.json

{ "messages": [ { "messageId": "00001", "inputName": "seedTemperatureInput", "payload": "{\"areaId\": \"Area51\", \"desiredTemperature\": 23.0}" } ] }

Risposta:

{ "BatchPutMessageErrorEntries": [] }

Esempi di messaggi Amazon SNS generati dall'istanza del Area51 rilevatore:

Heating system off command> { "eventTime":1557520274729, "payload":{ "actionExecutionId":"f3159081-bac3-38a4-96f7-74af0940d0a4", "detector":{ "detectorModelName":"areaDetectorModel", "keyValue":"Area51", "detectorModelVersion":"1" }, "eventTriggerDetails":{ "inputName":"seedTemperatureInput", "messageId":"00001", "triggerType":"Message" }, "state":{ "stateName":"start", "variables":{ "sensorCount":10, "rangeHigh":30.0, "resetMe":false, "enteringNewState":true, "averageTemperature":20.0, "rangeLow":15.0, "noDelay":false, "allowedError":0.7, "desiredTemperature":20.0, "anomalousHigh":60.0, "reportedTemperature":0.1, "anomalousLow":0.0, "sensorId":0 }, "timers":{} } }, "eventName":"resetHeatCool" }
Cooling system off command> { "eventTime":1557520274729, "payload":{ "actionExecutionId":"98f6a1b5-8f40-3cdb-9256-93afd4d66192", "detector":{ "detectorModelName":"areaDetectorModel", "keyValue":"Area51", "detectorModelVersion":"1" }, "eventTriggerDetails":{ "inputName":"seedTemperatureInput", "messageId":"00001", "triggerType":"Message" }, "state":{ "stateName":"start", "variables":{ "sensorCount":10, "rangeHigh":30.0, "resetMe":false, "enteringNewState":true, "averageTemperature":20.0, "rangeLow":15.0, "noDelay":false, "allowedError":0.7, "desiredTemperature":20.0, "anomalousHigh":60.0, "reportedTemperature":0.1, "anomalousLow":0.0, "sensorId":0 }, "timers":{} } }, "eventName":"resetHeatCool" }

In questo esempio, utilizziamo l'DescribeDetectorAPI per ottenere informazioni sullo stato corrente di un'istanza del rilevatore.

aws iotevents-data describe-detector --detector-model-name areaDetectorModel --key-value Area51

Risposta:

{ "detector": { "lastUpdateTime": 1557521572.216, "creationTime": 1557520274.405, "state": { "variables": [ { "name": "resetMe", "value": "false" }, { "name": "rangeLow", "value": "15.0" }, { "name": "noDelay", "value": "false" }, { "name": "desiredTemperature", "value": "20.0" }, { "name": "anomalousLow", "value": "0.0" }, { "name": "sensorId", "value": "\"01\"" }, { "name": "sensorCount", "value": "10" }, { "name": "rangeHigh", "value": "30.0" }, { "name": "enteringNewState", "value": "false" }, { "name": "averageTemperature", "value": "19.572" }, { "name": "allowedError", "value": "0.7" }, { "name": "anomalousHigh", "value": "60.0" }, { "name": "reportedTemperature", "value": "15.72" }, { "name": "goodToGo", "value": "false" } ], "stateName": "idle", "timers": [ { "timestamp": 1557520454.0, "name": "idleTimer" } ] }, "keyValue": "Area51", "detectorModelName": "areaDetectorModel", "detectorModelVersion": "1" } }