34 lines
1.6 KiB
PHP
34 lines
1.6 KiB
PHP
<?php
|
|
require_once __DIR__ . '/../config/config.php';
|
|
require_once __DIR__ . '/../services/BotService.php';
|
|
$db = Database::getInstance();
|
|
$phone = '573010000003';
|
|
// ensure user
|
|
$user = $db->fetch('SELECT * FROM users WHERE phone_number = ?', [$phone]);
|
|
if (!$user) {
|
|
$id = $db->insert('users', ['phone_number' => $phone, 'status' => 'active', 'created_at' => date('Y-m-d H:i:s')]);
|
|
$user = $db->fetch('SELECT * FROM users WHERE id = ?', [$id]);
|
|
}
|
|
$bot = new BotService();
|
|
|
|
echo "User id: {$user['id']} phone: {$phone}\n";
|
|
|
|
// Simulate incoming message 'Hola'
|
|
$db->insert('conversations', ['user_id' => $user['id'], 'message_id' => 'INC1', 'direction' => 'incoming', 'message_type' => 'text', 'content' => 'Hola', 'status' => 'received', 'created_at' => date('Y-m-d H:i:s')]);
|
|
|
|
// Simulate advisor outgoing reply AFTER the incoming message
|
|
$db->insert('conversations', ['user_id' => $user['id'], 'message_id' => 'OUT1', 'direction' => 'outgoing', 'message_type' => 'text', 'content' => 'Hola, soy el asesor', 'status' => 'sent', 'created_at' => date('Y-m-d H:i:s')]);
|
|
|
|
// Now user sends 'menu'
|
|
echo "--- Sending 'menu' ---\n";
|
|
$user = $db->fetch('SELECT * FROM users WHERE id = ?', [$user['id']]);
|
|
$bot->processMessage($user, 'menu', 'text');
|
|
$user = $db->fetch('SELECT * FROM users WHERE id = ?', [$user['id']]);
|
|
print_r(['after menu user' => $user]);
|
|
|
|
// Simulate user selecting option 2
|
|
echo "--- Sending '2' ---\n";
|
|
$bot->processMessage($user, '2', 'text');
|
|
$rows = $db->fetchAll('SELECT * FROM conversations WHERE user_id = ? ORDER BY created_at DESC LIMIT 5', [$user['id']]);
|
|
print_r($rows);
|