メニュー

Rate this page:

Thanks for rating this page!

We are always striving to improve our documentation quality, and your feedback is valuable to us. How could this documentation serve you better?

SMSの一般的な問題をデバッグする

SMSメッセージの送受信時にユーザーが直面する一般的な問題がいくつかあります。 このガイドでは一般的な問題をいくつか取り上げ、トラブルシューティングのコツをご紹介します。

メッセージが送達されません

不達 (undelivered) メッセージにはいくつかのトラブルシュート方法があります。

  1. Check your SMS logs for a record of the SMS request. If you don’t see a record of your message at all, the message likely encountered an error in your application or potentially with Twilio’s API.
  2. メッセージがログ上で確認できず、かつアプリケーションコードがエラーを生成している場合:
  3. メッセージがログ上で確認できず、かつTwilioからのエラーを受信している場合:
    • TwilioのAPIから4XXのレスポンスを受信している場合は、Twilioで何らかの問題が発生し、メッセージの送信が行えなかったことを意味しています。 こちらで受信したエラーコードを検索できます。
  4. If the message is marked Undelivered or Failed in Twilio’s logs
  5. The message is marked Sent or Delivered in the logs but wasn’t sent to the device
    • 追加のデバッグ、デバイスでメッセージが受信されない場合のトラブルシューティングのヒントに関しては、下記の節を確認してください。

Twilio電話番号でSMSメッセージが受信できません

Twilio番号にメッセージがTwilio番号で受信されない場合、確認すべき点がいくつかあります。

  1. SMSに対応した電話番号をお持ちですか? 特に日本の電話番号はSMSに対応しないため、その場合は米国の電話番号を別途購入してください。 Webhookの構成は済んでいますか?
    • Twilioアカウントにログインして電話番号セクションに移動、「電話番号の管理」をクリックします。
    • SMSアイコンの表示されている電話番号はSMSの送受信に使用できます
    • If there is no icon under ‘SMS’, your Twilio number does not have SMS capabilities. Click on ‘Buy a Number’ to purchase an SMS-enabled Twilio number.
      SMSまたはMMSに対応した電話番号を購入します
    • Your number also needs to have a URL associated with it to receive incoming SMS. You can set up this webhook the console for any Twilio phone number you own.
      SMS Webhook
  2. 国際電話番号からのSMSの受信が想定されていますか?
    • 一部の国のキャリアーはSMSをTwilioのネットワークに伝送することができません。 そのため、Twilioはそうしたメッセージが必ず受信できることを保証できません。
    • 国内のメッセージを受信していて国際メッセージの受信を行わない場合、国際送信キャリアーにお問い合わせいただくことを推奨します。
  3. ローミングを行なっているか、圏外になっていませんか?
    • Twilioは、ローミング中の電話番号からのSMSの送達を保証することはできません。 TwilioはSMS送信元の電話番号が、そのタイミングでローミング中かどうかを判断することはできません。
  4. ショートコードからのSMS受信を想定していますか?
    • ショートコードのキャリアーはもっぱら携帯電話番号とメッセージをやり取りするよう調整されており、Twilio電話番号は携帯番号とは見なされません。 このため、Google Voice、Facebook、およびSkypeといったような、SMSの送信にショートコード(例: 55555)を使用するサービスはTwilio電話番号にメッセージを送信することができません。

ブラックリストルールに関するレスポンスが返るのはなぜですか?

メッセージの送信時にTwilioから「メッセージの送受信番号のペアがブラックリストのルールに違反しています」といったようなレスポンスが返されることがあります。 Twilio APIは、以前にTwilio番号に対してSTOPSTOPALLUNSUBSCRIBECANCELEND、またはQUITという返信を行なったことのある番号にSMSまたはMMSを送信しようとした場合にこのメッセージを返します。 このメッセージ送信の試みに対して課金は行われません。

When a user opts out of a phone number that belongs to a Messaging Service, they are also opted out of all messages sent from that particular Messaging Service.

このような送信者にメッセージを送信するには、受信者は再度オプトイン(すなわち受信拒否の解除)を行うために、STARTまたはYESというテキストをTwilio番号に対して送信することが必要です。

なぜ重複メッセージが配信されるのですか?

重複メッセージの問題のデバッグを開始する最良の方法は、メッセージログを確認することです。 問題のメッセージに対応するレコードと、前後数秒以内に送信されたそのメッセージと重複しているもうひとつのメッセージを見つけると良いでしょう。

ログ上に互いに数秒以内の間隔で送信された重複メッセージが見つかった場合は、Twilioが複数のメッセージをキャリアーに対して送信していたことになります。 これはほとんどの場合、Twilioは開発者のアプリケーションから複数のPOSTリクエストを受信したことを意味しています。 ご使用のサーバー上でHTTPリクエストのログを確認して、Twilioに送信したリクエストをさらに調査してください。

