diff --git a/api/webhook.php b/api/webhook.php index 2ec6ec5..1feb060 100644 --- a/api/webhook.php +++ b/api/webhook.php @@ -395,30 +395,31 @@ class WhatsAppWebhook { } } - // Crear notificación para UI (nuevo mensaje entrante) - try { - $this->db->insert('notifications', [ + // Notificaciones y SSE solo para el canal principal (no turnero) + if (!$isTurnero) { + try { + $this->db->insert('notifications', [ + 'user_id' => $user['id'], + 'type' => 'incoming_message', + 'message' => substr($messageText, 0, 250), + 'data' => json_encode(['message_id' => $messageId]), + 'is_read' => 0, + 'created_at' => date('Y-m-d H:i:s') + ]); + } catch (Exception $e) { + error_log('Failed to create notification: ' . $e->getMessage()); + } + + $this->pushSSEEvent('new_message', [ 'user_id' => $user['id'], - 'type' => 'incoming_message', + 'phone_number' => $user['phone_number'], + 'name' => $user['name'] ?? ($phoneNumber ?? ''), 'message' => substr($messageText, 0, 250), - 'data' => json_encode(['message_id' => $messageId]), - 'is_read' => 0, - 'created_at' => date('Y-m-d H:i:s') + 'message_type' => $messageType, + 'timestamp' => date('Y-m-d H:i:s') ]); - } catch (Exception $e) { - error_log('Failed to create notification: ' . $e->getMessage()); } - // Empujar evento SSE en tiempo real - $this->pushSSEEvent('new_message', [ - 'user_id' => $user['id'], - 'phone_number' => $user['phone_number'], - 'name' => $user['name'] ?? $from, - 'message' => substr($messageText, 0, 250), - 'message_type' => $messageType, - 'timestamp' => date('Y-m-d H:i:s') - ]); - // Procesar con bot solo si el mensaje llegó al número principal if (!$isTurnero) { try {