AWS IoT Core

Delphi/C++Builder uygulamalarını MQTT üzerinden AWS IoT Core'a bağlayın. X.509 sertifikalarıyla karşılıklı TLS veya SigV4 ile imzalanmış WebSocket, ayrıca shadow ve kural motoru entegrasyonu.

TsgcIoTAmazon_MQTT_Client

AWS IoT Core MQTT 3.1.1 / MQTT 5 istemcisi — X.509 karşılıklı TLS veya WebSocket üzerinden SigV4 kimlik doğrulaması, ayrıca abonelikler, saklanan mesajlar, will ve AWS'ye özgü client-id kısıtlamaları.

Bileşen sınıfı

TsgcIoTAmazon_MQTT_Client

Protokol

AWS IoT MQTT

Platformlar

Windows, macOS, Linux, iOS, Android

Sürüm

Standard / Professional / Enterprise

Kimlik bilgilerini ayarlayın, bağlanın, yayımlayın

AWS uç nokta ana bilgisayarını ayarlayın, bileşeni X.509 sertifikanıza/anahtarınıza yönlendirin (veya SigV4 için AWS erişim anahtarları sağlayın), ardından herhangi bir MQTT istemcisi gibi bağlanın, abone olun ve yayımlayın.

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;

İçeriğinde neler var

AWS'ye özgü kimlik doğrulama seçeneklerini ve konu kurallarını işleyen, AWS IoT Core için önceden yapılandırılmış bir MQTT istemcisi.

X.509 karşılıklı TLS

IoT.Authentication := iotAuth_Certificate ayarlayın ve cihaz sertifikasını, özel anahtarı ve AmazonRootCA1.pem dosyasını yükleyin — bileşen gerekirse 443 bağlantı noktasında ALPN x-amzn-mqtt-ca kullanır.

WebSocket üzerinden SigV4

Tarayıcı tarzı kimlik doğrulama için IoT.Authentication := iotAuth_AccessKey ayarlayın ve access-key / secret-key / region yapılandırın — bileşen SigV4 sorgu dizesi önceden imzalanmış URL'yi hesaplar.

MQTT 3.1.1 + MQTT 5

MQTTVersion değerini değiştirin; AWS IoT Core her ikisini de destekler. MQTT 5 özellikleri (oturum süresi dolması, konu takma adı, kullanıcı özellikleri) standart MQTT olayları üzerinden akar.

AWS konu kuralları

AWS, shadow, işler ve sağlama için $aws/things/<thingName>/... altındaki konuları ayırır. Shadow güncellemelerini ve iş atamalarını almak için bunlara diğer konular gibi abone olun.

Yeniden bağlanmaya dayanıklı

Temel istemcide WatchDog bağlayın — bağlantı kesildiğinde bileşen yeniden kimlik doğrular (uygun olduğunda yeni SigV4 sorgu dizesi) ve yeniden abone olur.

Verim sınırları

AWS IoT bağlantı başına sınırları (yayımlama QoS, verim, mesaj boyutu) zorlar. Kotanın altında kalmak için yayımlama tarafında bir TsgcWSRateLimiter kullanın.

Spesifikasyonlar ve referanslar

Bu bileşenin uyguladığı protokol için yetkili kaynaklar.

Belgeler ve Demolar

Bileşen referansına doğrudan bağlanın, kullanıma hazır demo projesini alın ve denemeyi indirin.

Çevrimiçi Yardım — TsgcIoTAmazon_MQTT_Client Bu bileşen için tam özellik, metot ve olay referansı.
Demo Projesi — Demos\10.IoT_Clients Kullanıma hazır örnek proje. sgcWebSockets paketi içinde gelir — aşağıdan denemeyi indirin.
Teknik Belge (PDF) Delphi ve C++ Builder için özellikler, hızlı başlangıç, kod örnekleri ve birincil kaynak referansları — yalnızca bu bileşen.
Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz.

Delphi'yi AWS IoT'ye Bağlamaya Hazır mısınız?

Ücretsiz denemeyi indirin ve Delphi cihazlarından AWS IoT Core'a IoT telemetrisi akıtın.