212 lines
6.2 KiB
Markdown
212 lines
6.2 KiB
Markdown
# 📲 手机短信通知配置指南
|
||
|
||
> QuantDinger 支持通过 Twilio 发送 SMS 短信通知,确保您在任何情况下都能收到重要的交易信号。
|
||
|
||
---
|
||
|
||
## 📋 目录
|
||
|
||
- [前置要求](#前置要求)
|
||
- [Twilio 简介](#twilio-简介)
|
||
- [配置步骤](#配置步骤)
|
||
- [第一步:注册 Twilio 账号](#第一步注册-twilio-账号)
|
||
- [第二步:获取 API 凭证](#第二步获取-api-凭证)
|
||
- [第三步:获取发送号码](#第三步获取发送号码)
|
||
- [第四步:配置环境变量](#第四步配置环境变量)
|
||
- [第五步:策略中启用短信通知](#第五步策略中启用短信通知)
|
||
- [费用说明](#费用说明)
|
||
- [常见问题](#常见问题)
|
||
|
||
---
|
||
|
||
## 前置要求
|
||
|
||
- 有效的手机号码用于接收短信
|
||
- 可用的信用卡/借记卡用于 Twilio 充值(试用账户有免费额度)
|
||
- QuantDinger 后端服务已部署并运行
|
||
|
||
---
|
||
|
||
## Twilio 简介
|
||
|
||
[Twilio](https://www.twilio.com) 是全球领先的云通信平台,提供可靠的 SMS 短信服务。
|
||
|
||
**为什么选择 Twilio?**
|
||
- ✅ 全球覆盖 180+ 国家和地区
|
||
- ✅ 高送达率和可靠性
|
||
- ✅ 按量计费,无月费
|
||
- ✅ 新用户有免费试用额度
|
||
- ✅ 完善的 API 文档和技术支持
|
||
|
||
---
|
||
|
||
## 配置步骤
|
||
|
||
### 第一步:注册 Twilio 账号
|
||
|
||
1. 访问 [Twilio 官网](https://www.twilio.com/try-twilio)
|
||
2. 点击 **Sign Up** 注册新账号
|
||
3. 填写邮箱、密码等基本信息
|
||
4. 验证您的邮箱和手机号码
|
||
5. 完成账号激活
|
||
|
||
> 💡 **提示**:新注册用户可获得 $15 美元的免费试用额度。
|
||
|
||
---
|
||
|
||
### 第二步:获取 API 凭证
|
||
|
||
注册完成后,进入 Twilio 控制台:
|
||
|
||
1. 登录 [Twilio Console](https://console.twilio.com)
|
||
2. 在 Dashboard 页面找到 **Account Info** 区域
|
||
3. 记录以下信息:
|
||
- **Account SID**:格式为 `ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`
|
||
- **Auth Token**:点击显示后复制(妥善保管)
|
||
|
||

|
||
|
||
> ⚠️ **安全提示**:Auth Token 相当于 API 密码,请勿泄露。如泄露请立即在控制台重新生成。
|
||
|
||
---
|
||
|
||
### 第三步:获取发送号码
|
||
|
||
您需要一个 Twilio 电话号码作为短信发送方:
|
||
|
||
1. 在 Twilio Console 左侧菜单选择 **Phone Numbers** → **Manage** → **Buy a number**
|
||
2. 选择国家/地区,勾选 **SMS** 功能
|
||
3. 选择一个号码并购买(试用账户可免费获取一个号码)
|
||
4. 记录您的 Twilio 电话号码(格式:`+1xxxxxxxxxx`)
|
||
|
||
**号码选择建议:**
|
||
- 选择与接收方同一国家的号码可降低费用
|
||
- 如需发送到中国大陆,建议使用 Alphanumeric Sender ID 或购买支持中国的号码
|
||
|
||
---
|
||
|
||
### 第四步:配置环境变量
|
||
|
||
在 `backend_api_python/.env` 文件中配置 Twilio 参数:
|
||
|
||
```bash
|
||
# =========================
|
||
# Phone / SMS 配置 (Twilio)
|
||
# =========================
|
||
|
||
# Twilio Account SID(必填)
|
||
# 格式:ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
|
||
|
||
# Twilio Auth Token(必填)
|
||
# 从 Twilio Console 获取
|
||
TWILIO_AUTH_TOKEN=your_auth_token_here
|
||
|
||
# Twilio 发送号码(必填)
|
||
# 格式:+国家代码+号码,如 +14155552671
|
||
TWILIO_FROM_NUMBER=+14155552671
|
||
```
|
||
|
||
配置完成后重启后端服务使配置生效。
|
||
|
||
---
|
||
|
||
### 第五步:策略中启用短信通知
|
||
|
||
在策略配置页面的「信号通知」设置中:
|
||
|
||
1. 勾选启用 **Phone** 通知渠道
|
||
2. 在 **手机号码** 字段填入接收短信的号码
|
||
|
||
**号码格式要求:**
|
||
- 必须包含国家代码
|
||
- 格式:`+国家代码号码`
|
||
- 示例:
|
||
- 美国:`+14155552671`
|
||
- 中国大陆:`+8613812345678`
|
||
- 香港:`+85212345678`
|
||
|
||
> 💡 **提示**:支持填入多个号码(逗号分隔),实现多人通知。
|
||
|
||
---
|
||
|
||
## 费用说明
|
||
|
||
Twilio 采用按量计费模式,不同国家/地区的短信费用不同:
|
||
|
||
| 接收地区 | 大约费用(美元/条) |
|
||
|---------|-------------------|
|
||
| 美国 | $0.0079 |
|
||
| 加拿大 | $0.0075 |
|
||
| 英国 | $0.04 |
|
||
| 德国 | $0.07 |
|
||
| 日本 | $0.08 |
|
||
| 中国大陆 | $0.06 - $0.10 |
|
||
| 香港 | $0.05 |
|
||
|
||
> 💰 **提示**:实际费用请参考 [Twilio 定价页面](https://www.twilio.com/sms/pricing),价格可能随时调整。
|
||
|
||
**试用账户限制:**
|
||
- $15 美元免费额度
|
||
- 只能发送到已验证的手机号码
|
||
- 短信会带有 "Sent from your Twilio trial account" 前缀
|
||
|
||
升级为正式账户后可解除这些限制。
|
||
|
||
---
|
||
|
||
## 常见问题
|
||
|
||
### Q: 试用账户可以发短信到任意号码吗?
|
||
|
||
不可以。试用账户只能发送到已验证的手机号码。您需要在 Twilio Console 的 **Verified Caller IDs** 中添加并验证接收号码。升级为正式账户后可发送到任意号码。
|
||
|
||
### Q: 发送失败,提示号码无效?
|
||
|
||
1. 确保号码格式正确(含国家代码,如 `+8613812345678`)
|
||
2. 去掉号码中的空格、横线等特殊字符
|
||
3. 确认接收号码可以接收国际短信
|
||
|
||
### Q: 中国大陆号码收不到短信?
|
||
|
||
1. 部分运营商可能拦截国际短信
|
||
2. 尝试使用 Alphanumeric Sender ID
|
||
3. 确认手机未开启国际短信拦截
|
||
4. 联系 Twilio 支持确认中国短信服务状态
|
||
|
||
### Q: 如何查看发送记录和状态?
|
||
|
||
登录 Twilio Console → **Monitor** → **Logs** → **Messaging** 可查看所有短信发送记录、状态和错误信息。
|
||
|
||
### Q: Auth Token 泄露了怎么办?
|
||
|
||
立即登录 Twilio Console → **Account** → **API Credentials** → 点击 **Regenerate Auth Token** 重新生成。
|
||
|
||
### Q: 有替代 Twilio 的方案吗?
|
||
|
||
QuantDinger 目前仅支持 Twilio 作为 SMS 提供商。如需其他服务商支持,可通过 Webhook 通道自行集成:
|
||
- 阿里云短信
|
||
- 腾讯云短信
|
||
- Nexmo (Vonage)
|
||
- AWS SNS
|
||
|
||
---
|
||
|
||
## 环境变量完整参考
|
||
|
||
```bash
|
||
# Twilio SMS Configuration
|
||
TWILIO_ACCOUNT_SID=ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # Account SID
|
||
TWILIO_AUTH_TOKEN=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # Auth Token
|
||
TWILIO_FROM_NUMBER=+14155552671 # 发送号码
|
||
```
|
||
|
||
---
|
||
|
||
## 相关文档
|
||
|
||
- [Telegram 通知配置](./NOTIFICATION_TELEGRAM_CONFIG_CH.md)
|
||
- [邮箱 SMTP 通知配置](./NOTIFICATION_EMAIL_CONFIG_CH.md)
|
||
- [策略开发指南](./STRATEGY_DEV_GUIDE_CN.md)
|
||
- [Twilio 官方文档](https://www.twilio.com/docs/sms)
|