AI 驅動文件
您想了解什麼?
使用 Node-RED 傳送電子郵件
本教程演示如何使用 Node-RED 從 OV10i 相機設定自動化電子郵件通知。您將學習如何配置 Gmail 整合,並建立將檢測警報、系統狀態更新和故障通知直接傳送到您的郵箱的工作流。
您將構建的內容: 一個自動化電子郵件系統,使用 Gmail SMTP 將 OV10i 的檢測結果、警報和通知傳送給指定收件人。
實際應用場景: 當檢測失敗時立即收到電子郵件警報,將每日質量報告傳送給管理層,或在系統出現問題時通知維護團隊——全部由您的視覺檢測系統自動完成。
請用簡短英文描述您需要的電子郵件通知型別, Auto-Integration Builder 將在幾秒鐘內為您生成一個完整的 Node-RED 流。
先決條件
- OV10i 相機,具備 Node-RED 訪問許可權
- 用於傳送郵件的 Gmail 帳戶
- 對 Node-RED 流的基本理解
- 訪問 Google 帳號的安全設定
教程概覽
將要構建的內容: 一個 Node-RED 流,自動傳送帶檢測結果及系統警報的郵件通知。
所需時間: 20-30 分鐘(含 Gmail 設定)
所學技能: Gmail 應用密碼設定、SMTP 配置、自動化郵件通知
Step 1: 設定 Gmail App Password
1.1 啟用兩步驗證
- 在 Google 帳號登入頁面 訪問 accounts.google.com
- 在左側導航選單中點選 “Security”
- **找到“Signing in to Google”**部分
- 點選“2-Step Verification”
- 按提示啟用 2-Step Verification(若尚未啟用)
在建立應用密碼之前,需要啟用 2-Step Verification。
1.2 生成 App Password
- 在啟用 2-Step Verification 後返回 Security 頁面
- 點選“App passwords”(位於“Signing in to Google”下)
- 將應用型別選為“Mail”
- 將裝置型別選為“Other”
- 輸入一個名稱,如“OV10i Node-RED Email”
- 點選“Generate”
1.3 儲存您的 App Password
- 複製 Google 顯示的 16 位密碼
- 妥善保管——您將在 Node-RED 配置中使用它
- 備註:此密碼僅顯示一次。若丟失,請生成新的
檢查點: 您應儲存有一個 16 位 Gmail 應用密碼,以供 Node-RED 使用。
Step 2: 安裝 Email 節點(如有需要)
2.1 檢查是否已有 Email 節點
- 在 OV10i 相機上開啟 Node-RED
- 在左側調色盤的輸出部分查詢名為“email”的節點
- 若缺少,則需要安裝 email 包
2.2 如需安裝 Email 包
- 在 Node-RED 中點選漢堡選單(≡)
- 選擇“Manage palette(管理調色盤)”
- 點選“Install(安裝)”選項卡
- 搜尋“node-red-node-email”
- 點選該包旁的“Install(安裝)”
Step 3: 建立基礎郵件流
3.1 新增所需節點
- 導航到 IO Block 以訪問 Node-RED
- 從調色盤拖動以下節點到畫布上:
- Inject 節點(用於測試)
- Email 節點(來自輸出部分)
- 將 Inject 的輸出連線到 Email 的輸入
3.2 基本流程結構
Inject → Email
流程目的: 用於測試和基本通知的簡單郵件傳送。

步驟 4:配置郵件內容
4.1 設定 Inject Node
- Double-click the inject node 以開啟屬性
- Set the payload:
- Payload type: "string"
- Payload value: 您的郵件正文文字(例如 "Inspection alert from OV10i")
- Add email subject:
-
Click "+ add" 以新增屬性
-
Property name: "topic"
-
Property value: 您的郵件主題(例如 "OV10i Inspection Alert")

-
4.2 示例基本配置
Payload (email body):
Inspection completed at Station 1
Status: Alert triggered
Time: Check timestamp for details
Topic (email subject):
OV10i Inspection Alert - Station 1
4.3 儲存 Inject 配置
- 為節點命名,如 "Email Trigger"
- 點選 "Done" 以儲存配置
步驟 5:配置 Email SMTP 設定
5.1 設定 Email Node
- Double-click the email node 以開啟屬性
- 配置基本設定:
- Name: "Send Alert Email"(或描述性名稱)
- To: 收件人郵箱地址(例如 quality@company.com)
5.2 配置 Gmail SMTP
- Server:
smtp.gmail.com - Port:
465 - 勾選“Use secure connection”
- Auth type:
Basic - Userid: 您的完整 Gmail 地址(例如 alerts@company.com)
- Password: 來自步驟 1 的 16 位應用程式密碼
5.3 安全設定
- 勾選 'Check server certificate is valid' -> 跨國語句中翻譯為 “勾選“驗證伺服器證書是否有效””
- 請驗證所有設定均已正確輸入
- 點選 "Done" 以儲存 Email Node 配置
Checkpoint: 您的 Email Node 應無錯誤指示並顯示收件人地址。

