AWS IoT Core
Conecte aplicações Delphi/C++Builder ao AWS IoT Core via MQTT. TLS mútuo com certificados X.509 ou WebSocket assinado com SigV4, além de integração com shadow e rule-engine.
Conecte aplicações Delphi/C++Builder ao AWS IoT Core via MQTT. TLS mútuo com certificados X.509 ou WebSocket assinado com SigV4, além de integração com shadow e rule-engine.
Cliente AWS IoT Core MQTT 3.1.1 / MQTT 5 — autenticação via TLS mútuo X.509 ou SigV4 sobre WebSocket, assinaturas, mensagens retidas, will e restrições de client-id específicas da AWS.
TsgcIoTAmazon_MQTT_Client
Windows, macOS, Linux, iOS, Android
Standard / Professional / Enterprise
Defina o endpoint AWS, aponte o componente para seu certificado/chave X.509 (ou forneça as chaves de acesso AWS para SigV4), depois conecte, assine e publique como em qualquer cliente 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;
Um cliente MQTT pré-configurado para AWS IoT Core que cuida das opções de autenticação e convenções de tópicos específicas da AWS.
Defina IoT.Authentication := iotAuth_Certificate e carregue o certificado do dispositivo, a chave privada e o AmazonRootCA1.pem — o componente usa ALPN x-amzn-mqtt-ca na porta 443 quando necessário.
Para autenticação no estilo browser, defina IoT.Authentication := iotAuth_AccessKey e configure access-key / secret-key / region — o componente calcula a URL presignada com query-string SigV4.
Alterne com MQTTVersion; o AWS IoT Core suporta ambos. As propriedades MQTT 5 (expiração de sessão, alias de tópico, propriedades de usuário) fluem pelos eventos MQTT padrão.
A AWS reserva tópicos sob $aws/things/<thingName>/... para shadow, jobs e provisionamento. Assine-os como qualquer outro tópico para receber atualizações de shadow e atribuições de jobs.
Vincule o WatchDog ao cliente subjacente — ao desconectar, o componente reautentica (nova query-string SigV4, quando aplicável) e reassina os tópicos.
O AWS IoT impõe limites por conexão (QoS de publicação, throughput, tamanho de mensagem). Use um TsgcWSRateLimiter no lado da publicação para permanecer dentro da cota.
Fontes autoritativas do protocolo que este componente implementa.
Acesse a referência do componente, obtenha o projeto demo pronto para executar e baixe a versão de avaliação.
| Ajuda online — TsgcIoTAmazon_MQTT_Client Referência completa de propriedades, métodos e eventos deste componente. | Abrir | |
| Projeto de demonstração — Demos\10.IoT_Clients Projeto de exemplo pronto para executar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo. | Abrir | |
| Documento técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fontes primárias — somente este componente. | Abrir | |
| Manual do usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca. | Abrir |