UNPKG

n8n-nodes-zalo-nnt

Version:

Unofficial Zalo integration for n8n - Send messages, manage groups, user operations with QR login. No API key required, works via browser simulation.

1,510 lines 47.5 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.zaloUserProperties = void 0; const branding_1 = require("../shared/branding"); exports.zaloUserProperties = [ branding_1.BRANDING_CONFIG, { displayName: 'Resource', name: 'resource', type: 'options', noDataExpression: true, options: [ { name: 'Bạn Bè', value: 'friend', }, { name: 'Tài Khoản', value: 'account', }, { name: 'Riêng Tư', value: 'privacy', }, { name: 'Biệt Danh', value: 'alias', }, { name: 'ẢNh ĐạI Diện', value: 'avatar', }, { name: 'Tin Nhắn', value: 'message', }, { name: 'Hệ Thống', value: 'system', }, ], default: 'friend', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['friend'], }, }, options: [ { name: 'Chấp Nhận Lời Mời', value: 'acceptFriendRequest', description: 'Chấp nhận lời mời kết bạn từ người dùng', action: 'Chấp nhận lời mời kết bạn', }, { name: 'Gửi Lời Mời', value: 'sendFriendRequest', description: 'Gửi lời mời kết bạn đến người dùng', action: 'Gửi lời mời kết bạn', }, { name: 'Từ Chối Lời Mời', value: 'rejectFriendRequest', description: 'Từ chối lời mời kết bạn từ người dùng', action: 'Từ chối lời mời kết bạn', }, { name: 'Hủy Lời Mời Đã Gửi', value: 'undoFriendRequest', description: 'Hủy lời mời kết bạn đã gửi cho người dùng', action: 'Hủy lời mời kết bạn đã gửi', }, { name: 'Lấy Lời Mời Đã Gửi', value: 'getSentFriendRequest', description: 'Lấy danh sách lời mời kết bạn đã gửi đang chờ xử lý', action: 'Lấy danh sách lời mời đã gửi', }, { name: 'Xóa Bạn Bè', value: 'removeFriend', description: 'Xóa người dùng khỏi danh sách bạn bè', action: 'Xóa bạn bè', }, { name: 'Kiểm Tra Trạng Thái', value: 'getFriendRequestStatus', description: 'Kiểm tra trạng thái quan hệ với người dùng (đã kết bạn, đang chờ, etc.)', action: 'Kiểm tra trạng thái kết bạn', }, { name: 'Lấy Danh Sách Bạn Bè', value: 'getAllFriends', description: 'Lấy toàn bộ danh sách bạn bè Zalo', action: 'Lấy danh sách bạn bè', }, { name: 'Lấy Danh Sách Bạn Thân', value: 'getCloseFriends', description: 'Lấy danh sách bạn thân (close friends)', action: 'Lấy danh sách bạn thân', }, { name: 'Tìm Kiếm Người Dùng', value: 'findUser', description: 'Tìm kiếm người dùng Zalo theo số điện thoại', action: 'Tìm kiếm người dùng', }, { name: 'Tìm Theo Username', value: 'findUserByUsername', description: 'Tìm kiếm người dùng Zalo theo username', action: 'Tìm kiếm theo username', }, { name: 'Tìm Nhiều User Theo SĐT', value: 'getMultiUsersByPhones', description: 'Tìm kiếm nhiều người dùng cùng lúc theo số điện thoại (tối đa 50 số)', action: 'Tìm nhiều user theo SĐT', }, { name: 'Lấy Gợi Ý Kết Bạn', value: 'getFriendRecommendations', description: 'Lấy danh sách gợi ý kết bạn và lời mời kết bạn đã nhận', action: 'Lấy gợi ý kết bạn', }, { name: 'Lấy Bạn Bè Đang Online', value: 'getFriendOnlines', description: 'Lấy danh sách bạn bè đang online', action: 'Lấy bạn bè đang online', }, { name: 'Lấy Nhóm Chung', value: 'getRelatedFriendGroup', description: 'Lấy danh sách nhóm chung với một người bạn', action: 'Lấy nhóm chung với bạn bè', }, ], default: 'getAllFriends', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['account'], }, }, options: [ { name: 'Lấy Thông Tin Người Dùng', value: 'getUserInfo', description: 'Lấy thông tin chi tiết của người dùng Zalo', action: 'Lấy thông tin người dùng', }, { name: 'Lấy Thông Tin Tài Khoản', value: 'fetchAccountInfo', description: 'Lấy thông tin chi tiết đầy đủ của tài khoản Zalo', action: 'Lấy thông tin tài khoản đầy đủ', }, { name: 'Thay Đổi Cài Đặt', value: 'changeAccountSetting', description: 'Thay đổi tên, ngày sinh, giới tính tài khoản Zalo', action: 'Thay đổi cài đặt tài khoản', }, { name: 'Đổi Ngôn Ngữ', value: 'updateLang', description: 'Thay đổi ngôn ngữ hiển thị trong Zalo (vi/en/zh)', action: 'Đổi ngôn ngữ Zalo', }, { name: 'Đổi Trạng Thái Cá Nhân', value: 'updateProfileBio', description: 'Đổi dòng trạng thái (bio) cá nhân', action: 'Đổi trạng thái cá nhân', }, { name: 'Đổi Avatar Tài Khoản', value: 'changeAccountAvatar', description: 'Đổi ảnh đại diện tài khoản từ URL ảnh', action: 'Đổi avatar tài khoản', }, { name: 'Lấy Cài Đặt Tài Khoản', value: 'getSettings', description: 'Lấy toàn bộ cài đặt tài khoản (quyền riêng tư, thông báo, v.v.)', action: 'Lấy cài đặt tài khoản', }, { name: 'Cập Nhật Cài Đặt Tài Khoản', value: 'updateSettings', description: 'Cập nhật một cài đặt tài khoản cụ thể', action: 'Cập nhật cài đặt tài khoản', }, { name: 'Đổi Trạng Thái Hoạt Động', value: 'updateActiveStatus', description: 'Bật/tắt hiển thị trạng thái online của tài khoản', action: 'Đổi trạng thái hoạt động', }, ], default: 'getUserInfo', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['privacy'], }, }, options: [ { name: 'Chặn Người Dùng', value: 'blockUser', description: 'Chặn người dùng không cho nhắn tin', action: 'Chặn người dùng', }, { name: 'Bỏ Chặn Người Dùng', value: 'unblockUser', description: 'Bỏ chặn người dùng đã chặn trước đó', action: 'Bỏ chặn người dùng', }, { name: 'Chặn/Bỏ Chặn Xem Bảng Tin', value: 'blockViewFeed', description: 'Chặn hoặc bỏ chặn người dùng xem bảng tin', action: 'Chặn/bỏ chặn xem bảng tin', }, { name: 'Báo Cáo Vi Phạm', value: 'sendReport', description: 'Báo cáo một cuộc trò chuyện vi phạm', action: 'Báo cáo vi phạm', }, ], default: 'blockUser', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['alias'], }, }, options: [ { name: 'Đổi Tên Gợi Nhớ', value: 'changeAliasName', description: 'Đặt hoặc đổi tên gợi nhớ cho bạn bè', action: 'Đổi tên gợi nhớ', }, { name: 'Xóa Tên Gợi Nhớ', value: 'removeFriendAlias', description: 'Xóa tên gợi nhớ đã đặt, quay về tên Zalo gốc', action: 'Xóa tên gợi nhớ', }, { name: 'Lấy Danh Sách Tên Gợi Nhớ', value: 'getAliasList', description: 'Lấy danh sách tất cả tên gợi nhớ đã đặt', action: 'Lấy danh sách tên gợi nhớ', }, ], default: 'changeAliasName', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['avatar'], }, }, options: [ { name: 'Lấy Danh Sách Ảnh Đại Diện', value: 'getAvatarList', description: 'Lấy danh sách ảnh đại diện cũ của tài khoản', action: 'Lấy danh sách ảnh đại diện', }, { name: 'Lấy URL Avatar', value: 'getAvatarUrlProfile', description: 'Lấy URL avatar của người dùng theo userId', action: 'Lấy URL avatar', }, { name: 'Lấy Avatar Full', value: 'getFullAvatar', description: 'Lấy avatar full resolution của người dùng', action: 'Lấy avatar full', }, { name: 'Sử Dụng Lại Ảnh Cũ', value: 'reuseAvatar', description: 'Đổi lại ảnh đại diện cũ đã từng sử dụng', action: 'Sử dụng lại ảnh đại diện cũ', }, { name: 'Xóa Ảnh Đại Diện', value: 'deleteAvatar', description: 'Xóa một hoặc nhiều ảnh đại diện khỏi kho ảnh', action: 'Xóa ảnh đại diện', }, ], default: 'getAvatarList', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['message'], }, }, options: [ { name: 'Thu Hồi Tin Nhắn', value: 'undoMessage', description: 'Thu hồi tin nhắn đã gửi', action: 'Thu hồi tin nhắn', }, { name: 'Thả Cảm Xúc', value: 'addReaction', description: 'Thả cảm xúc (reaction) vào một tin nhắn', action: 'Thả cảm xúc vào tin nhắn', }, { name: 'Chuyển Tiếp Tin Nhắn', value: 'forwardMessage', description: 'Chuyển tiếp nội dung tin nhắn đến một hoặc nhiều cuộc trò chuyện', action: 'Chuyển tiếp tin nhắn', }, { name: 'Xóa Tin Nhắn', value: 'deleteMessage', description: 'Xóa tin nhắn (cục bộ hoặc cho tất cả, khác với thu hồi)', action: 'Xóa tin nhắn', }, { name: 'Gửi Trạng Thái Đã Xem', value: 'sendSeenEvent', description: 'Gửi trạng thái "đã xem" cho tin nhắn — dữ liệu message thường lấy từ event của ZaloMessageTrigger', action: 'Gửi trạng thái đã xem', }, { name: 'Gửi Trạng Thái Đã Nhận', value: 'sendDeliveredEvent', description: 'Gửi trạng thái "đã nhận" cho tin nhắn — dữ liệu message thường lấy từ event của ZaloMessageTrigger', action: 'Gửi trạng thái đã nhận', }, ], default: 'undoMessage', }, { displayName: 'Operation', name: 'operation', type: 'options', noDataExpression: true, displayOptions: { show: { resource: ['system'], }, }, options: [ { name: 'Giữ Kết Nối', value: 'keepAlive', description: 'Giữ session Zalo active, tránh bị disconnect', action: 'Giữ kết nối Zalo', }, { name: 'Kiểm Tra Kết Nối', value: 'checkConnection', description: 'Gọi API thật để xác nhận session còn sống hay đã chết — không báo lỗi khi chết, trả về trạng thái để kiểm tra hàng loạt nhiều tài khoản', action: 'Kiểm tra kết nối', }, { name: 'Lấy Cookie Phiên', value: 'getCookie', description: '⚠️ Xuất cookie phiên hiện tại (đã được Zalo tự làm mới) — dùng để dán vào credential ZaloApi khác nhằm nhân bản/di chuyển session. Cookie xuất ra sẽ lưu dạng plaintext trong execution log của n8n.', action: 'Lấy cookie phiên', }, { name: 'Lấy Trạng Thái Hoạt Động', value: 'lastOnline', description: 'Lấy thông tin trạng thái hoạt động cuối cùng của người dùng', action: 'Lấy trạng thái hoạt động', }, { name: 'Phân Tích Link', value: 'parseLink', description: 'Lấy thông tin xem trước (preview) của một link Zalo/web', action: 'Phân tích link', }, ], default: 'keepAlive', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['acceptFriendRequest'], }, }, description: 'ID của người dùng cần chấp nhận lời mời kết bạn', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['sendFriendRequest'], }, }, description: 'ID của người dùng cần gửi lời mời kết bạn', placeholder: '1234567890', }, { displayName: 'Tin Nhắn', name: 'message', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['sendFriendRequest'], }, }, description: 'Tin nhắn kèm theo lời mời kết bạn', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['rejectFriendRequest'], }, }, description: 'ID người dùng cần từ chối lời mời kết bạn', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['undoFriendRequest'], }, }, description: 'ID người dùng cần hủy lời mời kết bạn đã gửi', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['removeFriend'], }, }, description: 'ID người dùng cần xóa khỏi danh sách bạn bè', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['getFriendRequestStatus'], }, }, description: 'ID người dùng cần kiểm tra trạng thái kết bạn', placeholder: '1234567890', }, { displayName: 'Giới Hạn', name: 'limit', type: 'number', typeOptions: { minValue: 1, }, required: true, default: 50, displayOptions: { show: { resource: ['friend'], operation: ['getAllFriends'], }, }, description: 'Max number of results to return', }, { displayName: 'Số ĐIện Thoại', name: 'phoneNumber', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['findUser'], }, }, description: 'Số điện thoại cần tìm kiếm', placeholder: '0901234567', }, { displayName: 'Giới Hạn', name: 'limit', type: 'number', typeOptions: { minValue: 1, }, required: true, default: 50, displayOptions: { show: { resource: ['friend'], operation: ['findUser'], }, }, description: 'Max number of results to return', }, { displayName: 'Giới Hạn', name: 'limit', type: 'number', typeOptions: { minValue: 1, }, required: false, default: 50, displayOptions: { show: { resource: ['friend'], operation: ['getCloseFriends'], }, }, description: 'Số lượng bạn thân tối đa cần lấy (mặc định: 50)', }, { displayName: 'Offset', name: 'offset', type: 'number', typeOptions: { minValue: 0, }, required: false, default: 0, displayOptions: { show: { resource: ['friend'], operation: ['getCloseFriends'], }, }, description: 'Offset cho phân trang (mặc định: 0)', }, { displayName: 'Username', name: 'username', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['findUserByUsername'], }, }, description: 'Username Zalo cần tìm kiếm', placeholder: 'username_zalo', }, { displayName: 'Danh Sách Số Điện Thoại', name: 'phones', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['getMultiUsersByPhones'], }, }, description: 'Danh sách số điện thoại cần tìm (tối đa 50 số, cách nhau bởi dấu phẩy)', placeholder: '0901234567,0912345678,0123456789', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['friend'], operation: ['getRelatedFriendGroup'], }, }, description: 'ID của người bạn cần lấy nhóm chung', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['account'], operation: ['getUserInfo'], }, }, description: 'ID của người dùng cần lấy thông tin', placeholder: '1234567890', }, { displayName: 'Tên Hiển Thị', name: 'name', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['account'], operation: ['changeAccountSetting'], }, }, description: 'Tên hiển thị mới', }, { displayName: 'Ngày Sinh', name: 'dob', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['account'], operation: ['changeAccountSetting'], }, }, description: 'Ngày sinh (YYYY-MM-DD)', placeholder: '1990-01-01', }, { displayName: 'Giới Tính', name: 'gender', type: 'options', required: true, displayOptions: { show: { resource: ['account'], operation: ['changeAccountSetting'], }, }, options: [ { name: 'Nam', value: 1, }, { name: 'Nữ', value: 2, }, { name: 'Khác', value: 3, }, ], default: 1, }, { displayName: 'Ngôn Ngữ', name: 'language', type: 'string', default: '', displayOptions: { show: { resource: ['account'], operation: ['changeAccountSetting'], }, }, description: 'Ngôn ngữ (vi, en)', }, { displayName: 'Ngôn Ngữ', name: 'language', type: 'options', displayOptions: { show: { resource: ['account'], operation: ['updateLang'], }, }, options: [ { name: 'Tiếng Việt', value: 'vi' }, { name: 'English', value: 'en' }, { name: '中文 (Chinese)', value: 'zh' }, ], default: 'vi', description: 'Ngôn ngữ hiển thị trong Zalo', }, { displayName: 'Trạng Thái Cá Nhân', name: 'bio', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['account'], operation: ['updateProfileBio'], }, }, description: 'Dòng trạng thái (bio) mới cho tài khoản', }, { displayName: 'URL Ảnh', name: 'avatarUrl', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['account'], operation: ['changeAccountAvatar'], }, }, description: 'URL ảnh đại diện mới cho tài khoản', }, { displayName: 'Loại Cài Đặt', name: 'settingType', type: 'options', required: true, options: [ { name: 'Cho Phép Xem Ngày Sinh', value: 'view_birthday' }, { name: 'Hiển Thị Trạng Thái Online', value: 'show_online_status' }, { name: 'Hiển Thị Trạng Thái Đã Xem', value: 'display_seen_status' }, { name: 'Nhận Tin Nhắn Từ Người Lạ', value: 'receive_message' }, { name: 'Nhận Cuộc Gọi Từ Người Lạ', value: 'accept_stranger_call' }, { name: 'Kết Bạn Qua Số Điện Thoại', value: 'add_friend_via_phone' }, { name: 'Kết Bạn Qua QR', value: 'add_friend_via_qr' }, { name: 'Kết Bạn Qua Nhóm', value: 'add_friend_via_group' }, { name: 'Kết Bạn Qua Danh Bạ', value: 'add_friend_via_contact' }, { name: 'Hiển Thị Trong Gợi Ý Kết Bạn', value: 'display_on_recommend_friend' }, { name: 'Trạng Thái Lưu Trữ Trò Chuyện', value: 'archivedChatStatus' }, { name: 'Trạng Thái Tin Nhắn Nhanh', value: 'quickMessageStatus' }, ], default: 'show_online_status', displayOptions: { show: { resource: ['account'], operation: ['updateSettings'], }, }, description: 'Cài đặt cần cập nhật (tham số type upstream)', }, { displayName: 'Giá Trị', name: 'settingValue', type: 'number', required: true, default: 1, displayOptions: { show: { resource: ['account'], operation: ['updateSettings'], }, }, description: 'Giá trị mới, thường là 0 (tắt) hoặc 1 (bật)', }, { displayName: 'Hiển Thị Trạng Thái Online', name: 'active', type: 'boolean', default: true, displayOptions: { show: { resource: ['account'], operation: ['updateActiveStatus'], }, }, description: 'Whether the account shows as active/online to others', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['privacy'], operation: ['blockUser'], }, }, description: 'ID của người dùng cần chặn', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['privacy'], operation: ['unblockUser'], }, }, description: 'ID của người dùng cần bỏ chặn', placeholder: '1234567890', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['privacy'], operation: ['blockViewFeed'], }, }, description: 'ID người dùng cần chặn/bỏ chặn xem bảng tin', placeholder: '1234567890', }, { displayName: 'Chặn Xem Bảng Tin', name: 'isBlockFeed', type: 'boolean', displayOptions: { show: { resource: ['privacy'], operation: ['blockViewFeed'], }, }, default: true, description: 'True = chặn xem bảng tin, false = bỏ chặn', }, { displayName: 'ID Cuộc Trò Chuyện', name: 'reportThreadId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['privacy'], operation: ['sendReport'], }, }, description: 'ID của cuộc trò chuyện cần báo cáo', }, { displayName: 'Loại', name: 'reportThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['privacy'], operation: ['sendReport'], }, }, description: 'Loại cuộc trò chuyện', }, { displayName: 'Lý Do', name: 'reportReason', type: 'options', options: [ { name: 'Nhạy Cảm', value: 1 }, { name: 'Làm Phiền', value: 2 }, { name: 'Lừa Đảo', value: 3 }, { name: 'Khác', value: 0 }, ], default: 1, displayOptions: { show: { resource: ['privacy'], operation: ['sendReport'], }, }, description: 'Lý do báo cáo (theo enum ReportReason của zca-js)', }, { displayName: 'Nội Dung', name: 'reportContent', type: 'string', default: '', displayOptions: { show: { resource: ['privacy'], operation: ['sendReport'], reportReason: [0], }, }, description: 'Bắt buộc khi Lý Do = Khác', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['alias'], operation: ['changeAliasName'], }, }, description: 'ID của người dùng cần đổi tên gợi nhớ', placeholder: '1234567890', }, { displayName: 'Tên Gợi Nhớ', name: 'aliasName', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['alias'], operation: ['changeAliasName'], }, }, description: 'Tên gợi nhớ mới', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['alias'], operation: ['removeFriendAlias'], }, }, description: 'ID người dùng cần xóa tên gợi nhớ', placeholder: '1234567890', }, { displayName: 'Số Lượng', name: 'count', type: 'number', displayOptions: { show: { resource: ['alias'], operation: ['getAliasList'], }, }, default: 100, description: 'Số lượng alias trả về mỗi trang', }, { displayName: 'Trang', name: 'page', type: 'number', displayOptions: { show: { resource: ['alias'], operation: ['getAliasList'], }, }, default: 1, description: 'Số trang cần lấy (bắt đầu từ 1)', }, { displayName: 'Số Lượng', name: 'count', type: 'number', displayOptions: { show: { resource: ['avatar'], operation: ['getAvatarList'], }, }, default: 50, description: 'Số lượng avatar trả về mỗi trang', }, { displayName: 'Trang', name: 'page', type: 'number', displayOptions: { show: { resource: ['avatar'], operation: ['getAvatarList'], }, }, default: 1, description: 'Số trang cần lấy (bắt đầu từ 1)', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['avatar'], operation: ['getAvatarUrlProfile'], }, }, description: 'ID của người dùng cần lấy avatar URL', placeholder: '1234567890', }, { displayName: 'Kích Thước Tối Đa', name: 'avatarSize', type: 'boolean', displayOptions: { show: { resource: ['avatar'], operation: ['getAvatarUrlProfile'], }, }, default: false, description: 'True = lấy avatar kích thước lớn (240px), False = lấy avatar kích thước nhỏ (120px)', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['avatar'], operation: ['getFullAvatar'], }, }, description: 'ID của người dùng cần lấy avatar full resolution', placeholder: '1234567890', }, { displayName: 'ID ẢNh', name: 'photoId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['avatar'], operation: ['reuseAvatar'], }, }, description: 'ID của ảnh đại diện cũ cần sử dụng lại (lấy từ Get Avatar List)', placeholder: 'abc123xyz...', }, { displayName: 'Danh Sách ID ẢNh', name: 'photoIds', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['avatar'], operation: ['deleteAvatar'], }, }, description: 'ID hoặc danh sách IDs của ảnh cần xóa (cách nhau bởi dấu phẩy)', placeholder: 'id1,id2,id3', }, { displayName: 'ID Thread', name: 'threadId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['undoMessage'], }, }, description: 'ID của người dùng cần thu hồi tin nhắn', placeholder: '1234567890', }, { displayName: 'Loại Thread', name: 'threadType', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['undoMessage'], }, }, description: 'Loại user', }, { displayName: 'ID Tin Nhắn', name: 'msgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['undoMessage'], }, }, description: 'Message ID', }, { displayName: 'ID Tin Nhắn Client', name: 'cliMsgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['undoMessage'], }, }, description: 'Client message ID', }, { displayName: 'ID Thread', name: 'reactionThreadId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['addReaction'], }, }, description: 'ID của cuộc trò chuyện chứa tin nhắn cần thả cảm xúc', }, { displayName: 'Loại', name: 'reactionThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['message'], operation: ['addReaction'], }, }, description: 'Loại cuộc trò chuyện', }, { displayName: 'ID Tin Nhắn', name: 'reactionMsgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['addReaction'], }, }, description: 'Message ID của tin nhắn cần thả cảm xúc', }, { displayName: 'ID Tin Nhắn Client', name: 'reactionCliMsgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['addReaction'], }, }, description: 'Client message ID của tin nhắn cần thả cảm xúc', }, { displayName: 'Cảm Xúc', name: 'reactionIcon', type: 'options', options: [ { name: 'Angry', value: 'ANGRY' }, { name: 'Cry', value: 'CRY' }, { name: 'Dislike', value: 'DISLIKE' }, { name: 'Haha', value: 'HAHA' }, { name: 'Heart', value: 'HEART' }, { name: 'Like', value: 'LIKE' }, { name: 'Love', value: 'LOVE' }, { name: 'OK', value: 'OK' }, { name: 'Rose', value: 'ROSE' }, { name: 'Wow', value: 'WOW' }, ], default: 'LIKE', displayOptions: { show: { resource: ['message'], operation: ['addReaction'], }, }, description: 'Loại cảm xúc cần thả (theo enum Reactions của zca-js)', }, { displayName: 'Nội Dung Tin Nhắn', name: 'forwardMessageContent', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['forwardMessage'], }, }, description: 'Nội dung tin nhắn cần chuyển tiếp', }, { displayName: 'Danh Sách ID Đích', name: 'forwardThreadIds', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['forwardMessage'], }, }, description: 'Một hoặc nhiều ID cuộc trò chuyện đích, cách nhau bởi dấu phẩy', placeholder: 'user1,user2', }, { displayName: 'Loại', name: 'forwardThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['message'], operation: ['forwardMessage'], }, }, description: 'Loại của các cuộc trò chuyện đích (tất cả cùng loại)', }, { displayName: 'ID Thread', name: 'deleteThreadId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'ID của cuộc trò chuyện chứa tin nhắn cần xóa', }, { displayName: 'Loại', name: 'deleteThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'Loại cuộc trò chuyện', }, { displayName: 'ID Tin Nhắn', name: 'deleteMsgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'Message ID của tin nhắn cần xóa', }, { displayName: 'ID Tin Nhắn Client', name: 'deleteCliMsgId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'Client message ID của tin nhắn cần xóa', }, { displayName: 'Người Gửi Tin Nhắn (uidFrom)', name: 'deleteUidFrom', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'ID người gửi tin nhắn gốc (uidFrom trong payload upstream)', }, { displayName: 'Chỉ Xóa Ở Phía Tôi', name: 'deleteOnlyMe', type: 'boolean', default: true, displayOptions: { show: { resource: ['message'], operation: ['deleteMessage'], }, }, description: 'Whether to delete only on this account (true) or attempt to delete for everyone (false)', }, { displayName: 'Loại', name: 'seenThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['message'], operation: ['sendSeenEvent'], }, }, description: 'Loại cuộc trò chuyện', }, { displayName: 'Tin Nhắn (JSON)', name: 'seenMessages', type: 'json', required: true, default: '{\n "msgId": "",\n "cliMsgId": "",\n "uidFrom": "",\n "idTo": "",\n "msgType": "",\n "st": 0,\n "at": 0,\n "cmd": 0,\n "ts": ""\n}', displayOptions: { show: { resource: ['message'], operation: ['sendSeenEvent'], }, }, description: 'Message envelope theo đúng payload upstream (msgId, cliMsgId, uidFrom, idTo, msgType, st, at, cmd, ts) — thường lấy trực tiếp từ dữ liệu event "message" của ZaloMessageTrigger. Có thể là một object hoặc mảng object.', }, { displayName: 'Loại', name: 'deliveredThreadType', type: 'options', options: [ { name: 'Người Dùng', value: 0 }, { name: 'Nhóm', value: 1 }, ], default: 0, displayOptions: { show: { resource: ['message'], operation: ['sendDeliveredEvent'], }, }, description: 'Loại cuộc trò chuyện', }, { displayName: 'Đã Xem', name: 'deliveredIsSeen', type: 'boolean', default: false, displayOptions: { show: { resource: ['message'], operation: ['sendDeliveredEvent'], }, }, description: 'Whether the message has also been seen, not just delivered', }, { displayName: 'Tin Nhắn (JSON)', name: 'deliveredMessages', type: 'json', required: true, default: '{\n "msgId": "",\n "cliMsgId": "",\n "uidFrom": "",\n "idTo": "",\n "msgType": "",\n "st": 0,\n "at": 0,\n "cmd": 0,\n "ts": ""\n}', displayOptions: { show: { resource: ['message'], operation: ['sendDeliveredEvent'], }, }, description: 'Message envelope theo đúng payload upstream — thường lấy trực tiếp từ dữ liệu event "message" của ZaloMessageTrigger. Có thể là một object hoặc mảng object.', }, { displayName: 'ID Người Dùng', name: 'userId', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['system'], operation: ['lastOnline'], }, }, description: 'ID của người dùng cần kiểm tra trạng thái hoạt động', placeholder: '1234567890', }, { displayName: 'Link', name: 'linkToParse', type: 'string', required: true, default: '', displayOptions: { show: { resource: ['system'], operation: ['parseLink'], }, }, description: 'URL cần phân tích để lấy thông tin xem trước', placeholder: 'https://example.com', }, ]; //# sourceMappingURL=ZaloUserDescription.js.map