着信 SMS

着信 SMS を受け取るには、Web フックエンドポイントを作成し、Nexmo Developer Dashboard の [API 設定タブ] でそのエンドポイントを使用するアカウントを設定します。

Nexmo 仮想番号への送信メッセージは

GET
または
POST
リクエストを使って Web フックに送信されます。Web フックでメッセージを受信する場合、「200 OK」という応答を送信する必要があります。送信しない場合、Nexmo は受信者がメッセージを受信していないと推測して、その後 24 時間送信し続けます。

連結メッセージには特別な注意が必要です。連結着信メッセージを参照してください。

着信メッセージの構造

メッセージは次の特質を持つ JSON オブジェクトとして Web フックエンドポイントに送信されます。

キー 必須/任意
type 次のいずれかの値を取ります
* text - 標準テキスト
* unicode - Unicode 文字を含むテキストメッセージ
* binary - バイナリメッセージ
必須
to メッセージの送信 の電話番号。 ユーザーの仮想番号 となります。 必須
msisdn 着信メッセージの送信 の電話番号。 必須
messageId 対象メッセージ用の Nexmo の固有識別子。 必須
message-timestamp Nexmo が着信メッセージをエンドポイントにプッシュし始めた時間。協定世界時との時差で表され、「YYYY-MM-DD HH:MM:SS」の形式を取ります。 必須
timestamp message-timestampUNIX タイムスタンプ表示。 任意
nonce リクエストの署名に予測不能の追加要素を加えるランダムな文字列。着信メッセージの署名を計算・検証するには、noncetimestamp パラメーターを共有の秘密と併用します。 署名入りメッセージには必須

メッセージのタイプが text または unicode の場合

メッセージの typetext または unicode の場合、Web フックエンドポイントへのリクエストに次のプロパティが表示されます。

キー
text 着信メッセージの本文。
keyword メッセージ本文の最初の単語。通常、短縮コードと併用されます。

メッセージのタイプが binary の場合

メッセージの typebinary の場合、Web フックエンドポイントへのリクエストに次のプロパティが表示されます。

キー
data このメッセージの内容
udh 16 進でエンコードされたユーザーデータヘッダ

連結着信メッセージの場合

仮想番号への送信メッセージが単一メッセージに許容される長さに収まる場合、Web フックエンドポイントへのリクエストには次のプロパティは表示されません。

メッセージの文字数が単一メッセージの最大文字数を超える場合、複数のパートに分けてメッセージを受信し、リクエストに次のプロパティが表示されます。

concat-refconcat-totalconcat-part の各プロパティを使って個別のパートでメッセージが構築されます。

通信会社が連結メッセージをサポートしていない場合もあります。お使いの通信会社が連結メッセージをサポートしていない場合、ペイロードには concat フィールドがありません。

キー
concat true
concat-ref トランザクションの参照。メッセージのどのパートもこの concat-ref を共有します。
concat-total この連結メッセージの構成パート数。
concat-part メッセージにおけるこのパートの番号。メッセージの最初のパートの番号は 1 です。