Messages de rapport MAPI
S’applique à : Outlook 2013 | Outlook 2016
Les messages de rapport présentent status informations sur un message à son expéditeur.
Il existe deux types généraux de messages de rapport :
Lire status rapports.
Remise status rapports.
Lire les rapports d’état
Les rapports de lecture status sont initiés par les fournisseurs de magasins de messages via un appel à la méthode IMAPISupport ::ReadReceipt et sont envoyés au destinataire représenté par l’identificateur d’entrée dans la propriété PR_REPORT_ENTRYID (PidTagReportEntryId). Lisez status rapports ne sont pas générés automatiquement ; les applications clientes qui souhaitent les recevoir doivent les demander explicitement.
Un rapport de lecture indique que l’indicateur de lecture d’un message a été défini, ce qui peut se produire lorsque le message est ouvert, imprimé, déplacé ou copié. Le fait qu’un fournisseur de magasin de messages génère ou non un rapport de lecture en réponse à une opération de déplacement ou de copie dépend de l’emplacement du message. S’il est déplacé ou copié vers une autre banque de messages, un rapport de lecture sera probablement toujours envoyé. S’il est déplacé ou copié dans la banque de messages actuelle, un rapport de lecture peut ou non être envoyé.
Un rapport non lu indique que l’indicateur de lecture d’un message n’est pas défini et que le message n’a pas été ouvert avant d’être placé dans le dossier Éléments supprimés ou avant l’expiration d’une limite de temps. Les clients peuvent appeler la méthode IMessage ::SetReadFlag ou IMAPIFolder ::SetReadFlags pour définir ou effacer l’indicateur de lecture d’un message.
Rapports d’état de remise
La remise status est reflétée dans un rapport de remise, qui est envoyé lorsqu’un message a atteint son destinataire prévu, et dans un rapport non remis, qui est envoyé lorsqu’un message n’a pas pu atteindre un destinataire. Remise status les rapports sont envoyés au destinataire représenté par l’identificateur d’entrée dans la propriété PR_REPORT_ENTRYID ou à l’expéditeur si cette propriété n’est pas présente.
Les rapports de remise sont envoyés par demande uniquement et n’incluent pas le message d’origine. Les rapports non remis sont envoyés automatiquement, sauf si une demande de suppression est effectuée. Les rapports non remis incluent le message d’origine en tant que pièce jointe pour permettre au destinataire du rapport de renvoyer le message au cas où le blocage de la remise ne poserait plus de problème. Le message joint ressemble à l’original tel qu’il existait lorsque la méthode IMessage ::SubmitMessage a été appelée pour l’envoyer initialement.
Un ou plusieurs rapports de remise status sont générés par les fournisseurs de transport lorsqu’ils appellent la méthode IMAPISupport ::StatusRecips. Les fournisseurs de transport composent une liste de destinataires pour un message. Qu’un destinataire reçoive ou non un rapport et que le type de rapport généré dépend des éléments suivants :
Les rapports de remise sont adressés aux destinataires qui définissent la propriété PR_ORIGINATOR_DELIVERY_REPORT_REQUESTED (PidTagOriginatorDeliveryReportRequested) sur TRUE avant que le message ne soit placé dans la banque de messages.
Les rapports non remis sont remis aux destinataires qui n’ont pas défini la propriété PR_ORIGINATOR_NON_DELIVERY_REPORT_REQUESTED (PidTagOriginatorNonDeliveryReportRequested) sur FALSE.
Presque toutes les informations nécessaires à l’affichage d’un rapport de non-remise sont contenues dans la table des destinataires du message joint. Quelques propriétés proviennent du rapport lui-même. Pour les rapports de remise, les informations nécessaires sont contenues dans la table des destinataires du rapport et dans quelques propriétés de rapport.
Les rapports sont des messages avec des classes de message distinctes, basées sur la classe du message envoyé. La plupart des fournisseurs de services utilisent une convention de nommage selon laquelle la classe de message est composée de plusieurs parties séparées par des points. La première partie est « Rapport » et la dernière est une constante qui représente le type de rapport. La partie centrale est réservée à la classe du message envoyé. Par exemple, étant donné qu’un rapport de remise utilise la récupération d’urgence constante, classe de message pour un rapport de remise sur un ipm. Le message de note est Report.IPM.Note.DR.
Le tableau suivant présente les constantes qui représentent les types de rapports.
Type de rapport | Constante utilisée dans la classe de message |
---|---|
Lecture |
IPNRN |
Non lu |
IPNNRN |
Remise |
DR |
Non-livraison |
NDR |
Les clients interactifs peuvent afficher des messages de rapport à l’aide de formulaires standard fournis par MAPI ou de formulaires personnalisés qui ont été inscrits auprès du gestionnaire de formulaires pour la classe de message du rapport. Clients qui reçoivent un rapport de non-remise pour un ipm. Un message de remarque, par exemple, peut afficher le formulaire MAPI standard qui présente une liste des destinataires ayant échoué et une raison suggérée pour l’échec. Le formulaire permet également à l’utilisateur de renvoyer le message, si vous le souhaitez.