SuperAPI AI 工具集

email

办公与效率

查看项目

更新于 10-15 22:17

技能介绍

用途:iii 引擎中的邮件客户端 worker,通过按账户持久化的连接使用 SMTP 发信、IMAP 收信,并支持订阅式触发。所有可调用接口位于 email::* 命名空间;传输方式在 config.yaml 按账户配置:provider: smtp 为仅发信,provider: imap 为双向。它拒绝回退到轮询:若 IMAP 服务器不支持 IDLE,supervisor 在启动时以 E610 失败。新邮件通过 email::new-mail 触发类型分发,由 IDLE 驱动。凭据不在本 worker 中,每次 IMAP 登录和 email::send 都通过 provider 键 email::<account> 调用 auth::get_token 获取。

主要能力:email::send 发送邮件;email::accounts::list 列出账户及能力;email::list 按 UID 分页;email::get 获取单封解析后的正文与附件引用;email::search 以 NDJSON 流式返回搜索结果;email::flag 增删系统标志;email::move 用 UID MOVE 移动邮件;email::attachment::get 流式输出附件字节。触发绑定:registerFunction 注册处理函数,再用 iii.registerTrigger 绑定 email::new-mail,配置 account、folder(默认 INBOX)、handler_timeout_ms(默认 30000)。事件负载含 account、folder、uid、message_id、from、subject、snippet、ts。

限制:不是邮件服务器,需自备 SMTP/IMAP 端点;0.1.0 不运行 OAuth 流程,需 app-password 类凭据;不支持轮询回退;不存储凭据,需与 harness/auth-credentials 配对部署。发送语义为尽力而为、至多一次,无上游持久队列,事件不重投;可通过持久化事件与 email::list 游标补漏。email::flag 的 deleted 不执行 expunge。附件来源 stream 类型在 0.1.0 返回 E699。仅支持 SMTP 的账户无法绑定 IDLE 监听。