AntBuddy Vietnam
  • Tài liệu AntBuddy - Hướng dẫn sử dụng (AntBuddy Docs - User Guide)
    • Hướng dẫn đăng ký và thanh toán (Guide to Register and Payment)
      • Đăng ký và Đăng nhập (Register and Login)
        • 1. Đăng ký (Register)
        • 2. Đăng nhập (Log in)
      • Thanh toán (Payment)
    • Quản trị khách hàng AntCrm (AntCrm Customer Management)
      • Cài đặt (Settings)
        • Tạo nhân viên (Create users)
        • Tạo nhóm (Create group)
        • Mời nhân viên vào công ty (Invite users to the company)
        • Quyền xem (View permissions)
        • Quyền hoạt động (Activity permissions)
        • Ticket là gì? Cách tạo mới Ticket? (What is Ticket? How to create Ticket?)
          • Thao tác với Ticket (Operations with Ticket)
        • Thao tác với task (Operations with task)
        • SLA là gì? Sử dụng SLA như thế nào?(What is SLA? How to use SLA?)
        • What are Lead, Contact, Account? How to create Lead, Contact, Account?
        • Lead, Contact, Account là gì? Cách tạo mới Lead, Contact, Account?
        • Hướng dẫn sử dụng tính năng tự động gửi tin nhắn SMS/ZNS khi có cuộc gọi nhỡ
        • Cách sử dụng tính năng Giới hạn số phiên hội thoại tối đa cho từng nhân viên
      • Tin nhắn đa kênh (Conversation)
        • Hướng dẫn sử dụng Omni Facebook (Omni Facebook user guide)
          • 1. Tích hợp Facebook (Facebook integration)
            • 1.1 Truy cập vào trang tích hợp Facebook (Access the Facebook Integration Page)
            • 1.2 Dùng tài khoản admin để tích hợp (Use the Admin account of the page to integrate)
          • 2. Thiết lập Fanpage Facebook (Setting Up Facebook Fanpage)
            • 2.1 Thêm hỗ trợ (Adding Support)
            • 2.2. Cấu hình phân công (Assignment Configuration)
            • 2.3. Cấu hình tương tác (Interaction Configuration)
          • 3. Quản lý tin nhắn (Message Management)
            • 3.1 Gửi tin nhắn (Sending Message)
            • 3.2 Xem lịch sử hội thoại (Viewing Conversation History)
          • 4. Quản lý comment (Comment Management)
            • 4.1 Bình luận chăm sóc khách hàng (Customer Support Commenting)
            • 4.2 Cách ẩn bình luận (Hiding comments)
            • 4.3 Chỉnh sửa bình luận (Editing comments)
            • 4.4 Xóa bình luận (Deleting comments)
            • 4.5 Thích/Bỏ thích bình luận (Liking/Unliking Comments)
          • 5. Quản lý bài Post (Post Management)
          • 6. Thay đổi người phụ trách session (Changing the Session Owner)
          • 7. Thêm user hỗ trợ (Adding support user)
          • 8. Gắn nhãn session (Tagging session)
          • 9. Gửi hình ảnh (Sending images)
          • 10. Đánh dấu Xong (Marking done)
          • 11. 𝑇ℎ𝑒̂𝑚 𝑚𝑎̂̃𝑢 𝑡𝑖𝑛 𝑛ℎ𝑎̆́𝑛 (𝐴𝑑𝑑𝑖𝑛𝑔 𝑚𝑒𝑠𝑠𝑎𝑔𝑒 𝑡𝑒𝑚𝑝𝑙𝑎𝑡𝑒)
            • 11.1. Thêm sửa xóa templates (Add/Edit/Delete templates)
            • 11.2. Sử dụng mẫu tin nhắn (Using message template)
          • 12. Thiết lập thời gian đóng session (Setting Up Session Timeout)
          • 13. Cấu hình thời gian chờ (Configuring the Timeout)
          • 14. Thiết lập tự động trả lời và gửi tin nhắn (Setting Up Auto-Reply and Sending Messages)
          • 15. Thiết lập thời hạn phản hồi và cảnh báo (Setting Up Response Time and Pre-Expiration Warnings)
          • 16. Các thao tác với khách hàng (Customer operations)
          • 17. Đánh dấu chưa đọc (Marking unread)
          • 18. Thiết lập Danh mục hội thoại (Setting up Omnichannel chat Categories)
          • 19. Cấu hình hiển thị (Configuring layout)
        • Hướng dẫn sử dụng Zalo OA (Zalo OA user guide)
          • 1. Tích hợp Zalo OA (Zalo OA integration)
          • 2. Thiết lập trang (Setting page)
            • 2.1. Thêm User hỗ trợ (Add user support)
            • 2.2. Tính năng phân phối tự động và Assignment Mode (Auto assign feature and Assignment Mode)
            • 2.3. Cấu hình gắn thẻ cho khách hàng mới (Configure tagging for new customers)
            • 2.4. Cấu hình Nguồn Lead (Configure lead source)
          • 3. Quản lý tin nhắn (Message Management)
            • 3.1. Gửi tin nhắn(Sending message)
            • 3.2. Xem lịch sử hội thoại (Viewing Conversation History)
          • 4. Thay đổi người phụ trách cho session (Changing the Session Owner)
          • 5. Thêm user hỗ trợ (Adding support user)
          • 6. Gắn nhãn (Tags)
          • 7. Gửi hình ảnh (Sending images)
          • 8. Đánh dấu Xong (Marking done)
          • 9. Thêm mẫu tin nhắn (Adding Message Template)
            • 9.1. Thêm/sửa/xóa (Add/Edit/Delete)
              • 9.1.1. Thêm mẫu tin nhắn (Adding a Message Template)
              • 9.1.2. Chỉnh sửa mẫu tin nhắn (Editing message template)
              • 9.1.3. Xóa mẫu tin nhắn (Deleting message template)
            • 9.2. Sử dụng mẫu tin nhắn (Using message template)
          • 10. Thiết lập thời gian đóng session (Setting Up Session Timeout)
          • 11. Cấu hình thời gian chờ (Configuring the Timeout)
          • 12. Thiết lập thời hạn phản hồi và cảnh báo (Setting Up Response Time and Pre-Expiration Warnings)
          • 13. Đánh dấu chưa đọc (Marking unread)
          • 14. Thiết lập Danh mục hội thoại (Setting up Omnichannel chat Categories)
          • 15. Cấu hình Cấu hình hiển thị (Configuring layout)
        • Hướng dẫn sử dụng Instagram (Instagram use guide)
          • 1. Tích hợp Instagram (Instagram integration)
          • 2. Sử dụng hội thoại đa kênh Instagram (Using Instagram Omni conversations)
            • 2.1. Thiết lập Instagram trên AntCRM (Guide to setting up Instagram on AntCRM)
              • 2.1.1. Thêm hỗ trợ (Adding support)
              • 2.1.2. Cấu hình phân công (Assignment configuration)
              • 2.1.3. Cấu hình tương tác (Interactive Configuration)
          • 3. Quản lý chat với khách hàng (Manage chat with customers)
            • 3.1. Gửi tin nhắn cho khách hàng (Send message to customer)
            • 3.2. Xem lịch sử hội thoại (View session history)
          • 4. Quản lý comment (Comment Manager)
            • 4.1. Ẩn bình luận (Hide comment)
            • 4.2. Xóa bình luận (Delete comment)
          • 5. Thay đổi người phụ trách session (Change the person assign to session)
          • 6. Thêm user hỗ trợ (Adding user support)
          • 7. Gắn nhãn session (Tags for session)
          • 8. Gửi hình ảnh (Send image)
          • 9. Đánh dấu xong (Mark as done)
          • 10. Thêm mẫu tin nhắn (Adding message template)
            • 10.1.Thêm/sửa/xóa template (Add/Edit/Delete template)
            • 10.2.Sử dụng mẫu tin nhắn (Using messenger template)
          • 11. Thiết lập thời gian đóng session (Setting up session timeout)
          • 12. Thiết lập thời hạn phản hồi và cảnh báo (Setting Up Response Time and Pre-Expiration Warnings)
        • Hướng dẫn sử dụng whatsapp (Whatsapp use guide)
          • 1. Tích hợp whatsapp vào CRM (Integrate whatsapp on CRM)
          • 2. Thiết lập whatsapp trên CRM (Setting whatsapp on CRM)
            • 2.1. Thêm user hỗ trợ (Adding user support)
            • 2.2. Thiết lập đóng hội thoại (Setting close session)
            • 2.3. Cấu hình phân công (Assignment Configuration)
            • 2.4. Cấu hình tương tác (Interaction Configuration)
          • 3. Quản lý chat với khách hàng whatsapp (Managing Chats with Whatsapp Customers)
            • 3.1. Gửi tin nhắn (Send message)
            • 3.2. Xem lịch sử phiên hội thoại (Viewing Conversation History)
            • 3.3 Thay đổi nhân viên phụ trách phiên hội thoại (Changing the Session's Assigned Agent)
          • 4. Thêm user hỗ trợ (Adding a Support User)
          • 5. Mục Tag (Tagging a Session)
          • 6. Gửi hình ảnh (Sending image)
          • 7. Đánh dấu session đã xong (Marking a Session as Completed)
          • 8. Thêm, Sửa và Xóa mẫu tin nhắn (Adding, Edit and Delete omni message template)
          • 9. Thời gian đóng session (Session Closure Time)
          • 10. Cấu hình thời gian chờ (Configuring the wait time)
          • 11. Cài đặt thời gian phản hồi và cảnh báo (Setting response Time and Pre-expiration Alerts)
          • 12. Tạo chiến dịch SMS whatsapp (Creating Whatsapp SMS campaign)
          • 13. Gửi chiến dịch SMS whatsapp (Sending Whatsapp SMS Campaign)
          • 14. Gửi Carousel Sản Phẩm (Sending the Product Carousel)
          • 15. Chiến lược đa kênh (Cross-Channel Campaign Guide)
            • 15.1. Tạo mẫu (Creating template)
          • 16. Tạo mẫu WhatsApp qua Meta Business Suite (Create WhatsApp Template via Meta Business Suite)
          • 17. Chạy mẫu trong nền tảng AntCRM (Run Template in AntCRM platform)
        • Hướng dẫn sử dụng Shopee (Shopee use guide)
          • 1. Tích hợp Shopee vào CRM (Integrate Shopee on CRM)
        • Hướng dẫn sử dụng Live chat (Live chat use guide)
        • Hướng dẫn sử dụng Lazada (Lazada use guide)
        • Cách thêm lý do tạm dừng nhận tin hội thoại đa kênh
      • Báo cáo (Report)
        • Hướng dẫn xem và truy xuất Báo cáo AntCRM (Instruction to view and retrieve AntCRM Reports)
          • 1. Báo cáo nhân viên (Users report)
          • 2. Báo cáo nhóm (Group report)
          • 3. Báo cáo khách hàng tiềm năng (Lead report)
          • 4. Báo cáo khách hàng (Customer report)
          • 5. Báo cáo giao dịch (Order report)
          • 6. Báo cáo Ticket (Ticket report)
          • 7. Báo cáo Lịch sử cuộc gọi (Call history report)
          • 8. Báo cáo Lịch sử gửi tin nhắn (Sending message history report)
          • 9. Báo cáo Quy trình tự động (Automation)
          • 10. Báo cáo KPI (KPI report)
        • KPI là gì? Xây dựng chỉ tiêu KPI như thế nào? (What is KPI ? How to build KPI targets? )
        • Xem báo cáo tin nhắn đa kênh (View Omnichannel conversation report)
        • Báo cáo điểm hài lòng (Satisfaction Report)
      • Quản lý trải nghiệm khách hàng (Customer Experience Management)
        • 1. Thiết lập khảo sát khách hàng (Customer survey setting)
          • 1.1. Tin nhắn đa kênh(Conversations)
          • 1.2. Tổng đài cuộc gọi(Call Center)
          • 1.3. Thiết lập tiêu chí đánh giá (Rating criteria setting)
          • 1.4. Cấu hình landing page (Setting landing page)
        • 2. Cách sử dụng trên giao diện tư vấn viên (How to use the Agent interface)
        • 3. Báo cáo điểm hài lòng (Satisfaction Report)
      • Hướng dẫn sử dụng chiến dịch (User manual for Campaign)
        • Làm sao để chạy quy trình Marketing Automation? (How to run Marketing Automation process ?)
        • Chiến dịch Telesales là gì? Làm thế nào để chạy chiến dịch Telesales? (Telesales user manual)
        • Hướng dẫn khởi tạo chiến dịch ZNS (Instructions to configure a ZNS campaign)
        • Hướng dẫn khởi tạo chiến dịch Social Facebook (Instructions for creating a Facebook Social campaign)
      • Sản phẩm (Product)
        • Hướng dẫn tạo sản phẩm trong giao dịch (Instructions to create products in order )
        • Hướng dẫn import hàng loạt sản phẩm (Instructions to import series of products)
      • Đơn hàng (Order)
        • Hướng dẫn tạo và quản lý giao dịch
        • Import đơn hàng (Import orders)
        • Cam kết SLA đơn hàng (Order SLA Commitment)
        • Lọc và tải về đơn hàng (Filter and download orders)
      • Khách hàng thân thiết (Loyalist)
        • Hướng dẫn tạo sản phẩm và mã thẻ cho sản phẩm (Instructions to create products and product codes)
    • Tổng đài AntRing (Antring Call Center)
      • Cài đặt (Setting)
        • Antbuddy PC
        • Điện thoại Yealink T19 E2 (Yealink T19 E2 phone)
        • IP Phone Grandstream GXP 1610
        • Reset Password dành cho quản trị viên (Reset password for administrators)
        • Chặn số quấy rối trên trang quản trị AntBuddy (Block spam numbers on the AntBuddy admin page)
        • Tạo người dùng trên Call Center (Create a user on Call Center)
      • Hướng dẫn cài đặt AntBuddy Callbar PC (Antbuddy PC installation guide)
      • Hướng dẫn cài đặt và sử dụng Mobile app AntBuddy (Guide to install and use Mobile App AntBuddy)
      • Cách xem báo cáo cụ thể của Antbuddy Call Center
        • 1. Lịch sử cuộc gọi (Call history)
        • 2. Tổng quan tổng đài
        • 3. Báo cáo hàng đợi
        • 4. Báo cáo nhân viên
        • 5. Bảng tổng quan TV
      • Hướng dẫn sử dụng tính năng chấm điểm cuộc gọi
      • Hướng dẫn tắt SIP ALG trên các dòng modem phổ thông (guide to turn off SIP ALG on popular modems)
      • Hướng dẫn Reset Password dành cho quản trị viên
    • Tài liệu hướng dẫn sử dụng AntBot ChatBot (User manual for AntBot ChatBot)
      • Hướng dẫn sử dụng FAQ
      • Tích hợp tin nhắn đa kênh với Chatbot AntBot
      • Các tính năng cơ bản của Chatbot AntBot (The basic features of AntBot Chatbot)
      • Các Trường Hợp Sử Dụng Chatbot AntBot (Use Cases of AntBot Chatbot)
      • Giải thích chi tiết về node Chatbot (Detailed explanation of the Chatbot node)
  • Hướng dẫn tích hợp API (Team technical) (API integration guide (technical team))
    • AntRing
      • Đăng ký API (API Registration )
      • Sử dụng API (Use API)
      • Danh sách API (API List)
      • Mã lỗi (Error code)
    • AntBot
      • AntBOT API
      • Voice OTP
      • HTTP Response
    • AntCRM
      • ApiRing AntCrm
        • 1. API get customer
        • 2. API get order
        • 3. API get product
        • 4. API get ticket
        • 5. Point accumulation API
        • 6. API get redeem
        • 7. API get segment
        • 8. API get list of survey
        • 9. API get list of telecalls
        • 10. API get campaign list
        • 11. API get rating list
        • 12. API get tags
Powered by GitBook
On this page
  • 1.1. Giới thiệu:
  • 3. Kết thúc flow
  1. Tài liệu AntBuddy - Hướng dẫn sử dụng (AntBuddy Docs - User Guide)
  2. Tài liệu hướng dẫn sử dụng AntBot ChatBot (User manual for AntBot ChatBot)

Giải thích chi tiết về node Chatbot (Detailed explanation of the Chatbot node)

PreviousCác Trường Hợp Sử Dụng Chatbot AntBot (Use Cases of AntBot Chatbot)NextHướng dẫn tích hợp API (Team technical) (API integration guide (technical team))

Last updated 2 months ago

  1. Bắt đầu flow

1.1. Giới thiệu:

  • Node bắt đầu được sử dụng để bắt đầu một flow, người dùng có thể đặt điều kiện cho nó.

1.2. Thuộc tính

  • AntCRM Account: Tài khoản cho phép quản lý AntCRM

  • Flow name: Đặt tên hiển thị cho node bắt đầu

  • Page: Nền tảng được chọn để sử dụng node bắt đầu

  • Các loại điều kiện

  • Chứa từ khóa: Chỉ tin nhắn cần chứa từ khóa

  • Điều kiện: “..ab..” -> Chấp nhận tất cả tin nhắn có chứa ký tự ab

  • Chứa tất cả

  • Điều kiện: “ab” -> Chấp nhận tin nhắn có nội dung ab

  • Tin nhắn là một lệnh

  • Điều kiện: “/command” -> Chấp nhận tin nhắn bắt đầu bằng “/…”

  • Tin nhắn là một lệnh và một từ bắt đầu

  • Điều kiện: “/start” -> Chấp nhận tin nhắn bắt đầu bằng lệnh /start

Sau khi thiết lập các quy tắc:

3. Kết thúc flow

  1. Giới thiệu

  • Được sử dụng để kết thúc phiên flow

  1. Thuộc tính

  • Chọn tài khoản AntCRM sẽ sử dụng

  1. Chuyển hướng flow

  1. Giới thiệu

  • Chuyển hướng công việc của flow hiện tại sang flow mới

  1. Thuộc tính

  • Tên flow cần chuyển hướng đến: Chọn node bắt đầu của flow muốn chuyển hướng đến (bắt đầu một flow khác)

(

Introduction

  • Redirect the current flow's work to a new flow.

(Attributes

  • Name of the flow to redirect to: Select the starting node of the flow you want to redirect to (start a different flow))

  1. Tin nhắn

  1. Giới thiệu

  • Thiết lập tin nhắn gửi từ bot tới người dùng

  1. Thuộc tính

  • Node name: Tên hiển thị của đầu ra thông báo trên flow

  • Content: Nội dung tin nhắn đã gửi

  • Add version: Thêm phiên bản khác của nội dung tin nhắn đã gửi. Chúng ta có thể gửi nhiều tin nhắn văn bản:

  1. Comment bài đăng

node này chịu trách nhiệm tự động phản hồi các bình luận từ người dùng. Điều này giúp bot tương tác và phản hồi nhanh chóng với người dùng trên các nền tảng mạng xã hội như Facebook, Instagram hay Twitter.

  1. Hình ảnh, Âm thanh, Tài liệu, Video (Images, sound, documents and video)

Các node này hoạt động tương tự (đối với Facebook và Whatsapp).

node này tự động gửi hình ảnh, âm thanh, video và tài liệu tới người dùng. Điều này giúp bot trình bày thông tin một cách trực quan và hấp dẫn hơn.

(These nodes function similarly (for Facebook and WhatsApp). This node automatically sends images, audio, videos, and documents to users. This helps the bot present information in a more visual and engaging way.)

  1. node bấm (Node button)

node này cung cấp các node tương tác cho người dùng, giúp họ dễ dàng tương tác và lựa chọn các tùy chọn khác nhau (chỉ áp dụng cho Facebook và Whatsapp).

(This node provides interactive nodes for users, allowing them to easily interact and choose from different options (only applicable to Facebook and WhatsApp))

  1. Trả lời nhanh (Quick replies)

node này cung cấp phản hồi nhanh chóng cho người dùng, giúp họ phản hồi nhanh chóng mà không cần phải gõ lại.

(This node provides quick replies for users, helping them respond quickly without having to type again.)

  1. Mẫu tin nhắn (Message Template)

node này tự động gửi các mẫu cố định, giúp cung cấp thông tin cụ thể hoặc tự động thực hiện một số hành động nhất định.

(This node automatically sends predefined templates, helping to provide specific information or automatically perform certain actions.)

  1. Tác vụ (Actions)

node này thực hiện các hành động cụ thể như chuyển hướng đến đối tượng tác nhân khi cần thiết.

(This node performs specific actions, such as redirecting to an agent when necessary.)

  1. Menu list

  1. Giới thiệu

  • Cho phép tạo menu các node chọn, node chọn gồm 2 loại: mở link url hoặc điều hướng đến node khác

  1. Thuộc tính

  • Template type: chọn Menulist để bắt đầu

  • Add button: node thêm tùy chọn

  • Choose button type: Chọn kiểu cho node, nếu chọn url thì thêm link web để mở website cần điều hướng đến

  • Nếu chọn post back thì chỉ cần thêm tên hiển thị của node

( Introduction

  • Allows the creation of a menu of selectable nodes. The selectable nodes consist of two types: open a URL link or navigate to another node.

Attributes

  • Template type: Select Menu list to start.

  • Add button: Add an option to the node.

  • Choose button type: Choose the type for the node. If selecting URL, add the web link to open the website you want to redirect to.

  • If selecting post back, only add the display name of the node.)

Khi chọn một node sẽ đi tới một node tương ứng với node đó

(When selecting a node, it will navigate to a node corresponding to that node.)

  1. Debug

  1. Giới thiệu

  • Hiển thị các thuộc tính thông báo đã chọn trong tab thanh bên gỡ lỗi và tùy chọn nhật ký thời gian chạy. Theo mặc định, node hiển thị msg.payload, nhưng có thể được cấu hình để hiển thị bất kỳ thuộc tính nào, như tin nhắn đầy đủ hoặc kết quả của biểu thức JSONata.

  • Thanh debug cung cấp chế độ xem có cấu trúc của các tin nhắn được gửi, giúp hiểu cấu trúc của chúng dễ dàng hơn.

  • Các đối tượng và mảng JavaScript có thể được thu gọn và mở rộng theo yêu cầu. Các đối tượng bộ đệm có thể được hiển thị dưới dạng dữ liệu thô hoặc dưới dạng chuỗi nếu có thể.

  • Bên cạnh mỗi tin nhắn, thanh debug bao gồm thông tin về thời gian nhận được tin nhắn, node gửi tin nhắn và loại tin nhắn. Nhấp vào id node nguồn sẽ hiển thị node đó trong không gian làm việc.

  • node có thể được sử dụng để bật hoặc tắt đầu ra. Nên tắt hoặc xóa bất kỳ node Debug nào không được sử dụng.

  • node này cũng có thể được cấu hình để gửi tất cả tin nhắn đến nhật ký thời gian chạy hoặc gửi tin nhắn ngắn (32 ký tự) đến văn bản trạng thái trong node debug.

  1. Thuộc tính

  • Output: Chọn nội dung đầu ra của node gỡ lỗi

  • To: Chọn vùng hiển thị nội dung đầu ra

  • Name: Đặt tên hiển thị cho node debug

  1. Function

  1. Giới thiệu

  • Một hàm JavaScript để chạy dựa trên các tin nhắn được node nhận.

  • Các tin nhắn được truyền vào dưới dạng một đối tượng JavaScript có tên là msg. Theo quy ước, nó sẽ có thuộc tính msg.payload chứa nội dung thư.

  • Hàm dự kiến sẽ trả về một đối tượng thông báo (hoặc nhiều đối tượng thông báo), nhưng có thể chọn không trả về gì để tạm dừng một flow.

  • Tab On Start chứa mã sẽ được chạy bất cứ khi nào node được khởi động. Tab On Stop chứa mã sẽ được chạy khi node dừng. Nếu mã On Start trả về một đối tượng Promise, node sẽ không bắt đầu xử lý các thông báo cho đến khi lời hứa được giải quyết.

  • Gửi tin nhắn

Hàm có thể hoàn tác các tin nhắn mà nó muốn chuyển đến các node tiếp theo trong flow hoặc có thể gọi node.send(message).

  • Có thể hoàn tác/gửi:

  • một đối tượng tin nhắn - được chuyển đến các node được kết nối với đầu ra đầu tiên

  • một mảng các đối tượng thông báo - được chuyển đến các node được kết nối với đầu ra tương ứng

Note: Lưu ý: Mã thiết lập được thực thi trong quá trình khởi tạo các node. Do đó, nếu node.send được gọi trong tab thiết lập, các node tiếp theo có thể không nhận được tin nhắn.

  • Nếu bất kỳ phần tử nào của mảng là một mảng thông báo thì nhiều thông báo sẽ được gửi đến đầu ra tương ứng.

  • Nếu null được trả về, dù là chính nó hay là một phần tử của mảng, thì không có thông báo nào được truyền đi.

  • Ghi nhật ký và xử lý lỗi: Để ghi nhật ký bất kỳ thông tin nào hoặc báo cáo lỗi, có sẵn các chức năng sau:

  • node.log("Log message")

  • node.warn("Warning")

  • node.error("Error")

  • node Catch cũng có thể được sử dụng để xử lý lỗi. Để gọi node Catch, hãy chuyển thông điệp làm đối số thứ hai cho node.error:

  • node.error("Error",msg);

Truy cập thông tin node

Các thuộc tính sau có sẵn để truy cập thông tin về node:

  • node.id - id của node

  • node.name - tên của node

  • node.outputCount - số flow đầu ra của node

Sử dụng biến môi trường

Các biến môi trường có thể được truy cập bằng env.get("MY_ENV_VAR").

  1. Giới thiệu

  • Chức năng node được sử dụng để hỗ trợ xử lý tin nhắn. Sau khi xử lý, tin nhắn sẽ được trả về

  1. Thuộc tính

  • Name: Đặt tên hiển thị cho chức năng node

  • On message: Lập trình các phương thức và thuật toán bạn muốn xử lý và trả về tin nhắn

  1. Change

  1. Giới thiệu

  • Đặt, thay đổi, xóa hoặc di chuyển các thuộc tính của tin nhắn, bối cảnh flow hoặc bối cảnh chung.

  • node có thể chỉ định nhiều quy tắc sẽ được áp dụng theo thứ tự chúng được xác định.

  1. Thuộc tính

  • Các hoạt động có sẵn là:

  • Set: đặt thuộc tính. Giá trị có thể có nhiều loại khác nhau hoặc có thể được lấy từ thông báo hoặc thuộc tính ngữ cảnh hiện có.

  • Change: tìm kiếm và thay thế các phần của thuộc tính. Nếu biểu thức chính quy được bật thì thuộc tính "thay thế bằng" có thể bao gồm các nhóm chụp, ví dụ: $1. Thay thế sẽ chỉ thay đổi loại nếu có kết quả khớp hoàn toàn.

  • Delete: xóa một thuộc tính.

  • Move: di chuyển hoặc đổi tên một thuộc tính.

Giới thiệu

  • Sử dụng để thực hiện các phép biến đổi trên các biến msg, flow và global Thuộc tính Biến

  • Msg: biến chỉ được triển khai trong một flow nhỏ

  • Flow: biến có thể được sử dụng ở bất cứ đâu trong flow

  • Global: biến có thể được sử dụng ở mọi nơi Transformation magic

  • Set: Đặt nội dung cho biến

  • Change: Thay đổi nội dung của biến

  • Delete: Xóa nội dung của biến

  • Move: di chuyển nội dung của biến này sang biến khác

  1. Http in

  1. Giới thiệu

  • Tạo điểm cuối HTTP để tạo dịch vụ web.

  1. Thuộc tính

  • Outputs

  • payload

  • Đối với yêu cầu GET, chứa đối tượng của bất kỳ tham số chuỗi truy vấn nào. Ngược lại, chứa nội dung của yêu cầu HTTP.

  • req: object

  • Một đối tượng yêu cầu HTTP. Đối tượng này chứa nhiều thuộc tính cung cấp thông tin về yêu cầu.

  • body - nội dung của yêu cầu sắp xảy đến. Các định dạng sẽ phụ thuộc vào yêu cầu.

  • headers - một đối tượng chứa tiêu đề yêu cầu HTTP.

  • query - một đối tượng chứa bất kỳ tham số chuỗi truy vấn nào.

  • params - một đối tượng chứa bất kỳ tham số tuyến đường nào.

  • cookies - một đối tượng chứa cookie cho yêu cầu.

  • files - nếu được bật trong node, một đối tượng chứa bất kỳ tệp nào được tải lên như một phần của yêu cầu POST.

  • res: object

Một đối tượng HTTP response. Thuộc tính này không nên được sử dụng trực tiếp; node HTTP response ghi lại cách phản hồi yêu cầu. Thuộc tính này phải được gắn liền với thông báo được chuyển đến node phản hồi.

node sẽ lắng nghe trên đường dẫn đã định cấu hình các yêu cầu thuộc một loại cụ thể. Đường dẫn có thể được chỉ định đầy đủ, chẳng hạn như /user hoặc bao gồm các tham số được đặt tên chấp nhận bất kỳ giá trị nào, chẳng hạn như /user/:name. Khi sử dụng các tham số được đặt tên, giá trị thực của chúng trong một yêu cầu có thể được truy cập trong msg.req.params.

Đối với các yêu cầu bao gồm nội dung, chẳng hạn như POST hoặc PUT, nội dung của yêu cầu được cung cấp dưới dạng msg.payload.

Nếu loại nội dung của yêu cầu có thể được xác định, phần nội dung sẽ được phân tích cú pháp thành bất kỳ loại thích hợp nào. Ví dụ: application/json sẽ được phân tích cú pháp thành biểu diễn đối tượng JavaScript của nó.

Lưu ý: node này không gửi bất kỳ phản hồi nào cho yêu cầu. flow phải bao gồm node HTTP response để hoàn thành yêu cầu.

  1. Http response

  1. Giới thiệu

  • Gửi phản hồi trở lại các yêu cầu nhận được từ node HTTP Input.

  1. Thuộc tính

  • Inputs

  • payload: string

  • Phần thân của phản hồi.

  • statusCode: number

    • Nếu được đặt, mã này sẽ được sử dụng làm mã trạng thái phản hồi. Mặc định: 200.

  • headers: object

    • Nếu được đặt, hãy cung cấp HTTP header để đưa vào phản hồi.

  • cookies: object

    • Nếu được đặt, có thể được sử dụng để đặt hoặc xóa cookie.

Mã trạng thái và tiêu đề cũng có thể được đặt trong chính node đó. Nếu một thuộc tính được đặt trong node, nó không thể bị ghi đè bởi thuộc tính thông báo tương ứng.

  • Xử lý cookie

Thuộc tính cookie phải là đối tượng của cặp tên/giá trị. Giá trị có thể là một chuỗi để đặt giá trị của cookie với các tùy chọn mặc định hoặc có thể là đối tượng của các tùy chọn.

Ví dụ sau đặt hai cookie - một cookie được gọi là tên có giá trị nick, cookie còn lại được gọi là phiên có giá trị là 1234 và thời gian hết hạn được đặt thành 15 phút.

msg.cookies = {

name: 'nick',

session: {

value: '1234',

maxAge: 900000

}

}

Các tùy chọn hợp lệ bao gồm:

  • domain - (String) tên miền cho cookie

  • expires - (Date) ngày hết hạn theo GMT. Nếu không được chỉ định hoặc được đặt thành 0, hãy tạo cookie phiên

  • maxAge - (String) ngày hết hạn so với thời gian hiện tại tính bằng mili giây

  • path - (String) Đường dẫn cho cookie. Mặc định là /

  • value - (String) giá trị sử dụng cho cookie

  • Để xóa cookie, đặt giá trị của nó thành null.

  1. Http request

  1. Giới thiệu

  • Gửi yêu cầu HTTP và trả về phản hồi.

  1. Thuộc tính

  • Inputs

  • url

  • string

  • Nếu không được định cấu hình trong node, thuộc tính tùy chọn này sẽ đặt url của yêu cầu.

  • method

  • string

  • Nếu không được định cấu hình trong node, thuộc tính tùy chọn này sẽ đặt phương thức HTTP của yêu cầu. Phải là một trong các cấu hình GET, PUT, POST, PATCH hoặc DELETE.

  • headers

  • object

  • Đặt tiêu đề HTTP theo yêu cầu. LƯU Ý: Mọi tiêu đề được đặt trong cấu hình node sẽ ghi đè mọi tiêu đề phù hợp trong msg.headers

  • cookies

  • object

  • Nếu được đặt, có thể được sử dụng để gửi cookie theo yêu cầu.

  • payload

    • Được gửi dưới dạng nội dung của yêu cầu.

  • rejectUnauthorized

    • Nếu được đặt thành false, sẽ cho phép gửi yêu cầu tới các trang web https sử dụng chứng chỉ tự ký.

  • followRedirects

    • Nếu được đặt thành false, ngăn chặn việc chuyển hướng (HTTP 301).true theo mặc định

  • requestTimeout

    • Nếu được đặt thành số mili giây dương, sẽ ghi đè tham số httpRequestTimeout được đặt chung.

  • payload: string | object | buffer

  • Phần thân của phản hồi. node có thể được cấu hình để trả về phần thân dưới dạng chuỗi, cố gắng phân tích cú pháp dưới dạng chuỗi JSON hoặc để nó dưới dạng bộ đệm nhị phân.

  • statusCode: number

  • Mã trạng thái của phản hồi hoặc mã lỗi nếu không thể hoàn thành yêu cầu.

  • headers: object

  • Đối tượng chứa các tiêu đề phản hồi.

  • responseUrl:string

  • Trong trường hợp xảy ra bất kỳ chuyển hướng nào trong khi xử lý yêu cầu, thuộc tính này là url được chuyển hướng cuối cùng. Ngược lại, url của yêu cầu ban đầu.

  • responseCookies: object

  • Nếu phản hồi bao gồm cookie thì thuộc tính này là đối tượng của các cặp tên/giá trị cho mỗi cookie.

  • redirectList: array

  • Nếu yêu cầu được chuyển hướng một hoặc nhiều lần, thông tin tích lũy sẽ được thêm vào thuộc tính này. `location` là đích chuyển hướng tiếp theo. `cookie` là cookie được trả về từ nguồn chuyển hướng.

node có thể tùy ý mã hóa msg.payload dưới dạng tham số chuỗi truy vấn cho yêu cầu GET, trong trường hợp đó msg.payload phải là một đối tượng.

  • Sử dụng nhiều node HTTP Request

Để sử dụng nhiều hơn một trong các node này trong cùng một flow, phải cẩn thận với thuộc tính msg.headers. node đầu tiên sẽ đặt thuộc tính này với các tiêu đề phản hồi. Sau đó, node tiếp theo sẽ sử dụng các tiêu đề đó cho yêu cầu của nó - đây thường không phải là điều nên làm. Nếu thuộc tính msg.headers không thay đổi giữa các node, nó sẽ bị node thứ hai bỏ qua. Để đặt tiêu đề tùy chỉnh, trước tiên phải xóa msg.headers hoặc đặt lại thành đối tượng trống: {}.

  • Xử lý cookie

Thuộc tính cookie được truyền tới node phải là đối tượng của các cặp tên/giá trị. Giá trị có thể là một chuỗi để đặt giá trị của cookie hoặc có thể là một đối tượng có một thuộc tính giá trị duy nhất.

Bất kỳ cookie nào được yêu cầu trả về sẽ được chuyển trở lại theo thuộc tính replyCookies.

  • Xử lý loại nội dung

Nếu msg.payload là một đối tượng, node sẽ tự động đặt loại nội dung của yêu cầu thành application/json và mã hóa nội dung như vậy.

Để mã hóa yêu cầu dưới dạng dữ liệu biểu mẫu, msg.headers["content-type"] phải được đặt thành application/x-www-form-urlencoded.

  • File tải lên

Để thực hiện tải tệp lên, msg.headers["content-type"] phải được đặt thành multipart/form-data và msg.payload được truyền tới node phải là một đối tượng có cấu trúc sau:

{

"KEY": {

"value": FILE_CONTENTS,

"options": {

"filename": "FILENAME"

}

}

}

Các giá trị của KEY, FILE_CONTENTS và FILENAME phải được đặt thành các giá trị thích hợp.

  1. Switch

Định tuyến các tin nhắn dựa trên giá trị thuộc tính hoặc vị trí trình tự của chúng.

Khi có tin nhắn đến, node sẽ đánh giá từng quy tắc đã xác định và chuyển tiếp tin nhắn đến đầu ra tương ứng của bất kỳ quy tắc phù hợp nào.

Theo tùy chọn, node có thể được đặt để dừng đánh giá các quy tắc sau khi tìm thấy quy tắc phù hợp.

Các quy tắc có thể được đánh giá dựa trên thuộc tính tin nhắn riêng lẻ, thuộc tính flow hoặc ngữ cảnh chung, biến môi trường hoặc kết quả của biểu thức JSONata.

  • Quy tắc: Có bốn loại quy tắc:

  1. Quy tắc giá trị được đánh giá dựa trên thuộc tính được định cấu hình

  2. Quy tắc trình tự có thể được sử dụng trên các chuỗi thông báo, chẳng hạn như các quy tắc được tạo bởi node phân chia

  3. Có thể cung cấp Biểu thức JSONata để đánh giá toàn bộ thông báo và sẽ khớp nếu biểu thức trả về giá trị thực.

  4. Quy tắc ngược lại có thể được sử dụng để khớp nếu không có quy tắc nào trước đó khớp.

  • Notes

Các rules true/false và null thực hiện so sánh nghiêm ngặt các loại quy tắc. Nó không chuyển đổi giữa các loại.

Các quy tắc trống và không trống có thể được sử dụng để kiểm tra độ dài của Strings, Arrays và Buffers hoặc số flow thuộc tính mà đối tượng có. Cả hai quy tắc sẽ không vượt qua nếu thuộc tính đang được kiểm tra có giá trị boolean, null hoặc không xác định.

  • Xử lý chuỗi tin nhắn

Theo mặc định, node không sửa đổi thuộc tính msg.parts của các tin nhắn là một phần của chuỗi.

Tùy chọn tạo lại chuỗi thông báo có thể được bật để tạo chuỗi thông báo mới cho từng quy tắc phù hợp. Trong chế độ này, node sẽ đệm toàn bộ chuỗi đến trước khi gửi chuỗi mới. Cài đặt thời gian chạy nodeMessageBufferMaxLength có thể được sử dụng để giới hạn số flow node thông báo sẽ lưu vào bộ đệm.

  1. Introduction

node được sử dụng để kiểm tra các điều kiện.

Định tuyến các tin nhắn dựa trên giá trị thuộc tính hoặc vị trí trình tự của chúng.

Khi có tin nhắn đến, node sẽ đánh giá từng quy tắc đã xác định và chuyển tiếp thông báo đến đầu ra tương ứng của bất kỳ quy tắc phù hợp nào.

Theo tùy chọn, node có thể được đặt để dừng đánh giá các quy tắc sau khi tìm thấy quy tắc phù hợp.

  1. Thuộc tính

  • Biến: biến để áp dụng quy tắc

  1. Msg: biến chỉ được triển khai trong một flow nhỏ

  2. Flow: biến có thể được sử dụng ở bất cứ đâu trong flow

  3. Global: biến có thể được sử dụng ở mọi nơi

- Quy tắc biến được đánh giá dựa trên thuộc tính được định cấu hình

  • Biến so sánh: biến dùng để so sánh với biến, biến có thể chọn loại

  • Add the conditions

  • Option

  • Kiểm tra tất cả các quy tắc: kiểm tra tất cả các điều kiện sau đó điều hướng

  • Dừng sau lần match đầu tiên: Dừng kiểm tra khi đáp ứng điều kiện đúng đầu tiên

  1. Range

  1. Giới thiệu

  • Ánh xạ một giá trị số tới một phạm vi khác.

  1. Thuộc tính

  • Input

  • payload: number

  • Payload phải là một số. Bất cứ điều gì khác sẽ cố gắng được phân tích thành một số và bị từ chối nếu thất bại.

  • Outputs

  • payload: number

  • Giá trị được ánh xạ tới phạm vi mới.

  • node này sẽ chia tỷ lệ tuyến tính giá trị nhận được. Theo mặc định, kết quả không bị giới hạn trong phạm vi được xác định trong node.

Chia tỷ lệ và giới hạn phạm vi mục tiêu có nghĩa là kết quả sẽ không bao giờ nằm ngoài phạm vi được chỉ định trong phạm vi mục tiêu.

Chia tỷ lệ và bao bọc trong phạm vi mục tiêu có nghĩa là kết quả sẽ được bao bọc trong phạm vi mục tiêu.

Chia tỷ lệ, nhưng giảm nếu nằm ngoài phạm vi đầu vào có nghĩa là kết quả sẽ được chia tỷ lệ, nhưng mọi Đầu vào nằm ngoài phạm vi Inputs sẽ bị loại bỏ.

  • Ví dụ: đầu vào 0 - 10 được ánh xạ tới 0 - 100.

mode

input

output

scale

12

120

limit

12

100

wrap

12

20

drop

12

(no output)

  1. Delay

  1. Giới thiệu

  • Trì hoãn mỗi tin nhắn đi qua node hoặc giới hạn tốc độ chúng có thể truyền qua.

  1. Thuộc tính

  • Inputs

  • delay

  • Number

  • Đặt độ trễ, tính bằng mili giây, được áp dụng cho tin nhắn. Tùy chọn này chỉ áp dụng nếu node được cấu hình để cho phép thông báo ghi đè khoảng thời gian trễ mặc định đã được cấu hình.

  • rate

  • number

  • Đặt giá trị tốc độ tính bằng mili giây giữa các tin nhắn. node này ghi đè giá trị tốc độ hiện có được xác định trong cấu hình node khi nó nhận được thông báo chứa giá trị msg.rate tính bằng mili giây. Tùy chọn này chỉ áp dụng nếu node được cấu hình để cho phép thông báo ghi đè khoảng tốc độ mặc định đã được cấu hình.

  • reset

  • Nếu tin nhắn nhận được có thuộc tính này được đặt thành bất kỳ giá trị nào thì tất cả các tin nhắn chưa được xử lý bởi node sẽ bị xóa mà không được gửi đi.

  • flush

  • Nếu tin nhắn nhận được có thuộc tính này được đặt thành giá trị số thì nhiều tin nhắn đó sẽ được gửi đi ngay lập tức. Nếu được đặt thành bất kỳ loại nào khác (ví dụ: boolean), thì tất cả các tin nhắn chưa xử lý do node lưu giữ sẽ được gửi ngay lập tức.

  • to Front

Khi ở chế độ giới hạn tốc độ, nếu tin nhắn nhận được có thuộc tính này được đặt thành boolean true thì tin nhắn sẽ được đẩy lên đầu hàng đợi và sẽ được phát hành tiếp theo. Điều này có thể được sử dụng kết hợp với msg.flush=1 để gửi lại ngay lập tức.

Khi được định cấu hình để trì hoãn tin nhắn, khoảng thời gian trễ có thể là một giá trị cố định, giá trị ngẫu nhiên trong một phạm vi hoặc được đặt động cho từng tin nhắn. Mỗi tin nhắn bị trì hoãn độc lập với bất kỳ tin nhắn nào khác, dựa trên thời gian đến.

Khi được định cấu hình để xếp hạng các tin nhắn giới hạn, việc gửi chúng sẽ được trải đều trong khoảng thời gian đã định cấu hình. Trạng thái hiển thị số flow tin nhắn hiện có trong hàng đợi. Nó có thể tùy ý loại bỏ các tin nhắn trung gian khi chúng đến.

Nếu được đặt để cho phép ghi đè tốc độ, tốc độ mới sẽ được áp dụng ngay lập tức và sẽ có hiệu lực cho đến khi thay đổi lại, node được đặt lại hoặc flow được khởi động lại.

Giới hạn tốc độ có thể được áp dụng cho tất cả các tin nhắn hoặc nhóm chúng theo giá trị msg.topic của chúng. Khi nhóm lại, các tin nhắn trung gian sẽ tự động bị loại bỏ. Tại mỗi khoảng thời gian, node có thể phát hành thông báo gần đây nhất cho tất cả các chủ đề hoặc phát hành thông báo gần đây nhất cho chủ đề tiếp theo.

Lưu ý: Trong chế độ giới hạn tốc độ, độ sâu hàng đợi tối đa có thể được đặt bởi một thuộc tính trong tệp settings.js của bạn. Ví dụ: nodeMessageBufferMaxLength: 1000,

  1. Split

  1. Giới thiệu

  • Chia tin nhắn thành một chuỗi tin nhắn.

  1. Thuộc tính

    • payload: object | string | array | buffer

  • The behavior of the node is determined by the type of msg.payload:

  • string/buffer - tin nhắn được phân chia bằng ký tự được chỉ định (mặc định: \n), chuỗi bộ đệm hoặc thành các độ dài cố định.

  • array - thông báo được chia thành các phần tử mảng riêng lẻ hoặc mảng có độ dài cố định.

  • object - một tin nhắn được gửi cho từng cặp khóa/giá trị của đối tượng.

  • Outputs

    • parts: object

  • Thuộc tính này chứa thông tin về cách tách tin nhắn khỏi tin nhắn gốc. Nếu được chuyển đến node nối, chuỗi có thể được tập hợp lại thành một thông báo. Có các thuộc tính sau:

  • id - mã định danh cho nhóm tin nhắn

  • index - vị trí trong nhóm

  • count - nếu biết, tổng số tin nhắn trong nhóm. Xem 'streaming mode' bên dưới.

  • type - loại tin nhắn - string/array/object/buffer

  • ch - đối với một chuỗi hoặc bộ đệm, dữ liệu được sử dụng để phân chia tin nhắn dưới dạng chuỗi hoặc mảng byte

  • key - đối với một đối tượng, khóa của thuộc tính mà thông báo này được tạo từ đó. node này có thể được cấu hình để sao chép giá trị này sang các thuộc tính tin nhắn khác, chẳng hạn như msg.topic.

  • len - độ dài của mỗi tin nhắn khi phân tách bằng giá trị độ dài cố định

node này giúp dễ dàng tạo flow thực hiện các hành động chung trên một chuỗi tin nhắn trước đó, sử dụng node nối, kết hợp lại chuỗi thành một tin nhắn duy nhất.

Nó sử dụng thuộc tính msg.parts để theo dõi các phần riêng lẻ của một chuỗi.

Streaming mode

node này cũng có thể được sử dụng để chỉnh lại flow tin nhắn. Ví dụ: một thiết bị nối tiếp gửi các lệnh kết thúc dòng mới có thể gửi một tin nhắn với một phần lệnh ở cuối. Ở 'chế độ phát trực tuyến', node này sẽ chia nhỏ một tin nhắn và gửi từng phân đoạn hoàn chỉnh. Nếu có một phần phân đoạn ở cuối, node sẽ giữ nó và thêm nó vào tin nhắn tiếp theo nhận được.

Khi hoạt động ở chế độ này, node sẽ không đặt thuộc tính msg.parts.count vì nó không biết sẽ có bao nhiêu tin nhắn trong flow. Điều này có nghĩa là nó không thể được sử dụng với node tham gia ở chế độ tự động.

  1. Join

  1. Giới thiệu

  • Nối các chuỗi tin nhắn thành một tin nhắn duy nhất.

  1. Thuộc tính

  • Có ba chế độ có sẵn:

    • Automatic: Khi được ghép nối với node phân tách, nó sẽ tự động nối các thông báo để đảo ngược quá trình phân tách đã được thực hiện.

    • Manual: Nối các chuỗi tin nhắn theo nhiều cách khác nhau.

    • reduce sequence: Áp dụng một biểu thức đối với tất cả các thông báo trong một trình tự để giảm nó thành một thông báo duy nhất.

  • parts

  • object

Để tự động nối một chuỗi các tin nhắn, tất cả chúng phải được đặt thuộc tính này. node phân chia tạo thuộc tính này nhưng nó có thể được tạo thủ công. Nó có các tính chất sau:

  • id - mã định danh cho nhóm tin nhắn

  • index - vị trí trong nhóm

  • count - tổng số tin nhắn trong nhóm

  • type - loại tin nhắn - string/array/object/buffer

  • ch - đối với một chuỗi hoặc bộ đệm, dữ liệu được sử dụng để phân chia tin nhắn dưới dạng chuỗi hoặc mảng byte

  • key - fđối với một đối tượng, khóa của thuộc tính mà thông báo này được tạo từ đó

  • len - độ dài của mỗi tin nhắn khi phân tách bằng giá trị độ dài cố định

  • complete

Nếu được đặt, node sẽ nối thêm payload và sau đó gửi tin nhắn đầu ra ở trạng thái hiện tại. Nếu không muốn thêm payload, hãy xóa nó khỏi msg.

  • reset

Nếu được đặt, node sẽ xóa mọi tin nhắn đã hoàn thành một phần và không gửi nó.

  • restartTimeout

Nếu được đặt và node có cấu hình thời gian chờ, thời gian chờ đó sẽ được khởi động lại.

  • Automatic mode

Chế độ tự động sử dụng thuộc tính của các tin nhắn đến để xác định cách nối chuỗi. Điều này cho phép nó tự động đảo ngược hoạt động của một node phân tách.

  • Manual mode

Khi được định cấu hình để tham gia ở chế độ thủ công, node có thể nối các chuỗi thông báo thành một số kết quả khác nhau:

  • a string or buffer - được tạo bằng cách nối thuộc tính đã chọn của mỗi thông báo với các ký tự nối hoặc bộ đệm được chỉ định.

  • an array - được tạo bằng cách thêm từng thuộc tính đã chọn hoặc toàn bộ thông báo vào mảng đầu ra.

  • a key/value object - được tạo bằng cách sử dụng thuộc tính của mỗi thông báo để xác định khóa lưu trữ giá trị bắt buộc.

  • a merged object - được tạo bằng cách hợp nhất thuộc tính của từng thông báo vào một đối tượng duy nhất.

Các thuộc tính khác của tin nhắn đầu ra được lấy từ tin nhắn cuối cùng nhận được trước khi kết quả được gửi.

Có thể đặt số flow tin nhắn sẽ nhận được trước khi tạo tin nhắn đầu ra. Đối với đầu ra đối tượng, khi đã đạt đến số flow này, node có thể được cấu hình để gửi tin nhắn cho mỗi tin nhắn tiếp theo nhận được.

Có thể đặt thời gian chờ để kích hoạt gửi tin nhắn mới bằng cách sử dụng bất cứ thứ gì đã nhận được cho đến nay. Thời gian chờ này có thể được khởi động lại bằng cách gửi tin nhắn có đặt thuộc tính msg.restartTimeout.

Nếu một tin nhắn được nhận với tập thuộc tính msg.complete, thì tin nhắn đầu ra sẽ được hoàn thiện và gửi đi.

Nếu một tin nhắn được nhận với thuộc tính msg.reset được đặt, thì tin nhắn hoàn chỉnh một phần sẽ bị xóa và không được gửi.

  • Reduce Sequence mode

Khi được định cấu hình để tham gia ở chế độ rút gọn, một biểu thức sẽ được áp dụng cho từng thông báo theo trình tự và kết quả được tích lũy để tạo ra một thông báo duy nhất.

  • Initial value

Giá trị ban đầu của giá trị tích lũy ($A).

  • Reduce expression

Biểu thức JSONata được gọi cho mỗi thông báo trong chuỗi. Kết quả được chuyển tới lệnh gọi biểu thức tiếp theo dưới dạng giá trị tích lũy. Trong biểu thức, các biến đặc biệt sau có thể được sử dụng:

  • $A: giá trị tích lũy,

  • $I: chỉ mục của tin nhắn trong chuỗi,

  • $N: số flow tin nhắn trong chuỗi.

  • Fix-up expression

Một biểu thức JSONata tùy chọn được áp dụng sau khi biểu thức rút gọn đã được áp dụng cho tất cả các thông báo trong chuỗi. Trong biểu thức, có thể sử dụng các biến đặc biệt sau:

  • $A: giá trị tích lũy,

  • $N: số flow tin nhắn trong chuỗi.

Theo mặc định, biểu thức rút gọn được áp dụng theo thứ tự, từ thông báo đầu tiên đến thông báo cuối cùng của chuỗi. Nó có thể tùy ý được áp dụng theo thứ tự ngược lại.

$N là số flow tin nhắn đến - ngay cả khi chúng giống hệt nhau.

Ví dụ: các cài đặt sau, cho một chuỗi các giá trị số, sẽ tính giá trị trung bình:

  • Reduce expression: $A+payload

  • Initial value: 0

  • Fix-up expression: $A/$N

  • Storing messages

This node will buffer messages internally in order to work across sequences. The runtime setting nodeMessageBufferMaxLength can be used to limit how many messages nodes will buffer.

  1. Sort

  1. Giới thiệu

  • Một hàm sắp xếp thuộc tính tin nhắn hoặc một chuỗi các tin nhắn.

  1. Thuộc tính

Khi được cấu hình để sắp xếp thuộc tính thông báo, node sẽ sắp xếp dữ liệu mảng được trỏ đến bởi thuộc tính thông báo được chỉ định.

Khi được cấu hình để sắp xếp một chuỗi các tin nhắn, nó sẽ sắp xếp lại các tin nhắn.

Thứ tự sắp xếp có thể là:

  • tăng dần

  • giảm dần.

Đối với số, thứ tự số có thể được chỉ định bằng hộp kiểm.

Khóa sắp xếp có thể là giá trị phần tử hoặc biểu thức JSONata để sắp xếp giá trị thuộc tính hoặc thuộc tính thông báo hoặc biểu thức JSONata để sắp xếp chuỗi thông báo.

Khi sắp xếp một chuỗi tin nhắn, node sắp xếp sẽ dựa vào các tin nhắn nhận được để thiết lập msg.parts. node phân tách tạo ra thuộc tính này nhưng có thể được tạo thủ công. Nó có các tính chất sau:

  • id - mã định danh cho nhóm tin nhắn

  • index - vị trí trong nhóm

  • count - tổng số tin nhắn trong nhóm

Lưu ý: node này lưu giữ nội bộ các tin nhắn cho hoạt động của nó. Để ngăn chặn việc sử dụng bộ nhớ không mong muốn, có thể chỉ định số flow tin nhắn tối đa được lưu giữ. Không có giới hạn về số flow tin nhắn.

thuộc tính nodeMessageBufferMaxLength được đặt trong settings.js.

  1. Batch

  1. Giới thiệu

  • Tạo chuỗi tin nhắn dựa trên các quy tắc khác nhau.

  1. Thuộc tính

  • Có ba chế độ để tạo chuỗi tin nhắn:

  • Số flow tin nhắn

Nhóm các tin nhắn thành các chuỗi có độ dài nhất định. Tùy chọn chồng chéo chỉ định số flow tin nhắn ở cuối một chuỗi sẽ được lặp lại khi bắt đầu chuỗi tiếp theo.

  • Khoảng thời gian

Nhóm các tin nhắn đến trong khoảng thời gian được chỉ định. Nếu không có tin nhắn nào đến trong khoảng thời gian đó, node có thể tùy ý gửi một tin nhắn trống.

  • Chuỗi nối

Tạo ra một chuỗi tin nhắn bằng cách nối các chuỗi đến. Mỗi tin nhắn phải có thuộc tính msg.topic và thuộc tính msg.parts xác định trình tự của nó. node được cấu hình với danh sách các giá trị chủ đề để xác định trình tự thứ tự được nối.

  • Lưu trữ tin nhắn

node này sẽ đệm các thông điệp nội bộ để hoạt động trên các chuỗi. Cài đặt thời gian chạy nodeMessageBufferMaxLength có thể được sử dụng để giới hạn số flow node thông báo sẽ lưu vào bộ đệm.

Nếu một tin nhắn được nhận với thuộc tính msg.reset được đặt, các tin nhắn được lưu vào bộ đệm sẽ bị xóa và không được gửi.

  1. Inject

  1. Giới thiệu

  • Đưa tin nhắn vào flow theo cách thủ công hoặc theo định kỳ. Payload tin nhắn có thể có nhiều loại khác nhau, bao gồm chuỗi, đối tượng JavaScript hoặc thời gian hiện tại.

  1. Thuộc tính

  • Outputs

  • payload

  • Various

  • Payload được cấu hình của tin nhắn.

  • topic

  • string

  • Một thuộc tính tùy chọn có thể được cấu hình trong node.

node Inject có thể bắt đầu một flow với giá trị payload cụ thể. Payload mặc định là dấu thời gian của thời gian hiện tại tính bằng mili giây kể từ ngày 1 tháng 1 năm 1970.

node này cũng hỗ trợ chèn chuỗi, số, boolean, đối tượng JavaScript hoặc giá trị flow/ngữ cảnh chung.

Theo mặc định, node được kích hoạt thủ công bằng cách nhấp vào node của nó trong trình chỉnh sửa. Nó cũng có thể được thiết lập để tiêm đều đặn hoặc theo lịch trình.

Nó cũng có thể được cấu hình để inject một lần mỗi lần các flow được bắt đầu.

Khoảng thời gian tối đa có thể được chỉ định là khoảng 596 giờ / 24 ngày. Tuy nhiên, nếu đang xem xét các khoảng thời gian lớn hơn một ngày, nên cân nhắc sử dụng node lập lịch có thể xử lý khi mất điện và khởi động lại.

Lưu ý: Tùy chọn "Khoảng thời gian giữa các lần" và "tại một thời điểm cụ thể" sử dụng hệ thống cron tiêu chuẩn. Điều này có nghĩa là 20 phút sẽ ở giờ tiếp theo, 20 phút trôi qua và 40 phút trôi qua - không phải ở thời gian 20 phút. Nếu bạn muốn 20 phút một lần kể từ bây giờ - hãy sử dụng tùy chọn "khoảng thời gian".

Lưu ý: Để đưa dòng mới vào chuỗi, phải sử dụng node Function hoặc Template để tạo payload.

  1. Complete

  1. Giới thiệu

  • Kích hoạt một flow khi một node khác hoàn thành việc xử lý tin nhắn.

  1. Thuộc tính

Nếu một node thông báo thời gian chạy khi nó xử lý xong một thông báo thì node này có thể được sử dụng để kích hoạt flow thứ hai.

Ví dụ: điều này có thể được sử dụng cùng với một node không có output, chẳng hạn như node gửi Email, để tiếp tục flow.

node này phải được cấu hình để xử lý sự kiện cho các node đã chọn trong flow. Không giống như node Catch, nó không cung cấp chế độ 'xử lý tất cả' tự động áp dụng cho tất cả các node trong flow.

  1. Catch

  1. Giới thiệu

  • Bắt lỗi do các node trên cùng một tab đưa ra.

  1. Thuộc tính

  • Outputs

  • error.message

  • String

  • Tin nhắn lỗi.

  • error.source.id

  • string

  • Id của node đã gây ra lỗi.

  • error.source.type

  • string

  • Loại node đã gây ra lỗi.

  • error.source.name

  • string

  • Tên, nếu được đặt, của node đã gây ra lỗi.

Nếu một node đưa ra lỗi trong khi xử lý tin nhắn, flow thường sẽ dừng lại. node này có thể được sử dụng để phát hiện những lỗi đó và xử lý chúng bằng một flow chuyên dụng.

Theo mặc định, node sẽ phát hiện lỗi do bất kỳ node nào trên cùng một tab đưa ra. Ngoài ra, nó có thể được nhắm mục tiêu vào các node cụ thể hoặc được định cấu hình để chỉ phát hiện các lỗi chưa được node bắt 'được nhắm mục tiêu' phát hiện.

Khi xảy ra lỗi, tất cả các node Catch phù hợp sẽ nhận được thông báo.

Nếu một lỗi được đưa ra trong flow con, thì lỗi đó sẽ được xử lý bởi bất kỳ node bắt nào trong flow con đó. Nếu không tồn tại, lỗi sẽ được truyền lên tab mà phiên bản flow con đang bật.

Nếu tin nhắn đã có thuộc tính lỗi thì nó sẽ được sao chép vào _error.

  1. Status

  1. Giới thiệu

  • Báo cáo thông báo trạng thái từ các node khác trên cùng một tab.

  1. Thuộc tính

  • Outputs

  • status.text

  • string

  • Trạng thái văn bản

  • status.source.type

  • string

  • Loại node báo cáo trạng thái.

  • status.source.id

  • string

  • Id của node đã báo cáo trạng thái.

  • status.source.name

  • string

  • Tên, nếu được đặt, của node đã báo cáo trạng thái.

node này không tạo ra payload.

Theo mặc định, node báo cáo trạng thái cho tất cả các node trên cùng một tab không gian làm việc. Nó có thể được cấu hình để báo cáo có chọn lọc trạng thái cho từng node riêng lẻ.

  1. Link in

  1. Giới thiệu

  • Tạo dây ảo giữa các flow.

  1. Thuộc tính

  • node này có thể được kết nối với bất kỳ node liên kết ra nào tồn tại trên bất kỳ tab nào. Sau khi được kết nối, chúng hoạt động như thể được kết nối với nhau.

  • Các dây giữa các node liên kết chỉ được hiển thị khi một node liên kết được chọn. Nếu có bất kỳ dây nào dẫn đến các tab khác, một node ảo sẽ hiển thị và bạn có thể nhấp vào để chuyển đến tab thích hợp.

Lưu ý: Không thể tạo liên kết khi đi vào hoặc ra khỏi flow con.

  1. Link call

  1. Giới thiệu

  • Gọi một flow bắt đầu bằng một liên kết trong node và chuyển phản hồi.

  1. Thuộc tính

  • target

  • string

Khi tùy chọn Link Type được đặt thành "dynamic target", hãy đặt msg.target thành tên của liên kết trong node bạn muốn gọi.

node này có thể được kết nối với một liên kết trong một node tồn tại trên bất kỳ tab nào. flow được kết nối với node đó phải kết thúc bằng node liên kết ra được định cấu hình ở chế độ 'trở lại'.

Khi node này nhận được một tin nhắn, nó sẽ được chuyển đến liên kết được kết nối trong node. Sau đó nó chờ phản hồi rồi gửi tiếp.

Nếu không nhận được phản hồi nào trong khoảng thời gian chờ đã định cấu hình, mặc định là 30 giây, node sẽ ghi lại lỗi có thể phát hiện được bằng node catch.

Khi tùy chọn Link Type được đặt thành "dynamic target", msg.target có thể được sử dụng để gọi một liên kết theo tên hoặc id.

  • Nếu có một liên kết trong các node có cùng id thì nó sẽ được gọi

  • Nếu có hai hoặc nhiều liên kết trong các node có cùng tên thì sẽ xảy ra lỗi

  • Cuộc gọi liên kết không thể gọi một liên kết trong node bên trong flow con

flow được kết nối với node đó phải kết thúc bằng node liên kết ra được định cấu hình ở chế độ 'return'.

  1. Link out

  1. Giới thiệu

  • Tạo dây ảo giữa các flow.

  1. Thuộc tính

  • node này có thể được cấu hình để gửi tin nhắn đến tất cả các liên kết trong các node mà nó được kết nối hoặc gửi phản hồi trở lại node gọi liên kết đã kích hoạt flow.

  • Khi ở chế độ 'gửi tới tất cả', các dây giữa các node liên kết chỉ được hiển thị khi node được chọn. Nếu có bất kỳ dây nào dẫn đến các tab khác, một node ảo sẽ hiển thị và bạn có thể nhấp vào để chuyển đến tab thích hợp.

Lưu ý: Không thể tạo liên kết khi đi vào hoặc ra khỏi flow con.

  1. Comment

  1. Giới thiệu

  • Một node bạn có thể sử dụng để thêm nhận xét vào flow của mình.

  1. Thuộc tính

  • Bảng chỉnh sửa sẽ chấp nhận cú pháp Markdown. Văn bản sẽ được hiển thị trong bảng thông tin bên.

  1. API Explanation

  2. Get request

  • Yêu cầu GET không cần đầu vào ban đầu, chỉ cần gửi yêu cầu tới api và nhận phản hồi trong msg.payload

  1. Post request

  • Yêu cầu POST cần dữ liệu đầu vào, bạn có thể đặt nó theo nút chức năng

  • Sau khi gửi payload và dữ liệu, yêu cầu sẽ hiện trong msg.payload

  1. API Authorization

  • Trong node HTTP request, hãy chọn Use authentication, sau đó chọn loại xác thực bạn muốn. Sau đó điền token và mật khẩu.

  1. Generative AI API’s

  • Đặt url API vào node HTTP Request để tích hợp API

  1. API Response Status Code

  • Mã trạng thái đã được lưu trong msg.statusCode

  • 200: Thành công

  • 404: Thất bại

  1. Conditions based on the API Response

- Tùy thuộc vào msg.statusCode và nút chuyển đổi, có thể đặt các cách khác nhau dựa trên phản hồi API

  1. Ví dụ mẫu

    1. Gửi ảnh

  • Name: Tên hiển thị của nút hình ảnh

  • Url: Đường dẫn đến hình ảnh có sẵn công khai

  1. Delay 2s

  • Action: Setting action delay

  • Delay each message

  • Fixed delay

  • For: Cài đặt thời gian trễ

  1. Gửi tin nhắn

  1. Nhập thông tin người dùng

  1. Khởi tạo một số biến để nhập thông tin người dùng

  • “first time”: để xác nhận rằng người dùng nhập lần đầu tiên

  • If (first time == true)

    • Tạo “con”: có nghĩa là kiểm tra hoặc thông báo. Biến này được sử dụng để điều hướng luồng thông báo cho người dùng những thông tin họ cần nhập hoặc kiểm tra xác thực và lưu thông tin

      • “check” value: để nhập luồng kiểm tra đầu vào (xác thực) của người dùng, sau đó lưu nó nếu đúng

      • “notice” value: để nhập tin nhắn thông báo từ bot đến người dùng, sau đó thay đổi con == “check” để chuyển hướng đến luồng “check”

  • Tạo “name”: nghĩa là tên của thông tin mà bạn muốn người dùng cung cấp

    • name == “company”: lấy tên công ty

    • name == “name”: lấy tên người dùng

    • name == “email”: lấy email

  1. Luồng thông báo

  • Sau khi kiểm tra thông tin muốn lấy, hãy hướng dẫn nó

  • Sau khi thông báo thành công

    • Thay đổi “con” == để kiểm tra thông tin đầu vào của người dùng và cũng đợi cho đến khi người dùng nhập nội dung nào đó

    • change the “first time” == false, nếu first time vẫn là “true”, các biến sẽ được đặt lại

  1. Kiểm tra luồng

  • Kiểm tra xác thực

  • Lưu thông tin

  • Kiểm tra xem tên nhập vào có chứa số hay không, nếu có nhập số thì lưu ý lại và cho phép người dùng nhập thêm một lần nữa.

  • Kiểm tra xem nội dung email đầu vào có bao gồm “@” và “.” hoặc không, nếu không gồm thì báo lại và cho phép người dùng nhập thêm một lần nữa.

  • Sau khi nhập email thành công, change “first time” == true để bắt đầu luồng mới

  1. Gửi tin nhắn cảm ơn

  1. Dịch vụ bàn giao

  • Sau khi gửi tin nhắn cảm ơn, chuyển luồng đến handover

  • Cài đặt nút action

    • Add: “Hand over”

Loại "biểu thức" sử dụng ngôn ngữ biểu thức và truy vấn .

Khi được định cấu hình trong node, thuộc tính URL có thể chứa các thẻ theo dạng Những thứ này cho phép xây dựng url bằng cách sử dụng các giá trị của tin nhắn gửi đến. Ví dụ: nếu url được đặt thành example.com/{{{topic}}}, nó sẽ tự động chèn giá trị msg.topic. Việc sử dụng {{{...}}} sẽ ngăn mustache thoát khỏi các ký tự như / & v.v.

JSONata
Outputs
mustache-style
Inputs
Inputs
Inputs