ホーム / n8n ワークフローテンプレート / TelegramファイルをGoogleドライブに自動保存

TelegramファイルをGoogleドライブに自動保存

Save new Files received on Telegram to Google Drive

このワークフローは、Telegramで新しいメッセージをリッスンし、ファイルが含まれているかを確認し、指定されたGoogleドライブフォルダーにファイルを自動的にアップロードします。

Webhook3 ノード生産性TelegramGoogleドライブファイル自動化

このワークフローについて

Telegramで受信した新しいファイルをGoogleドライブに保存する – ワークフロー分析

このn8nワークフローテンプレートは、Telegram経由で送信されたファイルを指定されたGoogleドライブフォルダに直接保存するプロセスを自動化します。リアルタイムのメッセージ監視、条件付きロジック、クラウドストレージ統合を活用して、手動介入なしでシームレスなファイルアーカイブまたはバックアップシステムを作成します。

ワークフローの機能

このワークフローは、Telegramチャット(通常はプライベートボット会話)で新しいメッセージを監視し、メッセージにファイル(特にドキュメント)が含まれているかを確認し、含まれている場合はそのファイルをダウンロードしてGoogleドライブの事前設定されたフォルダにアップロードします。これにより、ユーザーはドキュメント、画像、PDF、またはその他のサポートされているファイルタイプをTelegramから直接クラウドストレージに転送できます。

主な機能と能力

  • リアルタイムトリガー: Telegram Webhookを使用して、受信メッセージに即座に反応します。
  • ファイル検出ロジック: 条件付き「If」ノードを使用して、メッセージペイロードにドキュメントが存在するかどうかを確認します。
  • 自動ファイルダウンロード: Telegramトリガーはdownload: trueで設定されており、バイナリファイルデータが自動的に取得されます。
  • Googleドライブ統合: OAuth2認証を使用して、指定されたフォルダにファイルを安全にアップロードします。
  • メタデータ保持: Googleドライブへのアップロード中に、Telegramの元のファイル名を保持します。
  • ノーコード自動化: n8nのビジュアルインターフェースを通じて完全に設定可能で、スクリプトは不要です。

主要ノードとその目的

  1. 新しいTelegramメッセージ受信時 (n8n-nodes-base.telegramTrigger)

    • Telegramボットからのメッセージ更新を購読することで、エントリーポイントとして機能します。
    • ドキュメントを含むメッセージを受信した場合、ファイルコンテンツを自動的にダウンロードするように設定されています。
    • 有効なTelegram Bot API認証情報が必要です。
  2. メッセージにファイルが含まれている場合 (n8n-nodes-base.if)

    • 受信メッセージにdocumentオブジェクト(ファイルが送信されたことを示す)が含まれているかどうかを評価します。
    • このフィールドの存在を確認するために、式 ={{ $json.message.document }} を使用します。
    • 条件が満たされた場合(つまり、ファイルが存在する場合)のみ、次のノードへの実行を渡します。
  3. GDriveにファイルをアップロード (n8n-nodes-base.googleDrive)

    • Telegramメッセージからダウンロードされたファイルバイナリとメタデータを受け取ります。
    • OAuth2認証情報を使用してファイルをGoogleドライブにアップロードします。
    • ファイルは「マイドライブ」内の「Demos」フォルダ(ID: 11gyG2TvG0sqCG202CN-w9rloGW-CzKBc)に保存されます。
    • ファイル名は ={{ $json.message.document.file_name }} を使用して動的に設定されます。

ユースケースとメリット

  • 個人ドキュメントアーカイブ: ユーザーは領収書、契約書、メモなどをTelegramボットに送信し、それらをGoogleドライブに自動保存できます。
  • チームコラボレーション: チームは共有Telegramボットを使用して、提出物(レポート、デザインなど)を収集し、それらを自動的にドライブに一元化できます。
  • バックアップ自動化: Telegram経由で送信された重要なファイルの損失を防ぎ、クラウドに冗長なコピーを作成します。
  • 時間節約: 手動でのダウンロードとアップロードの手順を排除し、人的エラーと労力を削減します。
  • スケーラビリティ: 複数のファイルタイプを処理したり、命名規則を適用したり、下流のアクション(例:メール通知)をトリガーしたりするように拡張できます。

ステップバイステップのワークフローロジック

  1. トリガーのアクティベーション:
    ユーザーがファイル(例:PDF)を含むメッセージを、設定されたTelegramボットに送信します。telegramTriggerノードは、TelegramのWebhook APIを介してこのイベントを検出します。

  2. 自動ファイルダウンロード:
    additionalFields.downloadがtrueに設定されているため、n8nはTelegramサーバーからファイルコンテンツを自動的に取得し、ワークフローアイテムにバイナリデータとして添付します。

  3. 条件チェック:
    ワークフローはメッセージペイロードをIfノードに渡し、message.documentが存在するかどうかを評価します。メッセージがテキストのみの場合、またはサポートされていないメディア(例:ステッカー)が含まれている場合、条件は失敗し、ワークフローは停止します。

  4. Googleドライブへのアップロード:
    ドキュメントが検出された場合、ワークフローはGoogle Driveノードに進みます。以下の情報を使用します。

    • message.document.file_nameからの元のファイル名
    • 「Demos」フォルダに対応する事前定義されたフォルダID(11gyG2TvG0sqCG202CN-w9rloGW-CzKBc)
    • 認証されたGoogleドライブ認証情報を使用してアップロードを実行します。
  5. 完了:
    ファイルはGoogleドライブに保存され、ワークフローは正常に終了します。今後のメッセージは、同じシーケンスを独立してトリガーします。

このワークフローは、TelegramとGoogleドライブという2つの人気プラットフォーム間の効率的でイベント駆動型の自動化を示しており、ユーザーは最小限の設定でデジタルワークフローを合理化できます。

使い方:JSON をダウンロードし、n8n で「ファイルからインポート」を選択します。