Connettività
Il tuo dispositivo può eseguire il ping con una frequenza fino a 30 secondi senza costi aggiuntivi per i messaggi MQTT PINGREQ o PINGRESP.
Messaggistica
Calcolo delle dimensioni dei messaggi MQTT
MQTT CONNECT | Calcolate come le dimensioni di un messaggio, che sommano dimensioni dell'argomento Will e payload del messaggio Will. Se si utilizza MQTT5, le dimensioni del messaggio vengono calcolate anche in base a tutte le ulteriori proprietà a intestazione variabile di stringa e binarie e le proprietà Will, come le proprietà dell'utente. |
MQTT PUBACK (ricevuto dal dispositivo) | Se si utilizza MQTT5, calcolate in base alle dimensioni del messaggio incluse le proprietà dell'utente. Altrimenti, calcolate come singolo messaggio da 5 KB. |
MQTT SUBSCRIBE | Calcolate in base alle dimensioni dell'argomento inviato nel messaggio Subscribe, sommate alle dimensioni di eventuali proprietà dell'utente inviate (se si utilizza MQTT5). |
MQTT PUBLISH (ricevuto dal dispositivo) | Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. |
MQTT PUBLISH (inviato dal servizio) |
Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. |
MQTT RETAINED | Calcolate in base alle dimensioni di payload e argomento in byte. Se si utilizza MQTT5, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. Per i messaggi in entrata MQTT pubblicati con il contrassegno RETAIN, l'account verrà calcolato in base a MQTT PUBLISH in entrata e a MQTT RETAINED |
I seguenti messaggi MQTT sono esclusi dal calcolo delle dimensioni:
- MQTT PINGREQ
- MQTT PINGRESP
- MQTT DISCONNECT
- MQTT CONNACK
- MQTT PUBACK (inviato dal servizio)
- MQTT SUBACK
- MQTT UNSUBSCRIBE
I messaggi MQTT trasferiti nell'ambito di una connessione WebSocket vengono calcolati come messaggi MQTT all'interno di una connessione TLS con autenticazione reciproca.
Calcolo delle dimensioni di richieste e risposte HTTP
Richieste | Calcolate in base al numero di messaggi da 5 KB richiesti per codificare il corpo della richiesta HTTP. Se si utilizza l'API HTTP publish message, nelle dimensioni di payload calcolate sono incluse anche le dimensioni delle proprietà dell'utente, dell'argomento di risposta, dei dati di correlazione e del tipo di contenuto. |
Risposte negative |
Se una risposta HTTP ha codici compresi tra 4xx e 5xx e contiene un corpo del messaggio, AWS IoT Core calcola il numero di messaggi da 5 KB necessari per codificare il corpo della risposta |
Calcolo delle dimensioni di LoRaWAN
LoRaWAN.Uplink | Calcolate in base al numero di messaggi (inviati dal dispositivo) |
LoRaWAN.Downlink | Calcolate in base al numero di messaggi (inviati dal servizio) |
LoRaWAN.Join | Calcolate in base al numero di messaggi (inviati dal dispositivo) |
LoRaWAN.UplinkACK | Calcolate in base al numero di messaggi (inviati dal servizio) |
LoRaWAN.DownlinkACK | Calcolate in base al numero di messaggi (inviati dal dispositivo) |
Calcolo delle dimensioni di Sidewalk
Sidewalk.Uplink | Calcolate in base al numero di messaggi (inviati dal dispositivo) |
Sidewalk.Downlink | Calcolate in base al numero di messaggi (inviati dal servizio) |
Nota bene: le dimensioni dei messaggi inviati dai dispositivi Amazon Sidewalk che utilizzano la funzionalità Amazon Sidewalk Integration per connettersi ad AWS IoT Core vengono calcolate utilizzando gli scaglio di prezzo per la messaggistica LoRaWAN.
Registro
Viene addebitata un'operazione di registro ogni volta che si effettua una chiamata a una delle seguenti operazioni API:
- AddThingToThingGroup
- AttachThingPrincipal
- CreateThing
- CreateThingGroup
- CreateDynamicThingGroup
- CreateThingType
- DescribeThing
- DescribeThingGroup
- DescribeThingType
- ListPrincipalThings
- ListThingGroups
- ListThingGroupsForThing
- ListThingPrincipals
- ListThings
- ListThingsInThingGroup
- ListThingTypes
- UpdateThing
- UpdateThingGroup
- UpdateDynamicThingGroup
- UpdateThingGroupsForThing
- GetWirelessDeviceStatistics
- GetWirelessGatewayStatistics
Per tutte le operazioni List, il calcolo tiene conto delle dimensioni totali di tutti i record restituiti dalla chiamata API. Ad esempio, se una chiamata API ListThings API restituisce (50) risultati da 2 KB dal registro, la richiesta viene addebitata in base a (100) incrementi di 1 KB e viene calcolata come 100 richieste. Se acconsenti agli eventi di registro, eventuali messaggi di aggiornamento saranno soggetti alle tariffe di messaggistica.
Device Shadow
Le operazioni Device Shadow vengono calcolate quando si effettua una chiamata API GetThingShadow o UpdateThingShadow o quando un messaggio MQTT crea, aggiorna o riceve un Device Shadow. Se acconsenti agli aggiornamenti di Device Shadow, eventuali messaggi di aggiornamento saranno soggetti alle tariffe di messaggistica.
Motore delle regole
Una regola può invocare fino a 10 azioni, dove un'azione è una chiamata di funzione esterna (come get_thing_shadow(), aws_lambda(), get_dynamodb()) o una chiamata a un servizio esterno (come Amazon S3, Amazon Kinesis, Amazon SNS). Le funzioni SQL logiche e aritmetiche non vengono calcolate come azioni. Le seguenti chiamate funzionali esterne non vengono calcolate come azioni: get_secret().
Un'azione di regole che invia un messaggio a una risorsa all'interno di un cloud privato virtuale (VPC) Amazon di un cliente verrà calcolata come un'azione aggiuntiva. Questa azione aggiuntiva non concorre al limite di 10 azioni per regola. Il VPC è supportato per le seguenti azioni di regole: azione Apache Kafka.
Una regola che viene attivata viene sempre calcolata, come minimo, come una regola e un'azione. Ad esempio, un messaggio da 5 KB che avvia una regola viene calcolato come una regola e un'azione anche se non invoca alcuna azione corrispondente.
Le regole che elaborano un messaggio generato da AWS IoT Core vengono calcolate come singola regola, a prescindere dalle dimensioni del messaggio. Ad esempio, un documento Device Shadow da 7 KB può pubblicare un messaggio /delta o /documents piuttosto grande; tuttavia, eventuali regole avviate da un aggiornamento simile verranno calcolate come se il messaggio fosse di 5 KB.
Decodifica da Protobuf a JSON: La decodifica di un messaggio Protocol Buffer (Protobuf) in formato JavaScript Object Notation (JSON) utilizzando la funzione decode() nel motore delle regole sarà misurata come 1 azione. Rules Engine addebiterà le azioni di decodifica all'interno di una regola; queste ultime possono essere ottimizzate mettendo in cache il file descrittore. Quando si decodifica un messaggio Protobuf utilizzando Rules Engine, si pagherà per 1 regola attivata + 1 azione della regola (per l'invio dei dati a un servizio AWS a valle) + 1 decodifica da Protobuf a JSON. Tuttavia, non verranno addebitati incrementi di 5kB per la decodifica dei messaggi Protobuf in JSON. Verrà addebitato un costo per 1 decodifica (azione) fino alla dimensione massima del carico utile del Protobuf di 128kB.
Le tariffe di trasferimento dati EC2 standard elencate qui in "Trasferimento dati" si applicano alle seguenti azioni di regole: azione HTTP.
Ulteriori informazioni sulle risorse AWS IoT Core