Skip to main content

AI-POWERED DOCS

What do you want to know?

Gửi Email với Node-RED

Hướng dẫn này chỉ cho bạn cách thiết lập thông báo email tự động từ camera OV80i bằng Node-RED. Bạn sẽ học cách cấu hình tích hợp Gmail và tạo flow gửi cảnh báo kiểm tra, cập nhật trạng thái hệ thống và thông báo lỗi trực tiếp đến email của bạn.

Những Gì Bạn Sẽ Xây Dựng: Một hệ thống email tự động gửi kết quả kiểm tra OV80i, cảnh báo và thông báo đến người nhận được chỉ định bằng Gmail SMTP.

Ứng Dụng Thực Tế: Nhận cảnh báo email ngay lập tức khi kiểm tra thất bại, gửi báo cáo chất lượng hàng ngày cho ban quản lý hoặc thông báo cho đội bảo trì về các vấn đề hệ thống - tất cả đều tự động từ hệ thống kiểm tra bằng vision của bạn.

Điều Kiện Tiên Quyết

  • Camera OV80i với quyền truy cập Node-RED
  • Tài khoản Gmail để gửi email
  • Hiểu biết cơ bản về flow Node-RED
  • Quyền truy cập cài đặt bảo mật Tài khoản Google

Tổng Quan Hướng Dẫn

Những gì chúng ta sẽ xây dựng: Một flow Node-RED tự động gửi thông báo email với kết quả kiểm tra và cảnh báo hệ thống.

Thời gian yêu cầu: 20-30 phút (bao gồm thiết lập Gmail)

Kỹ năng học được: Thiết lập mật khẩu ứng dụng Gmail, cấu hình SMTP, thông báo email tự động

Bước 1: Thiết Lập Mật Khẩu Ứng Dụng Gmail

1.1 Kích Hoạt Xác Minh 2 Bước

  1. Đăng nhập vào Tài khoản Google của bạn tại accounts.google.com
  2. Nhấp "Security" trong menu điều hướng bên trái
  3. Tìm mục "Signing in to Google"
  4. Nhấp "2-Step Verification"
  5. Làm theo hướng dẫn để kích hoạt Xác Minh 2 Bước nếu chưa được kích hoạt
note

Xác Minh 2 Bước là bắt buộc trước khi bạn có thể tạo mật khẩu ứng dụng.

1.2 Tạo Mật Khẩu Ứng Dụng

  1. Quay lại trang Security sau khi kích hoạt Xác Minh 2 Bước
  2. Nhấp "App passwords" (bên dưới "Signing in to Google")
  3. Chọn "Mail" làm loại ứng dụng
  4. Chọn "Other" làm loại thiết bị
  5. Nhập tên như "OV80i Node-RED Email"
  6. Nhấp "Generate"

1.3 Lưu Mật Khẩu Ứng Dụng Của Bạn

  1. Sao chép mật khẩu 16 ký tự mà Google hiển thị
  2. Lưu trữ an toàn - bạn sẽ cần nó để cấu hình Node-RED
  3. Lưu ý: Mật khẩu này chỉ được hiển thị một lần. Nếu bị mất, hãy tạo mật khẩu mới

Điểm Kiểm Tra: Bạn nên có mật khẩu ứng dụng Gmail 16 ký tự đã lưu để sử dụng cho Node-RED.

Bước 2: Cài Đặt Node Email (Nếu Cần)

2.1 Kiểm Tra Node Email

  1. Mở Node-RED trên camera OV80i của bạn
  2. Tìm trong bảng palette bên trái node "email" trong phần output
  3. Nếu thiếu, bạn sẽ cần cài đặt gói email

2.2 Cài Đặt Gói Email (Nếu Yêu Cầu)

  1. Nhấp menu hamburger (≡) trong Node-RED
  2. Chọn "Manage palette"
  3. Nhấp tab "Install"
  4. Tìm kiếm "node-red-node-email"
  5. Nhấp "Install" bên cạnh gói

Bước 3: Tạo Flow Email Cơ Bản

