@warriorteam/redai-zalo-sdk 1.29.0 → 1.30.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
@@ -2,6 +2,75 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [1.30.0] - 2025-01-05
6
+
7
+ ### ✨ Added - Template Message Support for ConsultationService
8
+
9
+ #### 🎯 New Core Function
10
+ - **`sendTemplateMessage()`** - Comprehensive template message function with full elements and buttons support
11
+ - Support for all Zalo OA template types with complete API specification compliance
12
+ - Type-safe template creation with comprehensive validation
13
+
14
+ #### 🛠️ Helper Functions (12 new functions)
15
+ - **Template Elements**: `createTemplateElement()` - Create template elements with validation
16
+ - **Template Buttons**:
17
+ - `createUrlButton()` - Create URL buttons (oa.open.url)
18
+ - `createQueryShowButton()` - Create query show buttons (oa.query.show)
19
+ - `createQueryHideButton()` - Create query hide buttons (oa.query.hide)
20
+ - `createSmsButton()` - Create SMS buttons (oa.open.sms)
21
+ - `createPhoneButton()` - Create phone call buttons (oa.open.phone)
22
+ - **Template Actions**:
23
+ - `createUrlAction()` - Create URL actions for elements
24
+ - `createQueryShowAction()` - Create query show actions
25
+ - `createQueryHideAction()` - Create query hide actions
26
+ - `createSmsAction()` - Create SMS actions
27
+ - `createPhoneAction()` - Create phone call actions
28
+
29
+ #### 📋 TypeScript Interfaces
30
+ - **`TemplateElement`** - Interface for template elements with validation rules
31
+ - **`TemplateButton`** - Interface for template buttons with type-specific payloads
32
+ - **`TemplateAction`** - Interface for template actions (default_action in elements)
33
+ - **`ConsultationTemplatePayload`** - Union type for all payload types
34
+ - **`UrlPayload`**, **`SmsPayload`**, **`PhonePayload`** - Specific payload interfaces
35
+
36
+ #### ✅ API Specification Compliance
37
+ - **Elements**: Maximum 5 elements, first element must have subtitle
38
+ - **Buttons**: Maximum 5 buttons with comprehensive validation
39
+ - **Title**: ≤ 100 characters validation
40
+ - **Subtitle**: ≤ 500 characters validation (required for first element)
41
+ - **Payload**: ≤ 1000 characters for string payloads
42
+ - **SMS Content**: ≤ 160 characters validation
43
+ - **Action Types**: Full support for all Zalo OA action types
44
+
45
+ #### 🔧 Validation & Error Handling
46
+ - Comprehensive input validation before API calls
47
+ - Detailed error messages with context information
48
+ - Type-safe development experience with TypeScript
49
+ - Runtime validation for all API specification rules
50
+
51
+ #### 📁 New Files
52
+ - `src/types/consultation.ts` - Complete TypeScript interfaces for consultation service
53
+ - `examples/consultation-template-example.ts` - Comprehensive usage examples
54
+ - `CONSULTATION-TEMPLATE-ENHANCEMENT.md` - Detailed documentation
55
+
56
+ #### 🔄 Updated Files
57
+ - `src/services/consultation.service.ts` - Added template message functions
58
+ - `src/index.ts` - Export new consultation types
59
+
60
+ ### 🎯 Use Cases Supported
61
+ - **Customer Support Templates** - Multi-element templates with various action buttons
62
+ - **Information Request Templates** - Templates requesting user information with callbacks
63
+ - **Interactive Templates** - Templates with URL, SMS, phone, and query actions
64
+ - **Marketing Templates** - Templates with multiple call-to-action buttons
65
+ - **Service Templates** - Templates for service interactions and support
66
+
67
+ ### 💡 Developer Experience Improvements
68
+ - **Type Safety**: Full TypeScript support with comprehensive interfaces
69
+ - **IntelliSense**: Complete autocomplete support for all template properties
70
+ - **Validation**: Automatic validation with clear error messages
71
+ - **Helper Functions**: Easy-to-use functions for creating template components
72
+ - **Documentation**: Comprehensive examples and API documentation
73
+
5
74
  ## [1.29.0] - 2025-01-05
