@warriorteam/redai-zalo-sdk 1.12.5 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,76 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [1.13.0] - 2025-01-17
9
+
10
+ ### 🚀 NEW FEATURES
11
+
12
+ #### Enhanced Article API - Get All Articles
13
+ - **ADDED**: `getAllArticles()` - Lấy tất cả bài viết theo loại với tự động pagination
14
+ - **ADDED**: `getAllArticlesCombined()` - Lấy tất cả bài viết cả 2 loại (normal + video) kết hợp
15
+ - **ENHANCED**: Automatic pagination handling - không cần xử lý offset/limit thủ công
16
+ - **ADDED**: Progress tracking với callback `onProgress` để theo dõi tiến trình real-time
17
+ - **ADDED**: Flexible configuration với `batchSize`, `maxArticles`, và safety limits
18
+
19
+ #### Advanced Features
20
+ - **SAFETY**: Built-in safety checks để tránh infinite loops (max 100 batches)
21
+ - **PERFORMANCE**: Configurable batch sizes (1-100 articles per request)
22
+ - **CONTROL**: Giới hạn tổng số articles (`maxArticles`, 0 = unlimited)
23
+ - **MONITORING**: Real-time progress callbacks với detailed metrics
24
+ - **TYPE-SAFE**: Full TypeScript support với `ArticleListItem[]` return types
25
+
26
+ #### Smart Response Handling
27
+ - **ROBUST**: Handles both `ZaloResponse<T>` và direct response formats
28
+ - **FLEXIBLE**: Supports cả `response.data.medias` và `response.medias` structures
29
+ - **ERROR-SAFE**: Comprehensive error handling với `ZaloSDKError` integration
30
+
31
+ ### 📚 DOCUMENTATION
32
+
33
+ #### New Documentation Files
34
+ - **ADDED**: `docs/enhanced-article-api.md` - Comprehensive guide cho enhanced article APIs
35
+ - **ADDED**: `examples/get-all-articles-example.ts` - Practical usage examples với 4 scenarios
36
+ - **DETAILED**: API reference với parameters, return types, và best practices
37
+ - **EXAMPLES**: Real-world usage patterns và performance recommendations
38
+
39
+ #### Developer Experience
40
+ - **ENHANCED**: Detailed JSDoc comments với @example blocks
41
+ - **IMPROVED**: IntelliSense support với comprehensive type definitions
42
+ - **ADDED**: Progress tracking examples và error handling patterns
43
+ - **GUIDES**: Performance tuning và rate limiting recommendations
44
+
45
+ ### 🔧 TECHNICAL IMPROVEMENTS
46
+
47
+ #### Code Quality
48
+ - **TYPE-SAFE**: Full TypeScript compliance với proper interface definitions
49
+ - **VALIDATED**: Input validation với `ARTICLE_CONSTRAINTS` integration
50
+ - **OPTIMIZED**: Efficient pagination logic với smart batch management
51
+ - **TESTED**: Comprehensive error scenarios và edge case handling
52
+
53
+ #### API Design
54
+ - **CONSISTENT**: Follows existing SDK patterns và naming conventions
55
+ - **EXTENSIBLE**: Modular design cho future enhancements
56
+ - **BACKWARD-COMPATIBLE**: Không breaking changes cho existing `getArticleList()`
57
+ - **PERFORMANCE**: Optimized cho large datasets với configurable limits
58
+
59
+ ### 💡 USAGE EXAMPLES
60
+
61
+ ```typescript
62
+ // Simple: Get all normal articles
63
+ const result = await articleService.getAllArticles(accessToken, "normal");
64
+
65
+ // Advanced: With progress tracking và limits
66
+ const result = await articleService.getAllArticles(accessToken, "normal", {
67
+ batchSize: 50,
68
+ maxArticles: 1000,
69
+ onProgress: (progress) => console.log(`${progress.totalFetched} articles`)
70
+ });
71
+
72
+ // Combined: Get both normal và video articles
73
+ const combined = await articleService.getAllArticlesCombined(accessToken, {
74
+ maxArticlesPerType: 500
75
+ });
76
+ ```
77
+
8
78
  ## [1.12.1] - 2025-01-17
9
79
 
10
80
  ### 🔧 MAINTENANCE
package/README.md CHANGED
@@ -9,6 +9,7 @@ A comprehensive TypeScript/JavaScript SDK for Zalo APIs, providing easy-to-use i
9
9
  - **Group Message Framework (GMF)** - Send messages to Zalo groups
10
10
  - **User Management** - Comprehensive user profile and tag management
11
11
  - **Content Management** - Upload and manage media content (images, files, articles)
12
+ - **Enhanced Article Management** - Get all articles with auto-pagination and progress tracking
12
13
  - **Video Upload** - Upload and manage video content with processing
13
14
  - **Tag Management** - User tagging and segmentation
14
15
  - **Webhook handling** - Process Zalo webhook events
@@ -22,6 +23,7 @@ A comprehensive TypeScript/JavaScript SDK for Zalo APIs, providing easy-to-use i
22
23
  - 🛡️ **Error Handling** - Detailed error information and handling
23
24
  - 📦 **Zero Dependencies** - Only requires axios and form-data
24
25
  - 🎯 **Promise-based** - Modern async/await support
26
+ - 🔄 **Auto-Pagination** - Automatically fetch all articles with progress tracking
25
27
 
26
28
  ## Installation
27
29
 
@@ -1,5 +1,5 @@
1
1
  import { ZaloClient } from "../clients/zalo-client";