步驟 6:測試您的郵件流
6.1 部署與測試
- 點選右上角的 'Deploy' 按鈕
- 等待 'Successfully deployed' 訊息
- 點選 Inject Node 按鈕(左側的灰色方塊)
6.2 驗證郵件投遞
- 檢查收件人郵箱中的測試郵件
- 如未出現在收件箱,請檢查垃圾郵件資料夾
- 在 Node-RED 除錯面板中查詢任何錯誤資訊
6.3 如有需要,故障排除
常見問題:
- 錯誤的應用程式密碼:重新生成 Gmail 應用程式密碼
- SMTP 設定:請驗證伺服器和埠是否正確
- 防火牆:確保允許出站 SMTP 流量
步驟 7:與檢測結果的整合
7.1 連線到 Inspection Flow
為基於檢測結果傳送郵件:
- 找到主檢測流程(以 All Block Outputs 開頭)
- 將您的郵件流 作為檢測處理的一個分支新增
- 在檢測邏輯之後連線,但與最終結果並行
7.2 示例整合流
All Block Outputs → [Inspection Logic] → Final Pass/Fail
↓
Format Email → Send Email

7.3 動態郵件內容
將 inject 節點替換為用於動態內容的函式節點:
// Dynamic email based on inspection results
const result = msg.payload.result ? "PASSED" : "FAILED";
const timestamp = new Date().toLocaleString();
const station = global.get("station_name") || "Unknown Station";
// Set email subject
msg.topic = `Inspection ${result} - ${station}`;
// Set email body
msg.payload = `Inspection Report:
Status: ${result}
Station: ${station}
Time: ${timestamp}
Image: ${msg.payload.image_url || "No image available"}
Please review and take appropriate action.`;
return msg;
第8步:完整流程示例
8.1 匯入現成的流程 JSON
您可以匯入此完整流程 JSON:
[
{
"id": "email_node_1",
"type": "e-mail",
"name": "Send Inspection Alert",
"server": "smtp.gmail.com",
"port": "465",
"secure": true,
"authtype": "BASIC",
"to": "quality@company.com"
},
{
"id": "format_email",
"type": "function",
"name": "Format Email Content",
"func": "const result = msg.payload.result ? 'PASSED' : 'FAILED';\nmsg.topic = `Inspection ${result}`;\nmsg.payload = `Status: ${result}\\nTime: ${new Date()}`;\nreturn msg;"
}
]
8.2 根據需要進行自定義
- 更新貴組織的電子郵件地址
- 根據您的具體需求修改電子郵件內容
- 調整時機與觸發條件
- 在投產部署前進行徹底測試
故障排除
常見問題
| 問題 | 症狀 | 解決方案 |
|---|---|---|
| 身份驗證失敗 | "Login failed" 錯誤 | 驗證應用程式密碼是否正確並且已啟用兩步驗證 |
| 連線超時 | 未傳送郵件,超時錯誤 | 檢查防火牆設定,驗證 SMTP 伺服器和埠 |
| 郵件被標記為垃圾郵件 | 郵件雖送達但在垃圾郵件資料夾中 | 將發件人新增到安全列表,改進郵件內容 |
| 流未觸發 | 無除錯輸出 | 檢查流程連線和觸發條件 |
除錯您的郵件流程
- 在每個步驟後新增除錯節點 以跟蹤資料
- 檢查 Node-RED 日誌 以獲取詳細錯誤資訊
- 如有需要,使用外部郵件客戶端測試 SMTP 設定
- 驗證從相機到 Gmail 伺服器的網路連通性
成功!您的郵件整合已完成
您的 OV10i 相機現在可以:
✅ 傳送關於檢查結果的自動化郵件通知
✅ 傳送包含檢查細節的豐富、格式化訊息
✅ 支援多收件人及升級工作流
✅ 提供定期報告及摘要
✅ 基於檢查結果處理有條件的訊息
最佳實踐
郵件管理
- 使用具有清晰狀態指示的描述性主題
- 保持訊息簡潔但資訊豐富
- 包含時間戳與工位識別符號
- 在通知中提供可操作的資訊
安全性與可靠性
- 保護應用密碼 - 安全儲存並定期輪換
- 為系統通知使用專用郵箱賬戶
- 定期測試郵件投遞,以確保可靠性
- 監控投遞失敗情況,並具備備用通知方法
效能考慮因素
- 限制郵件傳送頻率 以避免垃圾郵件檢測
- 為不同告警型別使用合適的收件人名單
- 對高容量系統實現速率限制
- 在包含大附件時考慮郵件大小
下一步
在設定郵件通知後:
- 為不同型別的告警建立郵件模板
- 為各相關方設定分發名單
- 為關鍵問題實施升級工作流
- 為管理層建立定期報告
- 與其他通知系統整合(SMS、Teams 等)
Integration Builder 可以從簡單的英文描述生成完整的電子郵件通知流程。請描述您需要的內容(例如“在發現缺陷時傳送帶有檢查影象的郵件”),即可在幾秒鐘內獲得生產就緒的 Node-RED 流。