连接
对于 MQTT PINGREQ 或 PINGRESP 消息,您的设备可以免费每 30 秒 ping 一次。
消息收发
MQTT 消息计量
MQTT CONNECT | 已按消息大小进行计量,包括 Will 主题大小和 Will 消息负载。如果使用 MQTT5,则也会按任何其他字符串和二进制变量标头属性及 Will 属性,例如用户属性,对消息进行计量。 |
MQTT PUBACK(从设备中获取) | 如果使用 MQTT5,则已按消息大小(包括用户属性)进行计量。否则,计量为单个 5KB 消息。 |
MQTT SUBSCRIBE | 已按“订阅”消息中所提交主题的大小和任何已发送用户属性(如果使用 MQTT5)的大小进行计量。 |
MQTT PUBLISH(从设备中获取) | 已按负载和主题的大小(字节)进行计量。如果使用 MQTT5,则也会在已计量负载大小中包括用户属性、响应主题、关联数据和内容类型的大小。 |
MQTT PUBLISH(通过服务发送) |
已按负载和主题的大小(字节)进行计量。如果使用 MQTT5,则也会在已计量负载大小中包括用户属性、响应主题、关联数据和内容类型的大小。 |
MQTT RETAINED | 已按负载和主题的大小(字节)进行计量。如果使用 MQTT5,则也会在已计量负载大小中包括用户属性、响应主题、关联数据和内容类型的大小。 对于使用 RETAIN 标志发布的 MQTT 入站消息,会针对入站 MQTT PUBLISH 并针对 MQTT RETAINED 对您的账户进行计量 |
以下 MQTT 消息不在计量范围内:
- MQTT PINGREQ
- MQTT PINGRESP
- MQTT DISCONNECT
- MQTT CONNACK
- MQTT PUBACK(通过服务发送)
- MQTT SUBACK
- MQTT UNSUBSCRIBE
在 WebSocket 连接内传输的 MQTT 消息,与在通过双向身份验证的 TLS 连接内传输的 MQTT 消息采用类似的计量方式。
HTTP 请求和响应计量
请求 | 已按 5KB 消息的数量进行计量,这类消息是编码 HTTP 请求主体部分所需的。如果使用 HTTP 发布消息 API,则也会在已计量负载大小中包括用户属性、响应主题、关联数据和内容类型的大小。 |
负面响应 |
如果带有 HTTP 响应代码且在 4xx 和 5xx 范围内的 HTTP 响应包含主体,则 AWS IoT Core 按编码响应主体所需的 5KB 消息的数量进行计量 |
LoRaWAN 计量
LoRaWAN.Uplink | 已按消息(通过设备发送)数量进行计量 |
LoRaWAN.Downlink | 已按消息(通过服务发送)数量进行计量 |
LoRaWAN.Join | 已按消息(通过设备发送)数量进行计量 |
LoRaWAN.UplinkACK | 已按消息(通过服务发送)数量进行计量 |
LoRaWAN.DownlinkACK | 已按消息(通过设备发送)数量进行计量 |
Sidewalk 计量
Sidewalk.Uplink | 已按消息(通过设备发送)数量进行计量 |
Sidewalk.Downlink | 已按消息(通过服务发送)数量进行计量 |
请注意:对于使用 Amazon Sidewalk 集成功能连接至 AWS IoT Core 的 Amazon Sidewalk 设备发送的消息,使用 LoRaWAN 消息收发定价等级进行计量。
Registry
每次您调用以下 API 操作之一时,需要支付 Registry 操作费用:
- AddThingToThingGroup
- AttachThingPrincipal
- CreateThing
- CreateThingGroup
- CreateDynamicThingGroup
- CreateThingType
- DescribeThing
- DescribeThingGroup
- DescribeThingType
- ListPrincipalThings
- ListThingGroups
- ListThingGroupsForThing
- ListThingPrincipals
- ListThings
- ListThingsInThingGroup
- ListThingTypes
- UpdateThing
- UpdateThingGroup
- UpdateDynamicThingGroup
- UpdateThingGroupsForThing
- GetWirelessDeviceStatistics
- GetWirelessGatewayStatistics
对于所有 List 操作,按 API 调用返回的所有记录的总大小计量。例如,如果 ListThings API 调用从 Registry 返回 (50) 2KB Thing,则会对您的请求收取 (100) 1K 的增量,计为 100 个请求。如果您选择加入 Registry 事件,则会根据消息收发费用对任何更新消息进行收费。
Device Shadow
您进行 GetThingShadow 或 UpdateThingShadow API 调用时,或 MQTT 消息建立、更新或取得 Device Shadow 时,会进行 Device Shadow 操作计量。如果您选择加入 Device Shadow 更新,则会根据消息收发费用对更新消息进行收费。
规则引擎
操作为外部函数调用(例如 get_thing_shadow()、aws_lambda()、get_dynamodb()),或外部服务(例如 Amazon S3、Amazon Kinesis、Amazon SNS)调用时,规则可以调用多达 10 个操作。不会按操作对算术和逻辑 SQL 函数进行计量。以下外部函数调用不会计为操作:get_secret()。
发送消息到客户的 Amazon 虚拟私有云(VPC)内资源的规则操作会计为其他操作。此其他操作不会计入每个规则限制 10 个操作之中。以下规则操作支持 VPC:Apache Kafka 操作。
始终会计量触发的规则,最少一个规则和一个操作。例如,启动一个规则的 5KB 消息会计量一个规则和一个操作,即便其未调用任何对应的操作。
将处理由 AWS IoT Core 生成的消息的规则计量为单个规则,无论消息大小。例如,7KB 设备影子文档可能会发布相当大的增量或文档消息;但是此类更新启动的任何规则都会计为 5KB 消息。
Protobuf-to-JSON 解码:使用 Rules Engine(规则引擎)中的 decode() 函数将协议缓冲区(Protobuf)消息解码为 JavaScript 对象表示法(JSON)格式将计为一个 Action(操作)。Rules Engine(规则引擎)会对规则内的解码操作进行收费,并且可通过缓存描述符文件来优化解码操作。如需使用 Rules Engine(规则引擎)解码 Protobuf 消息,则需要支付一次触发规则、一个规则操作(用于将数据发送到下游 AWS 服务)以及一次 Protobuf-to-JSON Decode(解码)的费用。但是,将 Protobuf 消息解码为 JSON 不会以 5kB 为增量向您收费。在不超过 128kB 的最大 Protobuf 负载大小的情况下,您将为一次 Decode(解码)(操作)付费。
此处在“Data transfer(数据传输)”下列出的标准 EC2 数据传输费率适用于以下规则操作:HTTP 操作。