The samples/ directory contains various application examples categorized by their primary interaction pattern. These samples demonstrate how to use the SDK to connect to AWS IoT Core, interact with IoT services, or work with AWS Greengrass.
MQTT5 Client Samples
MQTT5 is the recommended protocol for the SDK. Samples include:
- X.509-based mutual TLS: Connecting using certificates and private keys.
- Websockets with Sigv4: Authenticating over websockets using AWS Signature Version 4.
- AWS Custom Authorizer Lambda: Connecting with signed or unsigned Lambda-backed custom authorizers.
- PKCS#11: Connecting using a Hardware Security Module (HSM) or smartcard.
Service Client Samples
These samples demonstrate how to use SDK service clients to interact with specific AWS IoT services:
- Shadow: Manage and sync device state.
- Jobs: Receive and execute remote operations.
- Fleet Provisioning: Basic provisioning or CSR-based (Certificate Signing Request) provisioning.
Greengrass Samples
For interacting with AWS Greengrass environments:
- Greengrass Discovery: Discover and connect to a local Greengrass core.
- Greengrass IPC: Demonstrate Inter-Process Communication (IPC) with Greengrass components.