@gamastudio/sendwave-provider 0.0.21-dev → 0.0.21-dev3

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.
@@ -8,6 +8,7 @@ export interface ParsedMessage {
8
8
  media?: string;
9
9
  caption?: string;
10
10
  remoteJid: string;
11
+ messageId?: string;
11
12
  originalPayload: {
12
13
  key: any;
13
14
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamastudio/sendwave-provider",
3
- "version": "0.0.21-dev",
3
+ "version": "0.0.21-dev3",
4
4
  "description": "Librería para interactuar con Sendwave usando configuración dinámica.",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -27,30 +27,33 @@ class SendWaveCore extends node_events_1.EventEmitter {
27
27
  res.end("Media handler not implemented yet");
28
28
  };
29
29
  this.incomingMsg = (req, res) => {
30
- var _a, _b, _c, _d, _e;
30
+ var _a;
31
31
  try {
32
32
  const { body } = req;
33
- console.log(body);
33
+ console.log("EVENTS:", body.event);
34
34
  if (!["messages.upsert", "send.message"].includes(body.event)) {
35
35
  return res.end("Message queued");
36
36
  }
37
+ console.log("INCOMING MSG:", body);
37
38
  const data = (0, parserMsg_1.parseIncomingMsg)(body);
38
39
  if (!data)
39
40
  return res.end("Message queued");
41
+ console.log("DATA PARSER", data);
40
42
  this.flowMessage(data);
41
43
  if (!(data === null || data === void 0 ? void 0 : data.fromMe)) {
42
44
  // Emit message event for queue flow system integration
43
45
  this.emit("user-message", data);
44
- if (this.globalVendorArgs.readMessages)
46
+ if (this.globalVendorArgs.readMessages && data.messageId !== null)
45
47
  this.sender
46
48
  .readMessages({
47
- from: (_b = (_a = data.originalPayload) === null || _a === void 0 ? void 0 : _a.key) === null || _b === void 0 ? void 0 : _b.remoteJidAlt,
48
- messageId: (_d = (_c = data.originalPayload) === null || _c === void 0 ? void 0 : _c.key) === null || _d === void 0 ? void 0 : _d.id,
49
+ from: data.from,
50
+ messageId: data.messageId,
49
51
  })
50
52
  .catch((err) => {
51
53
  console.error("[AutoRead Error]", (err === null || err === void 0 ? void 0 : err.message) || err);
54
+ return res.end("Message queued");
52
55
  });
53
- if ((_e = this.globalVendorArgs.message) === null || _e === void 0 ? void 0 : _e.mergeMessage) {
56
+ if ((_a = this.globalVendorArgs.message) === null || _a === void 0 ? void 0 : _a.mergeMessage) {
54
57
  this.bufferMessage(data);
55
58
  }
56
59
  else {
@@ -1,9 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseIncomingMsg = parseIncomingMsg;
4
- const bot_1 = require("@builderbot/bot"); // Asegúrate de importar utils correctamente
5
4
  function parseIncomingMsg(payload) {
6
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q;
7
5
  try {
8
6
  const msg = payload.data;
9
7
  if (msg.messageType === "reactionMessage")
@@ -12,86 +10,21 @@ function parseIncomingMsg(payload) {
12
10
  return null;
13
11
  }
14
12
  // if (msg.key.fromMe) return null
13
+ const messageId = msg.messageId || "";
15
14
  const fromMe = msg.fromMe;
16
- const remoteJid = msg.remoteJidAlt || "";
17
- const from = msg.remoteJid.includes("lid")
18
- ? msg.remoteJid
19
- : msg.remoteJid.split("@")[0].split(":")[0];
15
+ const remoteJid = msg.remoteJid || "";
16
+ const from = msg.from;
20
17
  // const from = (msg?.remoteJid || "")
21
18
  const to = payload.instance || "";
22
19
  const name = msg.name;
23
- const messageContent = msg.message || {};
24
- const messageType = msg.messageType || Object.keys(messageContent)[0];
25
- let body = "";
26
- let type = messageType;
27
- let media;
28
- let caption;
29
- // 🎯 Primero detección especial de eventos por tipo de mensaje
30
- if (messageContent.locationMessage) {
31
- body = bot_1.utils.generateRefProvider("_event_location_");
32
- type = "locationMessage";
33
- }
34
- else if (messageContent.orderMessage) {
35
- body = bot_1.utils.generateRefProvider("_event_order_");
36
- type = "orderMessage";
37
- }
38
- else if (messageContent.videoMessage) {
39
- body = bot_1.utils.generateRefProvider("_event_media_");
40
- type = "videoMessage";
41
- media = (_a = messageContent.videoMessage) === null || _a === void 0 ? void 0 : _a.url;
42
- caption = ((_b = messageContent.videoMessage) === null || _b === void 0 ? void 0 : _b.caption) || "";
43
- }
44
- else if (messageContent.stickerMessage) {
45
- body = bot_1.utils.generateRefProvider("_event_media_");
46
- type = "stickerMessage";
47
- media = (_c = messageContent.stickerMessage) === null || _c === void 0 ? void 0 : _c.url;
48
- }
49
- else if (messageContent.imageMessage) {
50
- body = bot_1.utils.generateRefProvider("_event_media_");
51
- type = "imageMessage";
52
- media = (_d = messageContent.imageMessage) === null || _d === void 0 ? void 0 : _d.url;
53
- caption = ((_e = messageContent.imageMessage) === null || _e === void 0 ? void 0 : _e.caption) || "";
54
- }
55
- else if (messageContent.documentMessage ||
56
- messageContent.documentWithCaptionMessage) {
57
- body = bot_1.utils.generateRefProvider("_event_document_");
58
- type = "documentMessage";
59
- media =
60
- ((_f = messageContent.documentMessage) === null || _f === void 0 ? void 0 : _f.url) ||
61
- ((_g = messageContent.documentWithCaptionMessage) === null || _g === void 0 ? void 0 : _g.url);
62
- caption =
63
- ((_h = messageContent.documentMessage) === null || _h === void 0 ? void 0 : _h.caption) ||
64
- ((_j = messageContent.documentWithCaptionMessage) === null || _j === void 0 ? void 0 : _j.caption) ||
65
- "";
66
- }
67
- else if (messageContent.audioMessage) {
68
- body = bot_1.utils.generateRefProvider("_event_voice_note_");
69
- type = "audioMessage";
70
- media = (_k = messageContent.audioMessage) === null || _k === void 0 ? void 0 : _k.url;
71
- }
72
- else {
73
- // 🎯 Si no es media especial, hacer parsing normal por tipo
74
- switch (type) {
75
- case "conversation":
76
- body = messageContent.conversation || "";
77
- break;
78
- case "buttonsResponseMessage":
79
- body = ((_l = messageContent.buttonsResponseMessage) === null || _l === void 0 ? void 0 : _l.selectedButtonId) || "";
80
- break;
81
- case "listResponseMessage":
82
- body = ((_m = messageContent.listResponseMessage) === null || _m === void 0 ? void 0 : _m.title) || "";
83
- break;
84
- case "listMessage":
85
- body =
86
- `${(_o = messageContent.listMessage) === null || _o === void 0 ? void 0 : _o.title}${((_p = messageContent.listMessage) === null || _p === void 0 ? void 0 : _p.title) ? "\n" : ""}${(_q = messageContent.listMessage) === null || _q === void 0 ? void 0 : _q.description}` || "";
87
- break;
88
- default:
89
- body = "Tipo de mensaje no soportado aún";
90
- }
91
- }
20
+ const body = msg.body;
21
+ const type = msg.type;
22
+ const media = msg.media;
23
+ const caption = msg.caption;
92
24
  return {
93
25
  fromMe,
94
26
  remoteJid,
27
+ messageId,
95
28
  from,
96
29
  to,
97
30
  name,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gamastudio/sendwave-provider",
3
- "version": "0.0.21-dev",
3
+ "version": "0.0.21-dev3",
4
4
  "description": "Librería para interactuar con Sendwave usando configuración dinámica.",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",