メッセージの種類
このセクションでは、様々な種類のメッセージとチャネルに対してメッセージAPIリクエストを構成する方法の概要を、いくつかの出力例を交えながら説明します。
メッセージの構造は、コミュニケーションに使用するメッセージの種類に応じて、ヘッダー、本文、フッター、ボタンなど、いくつかのセクションに分かれています。この構造は、ユーザーの電話でメッセージがどのようにレンダリングされるかに直感的に従います。例えば、画像またはWhatsAppテンプレートの一部をヘッダーテキストに含めることができます。メッセージAPI はこうしたことをすべて可能にします。
すべてのメッセージングチャネルが全種類のメッセージをサポートしているわけではありません。各チャネルでサポートされているメッセージの種類の詳細については、各チャネルについて詳しく記載しているドキュメントのページをご参照ください。
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- Messenger
- MMS
- RCS
- SMS
- Viberボット
- Viberビジネスメッセージ
テキスト
メッセージAPIを使用して簡単なテキストのメッセージを送信します。
テキストメッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- Messenger
- MMS
- RCS
- SMS
- Viber Bots
- Viber Business Messages
例
出力
画像
メッセージで画像を送信します。
画像は、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- Messenger
- MMS
- RCS
- Viber Bots
- Viber Business Messages
画像付きのSMSを送信すると、画像のURLがレンダリングされます。
画像例
出力
ヘッダー付き画像
メッセージヘッダー内にキャプション用テキストなどのデータを追加します。
ヘッダー付きの画像は、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- MMS
ヘッダー付きの画像例
出力
ドキュメント
選択したメッセージングチャネルを介してファイルを送信します。
ドキュメントメッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- Messenger
- MMS
- Viber Bots
- Viber Business Messages
チャネルの可用性と出力は、リクエストに含めるメッセージのエレメントによって異なります。例えば、Viber Business Messagesはファイル名が付いているドキュメントをサポートしていません。
メッセージの種類としてドキュメントをネイティブにサポートしていないチャネルを使用している場合は、APIリクエストの一部として adaptationMode パラメーターを使用して、サポートされていないエレメントを削除し、エラーをスローせずにメッセージを配信できます。
ドキュメントの例
出力
ビデオ
コミュニケーションの一環としてビデオを送信します。
ビデオメッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- Messenger
- MMS
- RCS
- Viber Bots
- Viber Business Messages
動画をメッセージの種類としてネイティブにサポートしていないチャネルを使用している場合は、APIリクエストの一部として adaptationMode パラメーターを使用すると、サポートされていないエレメントを削除し、エラーをスローせずにメッセージを配信できます。
ビデオの例
出力
ボタン
コミュニケーションにボタンを追加すると、インタラクションを容易にします。
ボタンは、以下のチャネルでネイティブにサポートされています:
- Apple Messages for Business
- Instagram DM
- LINE (LON)
- Messenger
- RCS
- Viber Bots
- Viber Business Messages
Viber Business Messagesは、メッセージ内の単一のボタンのみをサポートします。従って、このチャネルを使う時は、複数のボタンブロックではなく、1つのボタンブロックをリクエストに含めるようにする必要があります。
ボタンをメッセージの種類としてサポートしていないチャネルを使用している場合は、APIリクエストの一部として adaptationMode パラメーターを使用すると、サポートされていないエレメントを削除し、エラーをスローせずにメッセージを配信できます。
ボタンの例
出力
連絡先メッセージ
連絡先メッセージ の種類を使用すると、ユーザーは連絡先の詳細を受信者に直接送信して、アプリ内で連絡先情報を表示、連絡先メッセージを送信、または連絡先情報を保存できます。この機能は、ユーザーがアクション可能な連絡先の詳細を提供できるようにすることで、シームレスな情報共有をサポートし、受信者はそれを保存したり、インスタントコミュニケーションを開始するために使用したりできるようにします。
連絡先メッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています:
- Viber Bots
カルーセル
カルーセルメッセージを使用すると、顧客は1つのメッセージ内で複数のリッチカードを送信できます。ユーザーは、リッチカードを水平方向にスクロールしたり、様々なアイテムを比較したり、特定のアクションを実行して個々のカードを操作したりできます。
カルーセルメッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています:
- Instagram DM
- Messenger
- RCS
- Viber Bots
WhatsApp Flows
インタラクティブなWhatsApp Flowsを送信して、チャット内で直接構造化されたマルチステップタスクをユーザーに案内します。ユースケースには、予定のスケジュール設定、イベントへの登録、フィードバックの送信などがあります。フローは、標準のメッセージや単純なボタンと比較して、アプリのようなエクスペリエンスをより豊富に提供します。
メッセージAPIを使用してWhatsAppフローを送信するには、フローの送信セクションを参照してください。
メッセージ API を使用する場合、フローは、ユーザーによって開始された 24 時間のセッション ウィンドウ内に 自由形式のメッセージ として送信できます。
ウィンドウ外でフローを開始するには、フロー テンプレートを使用し、テンプレート メッセージ として送信します。詳細については、WhatsApp フロー および WhatApp フロー over API を参照してください。
フローは、以下のチャネルでネイティブにサポートされています:
メッセージAPI経由のフロー例
テンプレート
事前定義されたテンプレートを使ってメッセージを送信します。
テンプレートメッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています。
- LINE (LON)
- Viber Business Messages
メッセージテンプレートには、ヘッダー、本文、フッター、ボタンなど、様々なセクションが含まれています。メッセージAPIを使用してテンプレートメッセージを送信する場合、コミュニケーションにヘッダーやボタンといったエレメントを含めるかどうかは任意です。
ヘッダー付きのテンプレートは、テンプレート化されたメッセージでメディアを送信することを表します。リクエストの例については、以下のヘッダー付きテンプレートをご参照ください。
テンプレートの例
出力
ヘッダー付きのテンプレート [#templates-with-headers-templates]
ヘッダー内にデータが含まれているテンプレートメッセージを送信したい時は、メッセージAPIを使用します。
- テキスト
- 画像
- ドキュメント
- ビデオ
- Location (位置情報)
以下の例は、メッセージAPIを使用したドキュメントヘッダー付きのWhatsAppテンプレートを示しています。
また、コミュニケーションシナリオの必要に応じて、画像、位置情報、ビデオを含むようにヘッダー コンテンツを調整することもできます。
ヘッダー付きのテンプレートの例
出力
ボタン付きテンプレート [#templates-with-buttons-templates]
テンプレートにはボタンを含めることもできます。次の例は、メッセージAPI を使用してボタン付きのテンプレートをレンダリングする方法を示しています。
次の種類のボタンをレンダリングできます:
- URL - クリックすると、指定したURLにユーザーをリダイレクトします。
- Quick reply (クイック返信) - ユーザーが選択できる事前定義されたクイック返信オプションを提供します。
- Flow (フロー) - 事前定義されたインタラクティブなフローにユーザーを誘導します。
- Copy code (コードのコピー) - ユーザーは、クーポンなどの特定のコードをメッセージから直接コピーできます。
- Catalog (カタログ) - 商品カタログを表示し、ユーザーがインターフェイス内で商品を閲覧できるようにします。
- Multi-product (複数商品) - 1つのテンプレートで複数の商品を紹介し、複数の商品アイテムの概要を同時に表示します。
ボタン付きのテンプレートの例
出力
RCSテンプレート (インドのみ) [#rcs-templates-india-only-templates]
インドの顧客と通信する場合、RCS メッセージ テンプレートの利用が不可欠です。この要件は、スパム対策規制の悪用を防ぐことを目的としていますが、顧客との通信に RCS を活用することは可能です。インドでテンプレートを使用して RCS メッセージを送信する方法については、詳細 をご覧ください。
Viberビジネスメッセージテンプレート [#viber-bm-templates-templates]
メッセージAPIを使用してViber BMテンプレートを送信する前に、ViberトランザクションテンプレートAPIを使用してテンプレートを作成し、承認する必要があります。手順は、テンプレートの作成と送信を参照してください。
テンプレート作成時に返される templateId UUID を template.templateName の値として使用します。フィールド名は誤解を招きます:人間が読める名前ではなく、UUIDを取ります。
content.body オブジェクトにパラメーター値を "type": "TEXT" で渡します。中括弧なしでプレースホルダー名をキーとして使用します: {{1}} は "1" になり、{{2}} は "2" になります。OTP(ワンタイムパスワード)テンプレートの場合は、キーとして「pin」を使用します。
例
ステッカー
ステッカー画像は、会話にパーソナリティやエンゲージメントを加えたい時に送信します。ステッカーは通常、ユーザーのインタラクションを強化したり、感情を伝えたり、楽しく視覚的な形式でブランディングを強調したりできる静止画像またはアニメーション画像です。
ステッカーは、以下のチャネルでネイティブにサポートされています:
- Viber Bots
Location (位置情報)
位置情報メッセージを使用すると、緯度と経度の座標をシームレスに共有し、ユーザーとのモードのコンテキストに応じたリアルタイムコミュニケーションを提供できます。これにより、他のメッセージングコンテンツと共に位置データを送信する機能が強化されます。
位置情報メッセージの種類に分類されるメッセージは、以下のチャネルでネイティブにサポートされています。
- Viber Bots
WhatsAppの位置情報メッセージは、受信者が過去24時間以内にビジネスに連絡した場合にのみ正常に配信されます。それ以外の場合は、 テンプレートメッセージ を使用することをお勧めします。
位置情報リクエストボタン
Request location (位置情報リクエスト) ボタンは、メッセージインターフェイスから位置情報を直接共有するようユーザーに依頼したい時に使用します。この機能は、配送の調整や位置情報ベースのサポートでユーザーを支援する場合など、位置情報を必要とするケースに最適です。ユーザーがこのボタンを選択すると、住所や座標を手動で入力しなくても現在地を共有できます。
Request location (位置情報リクエスト) ボタンは、以下のチャネルでネイティブにサポートされています:
- RCS