2
- import { ArticleRequest, ArticleNormalRequest, ArticleVideoRequest, ArticleResponse, ArticleProcessResponse, ArticleVerifyResponse, ArticleDetail, ArticleListRequest, ArticleListResponse, ArticleRemoveResponse, ArticleUpdateRequest, ArticleUpdateNormalRequest, ArticleUpdateVideoRequest, ArticleUpdateResponse, ArticleStatus, CommentStatus } from "../types/article";
2
+ import { ArticleRequest, ArticleNormalRequest, ArticleVideoRequest, ArticleResponse, ArticleProcessResponse, ArticleVerifyResponse, ArticleDetail, ArticleListRequest, ArticleListResponse, ArticleListItem, ArticleRemoveResponse, ArticleUpdateRequest, ArticleUpdateNormalRequest, ArticleUpdateVideoRequest, ArticleUpdateResponse, ArticleStatus, CommentStatus } from "../types/article";
3
3
  /**
4
4
  * Service for handling Zalo Official Account Article Management APIs
5
5
  *
@@ -82,6 +82,108 @@ export declare class ArticleService {
82
82
  * @returns Article list
83
83
  */
84
84
  getArticleList(accessToken: string, request: ArticleListRequest): Promise<ArticleListResponse>;
85
+ /**
86
+ * Get all articles by automatically fetching all pages
87
+ *
88
+ * @example
89
+ * ```typescript
90
+ * // Get all normal articles with progress tracking
91
+ * const result = await articleService.getAllArticles(accessToken, "normal", {
92
+ * batchSize: 50,
93
+ * maxArticles: 1000,
94
+ * onProgress: (progress) => {
95
+ * console.log(`Batch ${progress.currentBatch}: ${progress.totalFetched} articles fetched`);
96
+ * }
97
+ * });
98
+ *
99
+ * console.log(`Total: ${result.totalFetched} articles in ${result.totalBatches} batches`);
100
+ * console.log(`Has more: ${result.hasMore}`);
101
+ * ```
102
+ *
103
+ * @param accessToken OA access token
104
+ * @param type Article type ("normal" or "video")
105
+ * @param options Configuration options for fetching
106
+ * @returns All articles with pagination info
107
+ */
108
+ getAllArticles(accessToken: string, type?: "normal" | "video", options?: {
109
+ /** Number of articles to fetch per request (default: 50, max: 100) */
110
+ batchSize?: number;
111
+ /** Maximum number of articles to fetch (default: 1000, 0 = no limit) */
112
+ maxArticles?: number;
113
+ /** Optional callback to track progress */
114
+ onProgress?: (progress: {
115
+ currentBatch: number;
116
+ totalFetched: number;
117
+ hasMore: boolean;
118
+ }) => void;
119
+ }): Promise<{
120
+ /** Array of all fetched articles */
121
+ articles: ArticleListItem[];
122
+ /** Total number of articles fetched */
123
+ totalFetched: number;
124
+ /** Number of API calls made */
125
+ totalBatches: number;
126
+ /** Whether there are more articles available */
127
+ hasMore: boolean;
128
+ }>;
129
+ /**
130
+ * Get all articles of both types (normal and video) combined
131
+ *
132
+ * @example
133
+ * ```typescript
134
+ * // Get all articles (both normal and video)
135
+ * const result = await articleService.getAllArticlesCombined(accessToken, {
136
+ * batchSize: 50,
137
+ * maxArticlesPerType: 500,
138
+ * onProgress: (progress) => {
139
+ * console.log(`${progress.type}: Batch ${progress.currentBatch}, Total: ${progress.totalFetched}`);
140
+ * }
141
+ * });
142
+ *
143
+ * console.log(`Total articles: ${result.totalFetched}`);
144
+ * console.log(`Normal articles: ${result.breakdown.normal.totalFetched}`);
145
+ * console.log(`Video articles: ${result.breakdown.video.totalFetched}`);
146
+ * ```
147
+ *
148
+ * @param accessToken OA access token
149
+ * @param options Configuration options for fetching
150
+ * @returns All articles (normal + video) with combined pagination info
151
+ */
152
+ getAllArticlesCombined(accessToken: string, options?: {
153
+ /** Number of articles to fetch per request for each type (default: 50, max: 100) */
154
+ batchSize?: number;
155
+ /** Maximum number of articles to fetch per type (default: 500, 0 = no limit) */
156
+ maxArticlesPerType?: number;
157
+ /** Optional callback to track progress */
158
+ onProgress?: (progress: {
159
+ type: "normal" | "video";
160
+ currentBatch: number;
161
+ totalFetched: number;
162
+ hasMore: boolean;
163
+ }) => void;
164
+ }): Promise<{
165
+ /** Array of all fetched articles (normal + video) */
166
+ articles: ArticleListItem[];
167
+ /** Breakdown by type */
168
+ breakdown: {
169
+ normal: {
170
+ articles: ArticleListItem[];
171
+ totalFetched: number;
172
+ totalBatches: number;
173
+ hasMore: boolean;
174
+ };
175
+ video: {
176
+ articles: ArticleListItem[];
177
+ totalFetched: number;
178
+ totalBatches: number;
179
+ hasMore: boolean;
180
+ };
181
+ };
182
+ /** Total number of articles fetched */
183
+ totalFetched: number;
184
+ /** Total number of API calls made */
185
+ totalBatches: number;
186
+ }>;
85
187
  /**
86
188
  * Remove article
87
189
  * @param accessToken OA access token
@@ -1 +1 @@
1
- {"version":3,"file":"article.service.d.ts","sourceRoot":"","sources":["../../src/services/article.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,aAAa,EAGb,kBAAkB,EAClB,mBAAmB,EAEnB,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,yBAAyB,EACzB,qBAAqB,EAIrB,aAAa,EACb,aAAa,EAId,MAAM,kBAAkB,CAAC;AAG1B;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,qBAAa,cAAc;IAab,OAAO,CAAC,QAAQ,CAAC,MAAM;IAXnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CASf;gBAEkB,MAAM,EAAE,UAAU;IAE/C;;;;;OAKG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,eAAe,CAAC;IAuC3B;;;;;OAKG;IACG,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,eAAe,CAAC;IA2B3B;;;;;OAKG;IACG,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,eAAe,CAAC;IAa3B;;;;;OAKG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,sBAAsB,CAAC;IAuDlC;;;;;OAKG;IACG,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,qBAAqB,CAAC;IAsBjC;;;;;OAKG;IACG,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,aAAa,CAAC;IAkBzB;;;;;OAKG;IACG,cAAc,CAClB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,mBAAmB,CAAC;IAqB/B;;;;;OAKG;IACG,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,qBAAqB,CAAC;IAgCjC,OAAO,CAAC,kBAAkB;IAqB1B;;;;;OAKG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,0BAA0B,GAClC,OAAO,CAAC,qBAAqB,CAAC;IAwCjC;;;;;OAKG;IACG,kBAAkB,CACtB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,qBAAqB,CAAC;IA4BjC;;;;;OAKG;IACG,aAAa,CACjB,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,oBAAoB,GAC5B,OAAO,CAAC,qBAAqB,CAAC;IAajC;;;;;;;OAOG;IACG,mBAAmB,CACvB,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,EACrB,OAAO,CAAC,EAAE,aAAa,GACtB,OAAO,CAAC,qBAAqB,CAAC;IAwEjC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IAqDpC;;OAEG;IACH,OAAO,CAAC,2BAA2B;IAkCnC;;OAEG;IACH,OAAO,CAAC,0BAA0B;IAqBlC;;OAEG;IACH,OAAO,CAAC,kCAAkC;IAW1C;;OAEG;IACH,OAAO,CAAC,iCAAiC;IAWzC;;OAEG;IACH,OAAO,CAAC,aAAa;IA2CrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAwDxB,OAAO,CAAC,mBAAmB;CAQ5B"}
1
+ {"version":3,"file":"article.service.d.ts","sourceRoot":"","sources":["../../src/services/article.service.ts"],"names":[],"mappings":"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"}
@@ -238,6 +238,173 @@ class ArticleService {
238
238
  throw this.handleArticleError(error, "Failed to get article list");
239
239
  }
240
240
  }
241
+ /**
242
+ * Get all articles by automatically fetching all pages
243
+ *
244
+ * @example
245
+ * ```typescript
246
+ * // Get all normal articles with progress tracking
247
+ * const result = await articleService.getAllArticles(accessToken, "normal", {
248
+ * batchSize: 50,
249
+ * maxArticles: 1000,
250
+ * onProgress: (progress) => {
251
+ * console.log(`Batch ${progress.currentBatch}: ${progress.totalFetched} articles fetched`);
252
+ * }
253
+ * });
254
+ *
255
+ * console.log(`Total: ${result.totalFetched} articles in ${result.totalBatches} batches`);
256
+ * console.log(`Has more: ${result.hasMore}`);
257
+ * ```
258
+ *
259
+ * @param accessToken OA access token
260
+ * @param type Article type ("normal" or "video")
261
+ * @param options Configuration options for fetching
262
+ * @returns All articles with pagination info
263
+ */
264
+ async getAllArticles(accessToken, type = "normal", options = {}) {
265
+ try {
266
+ const { batchSize = 50, maxArticles = 1000, onProgress } = options;
267
+ // Validate parameters
268
+ if (batchSize <= 0 || batchSize > article_1.ARTICLE_CONSTRAINTS.LIST_MAX_LIMIT) {
269
+ throw new common_1.ZaloSDKError(`Batch size must be between 1 and ${article_1.ARTICLE_CONSTRAINTS.LIST_MAX_LIMIT}`, -1);
270
+ }
271
+ if (maxArticles < 0) {
272
+ throw new common_1.ZaloSDKError("Max articles must be >= 0 (0 = no limit)", -1);
273
+ }
274
+ if (!["normal", "video"].includes(type)) {
275
+ throw new common_1.ZaloSDKError('Type must be "normal" or "video"', -1);
276
+ }
277
+ const allArticles = [];
278
+ let offset = 0;
279
+ let currentBatch = 0;
280
+ let hasMore = true;
281
+ while (hasMore) {
282
+ currentBatch++;
283
+ // Calculate limit for this batch
284
+ let currentLimit = batchSize;
285
+ if (maxArticles > 0) {
286
+ const remaining = maxArticles - allArticles.length;
287
+ if (remaining <= 0)
288
+ break;
289
+ currentLimit = Math.min(batchSize, remaining);
290
+ }
291
+ // Fetch current batch
292
+ const response = await this.getArticleList(accessToken, {
293
+ offset,
294
+ limit: currentLimit,
295
+ type
296
+ });
297
+ // Add articles to collection
298
+ // Check if response is successful and has data
299
+ if ('data' in response && response.data?.medias && response.data.medias.length > 0) {
300
+ allArticles.push(...response.data.medias);
301
+ offset += response.data.medias.length;
302
+ // Check if we have more data
303
+ hasMore = response.data.medias.length === currentLimit;
304
+ // Stop if we've reached max articles
305
+ if (maxArticles > 0 && allArticles.length >= maxArticles) {
306
+ hasMore = false;
307
+ }
308
+ }
309
+ else if ('medias' in response && response.medias && response.medias.length > 0) {
310
+ // Handle direct response format (fallback)
311
+ allArticles.push(...response.medias);
312
+ offset += response.medias.length;
313
+ // Check if we have more data
314
+ hasMore = response.medias.length === currentLimit;
315
+ // Stop if we've reached max articles
316
+ if (maxArticles > 0 && allArticles.length >= maxArticles) {
317
+ hasMore = false;
318
+ }
319
+ }
320
+ else {
321
+ hasMore = false;
322
+ }
323
+ // Call progress callback if provided
324
+ if (onProgress) {
325
+ onProgress({
326
+ currentBatch,
327
+ totalFetched: allArticles.length,
328
+ hasMore
329
+ });
330
+ }
331
+ // Safety check to prevent infinite loops
332
+ if (currentBatch > 100) {
333
+ console.warn("Reached maximum batch limit (100), stopping fetch");
334
+ break;
335
+ }
336
+ }
337
+ return {
338
+ articles: allArticles,
339
+ totalFetched: allArticles.length,
340
+ totalBatches: currentBatch,
341
+ hasMore: hasMore && (maxArticles === 0 || allArticles.length < maxArticles)
342
+ };
343
+ }
344
+ catch (error) {
345
+ throw this.handleArticleError(error, "Failed to get all articles");
346
+ }
347
+ }
348
+ /**
349
+ * Get all articles of both types (normal and video) combined
350
+ *
351
+ * @example
352
+ * ```typescript
353
+ * // Get all articles (both normal and video)
354
+ * const result = await articleService.getAllArticlesCombined(accessToken, {
355
+ * batchSize: 50,
356
+ * maxArticlesPerType: 500,
357
+ * onProgress: (progress) => {
358
+ * console.log(`${progress.type}: Batch ${progress.currentBatch}, Total: ${progress.totalFetched}`);
359
+ * }
360
+ * });
361
+ *
362
+ * console.log(`Total articles: ${result.totalFetched}`);
363
+ * console.log(`Normal articles: ${result.breakdown.normal.totalFetched}`);
364
+ * console.log(`Video articles: ${result.breakdown.video.totalFetched}`);
365
+ * ```
366
+ *
367
+ * @param accessToken OA access token
368
+ * @param options Configuration options for fetching
369
+ * @returns All articles (normal + video) with combined pagination info
370
+ */
371
+ async getAllArticlesCombined(accessToken, options = {}) {
372
+ try {
373
+ const { batchSize = 50, maxArticlesPerType = 500, onProgress } = options;
374
+ // Fetch normal articles
375
+ const normalResult = await this.getAllArticles(accessToken, "normal", {
376
+ batchSize,
377
+ maxArticles: maxArticlesPerType,
378
+ onProgress: onProgress ? (progress) => onProgress({
379
+ type: "normal",
380
+ ...progress
381
+ }) : undefined
382
+ });
383
+ // Fetch video articles
384
+ const videoResult = await this.getAllArticles(accessToken, "video", {
385
+ batchSize,
386
+ maxArticles: maxArticlesPerType,
387
+ onProgress: onProgress ? (progress) => onProgress({
388
+ type: "video",
389
+ ...progress
390
+ }) : undefined
391
+ });
392
+ // Combine results
393
+ const allArticles = [...normalResult.articles, ...videoResult.articles];
394
+ return {
395
+ articles: allArticles,
396
+ breakdown: {
397
+ normal: normalResult,
398
+ video: videoResult
399
+ },
400
+ totalFetched: allArticles.length,
401
+ totalBatches: normalResult.totalBatches + videoResult.totalBatches
402
+ };
403
+ }
404
+ catch (error) {
405
+ throw this.handleArticleError(error, "Failed to get all articles combined");
406
+ }
407
+ }
241
408
  /**
242
409
  * Remove article
243
410
  * @param accessToken OA access token
@@ -1 +1 @@
1
- {"version":3,"file":"article.service.js","sourceRoot":"","sources":["../../src/services/article.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"article.service.js","sourceRoot":"","sources":["../../src/services/article.service.ts"],"names":[],"mappings":"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"}
@@ -260,6 +260,40 @@ export declare class GroupManagementService {
260
260
  * API: GET https://openapi.zalo.me/v3.0/oa/group/getgroupsofoa
261
261
  */
