wa-multi-mongodb 3.9.6 → 3.9.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Socket/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Socket/index.ts"],"names":[],"mappings":"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"}
@@ -230,15 +230,25 @@ const startSession = (...args_1) => __awaiter(void 0, [...args_1], void 0, funct
230
230
  (_o = options.onMessageUpdated) === null || _o === void 0 ? void 0 : _o.call(options, data);
231
231
  }
232
232
  if (events["messages.upsert"]) {
233
- const msg = (_p = events["messages.upsert"]
234
- .messages) === null || _p === void 0 ? void 0 : _p[0];
235
- msg.sessionId = sessionId;
236
- msg.saveImage = (path) => (0, save_media_1.saveImageHandler)(msg, path);
237
- msg.saveVideo = (path) => (0, save_media_1.saveVideoHandler)(msg, path);
238
- msg.saveDocument = (path) => (0, save_media_1.saveDocumentHandler)(msg, path);
239
- msg.saveAudio = (path) => (0, save_media_1.saveAudioHandler)(msg, path);
240
- (_q = callback.get(Defaults_1.CALLBACK_KEY.ON_MESSAGE_RECEIVED)) === null || _q === void 0 ? void 0 : _q(Object.assign({}, msg));
241
- (_r = options.onMessageReceived) === null || _r === void 0 ? void 0 : _r.call(options, msg);
233
+ const messages = events["messages.upsert"].messages || [];
234
+ for (const rawMsg of messages) {
235
+ // Skip protocol messages and system messages
236
+ if ((_p = rawMsg.message) === null || _p === void 0 ? void 0 : _p.protocolMessage) {
237
+ continue;
238
+ }
239
+ // Skip messages without content
240
+ if (!rawMsg.message || Object.keys(rawMsg.message).length === 0) {
241
+ continue;
242
+ }
243
+ const msg = rawMsg;
244
+ msg.sessionId = sessionId;
245
+ msg.saveImage = (path) => (0, save_media_1.saveImageHandler)(msg, path);
246
+ msg.saveVideo = (path) => (0, save_media_1.saveVideoHandler)(msg, path);
247
+ msg.saveDocument = (path) => (0, save_media_1.saveDocumentHandler)(msg, path);
248
+ msg.saveAudio = (path) => (0, save_media_1.saveAudioHandler)(msg, path);
249
+ (_q = callback.get(Defaults_1.CALLBACK_KEY.ON_MESSAGE_RECEIVED)) === null || _q === void 0 ? void 0 : _q(Object.assign({}, msg));
250
+ (_r = options.onMessageReceived) === null || _r === void 0 ? void 0 : _r.call(options, msg);
251
+ }
242
252
  }
243
253
  }));
244
254
  return sock;
@@ -423,15 +433,25 @@ const startSessionWithPairingCode = (sessionId_1, phoneNumber_1, ...args_1) => _
423
433
  (_m = options.onMessageUpdated) === null || _m === void 0 ? void 0 : _m.call(options, data);
424
434
  }
425
435
  if (events["messages.upsert"]) {
426
- const msg = (_o = events["messages.upsert"]
427
- .messages) === null || _o === void 0 ? void 0 : _o[0];
428
- msg.sessionId = sessionId;
429
- msg.saveImage = (path) => (0, save_media_1.saveImageHandler)(msg, path);
430
- msg.saveVideo = (path) => (0, save_media_1.saveVideoHandler)(msg, path);
431
- msg.saveDocument = (path) => (0, save_media_1.saveDocumentHandler)(msg, path);
432
- msg.saveAudio = (path) => (0, save_media_1.saveAudioHandler)(msg, path);
433
- (_p = callback.get(Defaults_1.CALLBACK_KEY.ON_MESSAGE_RECEIVED)) === null || _p === void 0 ? void 0 : _p(Object.assign({}, msg));
434
- (_q = options.onMessageReceived) === null || _q === void 0 ? void 0 : _q.call(options, msg);
436
+ const messages = events["messages.upsert"].messages || [];
437
+ for (const rawMsg of messages) {
438
+ // Skip protocol messages and system messages
439
+ if ((_o = rawMsg.message) === null || _o === void 0 ? void 0 : _o.protocolMessage) {
440
+ continue;
441
+ }
442
+ // Skip messages without content
443
+ if (!rawMsg.message || Object.keys(rawMsg.message).length === 0) {
444
+ continue;
445
+ }
446
+ const msg = rawMsg;
447
+ msg.sessionId = sessionId;
448
+ msg.saveImage = (path) => (0, save_media_1.saveImageHandler)(msg, path);
449
+ msg.saveVideo = (path) => (0, save_media_1.saveVideoHandler)(msg, path);
450
+ msg.saveDocument = (path) => (0, save_media_1.saveDocumentHandler)(msg, path);
451
+ msg.saveAudio = (path) => (0, save_media_1.saveAudioHandler)(msg, path);
452
+ (_p = callback.get(Defaults_1.CALLBACK_KEY.ON_MESSAGE_RECEIVED)) === null || _p === void 0 ? void 0 : _p(Object.assign({}, msg));
453
+ (_q = options.onMessageReceived) === null || _q === void 0 ? void 0 : _q.call(options, msg);
454
+ }
435
455
  }
436
456
  }));
437
457
  return sock;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wa-multi-mongodb",
3
- "version": "3.9.6",
3
+ "version": "3.9.7",
4
4
  "description": "Multi Session Whatsapp Library with MongoDB Integration",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -20,7 +20,7 @@
20
20
  "@types/node-cache": "^4.1.3",
21
21
  "@types/qrcode": "^1.5.5",
22
22
  "aws4": "^1.13.2",
23
- "baileys": "^6.7.18",
23
+ "baileys": "github:WhiskeySockets/Baileys#next",
24
24
  "dotenv": "^16.5.0",
25
25
  "link-preview-js": "^3.0.14",
26
26
  "mime": "^3.0.0",
package/readme.md CHANGED
@@ -773,7 +773,15 @@ export default WhatsAppQRComponent;
773
773
 
774
774
  ## Changelog
775
775
 
776
- ### v3.9.6 (latest)
776
+ ### v3.9.7 (latest)
777
+ - **Enhanced Message Processing for Group Chats**: Fixed issues with group message handling and improved message processing architecture
778
+ - **Multiple Message Processing**: Event handler `messages.upsert` now processes all messages in array instead of only the first message
779
+ - **Improved Message Filtering**: Added intelligent filtering to skip protocol messages and empty messages while preserving valid group messages
780
+ - **Enhanced Group Message Support**: Better detection and processing of group messages with participant information
781
+ - **Group vs Private Chat Detection**: Better differentiation between group and private messages
782
+ - **Improved Error Recovery**: Better error handling without changing existing error patterns
783
+
784
+ ### v3.9.6
777
785
  - **Enhanced Pairing Code Support**: Added comprehensive pairing code session management with auto-reconnect capabilities
778
786
  - New `startSessionWithPairingCode()` function for creating sessions using pairing codes
779
787
  - Intelligent session tracking system that preserves pairing code session data across disconnections