3.1 Thêm Các Node Cần Thiết

  1. Điều hướng đến IO Block để truy cập Node-RED
  2. Kéo các node này từ palette vào canvas của bạn:
    • Node Inject (để thử nghiệm)
    • Node Email (từ phần output)
  3. Kết nối output của inject với input của email

3.2 Cấu Trúc Flow Cơ Bản

Inject → Email

Mục đích của flow: Gửi email đơn giản để thử nghiệm và thông báo cơ bản.

image.png

Bước 4: Cấu Hình Nội Dung Email

4.1 Thiết Lập Inject Node

  1. Nhấp đúp vào inject node để mở properties
  2. Đặt payload:
    • Payload type: "string"
    • Payload value: Nội dung email của bạn (ví dụ: "Inspection alert from OV80i")
  3. Thêm tiêu đề email:
    • Nhấp "+ add" để thêm một property

    • Property name: "topic"

    • Property value: Tiêu đề email của bạn (ví dụ: "OV80i Inspection Alert")

      image.png

4.2 Ví Dụ Cấu Hình Cơ Bản

Payload (nội dung email):

Inspection completed at Station 1
Status: Alert triggered
Time: Check timestamp for details

Topic (tiêu đề email):

OV80i Inspection Alert - Station 1

4.3 Lưu Cấu Hình Inject

  1. Đặt tên cho node như "Email Trigger"
  2. Nhấp "Done" để lưu cấu hình

Bước 5: Cấu Hình SMTP Cho Email

5.1 Thiết Lập Email Node

  1. Nhấp đúp vào email node để mở properties
  2. Cấu hình các thiết lập cơ bản:
    • Name: "Send Alert Email" (hoặc tên mô tả)
    • To: Địa chỉ email người nhận (ví dụ: quality@company.com)

5.2 Cấu Hình Gmail SMTP

  1. Server: smtp.gmail.com
  2. Port: 465
  3. Chọn "Use secure connection"
  4. Auth type: Basic
  5. Userid: Địa chỉ Gmail đầy đủ của bạn (ví dụ: alerts@company.com)
  6. Password: Mật khẩu ứng dụng 16 ký tự từ Bước 1

5.3 Thiết Lập Bảo Mật

  1. Chọn "Check server certificate is valid"
  2. Xác minh tất cả thiết lập đã được nhập chính xác
  3. Nhấp "Done" để lưu cấu hình email node

Checkpoint: Email node của bạn không hiển thị báo lỗi và hiển thị địa chỉ người nhận.

image.png

Bước 6: Kiểm Tra Luồng Email

6.1 Deploy và Kiểm Tra

  1. Nhấp nút "Deploy" ở góc trên bên phải
  2. Chờ thông báo "Successfully deployed"
  3. Nhấp nút inject node (ô vuông màu xám ở bên trái)

6.2 Xác Minh Việc Gửi Email

  1. Kiểm tra email người nhận để xem tin nhắn kiểm tra
  2. Kiểm tra thư mục spam nếu email không xuất hiện trong hộp thư đến
  3. Tìm kiếm các thông báo lỗi trong bảng debug của Node-RED

6.3 Khắc Phục Sự Cố Nếu Cần

Các vấn đề thường gặp:

  • Sai mật khẩu ứng dụng: Tạo lại mật khẩu ứng dụng Gmail
  • Thiết lập SMTP: Xác minh server và port chính xác
  • Firewall: Đảm bảo cho phép lưu lượng SMTP đi ra

Bước 7: Tích Hợp Với Kết Quả Kiểm Tra

7.1 Kết Nối Với Luồng Kiểm Tra

Để gửi email dựa trên kết quả kiểm tra:

  1. Tìm luồng kiểm tra chính của bạn (bắt đầu với "All Block Outputs")
  2. Thêm luồng email như một nhánh từ quá trình xử lý kiểm tra
  3. Kết nối sau logic kiểm tra nhưng song song với kết quả cuối cùng

7.2 Ví Dụ Luồng Tích Hợp

All Block Outputs → [Inspection Logic] → Final Pass/Fail

Format Email → Send Email

image.png

7.3 Nội Dung Email Động

Thay thế inject node bằng function node để có nội dung động:

// 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;