262
262
  getGroupsOfOA(accessToken: string, offset?: number, count?: number): Promise<GroupsOfOAResponse>;
263
+ /**
264
+ * Get ALL groups of OA (custom function with automatic pagination)
265
+ * @param accessToken OA access token
266
+ * @param maxGroups Maximum number of groups to retrieve (default: unlimited)
267
+ * @param progressCallback Optional callback to track progress
268
+ * @returns All OA groups with pagination info
269
+ *
270
+ * This function automatically handles pagination to retrieve all groups,
271
+ * not limited by the 50-group API limit per request.
272
+ */
273
+ getAllGroupsOfOA(accessToken: string, maxGroups?: number, progressCallback?: (progress: {
274
+ currentCount: number;
275
+ totalCount?: number;
276
+ percentage?: number;
277
+ isComplete: boolean;
278
+ }) => void): Promise<{
279
+ error: number;
280
+ message: string;
281
+ data: {
282
+ total_groups: number;
283
+ groups: any[];
284
+ pages_fetched: number;
285
+ is_complete: boolean;
286
+ };
287
+ }>;
288
+ /**
289
+ * Get ALL groups of OA with simple interface (no progress tracking)
290
+ * @param accessToken OA access token
291
+ * @param maxGroups Maximum number of groups to retrieve (optional)
292
+ * @returns Array of all OA groups
293
+ *
294
+ * Simplified version of getAllGroupsOfOA that returns just the groups array
295
+ */
296
+ getAllGroupsOfOASimple(accessToken: string, maxGroups?: number): Promise<any[]>;
263
297
  /**
264
298
  * Get group quota information and asset_id
265
299
  * @param accessToken OA access token
@@ -1 +1 @@
1
- {"version":3,"file":"group-management.service.d.ts","sourceRoot":"","sources":["../../src/services/group-management.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group-management.service.d.ts","sourceRoot":"","sources":["../../src/services/group-management.service.ts"],"names":[],"mappings":"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"}
@@ -554,6 +554,121 @@ class GroupManagementService {
554
554
  throw this.handleGroupManagementError(error, "Failed to get groups of OA");
555
555
  }
556
556
  }
557
+ /**
558
+ * Get ALL groups of OA (custom function with automatic pagination)
559
+ * @param accessToken OA access token
560
+ * @param maxGroups Maximum number of groups to retrieve (default: unlimited)
561
+ * @param progressCallback Optional callback to track progress
562
+ * @returns All OA groups with pagination info
563
+ *
564
+ * This function automatically handles pagination to retrieve all groups,
565
+ * not limited by the 50-group API limit per request.
566
+ */
567
+ async getAllGroupsOfOA(accessToken, maxGroups, progressCallback) {
568
+ try {
569
+ // Validate input
570
+ if (!accessToken || accessToken.trim().length === 0) {
571
+ throw new common_1.ZaloSDKError("Access token cannot be empty", -1);
572
+ }
573
+ if (maxGroups !== undefined && maxGroups <= 0) {
574
+ throw new common_1.ZaloSDKError("Max groups must be greater than 0", -1);
575
+ }
576
+ const allGroups = [];
577
+ let offset = 0;
578
+ const pageSize = 50; // Maximum allowed by Zalo API
579
+ let totalCount;
580
+ let pagesFetched = 0;
581
+ let hasMore = true;
582
+ // Progress tracking
583
+ const updateProgress = (currentCount, isComplete = false) => {
584
+ if (progressCallback) {
585
+ const percentage = totalCount ? Math.round((currentCount / totalCount) * 100) : undefined;
586
+ progressCallback({
587
+ currentCount,
588
+ totalCount,
589
+ percentage,
590
+ isComplete
591
+ });
592
+ }
593
+ };
594
+ // Initial progress
595
+ updateProgress(0);
596
+ while (hasMore) {
597
+ // Check if we've reached the maximum limit
598
+ if (maxGroups && allGroups.length >= maxGroups) {
599
+ break;
600
+ }
601
+ // Calculate how many groups to request in this batch
602
+ const remainingLimit = maxGroups ? maxGroups - allGroups.length : pageSize;
603
+ const currentPageSize = Math.min(pageSize, remainingLimit);
604
+ // Fetch current page
605
+ const response = await this.getGroupsOfOA(accessToken, offset, currentPageSize);
606
+ // Handle API errors
607
+ if (response.error !== 0) {
608
+ throw new common_1.ZaloSDKError(`Failed to fetch groups at offset ${offset}: ${response.message}`, response.error);
609
+ }
610
+ // Check if we have data
611
+ if (!response.data || !response.data.groups) {
612
+ break;
613
+ }
614
+ // Update total count from first response
615
+ if (totalCount === undefined && response.data.total !== undefined) {
616
+ totalCount = response.data.total;
617
+ // If maxGroups is set and less than total, use maxGroups as effective total
618
+ if (maxGroups && maxGroups < totalCount) {
619
+ totalCount = maxGroups;
620
+ }
621
+ }
622
+ // Add groups to our collection
623
+ allGroups.push(...response.data.groups);
624
+ pagesFetched++;
625
+ // Update progress
626
+ updateProgress(allGroups.length);
627
+ // Check if we should continue
628
+ const receivedCount = response.data.groups.length;
629
+ hasMore = receivedCount === currentPageSize &&
630
+ (!maxGroups || allGroups.length < maxGroups) &&
631
+ (response.data.total === undefined || allGroups.length < response.data.total);
632
+ // Move to next page
633
+ offset += receivedCount;
634
+ // Safety check to prevent infinite loops
635
+ if (pagesFetched > 100) { // Max 5,000 groups (50 * 100)
636
+ console.warn(`getAllGroupsOfOA: Reached maximum page limit (${pagesFetched}) for OA`);
637
+ break;
638
+ }
639
+ }
640
+ // Final progress update
641
+ updateProgress(allGroups.length, true);
642
+ // Apply maxGroups limit if specified
643
+ const finalGroups = maxGroups ? allGroups.slice(0, maxGroups) : allGroups;
644
+ // Return enhanced response
645
+ return {
646
+ error: 0,
647
+ message: "Success",
648
+ data: {
649
+ total_groups: totalCount || allGroups.length,
650
+ groups: finalGroups,
651
+ pages_fetched: pagesFetched,
652
+ is_complete: !maxGroups || allGroups.length <= maxGroups
653
+ }
654
+ };
655
+ }
656
+ catch (error) {
657
+ throw this.handleGroupManagementError(error, "Failed to get all groups of OA");
658
+ }
659
+ }
660
+ /**
661
+ * Get ALL groups of OA with simple interface (no progress tracking)
662
+ * @param accessToken OA access token
663
+ * @param maxGroups Maximum number of groups to retrieve (optional)
664
+ * @returns Array of all OA groups
665
+ *
666
+ * Simplified version of getAllGroupsOfOA that returns just the groups array
667
+ */
668
+ async getAllGroupsOfOASimple(accessToken, maxGroups) {
669
+ const response = await this.getAllGroupsOfOA(accessToken, maxGroups);
670
+ return response.data.groups;
671
+ }
557
672
  /**
558
673
  * Get group quota information and asset_id
559
674
  * @param accessToken OA access token
@@ -1 +1 @@
1
- {"version":3,"file":"group-management.service.js","sourceRoot":"","sources":["../../src/services/group-management.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"group-management.service.js","sourceRoot":"","sources":["../../src/services/group-management.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,222 @@
1
+ # Enhanced Article API - Get All Articles
2
+
3
+ ## Tổng Quan
4
+
5
+ Đã nâng cấp `ArticleService` với 2 method mới để lấy **tất cả bài viết** một cách tự động, không cần xử lý pagination thủ công:
6
+
7
+ - ✅ `getAllArticles()` - Lấy tất cả bài viết theo loại (normal hoặc video)
8
+ - ✅ `getAllArticlesCombined()` - Lấy tất cả bài viết cả 2 loại kết hợp
9
+
10
+ ## Tính Năng Nâng Cao
11
+
12
+ ### 🚀 Tự Động Pagination
13
+ - Tự động gọi API nhiều lần để lấy hết dữ liệu
14
+ - Không cần xử lý `offset` và `limit` thủ công
15
+ - Tự động dừng khi hết dữ liệu
16
+
17
+ ### 📊 Progress Tracking
18
+ - Callback `onProgress` để theo dõi tiến trình
19
+ - Hiển thị số batch hiện tại và tổng số đã lấy
20
+ - Biết được còn dữ liệu hay không
21
+
22
+ ### ⚙️ Cấu Hình Linh Hoạt
23
+ - `batchSize`: Số bài viết mỗi lần gọi API (max 100)
24
+ - `maxArticles`: Giới hạn tổng số bài viết (0 = không giới hạn)
25
+ - `onProgress`: Callback theo dõi tiến trình
26
+
27
+ ### 🛡️ An Toàn & Validation
28
+ - Validation đầu vào nghiêm ngặt
29
+ - Safety check tránh infinite loop
30
+ - Error handling toàn diện
31
+ - TypeScript support đầy đủ
32
+
33
+ ## API Reference
34
+
35
+ ### `getAllArticles()`
36
+
37
+ ```typescript
38
+ async getAllArticles(
39
+ accessToken: string,
40
+ type: "normal" | "video" = "normal",
41
+ options: {
42
+ batchSize?: number; // Default: 50, Max: 100
43
+ maxArticles?: number; // Default: 1000, 0 = no limit
44
+ onProgress?: (progress: {
45
+ currentBatch: number;
46
+ totalFetched: number;
47
+ hasMore: boolean;
48
+ }) => void;
49
+ } = {}
50
+ ): Promise<{
51
+ articles: ArticleListItem[];
52
+ totalFetched: number;
53
+ totalBatches: number;
54
+ hasMore: boolean;
55
+ }>
56
+ ```
57
+
58
+ ### `getAllArticlesCombined()`
59
+
60
+ ```typescript
61
+ async getAllArticlesCombined(
62
+ accessToken: string,
63
+ options: {
64
+ batchSize?: number; // Default: 50, Max: 100
65
+ maxArticlesPerType?: number; // Default: 500, 0 = no limit
66
+ onProgress?: (progress: {
67
+ type: "normal" | "video";
68
+ currentBatch: number;
69
+ totalFetched: number;
70
+ hasMore: boolean;
71
+ }) => void;
72
+ } = {}
73
+ ): Promise<{
74
+ articles: ArticleListItem[];
75
+ breakdown: {
76
+ normal: { articles: ArticleListItem[]; totalFetched: number; totalBatches: number; hasMore: boolean; };
77
+ video: { articles: ArticleListItem[]; totalFetched: number; totalBatches: number; hasMore: boolean; };
78
+ };
79
+ totalFetched: number;
80
+ totalBatches: number;
81
+ }>
82
+ ```
83
+
84
+ ## Ví Dụ Sử Dụng
85
+
86
+ ### 1. Lấy Tất Cả Bài Viết Normal
87
+
88
+ ```typescript
89
+ import { ArticleService } from "redai-zalo-sdk";
90
+
91
+ const result = await articleService.getAllArticles(accessToken, "normal", {
92
+ batchSize: 50,
93
+ maxArticles: 1000,
94
+ onProgress: (progress) => {
95
+ console.log(`Batch ${progress.currentBatch}: ${progress.totalFetched} articles`);
96
+ }
97
+ });
98
+
99
+ console.log(`Total: ${result.totalFetched} articles`);
100
+ result.articles.forEach(article => {
101
+ console.log(`- ${article.title} (${article.id})`);
102
+ });
103
+ ```
104
+
105
+ ### 2. Lấy Tất Cả Bài Viết Video
106
+
107
+ ```typescript
108
+ const videoResult = await articleService.getAllArticles(accessToken, "video", {
109
+ batchSize: 30,
110
+ maxArticles: 500
111
+ });
112
+
113
+ console.log(`Found ${videoResult.totalFetched} video articles`);
114
+ ```
115
+
116
+ ### 3. Lấy Tất Cả Bài Viết (Normal + Video)
117
+
118
+ ```typescript
119
+ const combinedResult = await articleService.getAllArticlesCombined(accessToken, {
120
+ batchSize: 50,
121
+ maxArticlesPerType: 500,
122
+ onProgress: (progress) => {
123
+ console.log(`${progress.type}: ${progress.totalFetched} articles`);
124
+ }
125
+ });
126
+
127
+ console.log(`Total: ${combinedResult.totalFetched} articles`);
128
+ console.log(`Normal: ${combinedResult.breakdown.normal.totalFetched}`);
129
+ console.log(`Video: ${combinedResult.breakdown.video.totalFetched}`);
130
+ ```
131
+
132
+ ### 4. Lấy Tất Cả Không Giới Hạn
133
+
134
+ ```typescript
135
+ // ⚠️ Cẩn thận: Có thể lấy rất nhiều dữ liệu!
136
+ const unlimitedResult = await articleService.getAllArticles(accessToken, "normal", {
137
+ batchSize: 100,
138
+ maxArticles: 0, // 0 = không giới hạn
139
+ onProgress: (progress) => {
140
+ console.log(`Fetching... ${progress.totalFetched} articles so far`);
141
+ }
142
+ });
143
+ ```
144
+
145
+ ## So Sánh Với API Cũ
146
+
147
+ ### Trước (API cũ)
148
+ ```typescript
149
+ // Phải xử lý pagination thủ công
150
+ let offset = 0;
151
+ const limit = 50;
152
+ const allArticles = [];
153
+
154
+ while (true) {
155
+ const response = await articleService.getArticleList(accessToken, {
156
+ offset,
157
+ limit,
158
+ type: "normal"
159
+ });
160
+
161
+ if (!response.data?.medias || response.data.medias.length === 0) {
162
+ break;
163
+ }
164
+
165
+ allArticles.push(...response.data.medias);
166
+ offset += response.data.medias.length;
167
+
168
+ if (response.data.medias.length < limit) {
169
+ break;
170
+ }
171
+ }
172
+ ```
173
+
174
+ ### Sau (API mới)
175
+ ```typescript
176
+ // Chỉ 1 dòng code!
177
+ const result = await articleService.getAllArticles(accessToken, "normal");
178
+ const allArticles = result.articles;
179
+ ```
180
+
181
+ ## Lưu Ý Quan Trọng
182
+
183
+ ### ⚠️ Giới Hạn Rate Limit
184
+ - Zalo API có giới hạn số request/phút
185
+ - Sử dụng `batchSize` hợp lý (khuyến nghị: 50)
186
+ - Đặt `maxArticles` để tránh quá tải
187
+
188
+ ### 🔒 Bảo Mật
189
+ - Luôn validate `accessToken`
190
+ - Không hardcode token trong code
191
+ - Sử dụng environment variables
192
+
193
+ ### 📈 Performance
194
+ - `batchSize` lớn = ít request nhưng response lớn
195
+ - `batchSize` nhỏ = nhiều request nhưng response nhỏ
196
+ - Khuyến nghị: 50-100 articles/batch
197
+
198
+ ### 🛡️ Error Handling
199
+ ```typescript
200
+ try {
201
+ const result = await articleService.getAllArticles(accessToken, "normal");
202
+ // Xử lý thành công
203
+ } catch (error) {
204
+ if (error instanceof ZaloSDKError) {
205
+ console.error("Zalo API Error:", error.message);
206
+ } else {
207
+ console.error("Unknown Error:", error);
208
+ }
209
+ }
210
+ ```
211
+
212
+ ## Kết Luận
213
+
214
+ API mới giúp:
215
+ - ✅ Đơn giản hóa việc lấy tất cả bài viết
216
+ - ✅ Tự động xử lý pagination
217
+ - ✅ Theo dõi tiến trình real-time
218
+ - ✅ Type-safe với TypeScript
219
+ - ✅ Error handling tốt hơn
220
+ - ✅ Cấu hình linh hoạt
221
+
222
+ Sử dụng `getAllArticles()` cho 1 loại bài viết hoặc `getAllArticlesCombined()` cho cả 2 loại!
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Example: How to use the enhanced getAllArticles and getAllArticlesCombined methods
3
+ *
4
+ * This example demonstrates the new custom API methods that can fetch all articles
5
+ * automatically by handling pagination internally.
6
+ */
7
+
8
+ import { ArticleService } from "../src/services/article.service";
9
+ import { ZaloClient } from "../src/clients/zalo-client";
10
+
11
+ // Initialize the services
12
+ const zaloClient = new ZaloClient();
13
+ const articleService = new ArticleService(zaloClient);
14
+
15
+ // Your access token
16
+ const ACCESS_TOKEN = "your-access-token-here";
17
+
18
+ /**
19
+ * Example 1: Get all normal articles with progress tracking
20
+ */
21
+ async function getAllNormalArticlesExample() {
22
+ console.log("=== Getting All Normal Articles ===");
23
+
24
+ try {
25
+ const result = await articleService.getAllArticles(ACCESS_TOKEN, "normal", {
26
+ batchSize: 50, // Fetch 50 articles per API call
27
+ maxArticles: 1000, // Stop after 1000 articles (0 = no limit)
28
+ onProgress: (progress) => {
29
+ console.log(`📄 Batch ${progress.currentBatch}: ${progress.totalFetched} articles fetched, hasMore: ${progress.hasMore}`);
30
+ }
31
+ });
32
+
33
+ console.log(`✅ Completed! Total: ${result.totalFetched} normal articles in ${result.totalBatches} batches`);
34
+ console.log(`📊 Has more articles available: ${result.hasMore}`);
35
+
36
+ // Access the articles
37
+ result.articles.forEach((article, index) => {
38
+ console.log(`${index + 1}. ${article.title} (ID: ${article.id})`);
39
+ });
40
+
41
+ return result;
42
+ } catch (error) {
43
+ console.error("❌ Error getting normal articles:", error);
44
+ throw error;
45
+ }
46
+ }
47
+
48
+ /**
49
+ * Example 2: Get all video articles
50
+ */
51
+ async function getAllVideoArticlesExample() {
52
+ console.log("\n=== Getting All Video Articles ===");
53
+
54
+ try {
55
+ const result = await articleService.getAllArticles(ACCESS_TOKEN, "video", {
56
+ batchSize: 30, // Smaller batch size for videos
57
+ maxArticles: 500, // Limit to 500 videos
58
+ onProgress: (progress) => {
59
+ console.log(`🎥 Video Batch ${progress.currentBatch}: ${progress.totalFetched} videos fetched`);
60
+ }
61
+ });
62
+
63
+ console.log(`✅ Completed! Total: ${result.totalFetched} video articles in ${result.totalBatches} batches`);
64
+
65
+ return result;
66
+ } catch (error) {
67
+ console.error("❌ Error getting video articles:", error);
68
+ throw error;
69
+ }
70
+ }
71
+
72
+ /**
73
+ * Example 3: Get all articles (both normal and video) combined
74
+ */
75
+ async function getAllArticlesCombinedExample() {
76
+ console.log("\n=== Getting All Articles Combined ===");
77
+
78
+ try {
79
+ const result = await articleService.getAllArticlesCombined(ACCESS_TOKEN, {
80
+ batchSize: 50,
81
+ maxArticlesPerType: 500, // Max 500 per type (normal + video)
82
+ onProgress: (progress) => {
83
+ console.log(`📱 ${progress.type.toUpperCase()}: Batch ${progress.currentBatch}, Total: ${progress.totalFetched}`);
84
+ }
85
+ });
86
+
87
+ console.log(`✅ All articles fetched!`);
88
+ console.log(`📊 Total articles: ${result.totalFetched}`);
89
+ console.log(`📄 Normal articles: ${result.breakdown.normal.totalFetched}`);
90
+ console.log(`🎥 Video articles: ${result.breakdown.video.totalFetched}`);
91
+ console.log(`🔄 Total API calls: ${result.totalBatches}`);
92
+
93
+ // You can access all articles combined
94
+ console.log(`\n📋 All Articles (${result.articles.length}):`);
95
+ result.articles.slice(0, 5).forEach((article, index) => {
96
+ console.log(`${index + 1}. [${article.type?.toUpperCase()}] ${article.title}`);
97
+ });
98
+
99
+ if (result.articles.length > 5) {
100
+ console.log(`... and ${result.articles.length - 5} more articles`);
101
+ }
102
+
103
+ return result;
104
+ } catch (error) {
105
+ console.error("❌ Error getting combined articles:", error);
106
+ throw error;
107
+ }
108
+ }
109
+
110
+ /**
111
+ * Example 4: Get unlimited articles (fetch everything)
112
+ */
113
+ async function getAllArticlesUnlimitedExample() {
114
+ console.log("\n=== Getting ALL Articles (No Limit) ===");
115
+
116
+ try {
117
+ const result = await articleService.getAllArticles(ACCESS_TOKEN, "normal", {
118
+ batchSize: 100, // Max batch size
119
+ maxArticles: 0, // 0 = no limit, fetch everything
120
+ onProgress: (progress) => {
121
+ console.log(`🔄 Batch ${progress.currentBatch}: ${progress.totalFetched} articles...`);
122
+ }
123
+ });
124
+
125
+ console.log(`✅ Fetched EVERYTHING! Total: ${result.totalFetched} articles`);
126
+ console.log(`⚠️ Warning: This fetched all articles without limit!`);
127
+
128
+ return result;
129
+ } catch (error) {
130
+ console.error("❌ Error getting unlimited articles:", error);
131
+ throw error;
132
+ }
133
+ }
134
+
135
+ /**
136
+ * Main function to run all examples
137
+ */
138
+ async function runExamples() {
139
+ try {
140
+ // Example 1: Normal articles
141
+ await getAllNormalArticlesExample();
142
+
143
+ // Example 2: Video articles
144
+ await getAllVideoArticlesExample();
145
+
146
+ // Example 3: Combined articles
147
+ await getAllArticlesCombinedExample();
148
+
149
+ // Example 4: Unlimited (commented out for safety)
150
+ // await getAllArticlesUnlimitedExample();
151
+
152
+ console.log("\n🎉 All examples completed successfully!");
153
+
154
+ } catch (error) {
155
+ console.error("💥 Example failed:", error);
156
+ }
157
+ }
158
+
159
+ // Export for use in other files
160
+ export {
161
+ getAllNormalArticlesExample,
162
+ getAllVideoArticlesExample,
163
+ getAllArticlesCombinedExample,
164
+ getAllArticlesUnlimitedExample,
165
+ runExamples
166
+ };
167
+
168
+ // Run examples if this file is executed directly
169
+ if (require.main === module) {
170
+ runExamples();
171
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@warriorteam/redai-zalo-sdk",
3
- "version": "1.12.5",
4
- "description": "Comprehensive TypeScript/JavaScript SDK for Zalo APIs - Official Account, ZNS, Consultation Service, Group Messaging, and Social APIs",
3
+ "version": "1.14.0",
4
+ "description": "Comprehensive TypeScript/JavaScript SDK for Zalo APIs - Official Account, ZNS, Consultation Service, Group Messaging, Social APIs, and Enhanced Article Management with Auto-Pagination",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
7
7
  "scripts": {
@@ -29,7 +29,11 @@
29
29
  "notification-service",
30
30
  "consultation-service",
31
31
  "customer-support",
32
- "messaging"
32
+ "messaging",
33
+ "article-management",
34
+ "auto-pagination",
35
+ "bulk-fetch",
36
+ "progress-tracking"
33
37
  ],
34
38
  "author": "RedAI Team",
35
39
  "license": "MIT",