V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
dangyuluo
V2EX  ›  奇思妙想

Gmail 收到的邮件如何触发 webhook

  •  
  •   dangyuluo · 2023-11-29 14:24:19 +08:00 · 2558 次点击
    这是一个创建于 390 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有一个服务登陆的时候需要用到 OTP 6 位数字,会发到邮箱。我正在做一个自动化 Python 脚本,本来计划使用 IMAP 来收取推送,但是一方面延迟比较大,另一方面需要这个脚本持续运行,因此我想能否用 webhook 的方式。查阅 Gmail 官方文档后发现,Gmail 有一个 API 可以把新邮件的通知转发到 Pub/Sub 上(连接: https://developers.google.com/gmail/api/guides/push#python )但问题是 webhook 收到的信息并不包含验证码,比如{"emailAddress": "[email protected]", "historyId": "1234567890"}

    请问大家有什么好办法能实现这个自动化么?我可以把邮件自动转发到某个邮箱。

    第 1 条附言  ·  2023-12-11 15:43:41 +08:00
    最后我的解决方案是用 AWS SES 来作为邮件接收服务器,收到邮件后把内容存到 S3 ,并触发 Lambda 来获取验证码。Gmail 设置规则自动转发邮件到 AWS SES ,或者直接用 AWS SES 的邮箱地址作为服务账户邮箱。整套配置下来非常稳定,要求验证码在 5 秒钟内即可触发
    13 条回复    2023-11-30 11:55:56 +08:00
    billzhuang
        1
    billzhuang  
       2023-11-29 14:55:59 +08:00
    IFTTT
    dangyuluo
        2
    dangyuluo  
    OP
       2023-11-29 15:06:56 +08:00
    @billzhuang IFTTT 不能用 Gmail 作为 trigger
    Muniesa
        3
    Muniesa  
       2023-11-29 15:47:17 +08:00 via Android
    用 Google app script 接收 Web hook 同时读取邮件?
    cccer
        4
    cccer  
       2023-11-29 15:47:19 +08:00
    webhook 收到通知,然后通过 IMAP 主动查一下邮件内容不就行了。
    loveqianool
        5
    loveqianool  
       2023-11-29 16:45:47 +08:00
    最近用的自部署的 n8n IMAP 可以。
    在线服务试过 make.com 可以。
    dangyuluo
        6
    dangyuluo  
    OP
       2023-11-29 17:00:38 +08:00
    刚才实验了一下 https://forwardemail.net/ 基本能满足我需求,就是延迟不太稳定
    bestsanmao
        7
    bestsanmao  
       2023-11-29 17:14:38 +08:00
    数年前自己做过一个类似 GmailBot 的 Telegram bot
    就用 google 自家的 api

    差不多就是 设置 watch
    users.watch
    收推送之后
    users.messages.list
    users.messages.get
    ShineyWang
        8
    ShineyWang  
       2023-11-29 17:20:37 +08:00
    微软的 powerautomate 支持自定义 hook
    https://make.powerautomate.com/

    但自定义 HTTP API 需要开通账号;可以申请 office 365 开发人员账号解决

    假如有 office 365 可以直接用
    yumusb
        9
    yumusb  
       2023-11-29 17:31:39 +08:00
    A3
        10
    A3  
       2023-11-29 18:11:34 +08:00
    gmail 转发到 cloudflare 域名邮箱 worker
    Martens
        11
    Martens  
       2023-11-29 18:13:07 +08:00
    webhook 收到后主动拿 historyID 和 address 查询,有接口
    YY
        12
    YY  
       2023-11-29 18:28:11 +08:00
    google api 可以,很及时
    julyclyde
        13
    julyclyde  
       2023-11-30 11:55:56 +08:00
    能不能用自动转发机制实现呢?转发给某个 trigger ,而不是用 HTTP 协议的 webhook
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1074 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 19:07 · PVG 03:07 · LAX 11:07 · JFK 14:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.