
# Android Phone as SMS Gateway (ベータ版)

お手持ちのAndroidスマートフォンをSMS送信ゲートウェイとして利用できます。Twilioアカウントを接続する代わりに、Android端末にオープンソースの小さなアプリをインストールし、ワークスペースとペアリングすることで、その端末の電話番号と通信プランを使用してSMSの送受信が可能になります。

> **ベータチャネル。** Android SMSゲートウェイは、チャネル利用枠のあるプランをご契約のすべてのお客様にご利用いただけるようになりましたが、まだ新しい機能です。多少の不具合が発生する可能性があるほか、チャネルの成熟に伴い動作や制限が変更される可能性がある点にご留意ください。説明通りに動作しない場合は、サポートまでお知らせください。

---

## 利用するメリット

Androidゲートウェイは、**低頻度の会話型SMS**（リードへの返信、AIとの会話、1対1のテキストメッセージ）向けに構築されています。以下のような場合に適しています：

- **既存の個人用またはビジネス用の電話番号**でテキストメッセージを続けたい場合。
- Twilioが、お住まいの国や利用規模に対して**過剰な機能である、または料金が割高である**場合。
- メッセージごとの料金を支払うよりも、**通信キャリアの既存のSMS定額プラン**を利用したい場合。
- Twilioで必要となる**キャリア登録**の手続き（A2P 10DLCなど）を**避けたい**場合。

