diff --git a/server/api/messages/[instanceId]/react.post.ts b/server/api/messages/[instanceId]/react.post.ts index bc86ae2..6501184 100644 --- a/server/api/messages/[instanceId]/react.post.ts +++ b/server/api/messages/[instanceId]/react.post.ts @@ -39,12 +39,13 @@ export default defineEventHandler(async (event) => { const rawMessage = msgResult.rows[0].raw_message const jid = rawMessage?.key?.remoteJid + const fromMe = rawMessage?.key?.fromMe || false if (!jid) { throw createError({ statusCode: 400, message: 'Could not determine message JID' }) } - await baileysManager.sendReaction(instanceId, jid, body.messageId, body.emoji) + await baileysManager.sendReaction(instanceId, jid, body.messageId, body.emoji, fromMe) return { success: true, messageId: body.messageId, emoji: body.emoji } } catch (error: any) { diff --git a/server/services/baileys/manager.ts b/server/services/baileys/manager.ts index 50c1905..cb26776 100644 --- a/server/services/baileys/manager.ts +++ b/server/services/baileys/manager.ts @@ -587,7 +587,7 @@ class BaileysManager extends EventEmitter { /** * Send a reaction to a message */ - async sendReaction(instanceId: string, jid: string, messageId: string, emoji: string): Promise { + async sendReaction(instanceId: string, jid: string, messageId: string, emoji: string, fromMe: boolean = false): Promise { const managed = this.instances.get(instanceId) if (!managed?.socket) { throw new Error('Instance not connected') @@ -598,11 +598,12 @@ class BaileysManager extends EventEmitter { text: emoji, key: { remoteJid: jid, - id: messageId + id: messageId, + fromMe: fromMe } } }) - console.log(`[BaileysManager] Sent reaction ${emoji} to message ${messageId}`) + console.log(`[BaileysManager] Sent reaction ${emoji} to message ${messageId} (fromMe: ${fromMe})`) } /** diff --git a/server/utils/mcp.ts b/server/utils/mcp.ts index e0c9d48..ac7bfb4 100644 --- a/server/utils/mcp.ts +++ b/server/utils/mcp.ts @@ -1094,12 +1094,13 @@ export async function handleToolCall(toolName: string, args: Record const rawMessage = msgResult.rows[0].raw_message const jid = rawMessage?.key?.remoteJid + const fromMe = rawMessage?.key?.fromMe || false if (!jid) { return mcpError('No se pudo determinar el JID del mensaje') } - await baileysManager.sendReaction(instanceId, jid, messageId, emoji) + await baileysManager.sendReaction(instanceId, jid, messageId, emoji, fromMe) return mcpSuccess({ ok: true,