Téléverser des fichiers vers Azure IoT

· Fonctionnalités

Azure IoT permet d'envoyer des données via plusieurs protocoles comme MQTT ou AMQP, mais dans certains cas, la taille du message est trop importante et il faut téléverser des fichiers vers les serveurs Azure. Pour résoudre ce problème, IoT Hub facilite les téléversements de fichiers depuis les appareils connectés en leur fournissant des URIs Shared Access Signature (SAS) à chaque téléversement, pour un blob container et un compte de stockage Azure préconfigurés avec le hub. 

À partir de sgcWebSockets 2023.8.0, tu peux téléverser des fichiers avec le client Azure IoT. Les certificats et le SAS sont tous deux des méthodes d'authentification prises en charge.

Tu peux en savoir plus sur le téléversement de fichiers via le lien suivant :

https://learn.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-file-upload

Téléverser un fichier avec des certificats

Configure d'abord les certificats dans ton compte Azure, puis renseigne les chemins du fichier de certificat et de clé dans le composant client Azure IoT. Appelle la méthode UploadFile pour téléverser un fichier depuis un chemin.

oClient := TsgcIoTAzure_MQTT_Client.Create(nil);
Try
  oClient.Certificate.CertFile := 'cert.pem';
  oClient.Certificate.KeyFile := 'key.pem';
  oClient.Certificate.Enabled := True;
  oDialog := TOpenDialog.Create(nil);
  Try
    if oDialog.Execute then
      oClient.UploadFile(oDialog.FileName);
  Finally
    oDialog.Free;
  End;
Finally
  FreeAndNil(oClient);
End; 

Téléverser un fichier avec SAS

Configure d'abord la Secret Key dans le composant client Azure IoT. Appelle la méthode UploadFile pour téléverser un fichier depuis un chemin.

oClient := TsgcIoTAzure_MQTT_Client.Create(nil);
Try
  oClient.SAS.SecretKey := 'your-secret-key';
  oClient.SAS.KeyName := 'key-name';
  oClient.SAS.Enabled := True;
  oDialog := TOpenDialog.Create(nil);
  Try
    if oDialog.Execute then
      oClient.UploadFile(oDialog.FileName);
  Finally
    oDialog.Free;
  End;
Finally
  FreeAndNil(oClient);
End; 

Démo des clients sgcWebSockets IoT Amazon et Azure

Démo compilée pour Windows qui montre les fonctionnalités principales des APIs Amazon et Azure IoT https://www.esegece.com/download/protocols/sgcIOT.zip