DiscordのSMS認証コードをQAワークフローに取り込む方法

OTP Gateway は 1 コードあたり $0.20 から197 か国API ID: discord米国/カナダ専用番号は月額 $1.95 から
クイックアンサー

チームがDiscordの認証コードを受け取るには、OTP RouteのOTP Gatewayでdiscordサービスの一時番号を注文してDiscordに入力し、ダッシュボード、またはAPIと署名付きWebhookでSMSを確認します。料金は1コード$0.20〜で、課金されるのは20分以内にコードが届いた場合のみです。

Discordが電話番号を求めるのはどんなときですか?

Discordはすべての新規ユーザーに電話番号を要求するわけではありませんが、よく知られたいくつかの場面で求められます。サインアップ後や、アクティビティが不審と判断されたときに、電話番号の認証を促されることがあります。サーバーオーナーは認証レベルを設定でき、最も厳しいレベルでは、電話番号を認証済みのアカウントしか参加できません。認証済みの電話番号は、二要素認証のSMSバックアップや、アカウント復旧にも使えます。

Discordは一般に、1つの電話番号を同時に1つのアカウントにしか紐づけられず、バーチャル番号と判断した番号を拒否することもあります。この2点は、テストの計画に影響します。

Discordを基盤に開発するチームに、なぜテスト用の番号が必要なのですか?

ボット開発者、ゲームスタジオ、コミュニティプラットフォームでは、最高の認証レベルに設定されたサーバーに参加するステージング用アカウントを運用することが多く、そのアカウントには認証済みの電話番号が必要です。QAチームは、メンバーが電話番号認証を通過したあとに、ボットのオンボーディング、ロール付与、ウェルカムフローが正しく動くかを確認します。公式コミュニティを運営する運用チームは、モデレーター用アカウントをスタッフ個人の番号とは切り離して管理します。Discord向けのバーチャル番号を使えば、同僚個人のSIMを業務用アカウントに紐づけることなく、これらのケースに対応できます。

Discordのコードを受け取れるのはどの国ですか?

OTP Gatewayは197か国でDiscordに対応しています。例として、アメリカ、イギリス、ドイツ、ブラジル、フィリピン、ペルーのほか、カナダ、フランス、ポーランド、トルコ、メキシコ、インド、インドネシア、日本、アルバ、グアドループがあります。

テスト対象のケースに合う国を選んでください。ブラジルのプレイヤー向けコミュニティなら、ロケール、電話番号の表記、地域ごとの表示が実際のメンバーと同じになるよう、ブラジルの番号で確認します。在庫は一日の中で変動するため、特定のルートを決め打ちせず、APIで有効なルートを確認してください。

APIでDiscordのコードをリクエストするにはどうしますか?

プレフィックスor_live_のBearerキーでhttps://otproute.com/api/v1に認証します(1アカウントにつきキーは最大10個、Webhookエンドポイントは最大5個、1分あたり300リクエストまで)。サービスIDはdiscordです。

  1. GET /api/v1/prices?country=gb&service=discordで料金と空き状況を確認します。gbの部分は、GET /api/v1/countriesで調べた必要な国のIDに置き換えてください。
  2. POST /api/v1/activationsに{"service": "discord", "country": "gb"}を送って注文します。
  3. 返された番号をDiscordの電話番号入力画面に入力し、SMSを要求します。
  4. Webhookまたはポーリングでコードを受け取り、入力します。
  5. 実行を途中で止める場合はPOST /api/v1/activations/{id}/cancelを呼び出します。

DiscordのコードイベントをWebhookハンドラーでどう扱うべきですか?

エンドポイントでactivation.sms_received、activation.expired、activation.cancelledを購読します。各リクエストにはX-OTPRoute-Signature: t=<unix>,v1=<hex>が含まれます。エンドポイントのシークレットで<t>.<raw body>のHMAC-SHA256を計算し、定数時間で比較し、古いタイムスタンプは拒否してください。細かなケースはWebhookセキュリティの解説記事で扱っています。