大量の一斉送信（ブロードキャスト）用には構築されて**いません**。以下の[制限事項](#limitations)を参照してください。

> **規模と信頼性を求める場合はTwilioを推奨します。** 大量に送信する場合、稼働時間の保証が必要な場合、またはSMSの一斉送信を行う場合は、代わりにTwilio番号を接続してください。詳細は[SMSメッセージング](sms.md)を参照してください。これら2つは代替のSMS転送手段であり、メッセージ、連絡先、AI、受信トレイの動作はどちらを使用しても同じです。

---

## 必要なもの

- **Androidスマートフォン**（有効なSIMカードとSMSプランが必要です。SMSの送信数が無制限、または余裕のあるプランを強く推奨します）。
- **無料のオープンソースアプリ「SMS Gateway for Android」**（[sms-gate.app](https://sms-gate.app)から入手してください。サイトまたは[GitHubのリリース](https://github.com/capcom6/android-sms-gateway/releases/latest)からダウンロードできます）。このアプリは当社が開発したものではなく、サードパーティのプロジェクトです。
- **電源が入っており、オンラインで、制限がかかっていない状態のスマートフォン** — [スマートフォンの信頼性を維持する](#keeping-the-phone-reliable)を参照してください。
- **有料プラン** — Androidゲートウェイは、お客様のチャネル許容量に含まれています。

**メッセージごとのプラットフォーム手数料**やTwilioの請求はありません。お使いの携帯電話のキャリアプランを使用します。AIが返信を生成した場合、他のすべてのチャネルと同様にAIクレジットが消費されます。

---

## ゲートウェイアプリのセットアップ

1. 使用したい電話番号の端末に、[sms-gate.app](https://sms-gate.app)から**SMS Gateway for Android**をインストールします。
2. アプリを開きます。
3. **Cloud Server**モードをオンにします（最もシンプルなオプションです。プロジェクトのホストサーバーを経由して中継するため、電話機にパブリックアドレスは不要です）。
4. アプリのホーム画面に**ユーザー名**と**パスワード**が表示されます。これらを次のセクションでプラットフォームに入力します。
5. （推奨）アプリ内で**Settings → Webhooks**を開きます。Webhookとは、何かが発生したとき（ここではメッセージが届いたとき）にアプリがプラットフォームへ自動的に通知を送る仕組みです。
6. **Signing Key**をコピーします。これをプラットフォームに貼り付けることで、着信メッセージに対する追加の署名チェックが有効になります。

> **ローカルモード（上級者向け）。** クラウド経由ではなく、独自のネットワーク経由で端末とプラットフォームを直接通信させたい場合は、アプリの「Local Server」モードもサポートされています。端末に到達可能なHTTPSアドレスを割り当て、接続時にそのアドレスをベースURLとして入力する必要があります。ほとんどのユーザーにはクラウドモードを推奨します。

---

## 端末をプラットフォームに接続する

1. 左側のサイドバーで、下部付近にある **Settings** をクリックします。
2. 設定の左側レールにある **Channels** の下で、**Channels** をクリックします。
3. **Android SMS Gateway** カードを見つけて、**Connect** をクリックします。
4. **Phone number** を入力します。これは端末自体の電話番号を国際形式（E.164）で指定します（例: `+14155551234`）。
5. ゲートウェイアプリのホーム画面に表示されている **Gateway username** と **Gateway password** を入力します。
6. オプションとして、アプリの Webhooks 設定から **Webhook signing key** を貼り付けます（推奨）。
7. **Connect** をクリックします。


プラットフォームが認証情報を検証し、メッセージおよび配信のWebhookをゲートウェイに自動登録して、ステータスを**接続済み**に切り替えます。Webhook URLをアプリにコピー＆ペーストする必要はありません。登録は自動的に行われます。

### ステータスの確認

接続が完了すると、カードのボタンが **Connect** から **Manage** に変わります。これをクリックしてゲートウェイパネルを再度開くと、いつでも **Refresh status** を実行できます。これにより、ゲートウェイに到達可能かどうかが再確認され、電話が現在 **online** かどうかが表示されます。電話がスリープ状態またはオフラインの場合、明確なオフラインインジケーターが表示されるため、復旧するまでテキストメッセージが送信されないことを確認できます。

### 切断

カードの **Manage** をクリックしてゲートウェイパネルを再度開き、**Disconnect** をクリックします。プラットフォームはゲートウェイに登録したWebhookを削除し、接続を解除します。その後、Twilio SMS番号が接続されている場合はTwilio経由での送信に切り替わり、接続されていない場合はSMS機能がオフになります。

---

## メッセージの流れ

### 受信

1. 誰かがあなたの電話番号にテキストを送信します。
2. 電話機のゲートウェイアプリがSMSを検出し、プラットフォームに通知します。
3. プラットフォームは連絡先を作成し（新規の場合）、メッセージを受信トレイに配置します。関連するAIエージェントがアクティブな場合は、AIが返信します。

### 送信

1. あなたまたはAIがプラットフォームから返信を送信します。
2. プラットフォームがメッセージをゲートウェイに渡します。
3. 電話機がキャリア経由で、あなたの番号から通常のSMSとして送信します。
4. キャリアからの報告に応じて、メッセージステータスが**Sent**、続いて**Delivered**（または**Failed**）に更新されます。

> **Androidゲートウェイが送信の優先となります。** 接続中は、1対1のメッセージおよびAIによる返信はスマートフォン経由で送信されます。Twilio SMS番号も接続している場合、それらを経由して送信するにはAndroidゲートウェイを切断してください。どちらの場合も例外が1つあります。**キャンペーンおよび一斉送信のSMSは常にTwilio番号経由で送信され**、Androidスマートフォンからは送信されません。個人用端末からの大量送信は番号がフラグ付けされる原因となるため、プラットフォームでは行わないようになっています。

---

## 制限事項

Androidゲートウェイは管理下にある物理的な電話機に依存するため、Twilioにはない制約があります。重要なメッセージングに使用する前に、これらを確認してください。

- **電話機は常にオンかつオンラインである必要があります。** 電話機がなければテキストは送信されません。充電状態を保ち、Wi-Fiまたはデータ通信に接続し、バッテリー最適化の対象外に設定してください。
- **低頻度での利用に限ります。** キャリアは、突然大量のテキストを送信する電話機を検知し、制限をかけます。このチャネルは会話や1対1の返信を目的としており、**一斉送信（ブロードキャスト）用ではありません**。
- **SMSの一斉送信はこのチャネルではサポートされていません。** 大量のSMS送信にはTwilio番号の接続が必要です。Twilioなしで送信しようとすると、プラットフォームから警告が表示されます。一斉送信はTwilio経由で行い、Androidゲートウェイは会話型の返信専用として使用してください。
- **テキストのみ。** MMS（メディア）の送受信はこのチャネルではサポートされていません。
- **キャリアの制限が適用されます。** 電話プランのSMS許容量、公平利用制限、メッセージごとの料金などは、お客様とキャリア間の契約に基づきます。
- **配信確認はキャリアに依存します。** 確実に配信を報告するキャリアもあれば、そうでないキャリアもあります。「Sent」ステータスは、電話機がテキストを送信したことを意味します。
- **アカウント/番号のリスク。** 自動化されたビジネス用テキストに個人番号を使用すると、キャリアの利用規約に違反する可能性があり、悪用された場合は番号が制限または停止される可能性があります。責任を持って使用し、同意を得た上で、オプトアウトの手順を含めてください。

---

## 電話機の信頼性を維持する

メッセージを中断なく送信し続けるために：

- SMSゲートウェイアプリの**バッテリー最適化を無効**にします（Android設定 → アプリ → SMSゲートウェイ → バッテリー → 制限なし）。これを行わないと、Androidがバックグラウンドでアプリを強制終了する可能性があります。
- **画面にアクセスできる状態を保つか、アプリがバックグラウンドで実行されることを許可してください。** 電源に接続したままの専用電話機が理想的です。
- **安定したWi-Fiまたはデータ通信を維持してください。** 電話機の接続が切れると、メッセージはキューに入れられるか、復旧するまで失敗します。
- **SIMをアクティブに保ち、キャリアとの契約を良好な状態に維持してください。**

---

## トラブルシューティング

### 「ゲートウェイの認証情報を検証できませんでした」

- ゲートウェイアプリのホーム画面で**ユーザー名**と**パスワード**を再確認してください。アプリを再インストールまたはリセットすると、これらは再生成されます。
- 電話機がインターネットに接続されており、アプリ内で**Cloud Server**モードがオンになっていることを確認してください。

### ステータスがオフラインと表示される / テキストが送信されない

- 電話機でアプリを開き、アプリが実行中であり、クラウドサーバーに接続されていることを確認します。
- 電話機がDozeモードやバッテリーセーバーになっていないこと、およびアプリがバッテリー最適化の対象外になっていることを確認します。
- 電話機をオンラインに戻した後、カードの**Refresh status**をタップします。

### 受信したテキストが表示されない

- 接続が **接続済み** と表示されていることを確認します（**ステータスを更新** をタップしてください）。
- 別の電話から、そのスマートフォンの番号宛てにテスト用のテキストを送信します。
- スマートフォンのデフォルトのメッセージアプリが、送信者をブロックまたはフィルタリングしていないことを確認します。

### テキストが「失敗」と表示される

- 通信キャリアによって拒否されました。受信者の番号が有効であり、国際形式であることを確認してください。
- SIMにSMSの利用枠が残っていること、および番号が停止されていないことを確認します。
- 送信頻度が非常に高い場合、キャリアの制限に抵触する可能性があります。送信間隔を空け、ボリュームを抑えてください。

---

## ヘルプが必要ですか？

Android SMSゲートウェイは現在 **ベータ版** です。ここに記載されていない問題が発生した場合は、以下を添えて <span data-t="supportEmail">hi@youraiconnector.com</span> までご連絡ください。

- 接続した電話番号（パスワードではありません）。
- ゲートウェイアプリがスマートフォン上でオンラインと表示されているかどうか。
- 問題の説明と、いつ発生したか。

確認でき次第、対応いたします。
