notfff 4f44ce21b1 refactor(database): 优化数据库表结构并添加索引 7 meses atrás
..
AdminControllers 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Databases 4f44ce21b1 refactor(database): 优化数据库表结构并添加索引 7 meses atrás
Enums 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Gateway 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Messages 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Models 00c4b666fb refactor(app): 优化模型属性注释和类型定义 7 meses atrás
Providers 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Repositories 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Services 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Strategy 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Tests 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Validation 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
Validators 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
config 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás
README.md 693477b517 feat(GenerateModelAnnotation): 支持自定义Casts类型 7 meses atrás

README.md

短信模块文档

模块说明

短信模块是一个统一的短信发送系统,支持多种短信服务商,包括阿里云、腾讯云等。

目录结构

app/Module/Sms/
├── Controllers/          # 控制器目录
├── Models/              # 模型目录
├── Repositorys/         # 仓库目录
├── Services/            # 服务目录
├── Validators/          # 验证器目录
├── Validations/         # 验证规则目录
├── Queues/              # 队列目录
├── Enums/               # 枚举目录
└── Commands/            # 命令目录

SmsService

短信核心服务,负责短信的发送、模板管理等功能。

主要方法:

  • send(array $data): 发送短信
  • sendBatch(array $data): 批量发送短信
  • getTemplate(int $id): 获取模板
  • createTemplate(array $data): 创建模板
  • updateTemplate(int $id, array $data): 更新模板
  • deleteTemplate(int $id): 删除模板

队列处理

SendSmsQueue

短信发送队列,处理异步发送任务。

使用示例

// 发送短信
$smsService = new SmsService();
$smsService->send([
    'template_id' => 1,
    'phone' => '13800138000',
    'data' => [
        'code' => '123456'
    ]
]);

// 批量发送短信
$smsService->sendBatch([
    [
        'template_id' => 1,
        'phone' => '13800138000',
        'data' => ['code' => '123456']
    ],
    [
        'template_id' => 1,
        'phone' => '13800138001',
        'data' => ['code' => '654321']
    ]
]);

注意事项

  1. 短信发送采用队列异步处理
  2. 支持失败重试机制
  3. 支持变量替换
  4. 支持多服务商
  5. 支持发送频率限制
  6. 支持短信黑名单
  7. 支持发送统计