Table of Contents

Premier message en 5 minutes

Envoyer un message chiffré à un destinataire, et laisser Secure Exchanges lui envoyer le courriel.

Prérequis

Le code complet

using System;
using System.Collections.Generic;
using SecureExchangesSDK.Helpers;
using SecureExchangesSDK.Models.Args;
using SecureExchangesSDK.Models.Entity;
using SecureExchangesSDK.SecureExchanges;

internal static class PremierMessage
{
    private static void Main()
    {
        // Vos identifiants viennent de votre coffre de secrets, jamais du code.
        Guid serial = LireSecret("SecureExchanges:Serial");
        Guid apiUser = LireSecret("SecureExchanges:ApiUser");
        Guid apiPassword = LireSecret("SecureExchanges:ApiPassword");

        // Production. Pour la préproduction, voir « Identifiants et environnements ».
        var endpoint = new Uri("https://www.secure-exchanges.com/_api/0217/0217.asmx");

        var recipients = new List<RecipientInfo>
        {
            new RecipientInfo { Email = "destinataire@example.com" }
        };

        var args = new MutliRecipientArgs(
            endPointUri: endpoint, serial: serial, user: apiUser, psw: apiPassword,
            recipients: recipients,
            message: "Bonjour, voici un message sécurisé.",
            subject: "Message confidentiel",
            password: null, filesList: null,
            sendMode: SendMethodEnum.onlyEmail,
            getBackHtml: false,          // Secure Exchanges envoie le courriel
            showSubject: true,           // obsolète, sans effet, mais exigé par le constructeur
            getNotify: true,
            cultureID: "fr-CA",
            maximumOpenTime: 5,          // nombre d'ouvertures permises
            minutesExpiration: 1440);    // 24 heures

        var response = MessageHelper.MultiRecipientMessage(args);

        // Le lien remis au destinataire donne accès au message : ne le journalisez pas.
        if (response.Status == 200)
            Console.WriteLine($"Envoyé à {response.RecipientsAnswer.Count} destinataire(s).");
        else
            Console.WriteLine($"Échec, statut {response.Status}");   // voir Codes de statut
    }

    private static Guid LireSecret(string nom)
    {
        // À remplacer : lecture dans votre gestionnaire de secrets (Azure Key Vault, etc.).
        throw new NotImplementedException(nom);
    }
}
Important

Qui envoie le courriel au destinataire ? Avec getBackHtml à false, Secure Exchanges l'envoie. À true, le SDK vous renvoie le courriel en HTML et c'est votre application qui doit l'envoyer.

Attention

true est la valeur par défaut. Si votre destinataire ne reçoit rien, vérifiez d'abord cette option.

Vérifier que ça fonctionne

Le statut retourné par MultiRecipientMessage doit être 200. Le destinataire reçoit un courriel contenant son lien et consulte le message dans la page sécurisée de Secure Exchanges.

Et ensuite