Partager via


Entités d’activité de courrier électronique

L’activité de courrier électronique vous permet de suivre et de gérer les communications par courrier électronique avec les clients. Dynamics 365 Customer Engagement (on-premises) contient le logiciel Email Router qui gère l’acheminement du courrier électronique vers ou depuis Dynamics 365 Customer Engagement (on-premises). L’activité de courrier électronique est assurée via des protocoles de messagerie. Email Router prend en charge les protocoles de messagerie suivants : services web Exchange, POP3 et SMTP. En plus du logiciel Email Router, l’activité de courrier électronique peut aussi être assurée en utilisant Dynamics 365 for Outlook.

Actions sur une activité de courrier électronique

À l’aide des services Web Dynamics 365 Customer Engagement, vous pouvez effectuer les actions suivantes sur une activité de courrier électronique :

  • Créer, extraire, mettre à jour et supprimer l’activité de courrier électronique.

  • Envoyer des messages électroniques ou envoyer des messages électroniques en utilisant les modèles de courrier électronique (Template). Pour plus d’informations sur les modèles de courrier électronique, voir Entité Template.

  • Joindre des fichiers sous forme de pièces jointes en utilisant l’attribut (ActivityMimeAttachment) dans le message électronique.

  • Envoyer des messages électroniques en publipostage ou en nombre.

  • Configurer les messages électroniques entrants à livrer à un utilisateur ou à une file d’attente depuis Microsoft Exchange Server, ou les messages sortants à envoyer depuis un utilisateur ou une file d’attente à Microsoft Exchange Server. Pour plus d’informations sur la configuration des messages électroniques entrants pour les files d’attente, voir Configurer la messagerie électronique pour les messages entrants.

    Si les attributs d’organisation Organization.RequireApprovalForuserEmail et Organization.RequireApprovalForQueueEmail (traitent les messages électroniques uniquement pour les utilisateurs/files d’attente approuvés) sont définis sur true (1), les comportements suivants surviennent : les messages électroniques sont livrés ou envoyés depuis un utilisateur ou une file d’attente uniquement si l’adresse de messagerie principale de l’utilisateur ou de la file d’attente est approuvée. Les attributs SystemUser.EmailRouterAccessApproval et Queue.EmailRouterAccessApproval indiquent le statut de l’adresse de messagerie principale de l’utilisateur ou de la file d’attente respectivement, et la valeur doit être définie sur 1. Sinon, les messages entrants et sortants sont bloqués. Vous pouvez mettre à jour l’enregistrement d’utilisateur ou de file d’attente pour modifier la valeur d’attribut, s’il n’est pas déjà à l’état Approuvé, si votre compte d’utilisateur possède déjà le privilège prvApproveRejectEmailAddress.

Note

Dans Dynamics 365 for Customer Engagement, lֹ’attribut Email.StatusCode ne peut pas être null.

Envoi en nombre

Dynamics 365 Customer Engagement (on-premises) prend en charge l’envoi de courriers électroniques à une grande liste de destinataires via une demande d’envoi en nombre. Lorsqu’une demande d’envoi en nombre est envoyée à Dynamics 365 Customer Engagement (on-premises), une opération asynchrone est créée dans la file d’attente de service asynchrone de service qui envoie les messages électroniques en utilisant un processus en arrière-plan. Les performances système sont ainsi améliorées.

Les messages SendBulkMailRequest et BackgroundSendEmailRequest sont utilisés pour envoyer des messages électroniques en nombre. Le texte suivant répertorie la séquence utilisée pour envoyer des messages électroniques en nombre :

  1. Exécutez la demande SendBulkMail. Cette demande contient une requête qui sélectionne les destinataires cibles de courrier électronique et un modèle de courrier électronique pour composer chaque message.

  2. Le service asynchrone crée les activités de courrier électronique pour chaque destinataire.

  3. Le service asynchrone envoie chaque message électronique. Les messages électroniques ont un statut d’envoi « En attente ».

  4. Le routeur de messagerie, Dynamics 365 for Outlook, ou un composant d’envoi de courriers électroniques tiers interroge Dynamics 365 Customer Engagement (on-premises) concernant les messages électroniques en attente, et s’il en trouve un, il le charge à l’aide de la demande BackgroundSendEmail.

  5. La demande BackgroundSendEmail exécute les opérations suivantes : vérifie si des messages électroniques en attente sont présents, télécharge le message électronique vers l’appelant du message BackgroundSendEmailRequest et synchronise les téléchargements s’il y a plusieurs appelants.

  6. L’appelant du message BackgroundSendEmailRequest reçoit le message électronique téléchargé et l’envoie.