6
75
 
7
76
  ### 🚀 Major Type Safety Improvements
package/dist/index.d.ts CHANGED
@@ -16,6 +16,7 @@ export * from "./types/zns";
16
16
  export * from "./types/article";
17
17
  export * from "./types/broadcast";
18
18
  export * from "./types/promotion";
19
+ export * from "./types/consultation";
19
20
  export * from "./constants/zns.constants";
20
21
  export type { BaseMessage, TextMessage, ImageMessage, FileMessage, StickerMessage, TemplateMessage as MessageTemplateMessage, ReactionMessage as MessageReactionMessage, Message, MessageRecipient, SendMessageRequest, SendMessageResponse, UploadFileResponse, MessageStatus, MessageEvent, ConsultationTextMessage, ConsultationImageMessage, ConsultationFileMessage, ConsultationStickerMessage, ConsultationQuoteMessage, ConsultationRequestInfoMessage, TransactionMessage, AnonymousTextMessage, AnonymousImageMessage, AnonymousFileMessage, AnonymousStickerMessage, MiniAppMessage, ExtendedMessage, } from "./types/message";
21
22
  export * from "./types/webhook";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -34,6 +34,7 @@ __exportStar(require("./types/zns"), exports);
34
34
  __exportStar(require("./types/article"), exports);
35
35
  __exportStar(require("./types/broadcast"), exports);
36
36
  __exportStar(require("./types/promotion"), exports);
37
+ __exportStar(require("./types/consultation"), exports);
37
38
  // Export ZNS constants and helpers
38
39
  __exportStar(require("./constants/zns.constants"), exports);
