n8n-nodes-zalo-nnt 0.6.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.
Files changed (56) hide show
  1. package/LICENSE +201 -0
  2. package/LICENSE.md +19 -0
  3. package/README.md +235 -0
  4. package/dist/ZaloSendMessage/ZaloSendMessage.node.js +431 -0
  5. package/dist/credentials/N8nZaloApi.credentials.d.ts +8 -0
  6. package/dist/credentials/N8nZaloApi.credentials.js +31 -0
  7. package/dist/credentials/N8nZaloApi.credentials.js.map +1 -0
  8. package/dist/credentials/N8nZaloApi.credentials.ts +32 -0
  9. package/dist/credentials/ZaloApi.credentials.d.ts +8 -0
  10. package/dist/credentials/ZaloApi.credentials.js +64 -0
  11. package/dist/credentials/ZaloApi.credentials.js.map +1 -0
  12. package/dist/credentials/ZaloApi.credentials.ts +66 -0
  13. package/dist/credentials/shared/n8n.png +0 -0
  14. package/dist/credentials/shared/zalo.svg +10 -0
  15. package/dist/nodes/ZaloFriendTrigger/ZaloFriendTrigger.node.d.ts +12 -0
  16. package/dist/nodes/ZaloFriendTrigger/ZaloFriendTrigger.node.js +129 -0
  17. package/dist/nodes/ZaloFriendTrigger/ZaloFriendTrigger.node.js.map +1 -0
  18. package/dist/nodes/ZaloGroup/ZaloGroup.node.d.ts +5 -0
  19. package/dist/nodes/ZaloGroup/ZaloGroup.node.js +228 -0
  20. package/dist/nodes/ZaloGroup/ZaloGroup.node.js.map +1 -0
  21. package/dist/nodes/ZaloGroup/ZaloGroupDescription.d.ts +3 -0
  22. package/dist/nodes/ZaloGroup/ZaloGroupDescription.js +348 -0
  23. package/dist/nodes/ZaloGroup/ZaloGroupDescription.js.map +1 -0
  24. package/dist/nodes/ZaloLoginByQr/ZaloLoginByQr.node.d.ts +5 -0
  25. package/dist/nodes/ZaloLoginByQr/ZaloLoginByQr.node.js +422 -0
  26. package/dist/nodes/ZaloLoginByQr/ZaloLoginByQr.node.js.map +1 -0
  27. package/dist/nodes/ZaloMessageTrigger/ZaloMessageTrigger.node.d.ts +12 -0
  28. package/dist/nodes/ZaloMessageTrigger/ZaloMessageTrigger.node.js +147 -0
  29. package/dist/nodes/ZaloMessageTrigger/ZaloMessageTrigger.node.js.map +1 -0
  30. package/dist/nodes/ZaloPoll/ZaloPoll.node.d.ts +5 -0
  31. package/dist/nodes/ZaloPoll/ZaloPoll.node.js +187 -0
  32. package/dist/nodes/ZaloPoll/ZaloPoll.node.js.map +1 -0
  33. package/dist/nodes/ZaloPoll/ZaloPollDescription.d.ts +3 -0
  34. package/dist/nodes/ZaloPoll/ZaloPollDescription.js +260 -0
  35. package/dist/nodes/ZaloPoll/ZaloPollDescription.js.map +1 -0
  36. package/dist/nodes/ZaloSendMessage/ZaloSendMessage.node.d.ts +5 -0
  37. package/dist/nodes/ZaloSendMessage/ZaloSendMessage.node.js +337 -0
  38. package/dist/nodes/ZaloSendMessage/ZaloSendMessage.node.js.map +1 -0
  39. package/dist/nodes/ZaloTag/ZaloTag.node.d.ts +5 -0
  40. package/dist/nodes/ZaloTag/ZaloTag.node.js +81 -0
  41. package/dist/nodes/ZaloTag/ZaloTag.node.js.map +1 -0
  42. package/dist/nodes/ZaloUser/ZaloUser.node.d.ts +5 -0
  43. package/dist/nodes/ZaloUser/ZaloUser.node.js +229 -0
  44. package/dist/nodes/ZaloUser/ZaloUser.node.js.map +1 -0
  45. package/dist/nodes/ZaloUser/ZaloUserDescription.d.ts +3 -0
  46. package/dist/nodes/ZaloUser/ZaloUserDescription.js +361 -0
  47. package/dist/nodes/ZaloUser/ZaloUserDescription.js.map +1 -0
  48. package/dist/nodes/shared/zalo.svg +10 -0
  49. package/dist/nodes/utils/helper.d.ts +2 -0
  50. package/dist/nodes/utils/helper.js +42 -0
  51. package/dist/nodes/utils/helper.js.map +1 -0
  52. package/dist/package.json +78 -0
  53. package/dist/tsconfig.tsbuildinfo +1 -0
  54. package/dist/utils/helper.js +90 -0
  55. package/index.js +0 -0
  56. package/package.json +78 -0
