首頁 / 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 中選擇「從檔案匯入」。