fix: GeminiVisionService tries v1+v1beta, shows real API error in Telegram

- Rewrote extraerPago() to try v1 then v1beta for model compatibility
- Returns __error key with actual API message when both fail
- TelegramBotService shows that error in chat instead of generic message
- Also ensures model is read fresh from config (no hardcoded URL in constructor)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Lizandro
2026-07-15 16:13:10 +00:00
co-authored by Claude Sonnet 4.6
parent cfa38e51df
commit 2acb80a7d2
2 changed files with 69 additions and 84 deletions
+5
View File
@@ -187,6 +187,11 @@ class TelegramBotService
return;
}
if (isset($datosPago['__error'])) {
$this->send($chatId, "⚠️ Error al analizar el comprobante:\n`" . $datosPago['__error'] . "`");
return;
}
$resultado = app(PagoValidadorService::class)->validar($datosPago);
$monto = number_format($datosPago['valor'] ?? 0);
$ref = $datosPago['referencia'] ?? 'N/A';