メディアテンプレートでは、画像、GIF、動画を構造化メッセージとして、任意のボタンとともに送信できます。メディアテンプレートで送信された動画とアニメーションGIFは、スレッド内で再生できます。
メディアテンプレートは、送信API経由で送信したり、MessengerエクステンションSDKのbeginShareFlow()
機能を使ってMessengerウェブビューから送信したりできます。
現時点では、メディアテンプレートでは画像と動画の送信のみがサポートされています。音声は現在サポートされていません。
画像を送信するには、POST
リクエストを送信APIに送り、リクエスト本文に次のpayload
プロパティを含めます。attachment_id
は、attachment upload APIから生成されたIDです。 attachment_id
プロパティを使用したリクエストでは、画像と動画がサポートされます。
リクエストプロパティについて詳しくは、メディアテンプレートのリファレンスをご覧ください。
添付IDは、Facebook URLからのメディアではサポートされていません。これらのファイルはすでにキャッシュに保存されており、Facebook URLを使用してメディアテンプレートに添付できます。
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>"
メディアテンプレートでは、POST
リクエストを/messages
エンドポイントに送り、リクエストのurl
プロパティにFacebook URLを使用することによって、Facebookにアップロードされた動画や写真を送信できます。
リクエストプロパティについて詳しくは、メディアテンプレートのリファレンスをご覧ください。
メディアテンプレートで使用できるのはFacebookのURLのみで、外部URLは使用できません。外部URLの画像や動画を送信するには、Attachment Upload APIを使用してアップロードし、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>"
画像または動画のFacebook URLを取得するには、以下を行います。
Facebook URLの基本フォーマットは以下のとおりです。
メディアタイプ | メディアソース | URLフォーマット |
---|---|---|
動画 | Facebookページ |
|
動画 | Facebookアカウント |
|
画像 | Facebookページ |
|
画像 | Facebookアカウント |
|
任意で、ボタンをメディアテンプレートに追加できます。サポートされるボタンの数やタイプは、メディアテンプレートをMessengerエクステンションSDKのbeginShareFlow()
とともに使用している場合と、送信APIで送信している場合によって異なります。
Send API
:タイプを問わず、最大3つのボタンを追加できます。beginShareFlow()
:URLタイプのボタンを1つのみ、追加できます。メディアテンプレートにボタンを追加するには、リクエスト本文のテンプレートの定義にbuttons
配列を追加します。
利用可能なボタンについて詳しくは、ボタンをご覧ください。
"elements": [
{
"media_type": "image",
"url": "<MEDIA_URL>",
"buttons": [
{
"type": "web_url",
"url": "<WEB_URL>",
"title": "View Website",
}
]
}
]
成功すると、Messengerプラットフォームから、送信されたメッセージのrecipient_id
とmessage_id
が返されます。
{ "recipient_id": "1254477777772919", "message_id": "AG5Hz2Uq7tuwNEhXfYYKj8mJEM_QPpz5jdCK48PnKAjSdjfipqxqMvK8ma6AC8fplwlqLP_5cgXIbu7I3rBN0P" }