Đầu tiên, để yêu cầu hệ thống thực hiện những ý định nghiệp vụ (business intents) người dùng có thể mở đầu bằng “Hi Bot” hoặc “Hello Bot”. Khi hệ thống nhận được từ khóa liên qua đến Bot, hệ thống sẽ phản hồi lại câu hỏi “Can I help you?” hoặc có thể một câu hỏi khác tương tự. Sau đó sẽ là các phản hồi có điều kiện cho các yêu cầu của người dùng đối với việc điều khiển các thiết bị điện như: bóng
đèn 1 (lightbult 1), bóng đèn 2 (lightbult 2), motor và có thể nhiều thiết bị điện khác nhưng ở đây nhóm chỉ giới hạn lại trong 3 thiết bị này.
Trong control lightbult 1 (điều khiển đèn 1), nếu người dùng không yêu cầu (hoặc kết quả trả về No), chương trình sẽ xét đến điều kiện 2 - control lightbult 2 (điều khiển đèn 2) và nếu kết quả lại trả về No (người dùng cũng khơng u cầu điều khiển đèn 2), chương trình tiếp tục xét đến điều kiện 3 - control motor (điều khiển motor), lúc này nếu hệ thống không nhận yêu cầu từ người dùng trong việc điều khiển motor, nó sẽ quay trở về để chờ đợi yêu cầu mới từ người dùng.
Ngược lại, trong control lightbult 1 (điều khiển đèn 1) nếu người dùng yêu cầu điều khiển đèn 1 (hoặc kết quả trả về là Yes), hệ thống sẽ tiếp tục xét đến điều kiện Turn on (Có bật/mở hay khơng?). Nếu người dùng đồng ý (kết quả trả về là Yes), hệ thống sẽ xuất ra giá trị là A1. Nếu không đồng ý (kết quả trả về là No), hệ thống sẽ xuất ra giá trị là A2. Tương tự cho control lightbult 2 (điều khiển đèn 2) và control motor (điều khiển motor) sẽ là các giá trị tương ứng lần lượt là B1/B2 và C1/C2.
Các giá trị cuối này (A1, A2, B1, B2, C1, C2) sẽ được gửi xuống backend để xử lý dữ liệu, làm việc với webhook và xuất ra những tín hiệu tương ứng xuống phần cứng nhằm phản hồi lại người dùng.
4.2.2. Phần mềm hệ thống
4.2.2.1. Xây dựng chatbots cơ bản trên Dialogfow
a. Tạo tác nhân
Nếu chưa có tài khoản Dialogflow, để sử dụng, chúng ta đăng ký qua đường link: dialogflow.com. Nếu đã có tài khoản, hãy đăng nhập. Chúng ta cũng có thể đăng nhập bằng tài khoản của Google.