用途:通过 Azure Communication Services 的 Java SDK(azure-communication-sms)向单个或多个手机号发送短信,适合短信通知、告警、OTP 验证码下发和批量消息等场景。
主要能力:支持单收件人与多收件人发送;可开启送达报告(经 Azure Event Grid 推送)并设置自定义 tag 用于业务追踪;提供同步 SmsClient 与异步 SmsAsyncClient;返回 SmsSendResult,可逐条查看 messageId、收件人、是否成功、HTTP 状态码与错误信息;支持 sendWithResponse 获取完整 HTTP 响应。
使用方式:以 Maven 依赖引入 com.azure:azure-communication-sms:1.2.0。创建客户端可用连接字符串、AzureKeyCredential,或 DefaultAzureCredential/ManagedIdentityCredential 等凭据,并指定 endpoint。发送时使用 E.164 格式号码,例如 smsClient.send("+14255550100", "+14255551234", "...");批量发送使用 sendWithResponse 并传入收件人列表与 SmsSendOptions。
限制与注意:单条消息失败不会抛异常,需检查 isSuccessful();请求级失败(认证、网络等)会抛 HttpResponseException。送达报告需在 ACS 资源上配置 Event Grid 订阅。遇到 429 应实现退避重试。生产环境使用 DefaultAzureCredential 时需设置 AZURE_TOKEN_CREDENTIALS。具体价格、配额与区域支持暂未提供。