Tự động hóa
Biến và bộ dữ liệu
Biến session khác biến flow ra sao, vì sao không được đặt mật khẩu vào biến flow, và bộ dữ liệu cấp giá trị lúc chạy thế nào.
5 phút đọc
Kịch bản gõ cứng giá trị vào chỉ chạy được cho đúng một tài khoản, trong đúng một ngày. Kịch bản dùng biến thì chạy cho hai chục tài khoản. Bài này nói về hai loại biến, cách viết biến vào node, giá trị được cất ở đâu — và một thứ tuyệt đối không được đặt vào kịch bản.
Hai loại biến
Panel Variables trong trình soạn thảo có hai tab, và khác biệt giữa chúng quyết định kịch bản chạy ra sao.
| Session — người chạy điền vào | Flow — hằng số của chính kịch bản | |
|---|---|---|
| Giá trị đến từ đâu | Cấp lúc chạy kịch bản trên máy, hoặc từ bộ dữ liệu | Khai một lần, ngay trong kịch bản |
| Bắt buộc có giá trị? | Có — mọi biến session phải có giá trị thì kịch bản mới chạy được | Không; không đặt giá trị đầu thì nó bắt đầu rỗng |
| Được đặt giá trị đầu? | Không | Được — khai một chỗ, dùng {{x}} ở mười node |
| Node ghi vào được? | Không | Được, và chỉ loại này |
Mẹo phân biệt: thứ gì khác nhau theo từng máy hoặc từng tài khoản thì là biến session. Thứ gì kịch bản tự xoay xở — một bộ đếm, một câu nó tự ghép, một hằng số dùng lại nhiều chỗ — là biến flow.

Tuyệt đối không đặt bí mật vào biến flow
Giá trị đầu của biến flow được lưu cùng kịch bản và có thể lộ ra qua tìm kiếm. Đừng bao giờ đặt mật khẩu, token hay mã khôi phục vào đó.
Thứ cần giữ kín phải đi bằng biến session (cấp lúc chạy), hoặc bằng bộ dữ liệu có đánh dấu secret.
Luật đặt tên
- Tối đa 50 biến mỗi kịch bản.
- Tên biến bắt đầu bằng chữ cái hoặc gạch dưới, sau đó chỉ gồm chữ cái, chữ số và gạch dưới — không dấu cách, không chữ có dấu. Tối đa 50 ký tự, và không trùng nhau trong cùng kịch bản.
- Vì tên biến không mang được dấu, mỗi biến còn có một label: cái tên đọc được, có dấu, hiện trên form khi ai đó điền giá trị.
Viết biến vào node
Gõ {{ten_bien}} vào ô nhập chữ của node. Nó là tham chiếu, không phải thay-thế-chuỗi: máy đọc giá trị ngay tại thời điểm node đó chạy, nên giá trị vừa được ghi ở bước trước chính là giá trị node sau nhìn thấy.
- Nhúng giữa câu được:
Xin chào {{name}}. - Đường dẫn chấm đi vào giá trị có cấu trúc:
{{user.name}},{{list.0}}. Biến kiểu danh sách hoặc JSON bắt buộc phải đọc qua đường dẫn — dùng trần không chạy. - Khoảng trắng trong ngoặc bị bỏ qua:
{{ key }}chính là{{key}}. - Muốn viết ngoặc nhọn thật thay vì tham chiếu thì thoát bằng
\{{.
Trong {{ }} không có biểu thức, không gọi hàm — không viết được {{count + 1}}. Tính toán và xử lý chữ là việc của node Calculate và Transform text; xem Danh mục node.
Thứ kịch bản không lưu ngược lại được
Biến session là hạt giống. Thứ node ghi ra trong lúc chạy chỉ sống trong đúng lần chạy đó — nó không đổ ngược về phiên thuê. Kịch bản không dùng biến session làm chỗ lưu trữ sống sót sang lần chạy sau được.
Giá trị nào cần giữ qua nhiều lần chạy thì phải để ngoài kịch bản: trong bộ dữ liệu do bạn tự cập nhật, hoặc ở đâu đó trên máy.
Bộ dữ liệu ở trang Flow data
Flow data là trang thứ hai trong nhóm Automation Package. Trang tự mô tả rất gọn: "Data sets (variable values) used when running automation flows on rented devices" — bộ dữ liệu (giá trị biến) dùng khi chạy kịch bản tự động trên máy thuê.
Bộ dữ liệu là một gói giá trị biến có đặt tên — mỗi tài khoản một bộ, mỗi nhân vật một bộ, mỗi máy một bộ, chia thế nào là tuỳ cách bạn làm việc.

Bảng có các cột Data set name (tên bộ), VARIABLES (biến), Updated (cập nhật) và ACTIONS (thao tác), phía trên là nút Create data set. Một giá trị trong bộ có thể được đánh dấu secret, khi đó nó bị che trên trang.
Gán bộ dữ liệu cho phiên thuê
Gán một bộ dữ liệu vào phiên thuê thì các kịch bản bạn chạy trên máy đó sẽ đọc giá trị từ bộ đã gán, thay vì lần nào bạn cũng gõ lại vào hộp thoại chạy.
Chỉ chủ phiên mới gán được bộ dữ liệu. Máy do người khác chia sẻ cho bạn thì không phải của bạn để cấu hình kiểu này: gán hàng loạt sẽ bỏ qua các phiên đó và cho biết đã bỏ qua bao nhiêu phiên. Với các máy đó thì điền giá trị trong hộp thoại chạy. Xem Dùng Cloud Phone người khác chia sẻ.
Giá trị đến từ đâu
Hộp thoại chạy ghi rõ thứ tự: "Pick a flow, fill the session variables, then confirm. Value sources: data set assigned to the rental session → set picked in this dialog → manual input."
Hệ thống lấy giá trị theo đúng thứ tự đó. Luật thực dụng suy ra từ đấy: đọc kỹ các giá trị trước khi bấm xác nhận — đó là khoảnh khắc cuối cùng mà bắt được một giá trị sai còn rẻ.
Tóm tắt
- Hai loại: session (cấp theo từng lượt chạy, luôn bắt buộc) và flow (hằng số của kịch bản, và là loại duy nhất node ghi vào được).
- Đừng bao giờ đặt mật khẩu vào giá trị đầu của biến flow — dùng biến session, hoặc giá trị trong bộ dữ liệu có đánh dấu secret.
{{ten_bien}}là tham chiếu đọc lúc chạy: đường dẫn chấm thì được, biểu thức thì không.- Tối đa 50 biến mỗi kịch bản, và chỉ chủ phiên mới gán được bộ dữ liệu.