送信と追跡
SMSは、ビジネスユースケースに合わせて複数の送信および配信オプションをサポートしています。
デフォルトでは、SMS は、送信者名に起因する最大 160 文字 (Unicode では 70 文字) の単純なテキストメッセージを配信します。文字数制限を超えると、メッセージはパーツに分割され、受信者のデバイス上で再構成されます。
フラッシュSMS [#flash-sms]
フラッシュ SMS は、受信トレイに保存されずにモバイル画面に直接表示されるメッセージです。これを使用して、アラートですぐに注意を引くことができます。
- 緊急警報
- 天気予報
- トラフィックの更新
- 時間的制約のある警告
Flash SMS は、即時の可視性が必要で、メッセージのアーカイブが不要な場合に最適です。
複数の受信者への 1 つのメッセージ [#single-message-multiple-recipients]
1 つの要求内で、同じメッセージを複数の宛先に送信できます。この配信モードは、アナウンス、サービス通知、および定義されたグループに送信される時間的制約のあるアラートに適しています。この方法で送信されたメッセージは一括識別子の下にグループ化されるため、配信の追跡とレポートが簡素化されます。各受信者は、独自のステータスと一意のメッセージ識別子を持つ、個別に追跡されたメッセージを受信します。
詳細については、「 SMS メッセージの送信」を参照してください。このエンドポイントは、1 回の要求で多数の受信者への一括メッセージングをサポートします。
1 つのリクエストで複数のパーソナライズされたメッセージを [#multiple-personalized-messages]
1 回の送信で、異なる受信者に異なるメッセージを送信できます。この配信モードは、パーソナライズされたプロモーション、ターゲットを絞ったキャンペーン、顧客固有の通知をサポートします。各メッセージは個別に処理および追跡されますが、グループ化された送信と統合レポートの恩恵を受けることができます。このアプローチにより、受信者ごとに個別の API 呼び出しを必要とせずに、スケーラブルなパーソナライゼーションが可能になります。
詳細については、「 SMS メッセージの送信」を参照してください。このエンドポイントは、1 つのリクエストで複数のメッセージ オブジェクトを送信することをサポートしているため、個別の追跡と配信レポートを維持しながら、異なるメッセージ コンテンツをさまざまな受信者に送信できます。
クエリベースの送信 [#query-based-submission]
統合機能が制限されている環境では、クエリベースの形式を使用して SMS メッセージを送信できます。この配信モードは、リクエスト URL でメッセージ データを直接エンコードし、最小限の統合作業で済み、アプリケーション レベルのプレースホルダーによる動的な値置換をサポートします。このオプションは、配信追跡とステータスレポートへのアクセスを維持しながら、より単純なシステムまたはレガシー環境に柔軟性を提供します。
詳細については、「 クエリパラメータによる SMS メッセージの送信」を参照してください。
SMPPの [#smpp]
SMS は、永続的な TCP 接続を介した高スループット メッセージング用に設計された業界標準プロトコルである Short Message Peer-to-Peer (SMPP) プロトコルを使用して送信できます。
SMPP は、次の場合に使用します。
- 一般的な HTTP API の制限を超える非常に高いメッセージ スループットが必要です
- 既存のSMSC(Short Message Service Center) (SMSC(Short Message Service Center)) と統合している場合
- プラットフォームには、HTTP ベースのリクエストではなく、永続的で低レイテンシーの接続が必要です
SMPP は、確立されたメッセージング インフラストラクチャを持つ通信事業者、アグリゲーター、企業によって一般的に使用されています。標準の Web またはモバイル統合では、代わりに REST API が使用されます。
詳細については、「SMPP 仕様](/essentials/api-essentials/smpp-specification)を参照してください。
URL の短縮とトラッキング [#url-shortening-and-tracking]
SMS に URL が含まれている場合は、それを短縮して受信者のやり取りを追跡できます。URL の短縮とトラッキングにより、次のことが可能になります。
- 短いメッセージ: 長い URL はコンパクトなリンクに置き換えられ、メッセージ コンテンツの文字が保持されます
- クリックトラッキング: どの URL が、何回、誰によってクリックされたかを監視します
- クリックレポート: コールバックサーバーでリアルタイムでクリックデータを受信します
- カスタム ドメイン: 短縮 URL には独自のブランド ドメインを使用します
- プロトコルの削除: オプションで
https://を削除して追加の文字を保存します (一部のデバイスはプロトコルなしでリンクを認識できない場合があります)
URL トラッキングでは、最初に短縮を有効にする必要があります。これらの機能は、API または Web インターフェイスを使用して構成できます。
設定方法の詳細については、「URL短縮]およびURLトラッキングを参照してください。
Webhook 経由の配信レポート [#delivery-reports-via-webhooks]
メッセージの配信レポートを受信するように Webhook URL を設定します。NTT CPaaSは、配信ステータス、GSMエラーコード、価格情報、その他のメタデータが利用可能になり次第、コールバックサーバーに送信します。
配信レポートを設定する [#set-up-delivery-reports-delivery-reports-via-webhooks]
Webhook配信レポートは、次の2つの方法で設定できます。
- リクエストごと: メッセージ送信時に Webhook URL を指定します
- SMS API v3:
webhooks.deliveryオブジェクトをurl、contentType、intermediateReport、およびnotifyオプションとともに使用します。詳細については、「 v3 SMS メッセージ エンドポイントの送信 」を参照してください。 - SMS API v2 (レガシ):
notifyUrlパラメーターとnotifyContentTypeパラメーターを使用します。詳細については、「 v2 SMS メッセージ エンドポイントの送信 」を参照してください。 - リクエストで Webhook が指定されておらず、
notifyがtrueに設定されているか、定義されていない場合は、Webhook サブスクリプション設定が適用されます
- SMS API v3:
- Webhook サブスクリプション: サブスクリプション管理 API または [NTT CPaaS ポータル] (/subscriptions) を使用して Webhook を設定および管理します。
Webhook ペイロードの内容 [#webhook-payload-contents-delivery-reports-via-webhooks]
配信レポート Webhook には、システム生成フィールド (配信ステータス、エラーの詳細、タイミング、メッセージ識別子、ネットワークコード、料金) と、送信リクエストに含めるカスタムフィールドが含まれます。システム生成のすべてのフィールドとその意味の完全な参照については、「 アウトバウンド SMS メッセージレポートの受信」を参照してください。
配信レポート Webhook のフィールド:
Webhook には、システム生成フィールドと、送信リクエストのオプション フィールドが含まれています。それらの動作は API バージョンによって異なります。
常に存在:
messageId: 照合と追跡のための一意のメッセージ識別子。API のバージョンに関係なく、常に Webhook に含まれます。リクエストでカスタム値を設定すると、その値が Webhook で返されます。省略すると、代わりにNTT CPaaS自動生成IDが表示されます。
動作は API のバージョンによって異なります:
| フィールド | 説明 | SMS API v3 | SMS API v2 (レガシー) |
|---|---|---|---|
bulkId | グループ化されたメッセージまたは複数の受信者の一括識別子 | カスタマイズできません。NTT CPaaSは常に独自のものを生成し、すべてのWebhookに含めます。 | カスタム値を設定すると、Webhook に表示されます。省略すると、このフィールドは Webhook に存在しません。 |
callbackData | 追加のカスタムデータ(最大4000文字):注文ID、顧客参照、またはシステムに必要なメタデータ | 要求に含めると、同じ値が Webhook に表示されます。省略すると、このフィールドは Webhook に存在しません。 | v3と同じです。 |
campaignReferenceId | 分析と整理のためのキャンペーン追跡 ID | 要求に含めると、同じ値が Webhook に表示されます。省略すると、このフィールドは Webhook に存在しません。 | v3と同じです。 |
entityId / applicationId | マルチテナントセットアップ用の CPaaS X エンティティとアプリケーション識別子 | platform オブジェクトは常に Webhook に存在します。値を設定すると、値が入力されます。これらを省略すると、null として表示されます。 | platform オブジェクトは、リクエストで設定されていない場合、Webhook から完全に省略されます。 |
プッシュ通知の再試行サイクル [#push-retry-cycle-delivery-reports-via-webhooks]
Webhook エンドポイントが使用できない場合、NTT CPaaS は次の式に従って再試行します。
1min + (1min × retryNumber²)
次の表は、最初の数回の再試行を示しています。最大再試行回数は 20 回です。最後の再試行は、最初の再試行の 41:30 後に発生します。エンドポイントが再試行期間全体にわたって使用できない場合、データは失われます。
| 再試行 | インターバル | 累積的 |
|---|---|---|
| 0 | 1分 | 0時01分 |
| 1 | 2分 | 0時03分 |
| 2 | 5分 | 0時08分 |
| 3 | 10分 | 0時18分 |
| 4 | 17分 | 0時35分 |
| 5 | 26分 | 1:01時間 |
| 6 | 37分 | 1時38分 |
代替案としての世論調査 [#polling-as-alternative-delivery-reports-via-webhooks]
Webhook よりもポーリングを希望する場合、またはパブリックエンドポイントがない場合は、配信レポートをポーリングできます。スケジュールに従って、 送信 SMS メッセージ配信レポートの取得 エンドポイントを呼び出します。各呼び出しは、過去 48 時間の新しいレポートを返します。
SMSのスケジュール [#schedule-sms]
スケジューリングを使用すると、SMS メッセージをすぐに送信するのではなく、配信するタイミングを定義できます。この機能は以下をサポートします。
- 時間ベースのキャンペーン
- リマインダーと通知
- お知らせ
- 納品のタイミングが重要な規制コンプライアンスのシナリオ
スケジューリングオプション [#scheduling-options-schedule-sms]
- SMS API: アウトバウンド SMS リクエストの一部として将来の配信時間を定義します。ステップバイステップのチュートリアル NTT CPaaS API を使用して SMS をスケジュールする を参照してください。
- NTT CPaaS MCP サーバー: AI プロンプトを使用して SMS メッセージを送信およびスケジュールします。ステップバイステップのチュートリアルNTT CPaaS MCPサーバーとAIクライアントを使用してSMSを送信するを参照してください。
- Answers: チャットボットフローと自動対話の一部としてアウトバウンドSMSをスケジュールします。
- ブロードキャスト: Web インターフェイスを介したキャンペーンベースのスケジューリング。
スケジュールをスケジュールするタイミング [#when-to-schedule-schedule-sms]
- タイムゾーンベースの配信: 受信者の場所ごとに最適な時間に送信します
- キャンペーンのタイミング: メッセージ配信とマーケティングキャンペーンの調整
- コンプライアンス: 配送期間に関する規制要件を満たす
- ユーザー設定: 受信者の希望する連絡時間を尊重する
- 負荷分散: 配信負荷を時間の経過とともに分散する
コンバージョン トラッキング [#conversion-tracking]
コンバージョントラッキングは、実際にコンバージョンしたSMSメッセージ(受信者が入力したOTPコード、確認されたアクション、完了した目的の動作など)を報告するデータ共有メカニズムです。
アウトバウンド メッセージのトラッキングを有効にし、API エンドポイントを呼び出してコンバージョンをレポートします。NTT CPaaSは、この変換データを追加の信号として使用して、ルート品質を監視し、ネットワーク全体の配送の問題を特定します。使用するルートやトラフィックパターンでパフォーマンスの低下が検出された場合、NTT CPaaSはそれらを最適化できます。その結果、配送が改善される場合がありますが、それはルートのパフォーマンスが低下していた場合に限ります。
データ交換は最小限で、GDPR に準拠: メッセージ ID のみが共有されます。
使い方:
追跡を有効にする
SMSを送信するときは、useConversionTracking: trueを設定し、conversionTrackingオブジェクトにconversionTrackingName(例:「ONE_TIME_PIN」)を定義します。パラメータの詳細については、「 SMS メッセージの送信 」を参照してください。
メッセージが配信される
受信者は SMS を受信します。
ユーザーの行為
受信者がコードを入力するか、必要なアクションを完了します。
レポートの変換
変換が発生したら、メッセージ ID を使用してPOST /ct/1/log/end/messageIdを呼び出します。実装の詳細については、「 変換の確認」 を参照してください。
ルートの改善
NTT CPaaSは、このデータを使用して、トラフィックタイプに合わせて配信パスを最適化します。
APIバージョン:
- SMS API v3:
conversionTrackingオブジェクトを使用します。詳細については、「 v3 SMS メッセージの送信 」を参照してください。 - SMS API v2 (レガシー):
trackingオブジェクトを使用します。詳細については、「 v2 SMS メッセージの送信 」を参照してください。