テンプレートの作成と送信
ViberビジネスメッセージのトランザクションおよびOTP(ワンタイムパスワード)テンプレートを使用すると、Viberを介して事前に承認された通知と確認コードをエンドユーザーに送信できます。NTT CPaaS APIまたはWebインターフェースを使用して、テンプレートの作成、承認状況の確認、テンプレートメッセージの送信、不要になったテンプレートの削除を行います。
トランザクション テンプレート は、注文確認、配送の更新、予約のリマインダーなどの通知用です。OTP(ワンタイムパスワード) テンプレート は、認証フロー、確認コード、およびエンド ユーザーに 1 回限りの PIN を配信する必要があるあらゆるシナリオ用です。
開始する前に、次の点を確認してください。
- アカウントで
viber-bm:manageスコープが有効になっています。NTT CPaaS アカウント マネージャーに連絡して、スコープを有効にしてください。 - 承認されたViber送信者がいる。送信者登録は、Viber Business Messages入門を参照してください。
テンプレート本文の制約、サポートされている言語、および承認ステータスについては、Viberメッセージテンプレートを参照してください。
テンプレートを作成する
トランザクションテンプレートまたは OTP(ワンタイムパスワード) テンプレートを作成するには、 テンプレート登録エンドポイントにPOSTリクエストを送信します。
POST /viber/1/senders/{sender}/templates
{sender}を承認済みのViber送信者名に置き換えます。
レート制限: 25 リクエスト/秒。
トランザクション テンプレートを作成する
OTP(ワンタイムパスワード)テンプレートを作成する
OTP(ワンタイムパスワード)テンプレートには、テンプレート本文に{{pin}}という名前のパラメータを含める必要があります。このパラメータのないテンプレートは、作成時に拒否されます。
要求が成功すると、テンプレートの詳細を含む201 Createdが返されます。
応答から templateId を保存します。承認ステータスの確認、テンプレートの送信、およびテンプレートの削除に必要です。
Web インターフェイスを使用してテンプレートを作成する
また、NTT CPaaSのWebインターフェースを使用してテンプレートを作成することもできます。このメソッドは言語選択をサポートしていません。デフォルト以外の言語を指定するには、APIを使用します。
-
Web インターフェイスで、チャネルと番号 > チャネル > Viber for Business > 送信者 に移動します。
-
テンプレートを作成する送信者を選択し、[テンプレートの作成] を選択します。
-
テンプレートタイプ (トランザクションテンプレート または OTP(ワンタイムパスワード) テンプレート) を選択します。
-
[デザイン] タブに、メッセージの内容 (最大 875 文字) を入力します。
-
[パラメーター] タブで、パラメーター (最大 5 つ) を作成します。連続するパラメータは、少なくとも 3 つの非空白文字、非句読点文字で区切ります。
-
中括弧 アイコンを使用して、メッセージ本文にパラメーターを挿入します。
-
リストから必要なパラメータを選択します。
-
テンプレートの登録を選択します。確認画面にテンプレート ID が表示されます。
Web インターフェイスは言語選択をサポートしていません。言語を指定するには、API を使用します。確認画面からテンプレートIDを保存します。
テンプレートの承認を確認する
テンプレートを作成すると、コンプライアンスの審査が行われている間、テンプレートは「保留中」ステータスになります。承認は数秒以内に完了しますが、最大 24 時間かかる場合があります。テンプレートは、ステータスが「承認済み」になった後にのみ送信してください。
テンプレートが拒否される原因については、コンプライアンスガイドラインを参照してください。
GETリクエストを送信してステータスを確認します。
承認済みのテンプレートは、以下を返します。
次の表は、考えられるテンプレートの状態を示しています。
| 地位 | 意味 | 送信できますか? |
|---|---|---|
| 保留 中 | 審査待ち | いいえ |
| 承認 | すぐに使える | はい |
| 減少 | 審査に合格しませんでした。新しいテンプレートを作成します。 | いいえ |
ステータスがDECLINEDの場合は、テンプレートのテキストをコンプライアンスガイドライン(/viber/business-messages/compliance-guidelines)に照らして確認し、修正したテンプレートを作成します。一般的な原因: 最後の単語がプレースホルダーであるか、コンテンツに販促資料が含まれています。
Web インターフェイスでの承認の確認
-
Web インターフェイスで、チャネルと番号 > チャネル > Viber for Business > 送信者 に移動します。
-
確認する送信者に対して [テンプレートの表示] を選択します。
-
送信された各テンプレートのテンプレート ID、ステータス、および作成日を表示します。
-
テンプレートのテキストを表示するには、テンプレートの横にある展開アイコンを選択します。
テンプレート メッセージを送信する
テンプレートが「承認済み」ステータスになったら、テンプレートを使用して 1 人以上の受信者にメッセージを送信します。POST /viber/2/messagesエンドポイントを使用し、content.typeを"TEMPLATE"に設定します。
エンドポイントの完全な仕様については、 Viber Business Messages APIリファレンスを参照してください。
parameters オブジェクトを構築するときは、プレースホルダー名から二重中括弧を取り除いてキーを形成します: {{firstname}} は "firstname" になり、{{orderno}} は "orderno" になります。
次の表に、content オブジェクト フィールドを示します。
| 畑 | 種類 | 必須 | 形容 |
|---|---|---|---|
type | 文字列 | はい | "TEMPLATE" である必要があります。 |
templateId | 文字列 | はい | テンプレートの作成時に返される ID |
language | 文字列 | はい | サポートされている言語リストの ISO 言語コード |
parameters | オブジェクト | はい | 各キーが中括弧なしでプレースホルダー名であるキーと値のペア (たとえば、{{firstname}} は "firstname" になります) |
トランザクションテンプレートメッセージの送信
OTP(ワンタイムパスワード) テンプレート メッセージを送信する
OTP(ワンタイムパスワード)テンプレートの場合、parametersオブジェクトには、実際のワンタイムパスワード値にマッピングされたキー「pin」(中括弧なし)が含まれている必要があります。
ブロードキャストは、OTP(ワンタイムパスワード)テンプレートをテストすることを目的としています。本番環境では、ユーザーが開始する認証イベントに応答して、API を介してプログラムで OTP(ワンタイムパスワード) メッセージを送信します。
ブブロードキャストを使用してテンプレートメッセージを送信する
-
Web インターフェイスで、ブロードキャスト に移動します。
-
ブロードキャストの作成 を選択します。
-
チャンネルとして Viber を選択します。チャンネルを切り替えるには、チャンネル名を選択します。
-
プロファイル名、電話番号、タグ、またはセグメントで受信者を追加します。送信者を選択します。
-
[コンテンツ] で、コンテンツ領域を選択します。
-
[メッセージ コンテンツ] リストから [テンプレート] を選択します。
-
承認済みテンプレートのリストから使用するテンプレートを選択します。
-
必要なパラメータの値を入力します。アップロードしたExcelファイルまたはNTT CPaaS Peopleモジュールから属性を挿入するには、パラメータフィールドの中括弧アイコンを選択します。
-
パラメータ値に問題がなければ、設計完了を選択します。
-
必要な設定の更新が完了したら、プレビューに進む を選択します。
-
ブロードキャストの設定を確認し、起動 を選択します。
テンプレートを削除する (API のみ)
不要になったテンプレートを削除します。テンプレートの削除は、API を介してのみ使用できます。Web インターフェイスはテンプレートの削除をサポートしていません。
テンプレートを削除するには、DELETEリクエストを送信します。
レート制限: 毎分 10 リクエスト。
削除に成功すると、応答本文のない204 No Contentが返されます。
削除したテンプレートは復元できません。新しいテンプレートごとに一意のテンプレート ID を使用します。
トラブルシューティング
次の表では、一般的なエラーとその解決方法について説明します。Viberメッセージ配信に関する詳細は、 レポートとインサイトをご参照ください。
| 問題点 | 原因 | 解像 度 |
|---|---|---|
| 401 未承認 | APIキーが見つからないか正しくないか、viber-bm:manageスコープが有効になっていない | Web インターフェイスの Developers > API keys でAPIキーを確認します。viber-bm:manageスコープが有効になっていることをアカウントマネージャーで確認します。 |
| 403 禁断 | 送信者が登録されていないか、APIキーにその送信者に対する権限がない | チャネルと番号 > Viber for Business > 送信者 で送信者を確認します。 |
| テンプレートのステータスは保留中のままです | 承認は非同期で、最大 24 時間かかる場合があります | GET エンドポイントを間隔をあけてポーリングします。24 時間経ってもテンプレートが PENDING のままの場合は、NTT CPaaS サポートにお問い合わせください。 |
| テンプレートのステータスは DECLINED です | テンプレートテキストがViberのガイドラインを満たしていませんでした。一般的な原因: 最後の単語がプレースホルダーであるか、コンテンツに販促資料が含まれています。 | コンプライアンスガイドラインを確認し、改訂されたテンプレートを作成します。 |
| 送信時の 400 Bad Request | templateId が存在しないか、テンプレートが承認されていないか、language 値が正しくありません | 送信する前に、GET エンドポイントでテンプレートのステータスを確認します。 |
| 送信されたメッセージでパラメータが解決されない | parameters オブジェクトのパラメーター キーがプレースホルダー名と一致しません | 中括弧を取り除いてキーを形成します: {{firstname}} は "firstname" になり、{{orderno}} は "orderno" になります。 |
| 400 OTP(ワンタイムパスワード)テンプレート作成時の不正なリクエスト | テンプレート本文に {{pin}} パラメータがありません | OTP(ワンタイムパスワード)テンプレートには、{{pin}}という名前のパラメーターが必要です。テンプレート本文に追加して、再試行してください。 |
| OTP(ワンタイムパスワード)が受信者に配信されない | parameters オブジェクトの "pin" キーがプレースホルダー名と一致しないか、テンプレートが APPROVED ではありません | パラメーター オブジェクトがキーとして "pin" (中括弧なし) を使用していることを確認します。送信する前に、テンプレートのステータスが APPROVED であることを確認します。 |
API認証の詳細については、「API認証](/essentials/api-essentials/api-authentication)を参照してください。