39
40
  // Export webhook types (avoiding conflicts with message and group types)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;AAEH,eAAe;AACf,iDAA+B;AAC/B,+CAA6B;AAC7B,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,kDAAgC;AAChC,oDAAkC;AAClC,oDAAkC;AAElC,mCAAmC;AACnC,4DAA0C;AAkC1C,yEAAyE;AACzE,kDAAgC;AAEhC,yEAAyE;AACzE,mDAoB6B;AAlB3B,uHAAA,wBAAwB,OAAA;AACxB,wHAAA,yBAAyB,OAAA;AACzB,wHAAA,yBAAyB,OAAA;AACzB,wHAAA,yBAAyB,OAAA;AACzB,uHAAA,wBAAwB,OAAA;AACxB,sHAAA,uBAAuB,OAAA;AACvB,gHAAA,iBAAiB,OAAA;AACjB,iHAAA,kBAAkB,OAAA;AAClB,gHAAA,iBAAiB,OAAA;AACjB,mHAAA,oBAAoB,OAAA;AACpB,+GAAA,gBAAgB,OAAA;AAChB,qHAAA,sBAAsB,OAAA;AACtB,sHAAA,uBAAuB,OAAA;AACvB,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA;AACzB,oHAAA,qBAAqB,OAAA;AACrB,0GAAA,WAAW,OAAA;AACX,6GAAA,cAAc,OAAA;AAEhB,kCAAkC;AAClC,2CAMyB;AALvB,6GAAA,kBAAkB,OAAA;AAClB,8GAAA,mBAAmB,OAAA;AACnB,iHAAA,sBAAsB,OAAA;AACtB,kHAAA,uBAAuB,OAAA;AACvB,8GAAA,mBAAmB,OAAA;AAoFrB,iBAAiB;AACjB,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AACnB,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AAEnB,kBAAkB;AAClB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,oDAAkD;AAAzC,uGAAA,SAAS,OAAA;AAClB,2GAA2G;AAC3G,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,+DAA+D;AAC/D,sDAAoD;AAA3C,yGAAA,UAAU,OAAA;AACnB,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAC5B,gFAA6E;AAApE,kIAAA,sBAAsB,OAAA;AAC/B,8DAA4D;AAAnD,iHAAA,cAAc,OAAA;AACvB,wEAAqE;AAA5D,0HAAA,kBAAkB,OAAA;AAE3B,iDAAiD;AACjD,wEAAsE;AAA7D,2HAAA,mBAAmB,OAAA;AAC5B,sEAAoE;AAA3D,yHAAA,kBAAkB,OAAA;AAC3B,kEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AACzB,8EAA2E;AAAlE,gIAAA,qBAAqB,OAAA;AAC9B,oFAQ+C;AAP7C,sIAAA,wBAAwB,OAAA;AAQ1B,kEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AAEzB,wBAAwB;AACxB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAEhB,iBAAiB;AACjB,uCAAgD;AAAvC,mGAAA,OAAO,OAAW"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;AAEH,eAAe;AACf,iDAA+B;AAC/B,+CAA6B;AAC7B,6CAA2B;AAC3B,+CAA6B;AAC7B,8CAA4B;AAC5B,kDAAgC;AAChC,oDAAkC;AAClC,oDAAkC;AAClC,uDAAqC;AAErC,mCAAmC;AACnC,4DAA0C;AAkC1C,yEAAyE;AACzE,kDAAgC;AAEhC,yEAAyE;AACzE,mDAoB6B;AAlB3B,uHAAA,wBAAwB,OAAA;AACxB,wHAAA,yBAAyB,OAAA;AACzB,wHAAA,yBAAyB,OAAA;AACzB,wHAAA,yBAAyB,OAAA;AACzB,uHAAA,wBAAwB,OAAA;AACxB,sHAAA,uBAAuB,OAAA;AACvB,gHAAA,iBAAiB,OAAA;AACjB,iHAAA,kBAAkB,OAAA;AAClB,gHAAA,iBAAiB,OAAA;AACjB,mHAAA,oBAAoB,OAAA;AACpB,+GAAA,gBAAgB,OAAA;AAChB,qHAAA,sBAAsB,OAAA;AACtB,sHAAA,uBAAuB,OAAA;AACvB,qHAAA,sBAAsB,OAAA;AACtB,wHAAA,yBAAyB,OAAA;AACzB,oHAAA,qBAAqB,OAAA;AACrB,0GAAA,WAAW,OAAA;AACX,6GAAA,cAAc,OAAA;AAEhB,kCAAkC;AAClC,2CAMyB;AALvB,6GAAA,kBAAkB,OAAA;AAClB,8GAAA,mBAAmB,OAAA;AACnB,iHAAA,sBAAsB,OAAA;AACtB,kHAAA,uBAAuB,OAAA;AACvB,8GAAA,mBAAmB,OAAA;AAoFrB,iBAAiB;AACjB,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AACnB,qDAAmD;AAA1C,yGAAA,UAAU,OAAA;AAEnB,kBAAkB;AAClB,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,oDAAkD;AAAzC,uGAAA,SAAS,OAAA;AAClB,2GAA2G;AAC3G,wDAAsD;AAA7C,2GAAA,WAAW,OAAA;AACpB,+DAA+D;AAC/D,sDAAoD;AAA3C,yGAAA,UAAU,OAAA;AACnB,0EAAuE;AAA9D,4HAAA,mBAAmB,OAAA;AAC5B,gFAA6E;AAApE,kIAAA,sBAAsB,OAAA;AAC/B,8DAA4D;AAAnD,iHAAA,cAAc,OAAA;AACvB,wEAAqE;AAA5D,0HAAA,kBAAkB,OAAA;AAE3B,iDAAiD;AACjD,wEAAsE;AAA7D,2HAAA,mBAAmB,OAAA;AAC5B,sEAAoE;AAA3D,yHAAA,kBAAkB,OAAA;AAC3B,kEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AACzB,8EAA2E;AAAlE,gIAAA,qBAAqB,OAAA;AAC9B,oFAQ+C;AAP7C,sIAAA,wBAAwB,OAAA;AAQ1B,kEAAgE;AAAvD,qHAAA,gBAAgB,OAAA;AAEzB,wBAAwB;AACxB,uCAAqC;AAA5B,mGAAA,OAAO,OAAA;AAEhB,iBAAiB;AACjB,uCAAgD;AAAvC,mGAAA,OAAO,OAAW"}
@@ -1,152 +1,6 @@
1
1
  import { ZaloClient } from "../clients/zalo-client";
2
2
  import { MessageRecipient, SendMessageResponse, TextMessage, ConsultationQuoteMessage } from "../types/message";
