richarjiang
37cc2a729b
feat(push-notifications): 新增挑战提醒定时推送功能
...
新增每日定时推送系统,根据用户参与状态发送不同类型的挑战提醒:
- 已参与用户:每日发送鼓励推送
- 未参与用户:隔天发送挑战邀请
- 匿名用户:隔天发送通用邀请
包含推送历史记录表、定时任务调度、多类型文案模板和防重复发送机制
2025-11-03 17:49:14 +08:00
richarjiang
3a3939e1ba
根据提供的 git diff,我来分析这次变更:
...
## 变更分析
这次提交主要涉及 APNs 推送通知功能的优化:
1. **apns.provider.ts** 的变更:
- 重构了通知选项的构建逻辑,将 alert 设置为顶层属性
- 增强了 `createDeviceNotification` 方法,完整复制所有通知选项(badge、sound、contentAvailable、mutableContent、priority、type、data)
- 移除了未使用的 aps 对象
2. **push-notifications.service.ts** 的变更:
- 移除了冗余的 `alert` 字段
- 新增了更多 APNs 通知选项:priority、expiry、collapseId、mutableContent、contentAvailable
这是一次功能增强和代码重构,主要目的是完善 APNs 推送通知的配置选项支持。
## 建议的提交信息
feat(push-notifications): 完善APNs推送通知配置选项支持
- 重构通知选项构建逻辑,优化alert属性设置
- createDeviceNotification方法新增完整选项复制(badge、sound、contentAvailable、mutableContent、priority、type、data)
- 推送服务新增priority、expiry、collapseId、mutableContent、contentAvailable等配置项支持
- 移除冗余的alert字段设置
2025-11-03 17:31:31 +08:00
richarjiang
fa9b28a98f
feat(push-notifications): 新增更新令牌用户ID功能
...
添加新的API端点用于更新设备推送令牌绑定的用户ID,包括:
- 新增UpdateTokenUserIdDto和UpdateTokenUserIdResponseDto
- 在控制器中添加updateTokenUserId端点
- 在服务层实现updateTokenUserId方法
- 在push-token服务中添加底层更新逻辑
- 优化推送测试服务,仅在主进程中执行
2025-11-03 17:08:56 +08:00
richarjiang
200484ce39
feat(push-notifications): 将推送测试改为基于挑战的个性化提醒
...
重构推送测试服务,从简单的测试推送改为针对正在进行中挑战的个性化提醒推送。
新增功能包括:
- 获取正在进行中的挑战和活跃参与者
- 根据挑战类型生成个性化推送内容
- 为挑战参与者发送针对性的提醒推送
- 支持多种挑战类型的推送模板(饮水、运动、饮食、心情、睡眠、体重管理)
2025-11-03 16:11:30 +08:00
richarjiang
cc83b84c80
feat(push): 新增设备推送和测试功能
...
- 新增基于设备令牌的推送通知接口
- 添加推送测试服务,支持应用启动时自动测试
- 新增推送测试文档说明
- 更新 APNS 配置和日志记录
- 迁移至 apns2 库的 PushType 枚举
- 替换订阅密钥文件
- 添加项目规则文档
2025-10-15 19:09:51 +08:00
richarjiang
38dd740c8c
feat(push): migrate APNs provider from @parse/node-apn to apns2 library
...
- Replace @parse/node-apn with apns2 for improved APNs integration
- Update ApnsProvider to use new ApnsClient with modern API
- Refactor notification creation and sending logic for better error handling
- Add proper error event listeners for device token issues
- Update configuration interface to match apns2 requirements
- Modify push notification endpoints to allow public access for token registration
- Update service methods to handle new response format from apns2
- Add UsersModule dependency to PushNotificationsModule
2025-10-14 19:25:30 +08:00
richarjiang
305a969912
feat: 支持 push
2025-10-11 17:38:04 +08:00