書き込みはアクティベーションIDをキーにして、ハンドラーを冪等にします。そうすれば、再送された配信で状態が変わることはありません。エンドポイントを公開したくない場合は、GET /api/v1/activations/{id}を適切な間隔でポーリングしてください。詳しいリファレンスはドキュメントにあります。

ダッシュボード、20分のウィンドウ、コードが届かない場合はどうなりますか?

開発者でなくても、ブラウザから注文できます。OTP Gatewayを開き、Discordと国を選び、価格を確認し、番号をコピーして、注文カードにSMSが届くのを待ちます。

すべての注文は20分間有効で、コード1件を受け取れます。コードが届かない場合やキャンセルした場合は、全額がウォレットに返金されます。Discordのコードが届かないときは、次の点を確認してください。

  • Discordがバーチャル番号として拒否した可能性があります。別の国のルートを試してください。
  • 配信タイミングはルートによるため、ウィンドウが終わるまで待ってください。
  • 連続で注文し直さず、時間をおいて再試行してください。

米国・カナダの専用番号のほうが適しているのは、どんなときですか?

ゲートウェイ番号は1つのコードにしか使えません。そのため、あとで再認証や復旧が必要になるモデレーター用アカウントやステージング用アカウントには、引き続き自社で管理できる番号が必要です。米国とカナダの専用番号(Dedicated Numbers)は月額$1.95から利用でき、ウォレットから更新され、SMSはダッシュボードとnumber.sms_receivedで受信でき、いつでも解約できます。詳しくはバーチャル番号をご覧ください。

OTP Routeは、自社のプロダクトと正当なアカウントにのみ使用し、アカウントは実在する1人または1事業者につき1つとしてください。電話番号認証も対象となるDiscordの利用規約と、当社の利用規定(Acceptable Use Policy)に従ってください。Discordはその権利者の商標であり、OTP Routeとは提携関係にありません。

よくある質問

自分の携帯を使わずにDiscordのOTPを受け取るには?

OTP Gatewayでdiscordサービスの番号を注文してDiscordに入力し、ダッシュボードまたはAPIでコードを確認します。

Discordのサインアップ確認では、すべてのバーチャル番号が受け付けられますか?

いいえ。Discordが一部の番号を拒否することがあります。コードが届かなければ注文は返金されるので、別の国を試せます。

ステージング用のボットテストアカウントは、電話認証必須のサーバーに参加できますか?

はい。Discord自身の画面で電話番号の認証を済ませたアカウントであれば参加できます。ただしDiscordの利用規約に従う必要があります。

Discordの認証用電話番号の料金はいくらですか?

1コード$0.20〜で、国によって異なります。注文前にGET /api/v1/pricesで最新の料金を確認できます。

同じDiscord用電話番号を2つ目のアカウントで使い回せますか?

Discordは一般に1つの番号を同時に1つのアカウントにしか紐づけず、ゲートウェイ番号はそもそも1コード限りです。所有するアカウントごとに1つの番号を用意してください。

Discord連携をテストするサンドボックスはありますか?

あります。申請すれば開発アカウントをサンドボックスに切り替えられ、ウォレット残高を使わずに疑似的な番号とコードが返されます。

Discord SMS認証のテスト費用はどう支払いますか?

カードまたはUSDT/USDCでチャージする前払いのUSDウォレットで支払います。月額料金はなく、チャージのたびにPDFの請求書が発行されます。

サービス名はそれぞれの所有者の商標です。OTP Route はこれらの企業と提携していません。番号は合法的にご利用いただき、各サービスの利用規約および当社の利用規定に従ってください。

数分で最初の OTP をルーティング

無料アカウントを作成し、USD ウォレットにチャージして、ダッシュボードまたは API から番号を注文。月額料金はありません。