Bước 8: Ví Dụ Flow Hoàn Chỉnh

8.1 Import Flow Có Sẵn

Bạn có thể import JSON flow hoàn chỉnh này:

[
{
"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 Tùy Chỉnh Theo Nhu Cầu

  1. Cập nhật địa chỉ email cho tổ chức của bạn
  2. Chỉnh sửa nội dung email theo yêu cầu cụ thể của bạn
  3. Điều chỉnh thời gian và điều kiện kích hoạt
  4. Kiểm tra kỹ lưỡng trước khi triển khai sản xuất

Khắc Phục Sự Cố

Các Vấn Đề Thường Gặp

Vấn ĐềTriệu ChứngGiải Pháp
Xác thực thất bạiLỗi "Login failed"Xác minh app password chính xác và đã bật xác thực 2 bước
Kết nối timeoutKhông gửi được email, lỗi timeoutKiểm tra cài đặt firewall, xác minh SMTP server và port
Email vào spamEmail được gửi nhưng nằm trong thư mục spamThêm người gửi vào danh sách an toàn, cải thiện nội dung email
Flow không kích hoạtKhông có đầu ra debugKiểm tra kết nối flow và điều kiện kích hoạt

Debug Email Flow Của Bạn

  1. Thêm debug node sau mỗi bước để theo dõi dữ liệu
  2. Kiểm tra Node-RED logs để xem thông báo lỗi chi tiết
  3. Kiểm tra cài đặt SMTP với email client bên ngoài nếu cần
  4. Xác minh kết nối mạng từ camera đến máy chủ Gmail

Thành Công! Tích Hợp Email Của Bạn Đã Hoàn Tất

Camera OV80i của bạn giờ đây có thể:

Gửi thông báo email tự động cho kết quả kiểm tra

Gửi tin nhắn được định dạng phong phú với chi tiết kiểm tra

Hỗ trợ nhiều người nhận và quy trình leo thang (escalation)

Cung cấp báo cáo theo lịch và bản tóm tắt

Xử lý tin nhắn có điều kiện dựa trên kết quả kiểm tra

Thực Hành Tốt Nhất

Quản Lý Email

  • Sử dụng tiêu đề mô tả với chỉ báo trạng thái rõ ràng
  • Giữ tin nhắn ngắn gọn nhưng đầy đủ thông tin
  • Bao gồm dấu thời gian và định danh trạm
  • Cung cấp thông tin có thể hành động trong thông báo

Bảo Mật và Độ Tin Cậy

  • Bảo vệ app password - lưu trữ an toàn và thay đổi định kỳ
  • Sử dụng tài khoản email chuyên dụng cho thông báo hệ thống
  • Kiểm tra việc gửi email thường xuyên để đảm bảo độ tin cậy
  • Giám sát các lỗi gửi và có phương thức thông báo dự phòng

Cân Nhắc Về Hiệu Suất

  • Giới hạn tần suất email để tránh bị phát hiện là spam
  • Sử dụng danh sách người nhận phù hợp cho các loại cảnh báo khác nhau
  • Triển khai giới hạn tần suất (rate limiting) cho các hệ thống có khối lượng lớn
  • Cân nhắc kích thước email khi đính kèm tệp lớn

Các Bước Tiếp Theo

Sau khi thiết lập thông báo email:

  1. Tạo các mẫu email cho các loại cảnh báo khác nhau
  2. Thiết lập danh sách phân phối cho các bên liên quan khác nhau
  3. Triển khai quy trình leo thang (escalation) cho các sự cố nghiêm trọng
  4. Tạo báo cáo định kỳ cho cấp quản lý
  5. Tích hợp với các hệ thống thông báo khác (SMS, Teams, v.v.)
Bỏ qua thiết lập thủ công

Integration Builder có thể tạo các flow thông báo email hoàn chỉnh từ mô tả bằng tiếng Anh đơn giản. Mô tả những gì bạn muốn (ví dụ: "gửi email kèm hình ảnh kiểm tra khi phát hiện lỗi") và nhận flow Node-RED sẵn sàng sử dụng trong vài giây.

🔗 Xem Thêm