redai-automation-web-sdk
Version:
TypeScript SDK for RedAI Automation Web API - Zalo Personal automation, messaging, advanced sticker search, and bulk operations. 100% compatible with automation-web backend. v1.8.1: Updated GroupInfo interface to match backend controller with complete gro
107 lines • 4.36 kB
JavaScript
;
/**
* Zalo Personal Profile & Account Management Service
* 100% khớp với automation-web/src/module/zalo-profile/controllers/profile.controller.ts
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.ProfileService = void 0;
const validation_utils_1 = require("../../utils/validation.utils");
/**
* Zalo Personal Profile & Account Management Service Class
* 100% khớp với automation-web ZaloProfileController
* Bao gồm đầy đủ 6 methods: fetch-account-info, change-avatar, delete-avatar, reuse-avatar, avatar-list, update
*/
class ProfileService {
constructor(httpClient) {
this.httpClient = httpClient;
}
/**
* Lấy thông tin tài khoản
* POST /zalo-personal/profile/fetch-account-info
*/
async fetchAccountInfo(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
const response = await this.httpClient.post('/zalo-personal/profile/fetch-account-info', {
sessionId: request.sessionId,
});
return response;
}
/**
* Thay đổi avatar tài khoản
* POST /zalo-personal/profile/change-avatar
*/
async changeAccountAvatar(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
validation_utils_1.ValidationUtils.validateRequired(request.avatarSource, 'avatarSource');
validation_utils_1.ValidationUtils.validateRequired(request.avatarSource.data, 'avatarSource.data');
validation_utils_1.ValidationUtils.validateRequired(request.avatarSource.filename, 'avatarSource.filename');
validation_utils_1.ValidationUtils.validateRequired(request.avatarSource.metadata, 'avatarSource.metadata');
const response = await this.httpClient.post('/zalo-personal/profile/change-avatar', {
sessionId: request.sessionId,
avatarSource: request.avatarSource,
});
return response;
}
/**
* Xóa avatar
* POST /zalo-personal/profile/delete-avatar
*/
async deleteAvatar(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
validation_utils_1.ValidationUtils.validateRequired(request.avatarId, 'avatarId');
const response = await this.httpClient.post('/zalo-personal/profile/delete-avatar', {
sessionId: request.sessionId,
avatarId: request.avatarId,
});
return response;
}
/**
* Sử dụng lại avatar
* POST /zalo-personal/profile/reuse-avatar
*/
async reuseAvatar(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
validation_utils_1.ValidationUtils.validateRequired(request.avatarId, 'avatarId');
const response = await this.httpClient.post('/zalo-personal/profile/reuse-avatar', {
sessionId: request.sessionId,
avatarId: request.avatarId,
});
return response;
}
/**
* Lấy danh sách avatar
* POST /zalo-personal/profile/avatar-list
*/
async getAvatarList(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
const response = await this.httpClient.post('/zalo-personal/profile/avatar-list', {
sessionId: request.sessionId,
});
return response;
}
/**
* Cập nhật profile
* POST /zalo-personal/profile/update
*/
async updateProfile(request) {
// Validate input
validation_utils_1.ValidationUtils.validateSessionId(request.sessionId);
validation_utils_1.ValidationUtils.validateRequired(request.name, 'name');
validation_utils_1.ValidationUtils.validateRequired(request.dob, 'dob');
validation_utils_1.ValidationUtils.validateRequired(request.gender, 'gender');
const response = await this.httpClient.post('/zalo-personal/profile/update', {
sessionId: request.sessionId,
name: request.name,
dob: request.dob,
gender: request.gender,
});
return response;
}
}
exports.ProfileService = ProfileService;
//# sourceMappingURL=profile.service.js.map