OpenClaw人人养虾:Gmail 邮件事件订阅
Gmail PubSub 集成允许 OpenClaw 通过 Google Cloud Pub/Sub(谷歌云发布/订阅服务)实时接收 Gmail 邮件变更通知,无需轮询即可在邮件到达的第一时间触发 Agent(智能体)处理。
工作原理
┌───────┐ 新邮件 ┌──────────────┐ 推送消息 ┌─────────┐ Webhook ┌──────────┐
│ Gmail │ ──────> │ Google Cloud │ ────────> │ OpenClaw│ ────────> │ Agent │
│ │ │ Pub/Sub │ │ Gateway │ │ 处理邮件 │
└───────┘ └──────────────┘ └─────────┘ └──────────┘
实时性
相比 Polls(轮询)方式每隔数分钟检查一次,PubSub 推送模式可在邮件到达后 秒级 通知 OpenClaw,显著提升响应速度。
前置条件
- Google Cloud Platform (GCP) 账号及项目
- 启用 Gmail API 和 Pub/Sub API
- OAuth 2.0 Client(OAuth 2.0 客户端)凭据
- OpenClaw Gateway 拥有公网可访问的 HTTPS 端点
配置步骤
Step 1: 创建 GCP 项目并启用 API
# 安装 gcloud CLI
# 创建项目
gcloud projects create openclaw-mail --name "OpenClaw Mail"
gcloud config set project openclaw-mail
# 启用所需 API
gcloud services enable gmail.googleapis.com
gcloud services enable pubsub.googleapis.com
Step 2: 创建 Pub/Sub Topic 和 Subscription
# 创建 Topic
gcloud pubsub topics create gmail-notifications
# 授权 Gmail 向该 Topic 发布消息
gcloud pubsub topics add-iam-policy-binding gmail-notifications \
--member="serviceAccount:gmail-api-push@system.gserviceaccount.com" \
--role="roles/pubsub.publisher"
# 创建 Push Subscription,指向 OpenClaw 的 Webhook 端点
gcloud pubsub subscriptions create gmail-sub \
--topic=gmail-notifications \
--push-endpoint="https://your-gateway.com/hooks/gmail-pubsub" \
--ack-deadline=60
Step 3: 配置 OAuth 凭据
在 GCP Console 中创建 OAuth 2.0 凭据,下载 credentials.json。
# 将凭据放到 OpenClaw 配置目录
cp credentials.json ~/.openclaw/gmail/credentials.json
Step 4: 设置 Gmail Watch
通过 Gmail API 注册 Watch(邮件监控):
# 使用 OpenClaw CLI 设置
openclaw gmail watch \
--credentials ~/.openclaw/gmail/credentials.json \
--topic "projects/openclaw-mail/topics/gmail-notifications" \
--labels "INBOX"
Watch 过期
Gmail Watch 每 7 天 自动过期。OpenClaw 会在后台自动续期,但请确保 OAuth Token 持续有效。
Step 5: 在 OpenClaw 中配置集成
{
"integrations": {
"gmail-pubsub": {
"enabled": true,
"credentials": "~/.openclaw/gmail/credentials.json",
"topic": "projects/openclaw-mail/topics/gmail-notifications",
"watchLabels": ["INBOX"],
"autoRenew": true,
"handler": {
"session": "isolated",
"message": "收到新邮件,请处理:\n发件人: {from}\n主题: {subject}\n摘要: {snippet}",
"delivery": "announce"
},
"filters": {
"excludeSenders": ["noreply@", "no-reply@"],
"includeLabels": ["INBOX"],
"hasAttachment": false
}
}
}
}
邮件处理工作流
收到通知后,Agent 可执行以下操作:
自动分类与标记
{
"handler": {
"message": "分析邮件内容,自动分类为:工作/个人/推广/重要,并打标签"
}
}
自动提取附件
{
"handler": {
"message": "检查邮件附件,如果是发票/合同,提取关键信息保存到数据库"
}
}
自动回复
{
"handler": {
"message": "如果是客户询价邮件,根据产品目录生成报价回复草稿"
}
}
典型应用场景
| 场景 | 说明 |
|---|---|
| 发票自动处理 | 识别发票附件,OCR 提取信息,录入财务系统 |
| 客户邮件自动回复 | 分析来意,自动生成回复草稿 |
| 简历自动筛选 | 提取简历附件,匹配岗位要求,打分排序 |
| 订单确认通知 | 解析订单确认邮件,更新内部系统状态 |
| 告警邮件处理 | 识别服务告警邮件,自动触发运维操作 |
调试与监控
# 查看 Gmail 集成状态
openclaw gmail status
# 查看最近收到的通知
openclaw gmail notifications --limit 10
# 手动触发 Watch 续期
openclaw gmail renew
# 测试推送通道
openclaw gmail test-push
错误处理
| 错误 | 原因 | 解决方案 |
|---|---|---|
UNAUTHENTICATED |
OAuth Token 过期 | 重新运行 openclaw gmail auth |
NOT_FOUND |
Topic 不存在 | 检查 GCP 项目和 Topic 名称 |
PERMISSION_DENIED |
权限不足 | 检查 IAM Policy Binding |
DEADLINE_EXCEEDED |
消息确认超时 | 增大 ack-deadline |
《AI提示工程必知必会》为读者提供了丰富的AI提示工程知识与实战技能。《AI提示工程必知必会》主要内容包括各类提示词的应用,如问答式、指令式、状态类、建议式、安全类和感谢类提示词,以及如何通过实战演练掌握提示词的使用技巧;使用提示词进行文本摘要、改写重述、语法纠错、机器翻译等语言处理任务,以及在数据挖掘、程序开发等领域的应用;AI在绘画创作上的应用,百度文心一言和阿里通义大模型这两大智能平台的特性与功能,以及市场调研中提示词的实战应用。通过阅读《AI提示工程必知必会》,读者可掌握如何有效利用AI提示工程提升工作效率,创新工作流程,并在职场中脱颖而出。

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)