2.3 KiB
2.3 KiB
短信集成
管理入口:扩展功能 → 短信服务。支持阿里云和腾讯云官方 Go SDK。
配置保存在现有集成配置表中,保存后立即生效,服务重启后自动恢复。
新安装自动创建菜单;已有安装启动时通过 202609290001_sms_admin_surface 迁移补上菜单和超级管理员发送权限。
其他角色需要分配短信菜单、集成配置读写权限及短信发送权限。
配置
- 阿里云:AccessKey ID、AccessKey Secret、审核通过的短信签名、模板 CODE。当前接入中国大陆
SendSms接口。 - 腾讯云:Secret ID、Secret Key、短信应用 SDK App ID、地域(默认
ap-guangzhou)、签名、模板 ID。 - 保存并启用后才能发送。保留密钥的
******占位符表示沿用原值;不在配置文件中存储凭证。 - 每个服务商当前配置一个签名及模板。切换模板需修改配置。
发送
POST /integration/sms/:provider/send,:provider 为 aliyun 或 tencent。
接口位于现有鉴权和权限控制中,遵循 {code,data,msg} 响应格式。每次只发送给一个号码。
阿里云参数示例:
{"phone":"+8613800138000","params":{"code":"123456"}}
腾讯云参数示例:
{"phone":"+8613800138000","params":["123456","5"]}
参数值必须为字符串;阿里云使用命名对象,腾讯云按模板顺序填写数组。
无参数模板分别传 {} 或 []。手机号使用包含 + 和国家区号的格式。
成功返回 data.requestId 和 data.messageId,表示服务商已受理,不代表手机已收到。
失败返回服务商错误码(例如余额不足、签名未审核、频率限制),不回传原始 SDK 请求或凭证。
网络失败不能保证短信未发送,核对服务商记录后再决定是否重试。
测试按钮会实际发送并可能计费。应用和 SDK 均不自动重试发送请求;腾讯云调用受请求上下文控制,阿里云 SDK 的连接和读取各限制为最多 10 秒。 发送日志隐藏手机号及模板参数,操作审计保留操作者和接口信息。真实发送需要自行配置云账户凭证、审核通过的签名及模板。
此集成提供模板短信发送能力,不包含验证码生成、校验或登录流程。