02. CITAS AUTOMATICO

Recibir los mensajes de WhatsApp para agendar la cita

En la primera parte de este curso, dimos un paso crucial: la instalación de nuestro sistema de citas kimai. Y ahora vamos a recibir los mensajes de WhatsApp para agendar la cita. Esto fue fundamental para comenzar a automatizar nuestro proceso de agendamiento y mejorar significativamente nuestra eficiencia.

Ahora, estamos listos para adentrarnos en la segunda fase de nuestra transformación digital: “Recibir los mensajes de WhatsApp para agendar la cita”.

En esta sección, vamos a explorar cómo nuestro sistema puede interactuar directamente con nuestros clientes a través de la plataforma de mensajería más popular del mundo: WhatsApp. Aprenderemos cómo nuestro sistema puede recibir mensajes de WhatsApp, interpretar su contenido y utilizar esa información para agendar citas.

Vamos a desglosar este proceso y aprenderemos:

  1. Cómo se pueden recibir mensajes de WhatsApp a través de una API.
  2. Cómo nuestro sistema puede interpretar y entender estos mensajes.
  3. Cómo se puede utilizar esta información para agendar citas en nuestro sistema.

Ejemplo de nuestro sistema

Primero, consideremos un sistema en el que el paciente interactúa con un bot basado en ChatGPT a través de WhatsApp para programar citas médicas.

  1. El paciente inicia la conversación: El paciente envía un mensaje al número de WhatsApp del bot de la clínica, diciendo algo como “Hola, buenas noches”.
  2. ChatGPT recoge y procesa la solicitud: El sistema de IA, entrenado para entender y responder a las solicitudes de los pacientes, reconoce que es un saludo y se presenta y dice que es lo que puede hacer diciendo algo como: “Hola soy una asistente del *X clínica* en que te puedo ayudar”.
  3. El paciente continua: El paciente envía “Me siento mal”.
  4. ChatGPT pide mas informacion: Dime cuáles son tus síntomas que te duele.
  5. El paciente proporciona los detalles: “Me duele el estomago”.
  6. ChatGPT verifica la disponibilidad: El bot verifica el tipo de malestar y agenda una cita diciendo: tiene una cita agendada a las 8:00 am el dia martes 20 de Mayo 2023 en el area de Medicina general.

Recibir mensajes desde WhatsApp

Creamos una app en Facebook

Enviar mensajes con Api Oficial de WhatsApp en PHP
Vamos la url de Meta developers Meta for Developers (facebook.com) y creamos una cuenta de developer y accedemos a my apps

O podemos aceder a este link Todas las apps – Meta for Developers (facebook.com)

image 31
Damos click en Crear app

image 32
Seleccionamos cualquier opcion y damos click en siguiente

image 33
Colocamos un nombre a nuestra app, nuestro correo y click en Crear app

image 34
Bajamos hasta encontrar WhatsApp y damos click en configurar

image 35
damos click en continuar

Configuramos el Api de WhatsApp

image 36
Hacemos click en Primeros pasos o en Empezar a usar la API

image 37
Hacemos click en Seleccionar un numero de telfono destinatario, seleccionamos el pais y colocamos un numero que recibira las pruebas

image 38
Recibiremos un numero de 5 dígitos que ingresaremos aqui y damos click en siguiente

image 49
En Basica, colocamos la url de las políticas de privacidad de nuestra página web, bajamos y damos click en guardar y activamos el modo desarrollo

image 39
Si damos click en enviar mensaje nos llegara un Mensaje a nuestro numero de WhatsApp

image 40
Este es el mensaje que recibimos

Recibir mensajes con Api Oficial de WhatsApp en PHP

image 12
En kimai\public\ creamos la carpeta whatsapp el archivo index.php

<?php
/*
 * VERIFICACION DEL WEBHOOK
*/
//TOQUEN QUE QUERRAMOS PONER 
$token = 'HolaNovato';
//RETO QUE RECIBIREMOS DE FACEBOOK
$palabraReto = $_GET['hub_challenge'];
//TOQUEN DE VERIFICACION QUE RECIBIREMOS DE FACEBOOK
$tokenVerificacion = $_GET['hub_verify_token'];
//SI EL TOKEN QUE GENERAMOS ES EL MISMO QUE NOS ENVIA FACEBOOK RETORNAMOS EL RETO PARA VALIDAR QUE SOMOS NOSOTROS
if ($token === $tokenVerificacion) {
    echo $palabraReto;
    exit;
}
$textoCita="He creado su cita para el dia";
/*
 * RECEPCION DE MENSAJES
 */
//LEEMOS LOS DATOS ENVIADOS POR WHATSAPP
$respuesta = file_get_contents("php://input");
//CONVERTIMOS EL JSON EN ARRAY DE PHP
$respuesta = json_decode($respuesta, true);
//EXTRAEMOS EL MENSAJE DEL ARRAY
$mensaje = $respuesta['entry'][0]['changes'][0]['value']['messages'][0]['text']['body'];
//EXTRAEMOS EL TELEFONO DEL ARRAY
$telefonoCliente = $respuesta['entry'][0]['changes'][0]['value']['messages'][0]['from'];
//EXTRAEMOS EL ID DE WHATSAPP DEL ARRAY
$id = $respuesta['entry'][0]['changes'][0]['value']['messages'][0]['id'];
//EXTRAEMOS EL TIEMPO DE WHATSAPP DEL ARRAY
$timestamp = $respuesta['entry'][0]['changes'][0]['value']['messages'][0]['timestamp'];
//SI HAY UN MENSAJE
if ($mensaje != null) {
    $pregunta = $mensaje;
    file_put_contents("mensaje.txt", $pregunta);
}

Codigo en github: programadornovato/Automatizar-citas-con-ChatGpt-y-WhatsApp (github.com)

image 15
Vamos a ngrok.com no logueamos y descargamos ngrok y los descomprimimos

image 14
image 16
Obtenemos la url que no entrega ngrok

image 60
Vamos a la configuracion, damos click en editar y colocamos la url de nuestro servidor ngrok, el token y damos click en Verificar

image 61
Damos click en Administrar, suscribir en messages y click en listo

image 17
Nos contestamos el mensaje con un hola y se tiene que crear el archivo mensaje.txt y como contenido el texto enviado por whatsapp

Los comentarios están cerrados.