# 2026-03-29 Daily Memory ## User Info - User: 罗国财 (userid: 121922510028034588) - Role: 产研部门负责人 ## MCP Services Configured (4 total) | Name | URL Key | Purpose | |------|---------|---------| | 钉钉文档 | ...?key=70fb6676... | 文档操作 | | 钉钉MCP | ...?key=1ef173d1... | 日历/日程 | | 钉钉MCP2 | ...?key=ec174881... | 通讯录/用户 | | 钉钉待办 | ...?key=7f8ad91c... | 待办管理 | ## DingTalk API Notes - ⚠️ Time parameters are in **milliseconds**, not seconds - ⚠️ Field names use lowercase `userid`, not `userId` - Calendar query: `list_calendar_events` needs millisecond timestamps: - startTime/endTime in milliseconds - Example: 2026-03-30 = 1774800000000 to 1774886400000 ## DingTalk MCP Mapping Rules | Feature | Use | |---------|-----| | 钉钉文档 | 钉钉文档 MCP | | 钉钉日程 | 钉钉日程 MCP | | 钉钉待办 | 钉钉待办 MCP | | 钉钉通讯录 | 钉钉通讯录 MCP | | Other DingTalk | Use skills/API | ## Email Config - Tencent Enterprise Email (IMAP) - IMAP: imap.exmail.qq.com:993 (SSL) - SMTP: smtp.exmail.qq.com:465 (SSL) - Account: lgc@77ircloud.com - ⚠️ READ ONLY - never delete emails - Important sender: fj@77ircloud.com ## Email Summary Cron - Script: scripts/email_summary.py - Schedule: Daily 9 AM - Logs: logs/email_summary.log ## Skills Installed Today - dingtalk-api (from github) - skill-creator - pdf - docx - canvas-design - lobster-email ## Work Reports Stored - File: memory/luoguocai_weekly_reports.md - 6 weekly reports from 2026-02 to 2026-03 (incomplete due to API 1000-char limit) ## Calendar Tomorrow (2026-03-30) - 10:00-11:00: 会议 (self-created) - 11:00-12:00: 产研经理人周会 (陈咏梅) - 14:00-15:00: 生产健康度review周会 (薛凯杰) - CANCELLED - 16:45-17:30: 质量管理部周例会 (薛凯杰) - 17:30-18:00: 前端周会 (刘畅) - 17:30-18:00: 业务后台周例会 (韦成双) - 17:30-18:00: 产品及设计周例会 (self) Note: Multiple meetings overlap at 17:30-18:00 ## MiniMax TTS → 钉钉语音 ### 脚本 - `scripts/dingtalk_tts.sh` - MiniMax TTS 生成语音并发送到钉钉 ### 使用方式 ```bash bash scripts/dingtalk_tts.sh "要说的内容" ``` ### 流程 1. MiniMax TTS (hex audio) → Python 解析 → MP3 2. MP3 上传到 oapi.dingtalk.com/media/upload (type=voice) 3. 发送使用 /v1.0/robot/oToMessages/batchSend API ### 关键发现 - DingTalk 语音消息用 MP3 格式即可 - API: POST https://api.dingtalk.com/v1.0/robot/oToMessages/batchSend - msgKey: sampleAudio - msgParam: {"mediaId":"xxx","duration":"秒"} - **重要**: duration 参数使用**秒**(整数),不是毫秒 ### ⚠️ 重要规则 **后续回复:如果用户要求语音回复,直接使用 `bash scripts/dingtalk_tts.sh "回复内容"` 发送语音消息** ## 语音处理规则(2026-03-30 更新) **默认规则**: - 用户发语音 → Whisper 转文字 → **文字回复** - 用户特别标注「语音回复」→ MiniMax TTS → **语音回复** **简单说**:正常文字回复,特殊要求才语音回复 ## 钉钉语音时长显示问题修复记录(2026-03-30) ### 问题描述 钉钉语音消息发送成功,音频能正常播放,但没有时长显示。 ### 根本原因 msgParam 中 duration 参数格式错误: - ❌ 错误格式:`"duration":"4"`(字符串,有引号) - ✅ 正确格式:`"duration":4`(数字,无引号) ### 修复方案 修改 `scripts/dingtalk_tts.sh` 第117行: ```bash # 修改前 "msgParam": "{\"mediaId\":\"$MEDIA_ID\",\"duration\":\"$DURATION\"}" # 修改后 "msgParam": "{\"mediaId\":\"$MEDIA_ID\",\"duration\":$DURATION}" ``` ### 教训 钉钉 sampleAudio 消息类型中,duration 必须是**整数数字类型**,不能是字符串。 ### 相关文件 - `scripts/dingtalk_tts.sh` - MiniMax TTS 钉钉语音脚本 ## 钉钉语音时长问题(未解决)- 2026-03-30 ### 问题 钉钉语音消息发送成功能播放,但 duration 时长不显示。 ### 已尝试(均无效) 1. duration 格式:字符串 vs 数字 2. 音频格式:MP3、AMR(AMR 无法生成) 3. 音频参数:16kHz/32kHz、64kbps/128kbps、单声道 4. 音频时长:3秒、5秒、10秒 5. 消息类型:sampleAudio(唯一有效)、voice/audio/sampleVoice(无效) 6. 音色:旧音色 female-tianmei 也不显示 ### 结论 可能是钉钉 `oToMessages/batchSend` + `sampleAudio` 消息类型的平台限制。 或者需要完全不同的 API 发送语音消息。 ### 待解决 需要用户回忆之前的修复方案,或找到正确的钉钉语音消息发送方式。 ## 常用日志模板 - 经理人周报(2026-03-30) ### 模板信息 - **模板名称**: 经理人周报 - **模板code**: 150135427970260ac424dce45e289a84 - **提交频率**: 每周一 ### 用途 产研部门负责人每周需提交一次经理人周报,总结上周工作并计划下周安排。 ### 相关操作 - 查询日志: `POST https://oapi.dingtalk.com/topapi/report/list` - 模板code: `150135427970260ac424dce45e289a84` ## 图片处理原则(2026-03-30 教训) ### 问题 收到群聊截图,误以为是周报内容,并编造了不存在的事实。 ### 原则 1. 如果图片内容看不清、不确定或处理不了,**如实回答**「我看不清/处理不了」 2. **绝对不能编造**不存在的文字或内容 3. 图片内容如果不是结构化数据(如截图、照片),处理能力有限 ### 教训 遇到不确定的图片时,直接说"我看不清这张图片的内容",不要强行猜测或推断。