Envoyer un message actionnable par courrier électronique dans Office 365

Scénarios pris en charge

L’envoi de messages exploitables par courrier électronique est pris en charge dans les scénarios suivants :

  • Le destinataire doit être une personne et non un groupe.
  • Le destinataire doit être visible sur le message. Le destinataire ne doit pas être indiqué dans le champ Cci.
  • Le destinataire doit disposer d’une boîte aux lettres dans Outlook.com ou Exchange Online dans Office 365.

Création d’une carte de message intégrant des actions

Commençons par créer une carte de message intégrant des actions. Nous allons commencer par quelque chose de simple, juste une carte de base avec une action Action.Http et une action Action.OpenUrl. Nous allons utiliser le Designer Message actionnable pour concevoir le carte.

Importante

L’exemple de balisage de carte dans cette rubrique supprime la originator propriété. Cela fonctionne dans un scénario de test, où le destinataire est la même personne que l’expéditeur. Lors de l’envoi de messages actionnables à d’autres personnes, la propriété originator doit être définie sur un ID de fournisseur valide généré par le tableau de bord de développement de courriers électroniques actionnables. Si cette propriété est laissée vide lors de l’envoi du courrier électronique à d’autres personnes, la carte est supprimée.

Accédez à la Designer Message actionnable et collez le code JSON suivant :

{
  "type": "AdaptiveCard",
  "version": "1.0",
  "body": [
    {
      "type": "TextBlock",
      "text": "Visit the Outlook Dev Portal",
      "size": "large"
    },
    {
        "type": "TextBlock",
        "text": "Click **Learn More** to learn more about Actionable Messages!"
    },
    {
      "type": "Input.Text",
      "id": "feedbackText",
      "placeholder": "Let us know what you think about Actionable Messages"
    }
  ],
  "actions": [
    {
      "type": "Action.Http",
      "title": "Send Feedback",
      "method": "POST",
      "url": "https://...",
      "body": "{{feedbackText.value}}"
    },
    {
      "type": "Action.OpenUrl",
      "title": "Learn More",
      "url": "https://learn.microsoft.com/outlook/actionable-messages"
    }
  ]
}

N’hésitez pas à tester cet exemple simple dans la Designer. Vous pouvez consulter les informations de référence sur les carte adaptatives pour plus d’informations sur les champs disponibles. Une fois que vous avez une carte qui vous convient, vous pouvez l’envoyer.

Envoi de messages intégrant des actions par courrier électronique

Importante

Vous pouvez concevoir et tester des messages actionnables à l’aide de l’Designer message actionnable, qui vous permet de vous envoyer des messages actionnables. Vous pouvez également vous envoyer des messages intégrant des actions à vous-même à l’aide du serveur SMTP Office 365. Vous ne pourrez pas envoyer de messages intégrant des actions à d’autres utilisateurs tant que vous ne vous serez pas inscrit à l’aide du tableau de bord du développeur de messages intégrant des actions.

Pour intégrer une carte de message intégrant des actions dans un courrier électronique, nous devons inclure la carte dans une balise <script>. La balise <script> est ensuite inséré dans le <head> du corps du code HTML du courrier électronique.

Remarque

Le corps du courrier électronique intégrant des actions DOIT être au format HTML, car la carte JSON doit être encapsulée dans une balise <script>. Les messages en texte brut ne sont pas pris en charge.

  1. Ajouter l’attribut hideOriginalBody pour contrôler ce qui se produit avec le corps du courrier électronique. Dans ce cas, nous définissons l’attribut true afin que le corps ne soit pas affiché.

    {
      "type": "AdaptiveCard",
      "version": "1.0",
      "hideOriginalBody": true,
      "body": [
        {
          "type": "TextBlock",
          "text": "Visit the Outlook Dev Portal",
          "size": "large"
        },
        {
            "type": "TextBlock",
            "text": "Click **Learn More** to learn more about Actionable Messages!"
        },
        {
          "type": "Input.Text",
          "id": "feedbackText",
          "placeholder": "Let us know what you think about Actionable Messages"
        }
      ],
      "actions": [
        {
          "type": "Action.Http",
          "title": "Send Feedback",
          "method": "POST",
          "url": "https://...",
          "body": "{{feedbackText.value}}"
        },
        {
          "type": "Action.OpenUrl",
          "title": "Learn More",
          "url": "https://learn.microsoft.com/outlook/actionable-messages"
        }
      ]
    }
    
  2. Incluez le fichier JSON résultant dans une balise <script> de type application/adaptivecard+json.

    Remarque

    Si vous utilisez le format de l’ancienne carte message plutôt que le format de la carte streaming, le<script> type de balise DOIT être application/ld+json.

    <script type="application/adaptivecard+json">{
      "type": "AdaptiveCard",
      "version": "1.0",
      "hideOriginalBody": true,
      "body": [
        {
          "type": "TextBlock",
          "text": "Visit the Outlook Dev Portal",
          "size": "large"
        },
        {
            "type": "TextBlock",
            "text": "Click **Learn More** to learn more about Actionable Messages!"
        },
        {
          "type": "Input.Text",
          "id": "feedbackText",
          "placeholder": "Let us know what you think about Actionable Messages"
        }
      ],
      "actions": [
        {
          "type": "Action.Http",
          "title": "Send Feedback",
          "method": "POST",
          "url": "https://...",
          "body": "{{feedbackText.value}}"
        },
        {
          "type": "Action.OpenUrl",
          "title": "Learn More",
          "url": "https://learn.microsoft.com/outlook/actionable-messages"
        }
      ]
    }
    </script>
    
  3. Générez un document HTML pour représenter le corps du courrier électronique et incluez la balise <script> dans <head>.

    <html>
    <head>
      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
      <script type="application/adaptivecard+json">{
        "type": "AdaptiveCard",
        "version": "1.0",
        "hideOriginalBody": true,
        "body": [
          {
            "type": "TextBlock",
            "text": "Visit the Outlook Dev Portal",
            "size": "large"
          },
          {
            "type": "TextBlock",
            "text": "Click **Learn More** to learn more about Actionable Messages!"
          },
          {
            "type": "Input.Text",
            "id": "feedbackText",
            "placeholder": "Let us know what you think about Actionable Messages"
          }
        ],
        "actions": [
          {
            "type": "Action.Http",
            "title": "Send Feedback",
            "method": "POST",
            "url": "https://...",
            "body": "{{feedbackText.value}}"
          },
          {
            "type": "Action.OpenUrl",
            "title": "Learn More",
            "url": "https://learn.microsoft.com/outlook/actionable-messages"
          }
        ]
      }
      </script>
    </head>
    <body>
    Visit the <a href="https://learn.microsoft.com/outlook/actionable-messages">Outlook Dev Portal</a> to learn more about Actionable Messages.
    </body>
    </html>
    
  4. Envoyez un message via SMTP avec le code HTML comme corps.

Envoi du message

Pour obtenir des exemples d’envoi de messages, consultez les articles suivants.

Exécution des actions

Pour consulter des exemples d’actions, consultez les rubriques suivantes.

  • Messages actionnables Bonjour : un exemple de projet avec le déploiement Azure en un clic. Cet exemple est une solution de message actionnable de bout à bout simple pouvant être utilisée dans un délai de 10 minutes et sert de référence pour la création d’un point de terminaison d’action de production.

Outils de résolution de problèmes

  • Débogueur de messages exploitables : complément Outlook qui permet aux développeurs d’inspecter la charge utile de la carte dans leurs messages exploitables et d’identifier la raison pour laquelle la carte n’affiche aucun rendu.