Files
sirpremiumv2/app/Http/Livewire/Whatsapp/ShowConfiguracionBot.php
T
Lizandro GuarnizoandClaude Opus 5 5bc1ec14ca feat(whatsapp): mismo motor, menú y configuración que Telegram y el chat web
WhatsApp dejaba de usar su bot propio (árbol de menús sin login ni compras) y
pasa al motor compartido, así los tres canales quedan iguales.

- TelegramBotService recibe el canal por constructor; flujos, menús, Gemini,
  OCR, validación de pagos y datos bancarios salen de ChatConfig sin duplicar
- WhatsApp no tiene teclados inline: las opciones se envían numeradas y la
  respuesta numérica se traduce al callback equivalente
- estado en caché con prefijo por canal (Telegram conserva el suyo para no
  cerrar las sesiones abiertas)
- descarga de comprobantes y audios por la Graph API de Meta
- respuesta manual del asesor y aviso de vencimiento salen también por WhatsApp
- la pantalla de WhatsApp queda sólo con credenciales; el resto se administra
  en Chat / Bot

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-26 23:24:21 -05:00

61 lines
1.6 KiB
PHP

<?php
namespace App\Http\Livewire\Whatsapp;
use App\Models\WhatsappSystemConfig;
use Livewire\Component;
use Jantinnerezo\LivewireAlert\LivewireAlert;
class ShowConfiguracionBot extends Component
{
use LivewireAlert;
public string $whatsapp_token = '';
public string $phone_number_id = '';
public string $whatsapp_api_url = '';
public string $webhook_verify_token = '';
public string $app_secret = '';
public string $bot_enabled = '1';
protected $rules = [
'whatsapp_token' => 'required|string',
'phone_number_id' => 'required|string',
'whatsapp_api_url' => 'required|url',
'webhook_verify_token' => 'required|string',
'app_secret' => 'required|string',
];
public function mount(): void
{
$keys = [
'whatsapp_token', 'phone_number_id', 'whatsapp_api_url',
'webhook_verify_token', 'app_secret', 'bot_enabled',
];
foreach ($keys as $key) {
$this->{$key} = WhatsappSystemConfig::get($key);
}
}
public function save(): void
{
$this->validate();
$keys = [
'whatsapp_token', 'phone_number_id', 'whatsapp_api_url',
'webhook_verify_token', 'app_secret', 'bot_enabled',
];
foreach ($keys as $key) {
WhatsappSystemConfig::set($key, $this->{$key});
}
$this->alert('success', 'Configuración guardada correctamente.');
}
public function render()
{
return view('livewire.whatsapp.show-configuracion-bot');
}
}