自托管短信服务,使用 Android 手机作为网关提供 HTTP API,支持发送/接收短信,兼容主流短信网关。
Android SMS Gateway. 自发托管的短信网关使用带有HTTP API集成的Android手机.Fulcontrol,没有第三方依赖性.是一项面向实际任务的技能,主要用于Overview. 这种技能可以发送和接收短信 mes.。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
基于 Android 手机自托管的短信网关,支持通过 HTTP API 集成。完全自主可控,无任何第三方依赖。
本技能通过运行短信网关应用(SMS Gateway app)的 Android 手机实现短信的发送与接收。该手机暴露一个本地 HTTP API,本技能通过该 API 发送短信并轮询已接收的短信。
# 1. 在 Android 设备上安装 SMS Gateway API 应用 # 下载地址:https://github.com/itsmeichigo/SMSGateway/releases # 2. 配置应用: # - 启用 HTTP API 服务 # - 设置 API Token / 密码 # - 记录手机的 IP 地址和端口号(默认:8080) # 3. 测试连通性 curl http://PHONE_IP:8080/api/v1/status -H "Authorization: Bearer YOUR_TOKEN" # 4. 将配置保存至 TOOLS.md(参见「配置」章节)
# 基础发送 ./scripts/send_sms.sh --to "+1234567890" --message "Hello from OpenClaw" # 指定配置文件 ./scripts/send_sms.sh --config ~/.openclaw/sms-gateway.json --to "+1234567890" --message "Alert: Security scan complete" # 通过环境变量 export SMS_GATEWAY_URL="http://192.168.1.100:8080" export SMS_GATEWAY_TOKEN="your-api-token" ./scripts/send_sms.sh --to "+1234567890" --message "Test message"
# 列出最近 10 条已接收短信 ./scripts/receive_sms.sh --limit 10 # 查询指定时间戳之后的新消息 ./scripts/receive_sms.sh --since "2026-02-22T00:00:00Z"
# 验证网关是否在线 ./scripts/check_status.sh
# 向多个收件人发送 ./scripts/bulk_sms.sh --recipients "+1234567890,+0987654321" --message "Broadcast message" # 从文件读取号码列表(每行一个号码) ./scripts/bulk_sms.sh --recipients-file ./contacts.txt --message "Alert"
export SMS_GATEWAY_URL="http://192.168.1.100:8080" export SMS_GATEWAY_TOKEN="your-api-token" export SMS_GATEWAY_TIMEOUT="30"
创建 ~/.openclaw/sms-gateway.json:
{
"gateway_url": "http://192.168.1.100:8080",
"api_token": "your-api-token",
"timeout_seconds": 30,
"default_sender": "+1234567890",
"retry_count": 3
}
所有脚本均支持 --url 和 --token 参数:
./scripts/send_sms.sh --url "http://192.168.1.100:8080" --token "token" --to "+1234567890" --message "Hi"
export SMS_GATEWAY_URL="http://192.168.1.100:8080" # 本地服务 # export SMS_GATEWAY_URL="https://api.sms-gate.app/3rdparty/v1" # 云服务 export SMS_GATEWAY_USER="your-username" export SMS_GATEWAY_PASS="your-password" export SMS_GATEWAY_TIMEOUT="30"
创建 ~/.openclaw/sms-gateway-capcom6.json:
{
"gateway_url": "http://192.168.1.100:8080",
"gateway_user": "your-username",
"gateway_pass": "your-password",
"server_mode": "local",
"timeout_seconds": 30
}
# 发送短信 ./scripts/send_sms_capcom6.sh --to "+1234567890" --message "Hello" # 使用云服务模式 ./scripts/send_sms_capcom6.sh --mode cloud --to "+1234567890" --message "Hello" # 注册入站短信 Webhook ./scripts/register_webhook_capcom6.sh --url "https://your-server.com/webhook" # 批量发送(单次 API 调用支持多收件人) ./scripts/bulk_sms_capcom6.sh --multi --recipients "+1234567890,+0987654321" --message "Alert" # 检查状态 ./scripts/check_status_capcom6.sh
将配置信息添加至 TOOLS.md 以供后续参考:
### Android SMS Gateway - **App:** SMS Gateway API (itsmeichigo/SMSGateway) - **Phone:** Samsung Galaxy, IP: 192.168.1.100 - **Port:** 8080 - **Token:** Stored in ~/.openclaw/sms-gateway.json (chmod 600)
详见 references/api_reference.md,其中包含各支持应用的完整 API 接口说明。
| 特性 | 优势 |
|---|---|
| E2E Encryption | 消息内容在 API 传输前即完成端到端加密 |
| Private Server | 可自行部署后端服务,彻底摆脱云依赖 |
| Basic Auth | 采用标准 HTTP Basic Authentication 协议 |
| Webhooks | 入站短信由设备主动推送,无需轮询 |
建议:为获得最高安全性,请使用 capcom6 的私有服务器(Private Server)模式: https://docs.sms-gate.app/getting-started/private-server/
chmod 600 ~/.openclaw/sms-gateway.json# 检查手机网络连通性 ping PHONE_IP # 检查 API 接口可达性 curl -v http://PHONE_IP:8080/api/v1/status # 检查应用运行状态(在手机上操作): # - 打开 SMS Gateway 应用 # - 确认服务已启动 # - 查看应用内日志
# 验证 Token 是否有效 curl -v http://PHONE_IP:8080/api/v1/status -H "Authorization: Bearer YOUR_TOKEN" # 检查 Token 格式(部分应用使用不同认证头字段) # 具体认证方式请查阅 references/api_reference.md
# 检查手机信号强度 # 检查短信余额或套餐状态 # 查看应用内日志 # 确认收件人号码格式(必须含国家代码)
# 扫描发现异常时自动发送告警 ./scripts/send_sms.sh --to "+1234567890" --message "🛡️ ALERT: Vulnerability found on 192.168.1.50"
# 发送 2FA 验证码(可集成至自有认证系统) CODE=$(openssl rand -base64 6 | tr -d '/+=' | head -c 6) ./scripts/send_sms.sh --to "$USER_PHONE" --message "Your verification code: $CODE"
# 每日安全检查提醒(Cron 任务) # crontab -e 0 9 * * * /path/to/send_sms.sh --to "+1234567890" --message "Daily security check: Review logs"
# Nagios / Zabbix 告警脚本示例 #!/bin/bash STATUS=$1 if [ "$STATUS" != "OK" ]; then ./scripts/send_sms.sh --to "+1234567890" --message "MONITOR ALERT: $STATUS" fi
scripts/send_sms.sh — 发送单条短信scripts/receive_sms.sh — 获取已接收短信scripts/check_status.sh — 检查网关健康状态scripts/bulk_sms.sh — 批量发送短信(多收件人)scripts/send_sms_capcom6.sh — 发送单条短信scripts/register_webhook_capcom6.sh — 注册入站短信 Webhookscripts/check_status_capcom6.sh — 检查网关健康状态scripts/bulk_sms_capcom6.sh — 批量发送短信(支持多收件人单次 API 调用)