このワークフローについて
Telegramで受信した新しいファイルをGoogleドライブに保存する – ワークフロー分析
このn8nワークフローテンプレートは、Telegram経由で送信されたファイルを指定されたGoogleドライブフォルダに直接保存するプロセスを自動化します。リアルタイムのメッセージ監視、条件付きロジック、クラウドストレージ統合を活用して、手動介入なしでシームレスなファイルアーカイブまたはバックアップシステムを作成します。
ワークフローの機能
このワークフローは、Telegramチャット(通常はプライベートボット会話)で新しいメッセージを監視し、メッセージにファイル(特にドキュメント)が含まれているかを確認し、含まれている場合はそのファイルをダウンロードしてGoogleドライブの事前設定されたフォルダにアップロードします。これにより、ユーザーはドキュメント、画像、PDF、またはその他のサポートされているファイルタイプをTelegramから直接クラウドストレージに転送できます。
主な機能と能力
- リアルタイムトリガー: Telegram Webhookを使用して、受信メッセージに即座に反応します。
- ファイル検出ロジック: 条件付き「If」ノードを使用して、メッセージペイロードにドキュメントが存在するかどうかを確認します。
- 自動ファイルダウンロード: Telegramトリガーは
download: trueで設定されており、バイナリファイルデータが自動的に取得されます。 - Googleドライブ統合: OAuth2認証を使用して、指定されたフォルダにファイルを安全にアップロードします。
- メタデータ保持: Googleドライブへのアップロード中に、Telegramの元のファイル名を保持します。
- ノーコード自動化: n8nのビジュアルインターフェースを通じて完全に設定可能で、スクリプトは不要です。
主要ノードとその目的
-
新しいTelegramメッセージ受信時 (
n8n-nodes-base.telegramTrigger)- Telegramボットからのメッセージ更新を購読することで、エントリーポイントとして機能します。
- ドキュメントを含むメッセージを受信した場合、ファイルコンテンツを自動的にダウンロードするように設定されています。
- 有効なTelegram Bot API認証情報が必要です。
-
メッセージにファイルが含まれている場合 (
n8n-nodes-base.if)- 受信メッセージに
documentオブジェクト(ファイルが送信されたことを示す)が含まれているかどうかを評価します。 - このフィールドの存在を確認するために、式
={{ $json.message.document }}を使用します。 - 条件が満たされた場合(つまり、ファイルが存在する場合)のみ、次のノードへの実行を渡します。
- 受信メッセージに
-
GDriveにファイルをアップロード (
n8n-nodes-base.googleDrive)- Telegramメッセージからダウンロードされたファイルバイナリとメタデータを受け取ります。
- OAuth2認証情報を使用してファイルをGoogleドライブにアップロードします。
- ファイルは「マイドライブ」内の「Demos」フォルダ(ID:
11gyG2TvG0sqCG202CN-w9rloGW-CzKBc)に保存されます。 - ファイル名は
={{ $json.message.document.file_name }}を使用して動的に設定されます。
ユースケースとメリット
- 個人ドキュメントアーカイブ: ユーザーは領収書、契約書、メモなどをTelegramボットに送信し、それらをGoogleドライブに自動保存できます。
- チームコラボレーション: チームは共有Telegramボットを使用して、提出物(レポート、デザインなど)を収集し、それらを自動的にドライブに一元化できます。
- バックアップ自動化: Telegram経由で送信された重要なファイルの損失を防ぎ、クラウドに冗長なコピーを作成します。
- 時間節約: 手動でのダウンロードとアップロードの手順を排除し、人的エラーと労力を削減します。
- スケーラビリティ: 複数のファイルタイプを処理したり、命名規則を適用したり、下流のアクション(例:メール通知)をトリガーしたりするように拡張できます。
ステップバイステップのワークフローロジック
-
トリガーのアクティベーション:
ユーザーがファイル(例:PDF)を含むメッセージを、設定されたTelegramボットに送信します。telegramTriggerノードは、TelegramのWebhook APIを介してこのイベントを検出します。 -
自動ファイルダウンロード:
additionalFields.downloadがtrueに設定されているため、n8nはTelegramサーバーからファイルコンテンツを自動的に取得し、ワークフローアイテムにバイナリデータとして添付します。 -
条件チェック:
ワークフローはメッセージペイロードをIfノードに渡し、message.documentが存在するかどうかを評価します。メッセージがテキストのみの場合、またはサポートされていないメディア(例:ステッカー)が含まれている場合、条件は失敗し、ワークフローは停止します。 -
Googleドライブへのアップロード:
ドキュメントが検出された場合、ワークフローはGoogle Driveノードに進みます。以下の情報を使用します。message.document.file_nameからの元のファイル名- 「Demos」フォルダに対応する事前定義されたフォルダID(
11gyG2TvG0sqCG202CN-w9rloGW-CzKBc) - 認証されたGoogleドライブ認証情報を使用してアップロードを実行します。
-
完了:
ファイルはGoogleドライブに保存され、ワークフローは正常に終了します。今後のメッセージは、同じシーケンスを独立してトリガーします。
このワークフローは、TelegramとGoogleドライブという2つの人気プラットフォーム間の効率的でイベント駆動型の自動化を示しており、ユーザーは最小限の設定でデジタルワークフローを合理化できます。
使い方:JSON をダウンロードし、n8n で「ファイルからインポート」を選択します。