读取邮箱
读取 /var/lib/mail-intake/mailboxes/ 下所有邮箱的未读邮件,用中文把内容汇总给用户,然后把它们标记为已读。
执行步骤
- 运行
mailctl list --json,得到每个邮箱的mailbox与unread数量 - 对每个
unread > 0的邮箱依次运行mailctl read <mailbox>。该命令输出每封未读邮件的 JSON(message_id、date、from、to、subject、body、attachments等),并在输出后自动写入已读标记 —— 不需要再单独调用mark - 把结果整理成清单:按邮箱分组,每封邮件写明发件人、主题、时间、正文要点(长正文提炼,不整段照抄)、附件名
- 没有未读邮件,只回复「今天没有未读邮件」
- 有邮件解析失败或标记已读失败,单独说明是哪封、什么错误,不静默跳过
注意
- 用
read而不是peek,因为需要标记已读 - 一次
read的--limit默认 20;某邮箱未读数超过 20,重复执行,直到mailctl list --json显示unread为 0