アプリケーションからのPOSTリクエストの受信なしにTwilioのシステムが重複メッセージを生成する実例は極めてまれです。 サーバーログを確認してTwilioへのリクエストがひとつしか見られない場合は、重複されたメッセージのSIDを添えてサポート窓口にご連絡ください。

ログ上で1つのメッセージしか見当たらない場合は、Twilioはキャリアーに対して1度しかメッセージを送信しておらず、重複はキャリアー側で発生していたことになります。 あらゆる種類の電話機のユーザーは、まれに重複メッセージを受信することがあり、これは一般的にはキャリアー側がサービス障害の発生が疑われる際に備えて実装しているセーフガードによるものです。 重複メッセージは受信者がローミングを行なっている場合にも発生することがあります。

複数の異なる受信者、キャリアーに渡って重複メッセージが長期間発生する場合は、重複されたSMSのメッセージレコードを収集していただき、株式会社KDDIウェブコミュニケーションズのサポート窓口までご連絡ください。

メッセージが遅延します

メッセージの遅延や他の配達の問題をトラブルシュートするには、お使いの電話番号をAPI Explorerでテストすることから始めてください。 メッセージを作成し、FromToBody、および他の関連フィールドを入力します。 「Make Request」をクリックしてページを開いたままにすると、レスポンスを調査できます。

API Explorerでメッセージを送信する際は、下記の3つのうちのいずれかの結果になります:

  1. メッセージは30秒以内に到着します
    • メッセージの問題はほとんどの場合、開発中のアプリケーションコードに原因があります。 下記を確認してください:
      • コード内で使用している「To」および「From」の値をAPI Explorerで使用しているものと一致させます。
      • API Explorerで生成されたコードスニペットを開発中のアプリケーション内で試し、問題が改善するかどうか確認します。
      • お使いのサーバーのHTTPログを確認して、Twilioに送信したリクエストで、400または500番台のエラーを返さなかったものを確認します。
      • 正しいアカウントSIDと認証トークンを使用していることを確認してください。 テストクレデンシャルの使用はメッセージが送信 (sent) された旨のレスポンスを生成しますが、実際にはメッセージは送信されない点にご注意ください。
  2. メッセージの受信に30秒以上かかります
    • Twilioから送信されたSMSメッセージは国とキャリアーに応じて通常5秒〜10秒で宛先に送達されます。 メッセージの送達に30秒以上かかる場合は「遅延した」とみなされます。
      • Look in your SMS logs under ‘Delivery Steps’ to see more detailed timestamps, including when the request was created, how long it stayed queued on Twilio’s platform, and when we sent it to our carrier partner for delivery. This info provides insights to help you track down where latency may originate.
      • 「From」番号からの大量のキューイングされているメッセージは遅延の増加につながることがあります。 追加情報については、Twilioの送信速度制限についてのこちらの記事を参照してください。
      • 下りのキャリアーネットワークは混雑することがあります。 こうした問題は下りのトラフィック混雑が解消されると、自動的に改善します。
  3. メッセージが受信されません
    • API Explorerが201レスポンスを生成した場合は、下記を確認してください:
      1. 「To」電話番号を確認してください:
        • 番号は有効であり、かつアクティブですか。
        • 電波状況は良好ですか。そうではない場合メッセージは遅延する可能性があります。
        • 他の送信元および送信者からのメッセージを受信できますか。
        • 国際ローミングしていませんか。
        • 「受信拒否」リストに登録されていませんか。
        • キャリアーによってブラックリストに追加されていませんか。 Twilioのロングコード(通常の電話番号)からメッセージを送信している場合、他のTwilioロングコードからの送信をお試しください。 メッセージが正常に受信された場合、当初使用した電話番号がキャリアー側の送信数制限のしきい値に達したことが考えられます。 詳細については、こちらのFAQ記事(英語)を参照してください。
      2. メッセージの再送信をお試しください。 これはしばしば、問題を切り分ける最良の方法になります。 メッセージが依然として送信されない場合は、各不達メッセージに対応するSMSのメッセージSIDを添えて株式会社KDDIウェブコミュニケーションズのサポート窓口にご連絡ください。 これらのSIDはAPI Explorerのレスポンスに一覧されます。
    • API Explorerが404レスポンスを生成した場合は、Twilioはメッセージを送信できませんでした。
      • 404レスポンスを返したメッセージにはエラーコードと、そのエラーコードに対する詳細な説明へのリンクが含まれています。 全エラーコードの情報については、こちらで確認できます。

ヘルプが必要ですか?

We all do sometimes; code is hard. Get help now from our support team, or lean on the wisdom of the crowd browsing the Twilio tag on Stack Overflow.