Files
n8n_workflow/imap2line/IMAP_to_LINE_Notification_Setup_Guide.md

5.7 KiB
Raw Permalink Blame History

IMAPからLINEへの通知ワークフロー構築手順書

このドキュメントでは、n8nを使用して「メールIMAPを受信し、LINE Messaging APIで通知する」ワークフローを構築する手順を説明します。 この手順は、Docker環境で動作するn8nを前提としています。

1. 前提条件

  • n8n環境: n8n v1.0以上が動作していること。
  • メールサーバー情報: IMAP接続が可能なメールサービスのホスト名、ポート、ユーザー名、パスワードGoogleの場合はアプリパスワード
  • LINE Messaging API: LINE Developersコンソールでチャネルが作成され、アクセストークンロングターム推奨とユーザーIDが取得済みであること。

2. 準備: コミュニティノードのインストール

標準のIMAPードでは大量のメールを処理しきれない場合があるため、拡張機能であるコミュニティードを使用します。

  1. n8nの画面左下、または設定メニューから [Settings] > [Community nodes] を開きます。
  2. [Install a community node] をクリックします。
  3. 以下のパッケージ名を入力し、インストールします。
    • Package Name: n8n-nodes-imap-enhanced
    • (承認が必要な場合はチェックを入れて進めてください)

3. ワークフローのインポート

添付のJSONファイル n8n_imap_to_line_workflow.json を使用すると、設定済みのワークフローを一括で読み込めます。

  1. n8nのワークフロー一覧画面Workflowsを開きます。
  2. 右上のメニューから [Import from File] を選択し、JSONファイルをアップロードします。
  3. または、新規ワークフローを作成し、画面右上のメニューから [Import from File] を選択します。
  4. インポート後、画面を一度リロードF5することを推奨しますコミュニティードの表示を反映させるため

4. ノードの設定詳細

インポートされたワークフローには、主に3つのードが含まれています。それぞれの設定を確認・修正してください。

A. Schedule Trigger

定期的にメールチェックを行うトリガーです。

  • Interval: デフォルトは3分間隔になっています。必要に応じて変更してください。

B. IMAP Enhanced (Community Node)

メールを受信するノードです。

  • Credential: [Create New] からメールサーバー情報を入力して保存してください。
    • Googleの場合: Userはメールアドレス、Passwordはアプリパスワードです。
  • Resource: Message を選択。
    • ※もし空欄になっている場合は、一度別の項目を選んでから Message を選び直してください。
  • Operation: Get Many を選択。
  • Mailbox: INBOX
  • Format: Resolved
  • Options重要:
    • Limit: 10 程度推奨1回に処理する件数
    • Search: UNSEEN SINCE 10-Feb-2026 のように設定します。
      • UNSEEN: 未読メールのみを対象。
      • SINCE dd-Mon-yyyy: 指定日以降のメールのみ対象(大量の過去メール読み込みを防ぐため必須)。
    • Download Attachments: false動作を軽くするためOFF推奨

C. LINE Messaging API (HTTP Request)

LINEに通知を送るードです。

  • Method: POST
  • URL: https://api.line.me/v2/bot/message/push
  • Authentication: Header Auth を選択。
  • Credential: [Create New] から以下を設定します。
    • Name: Authorization (※スペルミス注意。スペース等は入れないこと)
    • Value: Bearer {YOUR_ACCESS_TOKEN} (先頭に Bearer と半角スペースを入れる)
  • Body: JSON形式で送信内容を定義しています。
    • to: あなたのLINEユーザーID (Uから始まる文字列) に書き換えてください。

5. 動作確認

  1. 画面下部の [Execute Workflow] をクリックします。
  2. 自分宛てにテストメールを送るなどして、未読メールがある状態で通知が届くか確認してください。
  3. 問題なければ、画面右上の [Active] スイッチをONにして保存してください。

以上

参考: CLIコマンドラインでのインポート方法

今回の作業では、ブラウザを使わずにサーバー内部のコマンドだけでインポートを行いました。 大量のワークフローを管理する場合や、自動化する場合に便利な方法です。

1. サーバーへのファイル転送

作成したJSONファイルを、サーバー上の任意の場所例: /home/akira/workflow.json)に配置します。 ローカルPCから送る場合は scp コマンドなどを使用)

2. Dockerコンテナへのコピー

n8nが動作しているDockerコンテナの中に、そのファイルをコピーします。

docker cp /home/akira/workflow.json n8n-n8n-1:/home/node/workflow.json
  • n8n-n8n-1: n8nのコンテナ名環境によって異なります

3. インポートコマンドの実行

コンテナ内部の n8n コマンドを呼び出してインポートします。

docker exec -u node -i n8n-n8n-1 n8n import:workflow --input=/home/node/workflow.json
  • import:workflow: ワークフローをインポートするコマンド
  • --input: 読み込むファイルのパス

これで、IDが一致するワークフローがあれば上書きされ、なければ新規作成されます。

以上