Update WhatsAppService.php
This commit is contained in:
@@ -399,8 +399,8 @@ class WhatsAppService
|
||||
*/
|
||||
private function sendMessage($data)
|
||||
{
|
||||
// Construir URL correctamente
|
||||
$url = rtrim($this->apiUrl, '/') . '/' . $this->phoneNumberId . '/conversations';
|
||||
// Construir URL correcto para enviar mensajes (use /messages)
|
||||
$url = rtrim($this->apiUrl, '/') . '/' . $this->phoneNumberId . '/messages';
|
||||
|
||||
// Debug log
|
||||
error_log("WhatsApp API URL: " . $url);
|
||||
@@ -409,9 +409,24 @@ class WhatsAppService
|
||||
|
||||
$response = $this->makeRequest('POST', $url, $data);
|
||||
|
||||
// Guardar mensaje enviado en la base de datos
|
||||
if ($response && isset($response['conversations'][0]['id'])) {
|
||||
$this->saveOutgoingMessage($data, $response);
|
||||
// Guardar mensaje enviado en la base de datos (respuesta puede contener 'messages' o 'conversations')
|
||||
$sentMessageId = null;
|
||||
if ($response) {
|
||||
if (isset($response['messages'][0]['id'])) {
|
||||
$sentMessageId = $response['messages'][0]['id'];
|
||||
} elseif (isset($response['conversations'][0]['id'])) {
|
||||
$sentMessageId = $response['conversations'][0]['id'];
|
||||
}
|
||||
}
|
||||
|
||||
if ($response && $sentMessageId) {
|
||||
// Asegurar que la estructura de respuesta para saveOutgoingMessage se mantenga pasando el id
|
||||
$responseWrapper = $response;
|
||||
// Normalizar para compatibilidad con saveOutgoingMessage
|
||||
if (!isset($responseWrapper['conversations']) && $sentMessageId) {
|
||||
$responseWrapper['conversations'][0]['id'] = $sentMessageId;
|
||||
}
|
||||
$this->saveOutgoingMessage($data, $responseWrapper);
|
||||
}
|
||||
|
||||
return $response;
|
||||
|
||||
Reference in New Issue
Block a user