AWS IoT Core

Connecte les applications Delphi/C++Builder à AWS IoT Core via MQTT. TLS mutuel avec certificats X.509 ou WebSocket signé SigV4, plus intégration shadow et rule-engine.

TsgcIoTAmazon_MQTT_Client

Client MQTT 3.1.1 / MQTT 5 pour AWS IoT Core — TLS mutuel X.509 ou authentification SigV4-over-WebSocket, plus abonnements, messages retenus, will, et les contraintes de client-id spécifiques à AWS.

Classe du composant

TsgcIoTAmazon_MQTT_Client

Protocole

AWS IoT MQTT

Plateformes

Windows, macOS, Linux, iOS, Android

Édition

Standard / Professional / Enterprise

Configure les credentials, connecte, publie

Configure l'hôte du endpoint AWS, pointe le composant vers ton certificat/clé X.509 (ou fournis des clés d'accès AWS pour SigV4), puis connecte-toi, abonne-toi et publie comme avec n'importe quel client MQTT.

uses
  sgcIoT;

var
  AWSIoT: TsgcIoTAmazon_MQTT_Client;
begin
  AWSIoT := TsgcIoTAmazon_MQTT_Client.Create(nil);
  AWSIoT.IoT.Host := 'a1b2c3d4e5f.iot.eu-west-1.amazonaws.com';

  // X.509 mutual TLS
  AWSIoT.IoT.Authentication := iotAuth_Certificate;
  AWSIoT.IoT.Certificate.CertFile := 'device.cert.pem';
  AWSIoT.IoT.Certificate.KeyFile  := 'device.private.key';
  AWSIoT.IoT.Certificate.RootCert := 'AmazonRootCA1.pem';

  AWSIoT.OnMQTTConnect := procedure(Connection: TsgcWSConnection;
    const Session: Boolean; const ReasonCode: Integer;
    const ReasonName: string;
    const ConnectProperties: TsgcWSMQTTCONNACKProperties)
  begin
    AWSIoT.Subscribe('devices/#');
  end;

  AWSIoT.Active := True;
  AWSIoT.Publish('devices/sensor1/telemetry', '{"temp":22.5}');
end;
// uses: sgcIoT
TsgcIoTAmazon_MQTT_Client *AWSIoT = new TsgcIoTAmazon_MQTT_Client(this);
AWSIoT->IoT->Host = "a1b2c3d4e5f.iot.eu-west-1.amazonaws.com";
AWSIoT->IoT->Authentication = iotAuth_Certificate;
AWSIoT->IoT->Certificate->CertFile = "device.cert.pem";
AWSIoT->IoT->Certificate->KeyFile  = "device.private.key";

AWSIoT->Active = true;

Sous le capot

Un client MQTT préconfiguré pour AWS IoT Core qui gère les choix d'authentification et les conventions de topics propres à AWS.

TLS mutuel X.509

Configure IoT.Authentication := iotAuth_Certificate et charge le certificat de l'appareil, la clé privée et AmazonRootCA1.pem — le composant utilise ALPN x-amzn-mqtt-ca sur le port 443 si nécessaire.

SigV4 sur WebSocket

Pour une authentification de style navigateur, configure IoT.Authentication := iotAuth_AccessKey et renseigne access-key / secret-key / region — le composant calcule l'URL pré-signée SigV4 en query-string.

MQTT 3.1.1 + MQTT 5

Bascule MQTTVersion ; AWS IoT Core prend en charge les deux. Les propriétés MQTT 5 (session expiry, topic alias, user properties) passent par les événements MQTT standards.

Conventions de topics AWS

AWS réserve les topics sous $aws/things/<thingName>/... pour shadow, jobs et provisioning. Abonne-toi comme à n'importe quel autre topic pour recevoir les mises à jour shadow et les affectations de jobs.

Sécurité de reconnexion

Active WatchDog sur le client sous-jacent — en cas de déconnexion, le composant se ré-authentifie (nouvelle query-string SigV4 le cas échéant) et se réabonne.

Limites de débit

AWS IoT applique des limites par connexion (QoS de publication, débit, taille de message). Utilise un TsgcWSRateLimiter côté publication pour rester sous le quota.

Spécifications et références

Sources de référence pour le protocole implémenté par ce composant.

Documentation et démos

Lien direct vers la référence du composant, projet de démo prêt à l'emploi et téléchargement de l'essai.

Aide en ligne — TsgcIoTAmazon_MQTT_Client Référence complète des propriétés, méthodes et événements de ce composant.
Projet de démo — Demos\10.IoT_Clients Projet d'exemple prêt à l'emploi. Livré dans le package sgcWebSockets — télécharge l'essai ci-dessous.
Document technique (PDF) Fonctionnalités, démarrage rapide, exemples de code Delphi et C++ Builder et références primaires — ce composant uniquement.
Manuel utilisateur (PDF) Manuel complet couvrant tous les composants de la bibliothèque.

Prêt à connecter Delphi à AWS IoT ?

Télécharge l'essai gratuit et diffuse la télémétrie IoT depuis des appareils Delphi vers AWS IoT Core.