Pièces jointes du courrier électronique

Les pièces jointes du courrier électronique sont des fichiers pouvant être joints à des messages électroniques ou des modèles de courrier électronique. Un fichier joint peut être tout format de fichier informatique standard comprenant des documents Office Word, des feuilles de calcul Office Excel, des fichiers CAD et des fichiers PDF. Vous pouvez joindre plusieurs fichiers comme pièces jointes d’un courrier électronique ou d’un modèle de courrier électronique. La taille maximale des fichiers pouvant être chargée est déterminée par la propriété Organization.MaxUploadFileSize. Cette propriété est définie sous l’onglet Courrier électronique des Paramètres système de l’application Dynamics 365. Ce paramètre limite la taille des fichiers pouvant être joints à des messages électroniques, des notes et des ressources web. Le paramètre par défaut est 5 Mo.

Pour joindre une pièce jointe de courrier électronique à un courrier électronique ou un modèle de courrier électronique, utilisez les attributs ActivityMimeAttachment.ObjectId et ActivityMimeAttachment.ObjectTypeCode lorsque vous créez ou mettez à jour une activité d’enregistrement de pièce jointe MIME.

L’exemple de code suivant montre comment joindre une pièce jointe de courrier électronique à un message électronique :

ActivityMimeAttachment _sampleAttachment = new ActivityMimeAttachment{  
    ObjectId = new EntityReference(Email.EntityLogicalName, _emailId),  
    ObjectTypeCode = Email.EntityLogicalName,  
    Subject = "Sample Attachment”,  
    Body = System.Convert.ToBase64String(new ASCIIEncoding().GetBytes("Example Attachment")),  
    FileName = "ExampleAttachment.txt"};  

De même, pour joindre la pièce jointe de courrier électronique à un modèle de courrier électronique au lieu d’un courrier électronique, remplacez les valeurs des attributs ActivityMimeAttachment.ObjectId et ActivityMimeAttachment.ObjectTypeCode comme suit dans le code ci-dessus :

ObjectId = new EntityReference(Template.EntityLogicalName, _templateId), ObjectTypeCode = Template.EntityLogicalName,  

Pour obtenir un exemple de code complet sur la création de pièces jointes au courrier électronique, voir Exemple : créer, récupérer, mettre à jour et supprimer les pièces jointes au courrier électronique.

Réutilisation de pièces jointes de courrier électronique

Lorsque vous créez un enregistrement de pièce jointe de courrier électronique, le fichier joint est enregistré sous forme d’objet BLOB fichier. L’attribut ActivityMimeAttachment.AttachmentId de l’enregistrement de pièce jointe de courrier électronique identifie de façon unique l’objet BLOB fichier. Cette opération sert à faciliter la réutilisation des pièces jointes de courrier électronique avec d’autres enregistrements de courrier électronique ou de modèle de courrier électronique, sans créer et stocker plusieurs copies du même fichier dans la base de données.

Pour réutiliser une pièce jointe existante :

  1. Extrayez l’enregistrement ActivityMimeAttachment contenant le fichier joint à réutiliser, comme illustré dans l’exemple de code suivant :

    ActivityMimeAttachment retrievedAttachment = (ActivityMimeAttachment)_serviceProxy.Retrieve(ActivityMimeAttachment.EntityLogicalName, _emailAttachmentId, new ColumnSet(true));  
    
  2. Créez un enregistrement de pièce jointe de courrier électronique, associez-le à l’enregistrement de courrier électronique ou de modèle de courrier électronique et faites-le pointer vers le fichier joint de l’enregistrement ActivityMimeAttachment extrait, comme le montre l’exemple de code suivant :

    ActivityMimeAttachment _reuseAttachment = new ActivityMimeAttachment{  
        ObjectId = new EntityReference(Email.EntityLogicalName, _emailId),  
        ObjectTypeCode = Email.EntityLogicalName,  
        Subject = "Sample Attachment”,  
        AttachmentId = retrievedAttachment.AttachmentId};  
    

    Étant donné que vous réutilisez un fichier joint existant, vous n’avez pas besoin de spécifier les valeurs d’attribut ActivityMimeAttachment.Body et ActivityMimeAttachment.FileName lorsque vous créez et associez des enregistrements de pièces jointes aux courriers électroniques ou modèles de courrier électronique.

Voir aussi

Entités d’activité
Exemple de code pour les entités d’activité
Entité Email
Entité ActivityMimeAttachment