3
- /**
4
- * Interface cho từng tin nhắn trong chuỗi tin nhắn
5
- */
6
- export interface MessageItem {
7
- /** Loại tin nhắn */
8
- type: "text" | "image" | "gif" | "file" | "sticker" | "request_user_info";
9
- /** Nội dung tin nhắn (cho text message) */
10
- text?: string;
11
- /** URL hình ảnh (cho image/gif message) */
12
- imageUrl?: string;
13
- /** URL GIF (cho gif message) */
14
- gifUrl?: string;
15
- /** Chiều rộng GIF (bắt buộc cho gif) */
16
- width?: number;
17
- /** Chiều cao GIF (bắt buộc cho gif) */
18
- height?: number;
19
- /** Token file (cho file message) */
20
- fileToken?: string;
21
- /** Attachment ID (cho image/sticker message) */
22
- attachmentId?: string;
23
- /** Sticker attachment ID (cho sticker message) */
24
- stickerAttachmentId?: string;
25
- /** Tiêu đề (cho request_user_info message) */
26
- title?: string;
27
- /** Tiêu đề phụ (cho request_user_info message) */
28
- subtitle?: string;
29
- /** Delay sau khi gửi tin nhắn này (milliseconds) */
30
- delay?: number;
31
- }
32
- /**
33
- * Interface cho request gửi chuỗi tin nhắn
34
- */
35
- export interface SendMessageSequenceRequest {
36
- /** Access token của Official Account */
37
- accessToken: string;
38
- /** ID người nhận */
39
- userId: string;
40
- /** Danh sách tin nhắn */
41
- messages: MessageItem[];
42
- /** Delay mặc định giữa các tin nhắn (milliseconds) - nếu không có delay riêng */
43
- defaultDelay?: number;
44
- }
45
- /**
46
- * Interface cho response gửi chuỗi tin nhắn
47
- */
48
- export interface SendMessageSequenceResponse {
49
- /** Tổng số tin nhắn đã gửi thành công */
50
- successCount: number;
51
- /** Tổng số tin nhắn thất bại */
52
- failureCount: number;
53
- /** Chi tiết kết quả từng tin nhắn */
54
- results: Array<{
55
- /** Index của tin nhắn trong danh sách */
56
- index: number;
57
- /** Loại tin nhắn */
58
- type: string;
59
- /** Trạng thái gửi */
60
- success: boolean;
61
- /** Thông tin response nếu thành công */
62
- response?: SendMessageResponse;
63
- /** Thông tin lỗi nếu thất bại */
64
- error?: string;
65
- /** Thời gian gửi */
66
- timestamp: number;
67
- }>;
68
- /** Tổng thời gian thực hiện (milliseconds) */
69
- totalDuration: number;
70
- }
71
- /**
72
- * Interface cho request gửi chuỗi tin nhắn tới nhiều users
73
- */
74
- export interface SendMessageSequenceToMultipleUsersRequest {
75
- /** Access token của Official Account */
76
- accessToken: string;
77
- /** Danh sách user IDs */
78
- userIds: string[];
79
- /** Danh sách tin nhắn */
80
- messages: MessageItem[];
81
- /** Delay mặc định giữa các tin nhắn (milliseconds) */
82
- defaultDelay?: number;
83
- /** Delay giữa các user (milliseconds) để tránh rate limit */
84
- delayBetweenUsers?: number;
85
- /** Callback function để tracking tiến trình */
86
- onProgress?: (progress: UserProgressInfo) => void;
87
- }
88
- /**
89
- * Interface cho thông tin tiến trình từng user
90
- */
91
- export interface UserProgressInfo {
92
- /** User ID hiện tại */
93
- userId: string;
94
- /** Index của user trong danh sách (bắt đầu từ 0) */
95
- userIndex: number;
96
- /** Tổng số users */
97
- totalUsers: number;
98
- /** Trạng thái: 'started' | 'completed' | 'failed' */
99
- status: 'started' | 'completed' | 'failed';
100
- /** Kết quả gửi tin nhắn (nếu đã hoàn thành) */
101
- result?: SendMessageSequenceResponse;
102
- /** Thông tin lỗi (nếu thất bại) */
103
- error?: string;
104
- /** Thời gian bắt đầu */
105
- startTime: number;
106
- /** Thời gian kết thúc (nếu đã hoàn thành) */
107
- endTime?: number;
108
- }
109
- /**
110
- * Interface cho response gửi chuỗi tin nhắn tới nhiều users
111
- */
112
- export interface SendMessageSequenceToMultipleUsersResponse {
113
- /** Tổng số users */
114
- totalUsers: number;
115
- /** Số users gửi thành công */
116
- successfulUsers: number;
117
- /** Số users gửi thất bại */
118
- failedUsers: number;
119
- /** Chi tiết kết quả từng user */
120
- userResults: Array<{
121
- /** User ID */
122
- userId: string;
123
- /** Index của user trong danh sách */
124
- userIndex: number;
125
- /** Trạng thái gửi cho user này */
126
- success: boolean;
127
- /** Kết quả chi tiết gửi tin nhắn */
128
- messageSequenceResult?: SendMessageSequenceResponse;
129
- /** Thông tin lỗi nếu thất bại */
130
- error?: string;
131
- /** Thời gian bắt đầu gửi */
132
- startTime: number;
133
- /** Thời gian kết thúc */
134
- endTime: number;
135
- /** Thời gian thực hiện (milliseconds) */
136
- duration: number;
137
- }>;
138
- /** Tổng thời gian thực hiện (milliseconds) */
139
- totalDuration: number;
140
- /** Thống kê tin nhắn tổng cộng */
141
- messageStats: {
142
- /** Tổng số tin nhắn đã gửi thành công */
143
- totalSuccessfulMessages: number;
144
- /** Tổng số tin nhắn thất bại */
145
- totalFailedMessages: number;
146
- /** Tổng số tin nhắn */
147
- totalMessages: number;
148
- };
149
- }
3
+ import { TemplateAction, TemplateElement, TemplateButton, SendMessageSequenceRequest, SendMessageSequenceResponse, SendMessageSequenceToMultipleUsersRequest, SendMessageSequenceToMultipleUsersResponse } from "../types/consultation";
150
4
  /**
151
5
  * Service xử lý các API tin nhắn tư vấn của Zalo Official Account
152
6
  *
@@ -328,6 +182,119 @@ export declare class ConsultationService {
328
182
  * @returns Kết quả gửi tin nhắn cho tất cả users
329
183
  */
