Tài liệu này hướng dẫn bạn cách sử dụng các hàm trong module Bot-Auto của Smax. Thay vì chỉ gửi những tin nhắn cố định, các hàm này cho phép bạn xử lý dữ liệu linh hoạt (như tự động đổi cách xưng hô, định dạng giá tiền, trích xuất số điện thoại...), giúp kịch bản chăm sóc khách hàng trở nên chuyên nghiệp và cá nhân hóa hơn.
Kịch bản áp dụng: Tạo sự thân thiện ngay từ lời chào đầu tiên, giúp khách hàng cảm thấy được quan tâm thay vì nhận một tin nhắn mẫu vô hồn.
UPPER (Viết hoa toàn bộ)
Chuyển toàn bộ chữ cái trong chuỗi thành chữ viết hoa.
Cú pháp:[=UPPER("nội dung")]
Ví dụ:[=UPPER("khuyến mãi sốc")] → KHUYẾN MÃI SỐC
Kịch bản áp dụng: Dùng để nhấn mạnh các thông báo quan trọng, tiêu đề chương trình hoặc các từ khóa cần gây chú ý mạnh.
LOWER (Viết thường toàn bộ)
Chuyển toàn bộ chữ cái trong chuỗi thành chữ viết thường.
Cú pháp:[=LOWER("nội dung")]
Ví dụ:[=LOWER("XIN CHÀO")] → xin chào
Kịch bản áp dụng: Chuẩn hóa dữ liệu khách hàng nhập vào (ví dụ: email) để dễ dàng quản lý và đối soát, tránh sai sót do viết hoa/thường.
PROPER (Viết hoa chữ cái đầu)
Viết hoa chữ cái đầu tiên của mỗi từ, các chữ còn lại viết thường.
Cú pháp:[=PROPER("nội dung")]
Ví dụ:[=PROPER("nguyễn văn a")] → Nguyễn Văn A
Kịch bản áp dụng: Tự động chuẩn hóa tên khách hàng khi gửi tin nhắn xác nhận đơn hàng, tạo cảm giác chuyên nghiệp và tôn trọng.
2.2. Nhóm Xử lý Số & Thời gian
SEPRATOR (Phân cách hàng nghìn)
Thêm dấu phẩy ngăn cách mỗi 3 chữ số để dễ đọc số tiền.
Cú pháp:[=SEPRATOR(số)]
Ví dụ:[=SEPRATOR(1500000)] → 1,500,000
Kịch bản áp dụng: Hiển thị giá sản phẩm hoặc tổng tiền đơn hàng. Thay vì gửi "1500000đ" (khách dễ nhìn nhầm), hãy gửi "1,500,000đ" để khách dễ dàng nắm bắt.
TIMENOW (Thời gian hiện tại)
Trả về ngày giờ hiện tại theo múi giờ bạn chọn.
Cú pháp:[=TIMENOW({{múi_giờ}},"Định dạng")]
Tham số:{{múi_giờ}} (Việt Nam là 7). Định dạng: YYYY (năm), MM (tháng), DD (ngày), HH (giờ), mm (phút), ss (giây).
Ví dụ:[=TIMENOW(7,"DD/MM/YYYY")] → 01/06/2024
Kịch bản áp dụng: Gửi tin nhắn nhắc lịch hẹn hoặc chúc mừng sinh nhật khách hàng đúng ngày giờ địa phương.
FORMAT_TIME (Định dạng lại thời gian)
Chuyển đổi thời gian từ hệ thống (dạng UTC) sang định dạng dễ đọc cho con người.
Cú pháp:[=FORMAT_TIME("thời gian UTC",{{múi_giờ}},"Định dạng")]
Kịch bản áp dụng: Khi hệ thống trả về ngày tạo đơn hàng ở dạng mã máy tính phức tạp, bạn dùng hàm này để hiển thị cho khách hàng dưới dạng "Ngày 06/06/2024".
MOD (Chia lấy dư)
Trả về số dư của phép chia A cho B.
Cú pháp:[=MOD(A,B)]
Ví dụ:[=MOD(10,3)] → 1
Kịch bản áp dụng: Tạo chương trình tri ân ngẫu nhiên. Ví dụ: Cứ mỗi khách hàng thứ 5 mua hàng (Số thứ tự đơn hàng MOD 5 = 0) sẽ nhận được một món quà đặc biệt.
RANDOM & RANDOMBETWEEN (Ngẫu nhiên)
RANDOM(A,B): Chọn ngẫu nhiên 1 trong 2 giá trị A hoặc B.
Ví dụ:[=RANDOM("Quà tặng A","Quà tặng B")] → Trả về ngẫu nhiên 1 trong 2 quà.
RANDOMBETWEEN(min,max): Chọn ngẫu nhiên một số trong khoảng từ min đến max.
Ví dụ:[=RANDOMBETWEEN(1,100)] → Trả về số ngẫu nhiên từ 1 đến 100.
Kịch bản áp dụng: Tạo sự đa dạng cho lời chào (không để khách thấy nhàm chán) hoặc tạo mã số may mắn, voucher giảm giá ngẫu nhiên cho khách.
2.3. Nhóm Trích xuất & Xử lý chuỗi
LEFT, RIGHT, MID (Cắt chuỗi)
LEFT("chuỗi", số_ký_tự): Lấy ký tự từ bên trái sang.
RIGHT("chuỗi", số_ký_tự): Lấy ký tự từ bên phải sang.
MID("chuỗi", vị_trí_bắt_đầu, số_ký_tự): Lấy ký tự ở giữa.
Ví dụ:[=RIGHT("DH123456", 4)] → 3456
Kịch bản áp dụng: Trích xuất 4 số cuối của số điện thoại để xác nhận danh tính khách hàng hoặc lấy mã phân loại từ đầu mã đơn hàng.
Nhóm hàm này cực kỳ mạnh mẽ để tự động thu thập thông tin khách hàng từ tin nhắn.
GET_NUMBER: Lấy tất cả các số trong chuỗi.
GET_TEXT: Lấy tất cả các chữ trong chuỗi (loại bỏ số).
GET_PHONE: Tự động nhận diện và lấy số điện thoại.
GET_EMAIL: Tự động nhận diện và lấy địa chỉ email.
Ví dụ: Khách nhắn "SĐT mình là 0987654321". Bạn dùng [=GET_PHONE({{last_message}})] → Kết quả: 0987654321.
Kịch bản áp dụng: Tự động bóc tách SĐT, Email từ tin nhắn của khách để lưu vào CRM mà không cần nhân viên nhập tay, giảm thiểu sai sót và tiết kiệm thời gian.
TRIM (Xóa khoảng trắng thừa)
Loại bỏ các khoảng trắng dư thừa ở đầu, cuối và giữa các từ.
Cú pháp:[=TRIM(" chuỗi văn bản ")] → "chuỗi văn bản"
Kịch bản áp dụng: Khi khách hàng nhập thông tin (như Email, Mã giảm giá) thường bị dư khoảng trắng do gõ nhầm. Hàm TRIM giúp làm sạch dữ liệu trước khi lưu trữ để tránh lỗi hệ thống.
LENGTH (Đo độ dài chuỗi)
Trả về tổng số ký tự có trong chuỗi.
Cú pháp:[=LENGTH("nội dung")]
Ví dụ:[=LENGTH("Smax")] → 4
Kịch bản áp dụng: Kiểm tra độ dài tin nhắn để đảm bảo không vượt quá giới hạn của nền tảng hoặc tối ưu hóa nội dung cho A/B Testing.
MD5 (Mã hóa dữ liệu - Nâng cao)
Mã hóa chuỗi văn bản thành một dãy ký tự không thể đọc ngược lại bằng thuật toán MD5.
Cú pháp:[=MD5("nội dung")]
Kịch bản áp dụng: Dùng cho các mục đích kỹ thuật như bảo mật token, mã hóa mật khẩu hoặc tạo ID duy nhất cho một chuỗi dữ liệu khi truyền giữa các hệ thống.
Bạn có thể lồng các hàm vào nhau để tạo ra những kịch bản xử lý dữ liệu thông minh:
Cá nhân hóa chuyên nghiệp:Xin chào [=PROPER([=GENDER("anh","chị","bạn")])] {{customer_name}} → Kết quả: "Xin chào Chị Nguyễn Thu Thủy".
Thu thập & Làm sạch dữ liệu:[=TRIM([=GET_PHONE({{last_message}})])] → Tự động lấy số điện thoại từ tin nhắn và xóa mọi khoảng trắng thừa để lưu vào CRM chính xác 100%.
Báo giá tự động:Tổng tiền đơn hàng của bạn là: [=SEPRATOR({{total_amount}})]đ. Thời gian đặt: [=TIMENOW(7,"HH:mm DD/MM")] → Kết quả: "Tổng tiền đơn hàng của bạn là: 1,200,000đ. Thời gian đặt: 14:30 01/06".