UNPKG

redai-automation-web-sdk

Version:

TypeScript SDK for RedAI Automation Web API - Zalo Personal automation, messaging, and search. 100% compatible with automation-web backend. Now includes SearchModule for stickers and link parsing.

357 lines 7.39 kB
/** * DTO để lấy tất cả groups */ export interface GetAllGroupsDto { sessionId: string; } /** * DTO để lấy thông tin chi tiết của group */ export interface GetGroupInfoRequest { sessionId: string; groupId: string; } /** * DTO để tạo group mới */ export interface CreateGroupRequest { sessionId: string; name: string; members: string[]; } /** * DTO để thêm member vào group */ export interface AddMemberToGroupRequest { sessionId: string; groupId: string; memberIds: string[]; } /** * DTO để remove member khỏi group */ export interface RemoveMemberFromGroupRequest { sessionId: string; groupId: string; memberId: string; banDuration?: number; } /** * DTO để đổi tên group */ export interface ChangeGroupNameRequest { sessionId: string; groupId: string; newName: string; } /** * DTO để lấy danh sách members của group * Nếu không truyền page/limit thì sẽ lấy tất cả members */ export interface GetGroupMembersRequest { sessionId: string; groupId: string; page?: number; limit?: number; } /** * DTO để rời nhóm */ export interface LeaveGroupRequest { sessionId: string; groupId: string; } /** * DTO để giải tán nhóm */ export interface DisperseGroupRequest { sessionId: string; groupId: string; } /** * DTO để tham gia nhóm qua link */ export interface JoinGroupRequest { sessionId: string; groupLink: string; } /** * DTO để đổi avatar nhóm */ export interface ChangeGroupAvatarRequest { sessionId: string; groupId: string; avatarPath: string; } /** * DTO để cập nhật cài đặt nhóm */ export interface UpdateGroupSettingsRequest { sessionId: string; groupId: string; settings: { blockName: number; signAdminMsg: number; addMemberOnly: number; setTopicOnly: number; enableMsgHistory: number; joinAppr: number; lockCreatePost: number; lockCreatePoll: number; lockSendMsg: number; lockViewMember: number; }; } /** * DTO để chuyển quyền owner nhóm */ export interface ChangeGroupOwnerRequest { sessionId: string; groupId: string; newOwnerId: string; } /** * DTO để thêm phó admin */ export interface AddGroupDeputyRequest { sessionId: string; groupId: string; memberIds: string[]; } /** * DTO để xóa phó admin */ export interface RemoveGroupDeputyRequest { sessionId: string; groupId: string; memberIds: string[]; } /** * DTO để enable group link */ export interface EnableGroupLinkRequest { sessionId: string; groupId: string; } /** * DTO để disable group link */ export interface DisableGroupLinkRequest { sessionId: string; groupId: string; } /** * DTO để lấy thông tin group từ link */ export interface GetGroupLinkInfoRequest { sessionId: string; groupLink: string; } /** * DTO để mời user vào nhiều groups */ export interface InviteUserToGroupsRequest { sessionId: string; memberId: string; groupIds: string[]; } /** * Group DTO - thông tin bản của group */ export interface GroupInfo { groupId: string; name: string; desc: string; avt: string; fullAvt: string; creatorId: string; totalMember: number; maxMember: number; createdTime: number; } /** * Response DTO cho getAllGroups */ export interface GetAllGroupsResponse { groups: GroupInfo[]; total: number; success: boolean; error: string; timestamp: number; } /** * Response DTO cho getGroupInfo */ export interface GetGroupInfoResponse { group: GroupInfo; success: boolean; timestamp: number; error: string; } /** * Response DTO cho createGroup */ export interface CreateGroupResponse { groupId: string; groupName: string; addedMembers: number; successfulMemberIds: string[]; failedMemberIds: string[]; success: boolean; timestamp: number; } /** * Response DTO cho addMember */ export interface AddMemberResponse { groupId: string; addedMembers: number; successfulMemberIds: string[]; failedMemberIds: string[]; success: boolean; timestamp: number; } /** * Response DTO cho removeMember */ export interface RemoveMemberResponse { groupId: string; removedMemberId: string; success: boolean; timestamp: number; } /** * Response DTO cho changeGroupName */ export interface ChangeGroupNameResponse { groupId: string; oldName: string; newName: string; success: boolean; timestamp: number; } /** * Group Member Detail DTO - thông tin chi tiết của member */ export interface GroupMemberDetail { id: string; displayName: string; zaloName: string; avatar: string; accountStatus: number; type: number; lastUpdateTime: number; globalId: string; isAdmin: boolean; } /** * Response DTO cho getGroupMembers */ export interface GetGroupMembersResponse { groupId: string; members: GroupMemberDetail[]; adminIds: string[]; total: number; limit: number; offset: number; note: string; } /** * Response DTO cho các group actions (leave, disperse, join) */ export interface GroupActionResponse { groupId: string; action: 'leave' | 'disperse' | 'join'; success: boolean; message: string; timestamp: number; } /** * Response DTO cho changeGroupAvatar */ export interface ChangeGroupAvatarResponse { groupId: string; newAvatarUrl: string; } /** * Response DTO cho updateGroupSettings */ export interface UpdateGroupSettingsResponse { groupId: string; updatedSettings: { blockName: number; signAdminMsg: number; addMemberOnly: number; setTopicOnly: number; enableMsgHistory: number; joinAppr: number; lockCreatePost: number; lockCreatePoll: number; lockSendMsg: number; lockViewMember: number; bannFeature: number; dirtyMedia: number; }; } /** * Response DTO cho changeGroupOwner */ export interface ChangeGroupOwnerResponse { groupId: string; newOwnerId: string; time: number; } /** * Response DTO cho addGroupDeputy */ export interface AddGroupDeputyResponse { groupId: string; addedAdmins: string[]; } /** * Response DTO cho removeGroupDeputy */ export interface RemoveGroupDeputyResponse { groupId: string; removedAdmins: string[]; } /** * Response DTO cho enableGroupLink */ export interface EnableGroupLinkResponse { groupId: string; link: string; expirationDate: number; enabled: boolean; } /** * Response DTO cho disableGroupLink */ export interface DisableGroupLinkResponse { groupId: string; } /** * Response DTO cho getGroupLinkInfo */ export interface GetGroupLinkInfoResponse { groupId: string; groupName: string; groupAvatar: string; memberCount: number; description: string; isJoined: boolean; success: boolean; timestamp: number; } /** * Response DTO cho inviteUserToGroups */ export interface InviteUserToGroupsResponse { memberId: string; results: Array<{ groupId: string; success: boolean; message: string; }>; } //# sourceMappingURL=groups.type.d.ts.map