330
184
  sendMessageSequenceToMultipleUsers(request: SendMessageSequenceToMultipleUsersRequest): Promise<SendMessageSequenceToMultipleUsersResponse>;
185
+ /**
186
+ * Gửi tin nhắn template tổng quát với elements và buttons
187
+ * Endpoint: https://openapi.zalo.me/v3.0/oa/message/cs
188
+ * Method: POST
189
+ *
190
+ * @param accessToken Access token của Official Account
191
+ * @param userId ID người nhận (user_id)
192
+ * @param templateType Loại template (ví dụ: "request_user_info")
193
+ * @param elements Mảng elements (tối đa 5 phần tử)
194
+ * @param buttons Mảng buttons (tối đa 5 phần tử, optional)
195
+ * @returns Thông tin tin nhắn đã gửi
196
+ */
197
+ sendTemplateMessage(accessToken: string, userId: string, templateType: string, elements: TemplateElement[], buttons?: TemplateButton[]): Promise<SendMessageResponse>;
198
+ /**
199
+ * Validate template element theo quy tắc API
200
+ * @param element Template element cần validate
201
+ * @param index Index của element trong mảng (để báo lỗi)
202
+ */
203
+ private validateTemplateElement;
204
+ /**
205
+ * Validate template button theo quy tắc API
206
+ * @param button Template button cần validate
207
+ * @param index Index của button trong mảng (để báo lỗi)
208
+ */
209
+ private validateTemplateButton;
210
+ /**
211
+ * Validate template action (cho default_action)
212
+ * @param action Template action cần validate
213
+ * @param context Context để báo lỗi
214
+ */
215
+ private validateTemplateAction;
216
+ /**
217
+ * Validate button payload theo type
218
+ * @param button Template button cần validate
219
+ * @param index Index của button trong mảng (để báo lỗi)
220
+ */
221
+ private validateButtonPayload;
222
+ /**
223
+ * Helper function để tạo template element
224
+ * @param title Tiêu đề (bắt buộc, ≤ 100 ký tự)
225
+ * @param subtitle Tiêu đề phụ (≤ 500 ký tự)
226
+ * @param imageUrl URL ảnh (optional)
227
+ * @param defaultAction Hành động khi click (optional)
228
+ * @returns TemplateElement object
229
+ */
230
+ createTemplateElement(title: string, subtitle?: string, imageUrl?: string, defaultAction?: TemplateAction): TemplateElement;
231
+ /**
232
+ * Helper function để tạo template button với URL
233
+ * @param title Tiêu đề button (≤ 100 ký tự)
234
+ * @param url URL để mở
235
+ * @returns TemplateButton object
236
+ */
237
+ createUrlButton(title: string, url: string): TemplateButton;
238
+ /**
239
+ * Helper function để tạo template button với query (hiển thị)
240
+ * @param title Tiêu đề button (≤ 100 ký tự)
241
+ * @param payload Dữ liệu callback (≤ 1000 ký tự)
242
+ * @returns TemplateButton object
243
+ */
244
+ createQueryShowButton(title: string, payload: string): TemplateButton;
245
+ /**
246
+ * Helper function để tạo template button với query (ẩn)
247
+ * @param title Tiêu đề button (≤ 100 ký tự)
248
+ * @param payload Dữ liệu callback (≤ 1000 ký tự)
249
+ * @returns TemplateButton object
250
+ */
251
+ createQueryHideButton(title: string, payload: string): TemplateButton;
252
+ /**
253
+ * Helper function để tạo template button với SMS
254
+ * @param title Tiêu đề button (≤ 100 ký tự)
255
+ * @param phoneCode Số điện thoại
256
+ * @param content Nội dung SMS (≤ 160 ký tự)
257
+ * @returns TemplateButton object
258
+ */
259
+ createSmsButton(title: string, phoneCode: string, content?: string): TemplateButton;
260
+ /**
261
+ * Helper function để tạo template button với Phone
262
+ * @param title Tiêu đề button (≤ 100 ký tự)
263
+ * @param phoneCode Số điện thoại
264
+ * @returns TemplateButton object
265
+ */
266
+ createPhoneButton(title: string, phoneCode: string): TemplateButton;
267
+ /**
268
+ * Helper function để tạo template action với URL
269
+ * @param url URL để mở
270
+ * @returns TemplateAction object
271
+ */
272
+ createUrlAction(url: string): TemplateAction;
273
+ /**
274
+ * Helper function để tạo template action với query (hiển thị)
275
+ * @param payload Dữ liệu callback (≤ 1000 ký tự)
276
+ * @returns TemplateAction object
277
+ */
278
+ createQueryShowAction(payload: string): TemplateAction;
279
+ /**
280
+ * Helper function để tạo template action với query (ẩn)
281
+ * @param payload Dữ liệu callback (≤ 1000 ký tự)
282
+ * @returns TemplateAction object
283
+ */
284
+ createQueryHideAction(payload: string): TemplateAction;
285
+ /**
286
+ * Helper function để tạo template action với SMS
287
+ * @param phoneCode Số điện thoại
288
+ * @param content Nội dung SMS (≤ 160 ký tự)
289
+ * @returns TemplateAction object
290
+ */
291
+ createSmsAction(phoneCode: string, content?: string): TemplateAction;
292
+ /**
293
+ * Helper function để tạo template action với Phone
294
+ * @param phoneCode Số điện thoại
295
+ * @returns TemplateAction object
296
+ */
297
+ createPhoneAction(phoneCode: string): TemplateAction;
331
298
  /**
332
299
  * Utility method để sleep/delay
333
300
  * @param ms Thời gian delay tính bằng milliseconds
@@ -1 +1 @@
1
- {"version":3,"file":"consultation.service.d.ts","sourceRoot":"","sources":["../../src/services/consultation.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consultation.service.d.ts","sourceRoot":"","sources":["../../src/services/consultation.service.ts"],"names":[],"mappings":"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"}