Documentation
SDK client
Envoyer à des utilisateurs non enregistrés

Le cas des utilisateurs non enregistrés

Le service de messagerie Secrecy gère les destinataires qui n'ont pas encore de compte Secrecy. Les méthodes habituelles send mails gèrent l'envoi de mails aux utilisateurs non inscrits. Les utilisateurs sans compte recevront un email, dans la boîte aux lettres de leur fournisseur d'accès, les invitant à s'inscrire à Secrecy pour lire le courrier. Dans ce cas, le courrier de Secrecy est put on hold, pour s'assurer que le courrier est accessible à l'utilisateur une fois qu'il a son compte Secrecy, il suffit d'appeler la méthode supplémentaire suivante : secrecyClient.mail.sendWaitingEmails.

Envoyer des courriers électroniques à des utilisateurs non enregistrés

Nous vous recommandons d'utiliser la fonction secrecyClient.mail.sendWaitingEmails de manière répétée, afin d'éviter un décalage temporel entre l'envoi du courrier et l'enregistrement Secrecy du destinataire. C'est pourquoi nous avons passé la fonction en tant que rappel dans la méthode setInterval. Dans notre exemple, nous avons fixé l'intervalle à 5 minutes.

app.ts
useEffect(() => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return;
  }
  // Define the interval function
  const intervalId = setInterval(() => {
    void secrecyClient.mail.sendWaitingEmails();
  }, 60000 * 5); // 5 minutes
 
  // Clean up the interval on component unmount
  return () => clearInterval(intervalId);
}, [secrecyClient]);

Obtenir les messages reçus en attente

D'autre part, vous devez vous assurer que le destinataire récupère tous les courriers qui ont été mis en attente. La méthode secrecyClient.mail.waitingReceivedMails permet de récupérer la liste des courriers reçus qui ont été mis en attente. Elle vérifie d'abord si secrecyClient est disponible ; si ce n'est pas le cas, elle renvoie null. Si secrecyClient existe, elle tente de récupérer les courriers reçus en attente. Si la récupération est réussie, il renvoie la liste des courriers reçus dont le type est WaitingReceivedMail.

mail-in-waiting-received.ts
const getMyWaitingReceivedMails = async (): Promise<
  WaitingReceivedMail[] | null
> => {
  // First we need to check if the secrecyClient is available
  if (!secrecyClient) {
    return null;
  }
 
  try {
    // Get the waiting received mails
    const waitingReceivedMails =
      await secrecyClient.mail.waitingReceivedMails();
    return waitingReceivedMails;
  } catch (error) {
    console.error(error);
    return null;
  }
};