Partager via


Vue d’ensemble du processus d’envoi de courrier microsoft Graph

Dans Microsoft Graph, chacune des méthodes forward, replyAll ou sendMail crée et envoie un e-mail dans le même appel. Cet article résume la façon dont Outlook et Exchange Online traitent généralement les appels d’API d’envoi de courrier pour envoyer des messages. La plupart des étapes (étapes 2 à 7) se produisent après le retour de la réponse de la méthode.

1. Créer un message dans la boîte aux lettres de l’expéditeur

Outlook crée un message dans le dossier Brouillons de l’expéditeur, copie le contenu du message, les destinataires et les pièces jointes de la requête JSON dans le brouillon de message, puis l’enregistre. Si elle réussit, la méthode retourne un code d’état de réponse 202 Accepted HTTP.

Si l’expéditeur a fourni du contenu MIME, Exchange Online le copie dans une seule propriété dans le nouveau brouillon de message. Exchange Online analyse ensuite le contenu MIME et copie le contenu pertinent dans les propriétés de message et dans les tables des destinataires et des pièces jointes. Une fois l’opération terminée, la méthode retourne un code d’état 202 Accepted .

Cette étape peut échouer pour des raisons telles que la boîte aux lettres de l’expéditeur est pleine ou la connexion réseau au serveur de l’expéditeur est arrêtée. Si la méthode échoue, elle retourne un code d’état 4xx ou 5xx en conséquence.

Une fois l’étape 1 terminée, l’interaction directe de votre application avec Microsoft Graph est terminée.

2. Notifier le service de transport du nouveau message sortant

Exchange Online informe son service de transport qu’un nouveau message est disponible pour la collecte.

3. Copier le message sortant vers le pipeline de transport

Le processus de transport lit le contenu des messages de la boîte aux lettres de l’expéditeur, le convertit au format MIME et le stocke dans le pipeline de transport. Si l’expéditeur a fourni du contenu MIME, le processus de transport copie le contenu MIME plus ou moins intact. Sinon, le processus de transport sérialise les propriétés du message pour construire du contenu MIME.

Si l’étape 3 échoue, le processus de transport construit un message de rapport de non-remise et le place dans la boîte de réception de l’expéditeur.

4. Déplacer le message d’origine vers le dossier Éléments envoyés

Une fois tout cela réussi, le transport rappelle le magasin pour assumer la responsabilité du message. En réponse, le magasin Exchange met à jour le message et le déplace du dossier Brouillons vers le dossier Éléments envoyés. (Selon les propriétés de message facultatives, il peut être déplacé vers un autre dossier ou supprimer le message à la place.)

5. Effectuer l’évaluation et le routage des stratégies

Les étapes suivantes prises par le transport incluent l’application de la stratégie, le routage et la remise du tronçon suivant. Le transport examine les adresses e-mail des destinataires et les compartimente en fonction du tronçon de routage initial. Le transport détecte les adresses de destinataire non valides à ce stade, pour lesquelles les messages de transport sont signalés à l’expéditeur par l’absence de remise. Le transport applique ensuite les stratégies configurées par les administrateurs de locataire. Ces stratégies peuvent rejeter le message en fonction de son contenu, stocker des copies, etc. Après avoir appliqué la stratégie, transportez une copie du message vers chaque destination de tronçon suivant. Pour plus d’informations sur le flux de transport, consultez Flux de messagerie et pipeline de transport.

6. Remettre le message aux destinataires

Le transport Exchange Online peut ou non être responsable de la remise finale à tous les destinataires. Cela dépend du fait que ces destinataires disposent ou non de boîtes aux lettres Exchange Online.

7. Remettre des messages de rapport à l’expéditeur

Quelques services sont impliqués dans la génération des rapports de remise et leur envoi à l’expéditeur en conséquence :

  • Lorsqu’un composant de transport responsable, qui peut être un composant Exchange Online ou non Exchange Online, détermine qu’une ou plusieurs adresses e-mail de destinataire ne sont pas livrables, le composant génère des rapports de non-remise.
  • En même temps, le composant de transport génère des rapports de remise si l’expéditeur les a explicitement demandés.
  • Le service de messagerie ou le client de messagerie du destinataire peut générer des notifications de lecture et de non-lecture, ou pas du tout.

Pour plus d’informations sur les messages de rapport, consultez DSN et NDR dans Exchange Server.

API Microsoft Graph qui créent et envoient un brouillon dans des appels distincts :