Modèle de média

Le modèle de média vous permet d’envoyer des images, GIF et vidéos sous forme de message structuré avec un bouton en option. Les vidéos et GIF animés envoyés avec le modèle de média peuvent être lus dans la conversation.

Le modèle de média peut être envoyé par le biais de l’API Send et depuis la webview Messenger à l’aide de la fonction beginShareFlow() du SDK Messenger Extensions.

Images et vidéos uniquement

Actuellement, le modèle de média prend uniquement en charge l’envoi d’images et de vidéos. Les fichiers audio ne sont pas pris en charge.

Table des matières

Envoi de média par identifiant de pièce jointe

Pour envoyer une image, envoyez une demande POST à l’API Send, avec la propriété payload dans le corps de la demande, où attachment_id est un identifiant généré à partir de l’API Attachment Upload. Pour les demandes utilisant la propriété attachment_id, les images et les vidéos sons prises en charge.

Pour obtenir tous les détails relatifs aux propriétés de la demande, consultez la référence sur le modèle de média.

Réutilisation des médias issus d’URL Facebook

Les identifiants de pièce jointe ne sont pas pris en charge pour les médias issus d’URL Facebook. Ces fichiers sont déjà mis en cache et doivent être joints au modèle de média avec leur URL Facebook.

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"<PSID>"
  },
  "message":{
    "attachment": {
      "type": "template",
      "payload": {
         "template_type": "media",
         "elements": [
            {
               "media_type": "<image|video>",
               "attachment_id": "<ATTACHMENT_ID>"
            }
         ]
      }
    }    
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>"

Envoi de média par URL Facebook

Le modèle de média vous permet d’envoyer des vidéos et des photos importées sur Facebook en envoyant une demande POST au point de terminaison /messages avec l’URL Facebook dans la propriété url de la demande :

Pour obtenir tous les détails relatifs aux propriétés de la demande, consultez la référence sur le modèle de média.

URL Facebook uniquement

Le modèle de média n’autorise aucune URL externe, uniquement celles sur Facebook. Pour envoyer une image ou une vidéo avec une URL externe, importez-la à l’aide de l’API Attachment Upload et procurez-vous un attachment_id.

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"<PSID>"
  },
  "message":{
    "attachment": {
      "type": "template",
      "payload": {
         "template_type": "media",
         "elements": [
            {
               "media_type": "<image|video>",
               "url": "<FACEBOOK_URL>"
            }
         ]
      }
    }    
  }
}' "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>"

Obtention de l’URL Facebook

Pour obtenir l’URL Facebook d’une image ou d’une vidéo, procédez comme suit :

  1. Cliquez sur la miniature de l’image ou de la vidéo pour ouvrir la vue en grand format.
  2. Copiez l’adresse URL à partir de la barre d’adresse de votre navigateur.

Les URL Facebook doivent être au format de base suivant :

Type de médiaSource du médiaFormat de l’URL

Vidéo

Page Facebook

https://business.facebook.com/<PAGE_NAME>/videos/<NUMERIC_ID>

Vidéo

Compte Facebook

https://www.facebook.com/<USERNAME>/videos/<NUMERIC_ID>/

Image

Page Facebook

https://business.facebook.com/<PAGE_NAME>/photos/<NUMERIC_ID>

Image

Compte Facebook

https://www.facebook.com/photo.php?fbid=<NUMERIC_ID>

Ajout d’un bouton

Des boutons peuvent éventuellement être joints au modèle de média. Le nombre de boutons et les types pris en charge varient selon que vous utilisez le modèle de média avec le beginShareFlow() des SDK Messenger Extensions ou que vous l’envoyez à l’aide de l’API Send :

  • Send API : Jusqu’à trois boutons de n’importe quel type peuvent être joints.
  • beginShareFlow() : Seul un bouton de type URL peut être joint.

Pour ajouter un bouton à votre modèle de média, ajoutez un ensemble buttons à la définition de modèle dans le corps de votre demande.

Pour en savoir plus sur les boutons disponibles, consultez Boutons.

"elements": [
   {
      "media_type": "image",
      "url": "<MEDIA_URL>",
      "buttons": [
         {
            "type": "web_url",
            "url": "<WEB_URL>",
            "title": "View Website",
         }
      ]
   }
]

Réponse de l’API

En cas de réussite, la plate-forme Messenger répondra avec le recipient_id et le message_id du message envoyé :

{
  "recipient_id": "1254477777772919",
  "message_id": "AG5Hz2Uq7tuwNEhXfYYKj8mJEM_QPpz5jdCK48PnKAjSdjfipqxqMvK8ma6AC8fplwlqLP_5cgXIbu7I3rBN0P"
}