@@ -0,0 +1,12 @@
1
+ import { INodeType, INodeTypeDescription, IWebhookFunctions, IWebhookResponseData, IHookFunctions } from 'n8n-workflow';
2
+ export declare class ZaloFriendTrigger implements INodeType {
3
+ description: INodeTypeDescription;
4
+ webhookMethods: {
5
+ default: {
6
+ checkExists(this: IHookFunctions): Promise<boolean>;
7
+ create(this: IHookFunctions): Promise<boolean>;
8
+ delete(this: IHookFunctions): Promise<boolean>;
9
+ };
10
+ };
11
+ webhook(this: IWebhookFunctions): Promise<IWebhookResponseData>;
12
+ }
@@ -0,0 +1,129 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZaloFriendTrigger = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const zca_js_1 = require("zca-js");
6
+ let api;
7
+ let reconnectTimer;
8
+ class ZaloFriendTrigger {
9
+ constructor() {
10
+ this.description = {
11
+ displayName: 'Zalo Friend Trigger',
12
+ name: 'zaloFriendTrigger',
13
+ icon: 'file:../shared/zalo.svg',
14
+ group: ['trigger'],
15
+ version: 1,
16
+ description: 'Lắng nghe sự kiện kết bạn trên Zalo',
17
+ defaults: {
18
+ name: 'Zalo Friend Trigger',
19
+ },
20
+ inputs: [],
21
+ outputs: ['main'],
22
+ webhooks: [
23
+ {
24
+ name: 'default',
25
+ httpMethod: 'POST',
26
+ responseMode: 'onReceived',
27
+ path: 'webhook',
28
+ },
29
+ ],
30
+ credentials: [
31
+ {
32
+ name: 'zaloApi',
33
+ required: true,
34
+ displayName: 'Zalo Credential to connect with',
35
+ },
36
+ ],
37
+ properties: [
38
+ {
39
+ displayName: 'Event Types',
40
+ name: 'eventTypes',
41
+ type: 'multiOptions',
42
+ options: [
43
+ {
44
+ name: 'Friend Requests',
45
+ value: zca_js_1.FriendEventType.REQUEST,
46
+ description: 'Nghe sự kiện yêu cầu kết bạn',
47
+ }
48
+ ],
49
+ default: [zca_js_1.FriendEventType.REQUEST],
50
+ required: true,
51
+ description: 'Friend events to listen for',
52
+ },
53
+ ],
54
+ };
55
+ this.webhookMethods = {
56
+ default: {
57
+ async checkExists() {
58
+ const webhookData = this.getWorkflowStaticData('node');
59
+ return !!webhookData.isConnected;
60
+ },
61
+ async create() {
62
+ const credentials = await this.getCredentials('zaloApi');
63
+ if (!credentials) {
64
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'No credentials found');
65
+ }
66
+ try {
67
+ const cookieFromCred = JSON.parse(credentials.cookie);
68
+ const imeiFromCred = credentials.imei;
69
+ const userAgentFromCred = credentials.userAgent;
70
+ const zalo = new zca_js_1.Zalo();
71
+ api = await zalo.login({ cookie: cookieFromCred, imei: imeiFromCred, userAgent: userAgentFromCred });
72
+ if (!api) {
73
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'No API instance found. Please make sure to provide valid credentials.');
74
+ }
75
+ const webhookUrl = this.getNodeWebhookUrl('default');
76
+ console.log(webhookUrl);
77
+ api.listener.on('friend_event', async (event) => {
78
+ const nodeEventTypes = this.getNodeParameter('eventTypes', 0);
79
+ if (nodeEventTypes.includes(event.type)) {
80
+ this.helpers.httpRequest({
81
+ method: 'POST',
82
+ url: webhookUrl,
83
+ body: {
84
+ friendEvent: event.data,
85
+ },
86
+ headers: {
87
+ 'Content-Type': 'application/json',
88
+ },
89
+ });
90
+ }
91
+ });
92
+ api.listener.start();
93
+ const webhookData = this.getWorkflowStaticData('node');
94
+ webhookData.isConnected = true;
95
+ webhookData.eventTypes = this.getNodeParameter('eventTypes', 0);
96
+ return true;
97
+ }
98
+ catch (error) {
99
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'Zalo connection failed');
100
+ }
101
+ },
102
+ async delete() {
103
+ const webhookData = this.getWorkflowStaticData('node');
104
+ if (api) {
105
+ api.listener.stop();
106
+ api = undefined;
107
+ }
108
+ if (reconnectTimer) {
109
+ clearTimeout(reconnectTimer);
110
+ reconnectTimer = undefined;
111
+ }
112
+ delete webhookData.isConnected;
113
+ delete webhookData.eventTypes;
114
+ return true;
115
+ },
116
+ },
117
+ };
118
+ }
119
+ async webhook() {
120
+ const req = this.getRequestObject();
121
+ const body = req.body;
122
+ console.log(body);
123
+ return {
124
+ workflowData: [this.helpers.returnJsonArray(req.body)],
125
+ };
126
+ }
127
+ }
128
+ exports.ZaloFriendTrigger = ZaloFriendTrigger;
129
+ //# sourceMappingURL=ZaloFriendTrigger.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZaloFriendTrigger.node.js","sourceRoot":"","sources":["../../../nodes/ZaloFriendTrigger/ZaloFriendTrigger.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { IExecuteFunctions, INodeExecutionData, INodeType, INodeTypeDescription } from 'n8n-workflow';
2
+ export declare class ZaloGroup implements INodeType {
3
+ description: INodeTypeDescription;
4
+ execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]>;
5
+ }
@@ -0,0 +1,228 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZaloGroup = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const ZaloGroupDescription_1 = require("./ZaloGroupDescription");
6
+ const zca_js_1 = require("zca-js");
7
+ let api;
8
+ class ZaloGroup {
9
+ constructor() {
10
+ this.description = {
11
+ displayName: 'Zalo Group',
12
+ name: 'zaloGroup',
13
+ icon: 'file:../shared/zalo.svg',
14
+ group: ['Zalo'],
15
+ version: 1,
16
+ subtitle: '={{$parameter["operation"] + ": " + $parameter["resource"]}}',
17
+ description: 'Quản lý nhóm Zalo',
18
+ defaults: {
19
+ name: 'Zalo Group',
20
+ },
21
+ inputs: ['main'],
22
+ outputs: ['main'],
23
+ credentials: [
24
+ {
25
+ name: 'zaloApi',
26
+ required: true,
27
+ displayName: 'Zalo Credential to connect with',
28
+ },
29
+ ],
30
+ properties: [
31
+ {
32
+ displayName: 'Resource',
33
+ name: 'resource',
34
+ type: 'options',
35
+ noDataExpression: true,
36
+ options: [
37
+ {
38
+ name: 'Group',
39
+ value: 'zaloGroup',
40
+ },
41
+ ],
42
+ default: 'zaloGroup',
43
+ },
44
+ ...ZaloGroupDescription_1.zaloGroupOperations,
45
+ ...ZaloGroupDescription_1.zaloGroupFields,
46
+ ],
47
+ };
48
+ }
49
+ async execute() {
50
+ var _a, _b, _c, _d;
51
+ const items = this.getInputData();
52
+ const returnData = [];
53
+ const resource = this.getNodeParameter('resource', 0);
54
+ const operation = this.getNodeParameter('operation', 0);
55
+ const zaloCred = await this.getCredentials('zaloApi');
56
+ const cookieFromCred = JSON.parse(zaloCred.cookie);
57
+ const imeiFromCred = zaloCred.imei;
58
+ const userAgentFromCred = zaloCred.userAgent;
59
+ const cookie = cookieFromCred !== null && cookieFromCred !== void 0 ? cookieFromCred : (_a = items.find((x) => x.json.cookie)) === null || _a === void 0 ? void 0 : _a.json.cookie;
60
+ const imei = imeiFromCred !== null && imeiFromCred !== void 0 ? imeiFromCred : (_b = items.find((x) => x.json.imei)) === null || _b === void 0 ? void 0 : _b.json.imei;
61
+ const userAgent = userAgentFromCred !== null && userAgentFromCred !== void 0 ? userAgentFromCred : (_c = items.find((x) => x.json.userAgent)) === null || _c === void 0 ? void 0 : _c.json.userAgent;
62
+ const zalo = new zca_js_1.Zalo();
63
+ const _api = await zalo.login({ cookie, imei, userAgent });
64
+ api = _api;
65
+ if (!api) {
66
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), 'No API instance found. Please make sure to provide valid credentials.');
67
+ }
68
+ for (let i = 0; i < items.length; i++) {
69
+ try {
70
+ if (resource === 'zaloGroup') {
71
+ if (operation === 'createGroup') {
72
+ const groupName = this.getNodeParameter('groupName', i);
73
+ const userIds = this.getNodeParameter('userIds', i);
74
+ const userList = userIds.split(',');
75
+ const response = await api.createGroup({ name: groupName, members: userList });
76
+ returnData.push({
77
+ json: response,
78
+ pairedItem: {
79
+ item: i,
80
+ },
81
+ });
82
+ }
83
+ else if (operation === 'getGroupInfo') {
84
+ const groupId = this.getNodeParameter('groupId', i);
85
+ const response = await api.getGroupInfo(groupId);
86
+ const groupInfo = response.gridInfoMap[groupId];
87
+ returnData.push({
88
+ json: {
89
+ response: response,
90
+ groupInfo: groupInfo,
91
+ },
92
+ pairedItem: {
93
+ item: i,
94
+ },
95
+ });
96
+ }
97
+ else if (operation === 'addGroupDeputy') {
98
+ const groupId = this.getNodeParameter('groupId', i);
99
+ const userId = this.getNodeParameter('userId', i);
100
+ const response = await api.addGroupDeputy(groupId, userId);
101
+ returnData.push({
102
+ json: {
103
+ status: "Thành công",
104
+ response: response,
105
+ },
106
+ pairedItem: {
107
+ item: i,
108
+ },
109
+ });
110
+ }
111
+ else if (operation === 'addUserToGroup') {
112
+ const groupId = this.getNodeParameter('groupId', i);
113
+ const userIds = this.getNodeParameter('userIds', i);
114
+ const userList = userIds.split(',');
115
+ const response = await api.addUserToGroup(userList, groupId);
116
+ returnData.push({
117
+ json: response,
118
+ pairedItem: {
119
+ item: i,
120
+ },
121
+ });
122
+ }
123
+ else if (operation === 'changeGroupAvatar') {
124
+ const groupId = this.getNodeParameter('groupId', i);
125
+ const imageUrl = this.getNodeParameter('imageUrl', i);
126
+ const response = await api.changeGroupAvatar(groupId, imageUrl);
127
+ returnData.push({
128
+ json: {
129
+ status: "Thành công",
130
+ response: response,
131
+ },
132
+ pairedItem: {
133
+ item: i,
134
+ },
135
+ });
136
+ }
137
+ else if (operation === 'changeGroupName') {
138
+ const groupId = this.getNodeParameter('groupId', i);
139
+ const newName = this.getNodeParameter('newName', i);
140
+ const response = await api.changeGroupName(groupId, newName);
141
+ returnData.push({
142
+ json: response,
143
+ pairedItem: {
144
+ item: i,
145
+ },
146
+ });
147
+ }
148
+ else if (operation === 'getGroupMembers') {
149
+ const groupId = this.getNodeParameter('groupId', i);
150
+ const limit = this.getNodeParameter('limit', i);
151
+ const response = await api.getGroupInfo(groupId);
152
+ const groupInfo = response.gridInfoMap[groupId];
153
+ const members = ((_d = groupInfo.memberIds) === null || _d === void 0 ? void 0 : _d.slice(0, limit)) || [];
154
+ const admins = groupInfo.adminIds || [];
155
+ const currentMems = groupInfo.currentMems || [];
156
+ const updateMems = groupInfo.updateMems || [];
157
+ const totalMember = groupInfo.totalMember || 0;
158
+ returnData.push({
159
+ json: { members, admins, currentMems, updateMems, totalMember },
160
+ pairedItem: {
161
+ item: i,
162
+ },
163
+ });
164
+ }
165
+ else if (operation === 'getAllGroups') {
166
+ const response = await api.getAllGroups();
167
+ returnData.push({
168
+ json: { response },
169
+ pairedItem: {
170
+ item: i,
171
+ },
172
+ });
173
+ }
174
+ else if (operation === 'removeUserFromGroup') {
175
+ const groupId = this.getNodeParameter('groupId', i);
176
+ const userIds = this.getNodeParameter('userIds', i);
177
+ const userList = userIds.split(',');
178
+ const response = await api.removeUserFromGroup(userList, groupId);
179
+ returnData.push({
180
+ json: response,
181
+ pairedItem: {
182
+ item: i,
183
+ },
184
+ });
185
+ }
186
+ else if (operation === 'createNote') {
187
+ const groupId = this.getNodeParameter('groupId', i);
188
+ const content = this.getNodeParameter('content', i);
189
+ const pinAct = this.getNodeParameter('pinAct', i);
190
+ const options = {
191
+ title: content,
192
+ pinAct: pinAct,
193
+ };
194
+ const response = await api.createNoteGroup(options, groupId);
195
+ returnData.push({
196
+ json: {
197
+ status: "Thành công",
198
+ response: response,
199
+ },
200
+ pairedItem: {
201
+ item: i,
202
+ },
203
+ });
204
+ }
205
+ }
206
+ }
207
+ catch (error) {
208
+ if (this.continueOnFail()) {
209
+ returnData.push({
210
+ json: {
211
+ error: error.message,
212
+ },
213
+ pairedItem: {
214
+ item: i,
215
+ },
216
+ });
217
+ continue;
218
+ }
219
+ throw new n8n_workflow_1.NodeOperationError(this.getNode(), error, {
220
+ itemIndex: i,
221
+ });
222
+ }
223
+ }
224
+ return [returnData];
225
+ }
226
+ }
227
+ exports.ZaloGroup = ZaloGroup;
228
+ //# sourceMappingURL=ZaloGroup.node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ZaloGroup.node.js","sourceRoot":"","sources":["../../../nodes/ZaloGroup/ZaloGroup.node.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { INodeProperties } from 'n8n-workflow';
2
+ export declare const zaloGroupOperations: INodeProperties[];
3
+ export declare const zaloGroupFields: INodeProperties[];