首页 / n8n 工作流模板 / 自动将 Telegram 文件保存到 Google Drive

自动将 Telegram 文件保存到 Google Drive

Save new Files received on Telegram to Google Drive

此工作流程监听 Telegram 上的新消息,检查它们是否包含文件,并自动将文件上传到指定的 Google Drive 文件夹。

Webhook3 个节点效率办公TelegramGoogle Drive文件自动化

工作流介绍

将收到的 Telegram 文件保存到 Google Drive – 工作流分析

此 n8n 工作流模板可自动将通过 Telegram 发送的文件直接保存到 Google Drive 中的指定文件夹。它利用实时消息监控、条件逻辑和云存储集成,在无需手动干预的情况下创建无缝的文件归档或备份系统。

工作流功能

该工作流会监听 Telegram 聊天(通常是私有机器人对话)中的新消息,检查消息是否包含文件(特别是文档),如果包含,则下载该文件并将其上传到 Google Drive 中预先配置的文件夹。这使用户能够将文档、图片、PDF 或任何支持的文件类型直接从 Telegram 转发到他们的云存储中。

主要功能和能力

  • 实时触发: 使用 Telegram Webhook 即时响应传入的消息。
  • 文件检测逻辑: 采用条件“If”节点来验证消息负载中是否存在文档。
  • 自动文件下载: Telegram 触发器配置为 download: true,确保自动检索二进制文件数据。
  • Google Drive 集成: 使用 OAuth2 身份验证安全地将文件上传到指定文件夹。
  • 元数据保留: 在上传到 Google Drive 时保留 Telegram 中的原始文件名。
  • 无代码自动化: 完全可通过 n8n 的可视化界面进行配置,无需编写脚本。

主要节点及其用途

  1. On new Telegram Message (n8n-nodes-base.telegramTrigger)

    • 通过订阅 Telegram 机器人的消息更新作为入口点。
    • 配置为在消息包含文档时自动下载文件内容。
    • 需要有效的 Telegram Bot API 凭据。
  2. If Message contains a File (n8n-nodes-base.if)

    • 评估传入消息是否包含 document 对象(表示发送了文件)。
    • 使用表达式 ={{ $json.message.document }} 来检查此字段是否存在。
    • 仅当满足条件(即存在文件)时,才将执行传递到下一个节点。
  3. Upload File to GDrive (n8n-nodes-base.googleDrive)

    • 接收从 Telegram 下载的文件二进制数据和元数据。
    • 使用 OAuth2 凭据将文件上传到 Google Drive。
    • 将文件保存在“我的云端硬盘”下的“Demos”文件夹中(ID: 11gyG2TvG0sqCG202CN-w9rloGW-CzKBc)。
    • 使用 ={{ $json.message.document.file_name }} 动态设置文件名。

用例和优势

  • 个人文档归档: 用户可以将收据、合同或笔记发送到他们的 Telegram 机器人,并自动保存到 Google Drive。
  • 团队协作: 团队可以使用共享的 Telegram 机器人来收集提交的内容(例如,报告、设计),并自动集中存储在 Drive 中。
  • 备份自动化: 通过创建冗余的云副本,防止通过 Telegram 发送的重要文件丢失。
  • 节省时间: 消除了手动下载和上传步骤,减少了人为错误和工作量。
  • 可扩展性: 可以扩展以处理多种文件类型、应用命名约定或触发下游操作(例如,电子邮件通知)。

分步工作流逻辑

  1. 触发激活:
    用户向配置的 Telegram 机器人发送包含文件(例如 PDF)的消息。telegramTrigger 节点通过 Telegram 的 Webhook API 检测到此事件。

  2. 自动文件下载:
    由于 additionalFields.download 设置为 true,n8n 会自动从 Telegram 服务器获取文件内容,并将其作为二进制数据附加到工作流项中。

  3. 条件检查:
    工作流将消息负载传递给 If 节点,该节点评估 message.document 是否存在。如果消息仅包含文本或包含不受支持的媒体(例如贴纸),则条件失败,工作流停止。

  4. Google Drive 上传:
    如果检测到文档,工作流将继续到 Google Drive 节点。它使用:

    • 来自 message.document.file_name 的原始文件名
    • 对应于“Demos”文件夹的预定义文件夹 ID (11gyG2TvG0sqCG202CN-w9rloGW-CzKBc)
    • 经过身份验证的 Google Drive 凭据执行上传
  5. 完成:
    文件现已存储在 Google Drive 中,工作流成功结束。未来的消息将独立触发相同的序列。

此工作流例证了两个流行平台——Telegram 和 Google Drive——之间高效的、事件驱动的自动化,使用户能够以最少的设置来简化数字工作流程。

使用方法:下载 JSON 文件,然后在 n8n 中选择“从文件导入”。