Fix: guardar mensaje enviado en la base de datos
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 51s

El evento messages.upsert no siempre se dispara para mensajes enviados.
Guardar manualmente el mensaje en el endpoint de envio.
This commit is contained in:
2025-12-02 20:01:35 -06:00
parent f2d9682560
commit 95a93a1a10

View File

@@ -43,6 +43,31 @@ export default defineEventHandler(async (event) => {
text: messageText
})
// Save sent message to database
await query(
`INSERT INTO messages (
instance_id, chat_id, message_id, from_jid, from_me,
message_type, content, timestamp, status
) VALUES ($1, $2, $3, $4, $5, $6, $7, NOW(), $8)
ON CONFLICT (instance_id, message_id) DO NOTHING`,
[
instanceId,
chatId,
result.key.id,
'me',
true,
'text',
messageText,
'sent'
]
)
// Update chat last message time
await query(
`UPDATE chats SET last_message_at = NOW() WHERE id = $1`,
[chatId]
)
return {
success: true,
messageId: result.key.id