Saludo Personalizado con Nombre desde WhatsApp
Clase 12 de 28 • Curso de ChatBot con WhatsApp API
Resumen
¿Cómo personalizar el saludo de bienvenida de un bot?
Un saludo personalizado puede hacer que la interacción con un bot sea mucho más cálida y amigable. Implementar esta función en tu chatbot no solo mejora la experiencia del usuario, sino que también da un toque personal a cada mensaje. A continuación te explicamos cómo lo hemos logrado usando el senderInfo para obtener y usar el nombre del usuario.
¿Cómo obtener el nombre del usuario?
Para personalizar el saludo, primero necesitas obtener el nombre del usuario que interactúa con el bot. Esto se hace a través de una variable llamada senderInfo, que contiene información del remitente. Sigue estos pasos:
- En el controller de tu aplicación, asegúrate de mandar el senderInfo al manejar los mensajes.
- Usa una función para extraer el nombre del usuario del senderInfo. Esta función la llamaremos
getSenderName
. - Si el nombre no está disponible, utiliza el número identificador de WhatsApp o deja un mensaje genérico, como "Hola estudiante".
Aquí hay un ejemplo de cómo puedes obtener el nombre:
function getSenderName(senderInfo) {
return senderInfo.profile.name || senderInfo['wa-id'] || '';
}
¿Cómo implementar un mensaje de saludo personalizado?
Una vez que tienes el nombre del usuario, el siguiente paso es integrar este nombre en un mensaje de bienvenida utilizando plantillas de literales (template literals en JavaScript):
const name = getSenderName(senderInfo);
const welcomeMessage = `Hola, ${name}, bienvenido a MedPet. ¿En qué puedo ayudarte hoy?`;
Al utilizar plantillas de literales, puedes manipular el mensaje fácilmente y lograr que el texto se vea más natural y acogedor.
¿Qué hacer cuando el nombre es un nombre completo?
Uno de los desafíos es que, a menudo, los usuarios configuran su nombre completo en su perfil de WhatsApp. A veces, incluir los apellidos no es necesario para un saludo cálido tipo "Hola, [nombre]". Para solucionar esto, puedes usar expresiones regulares (regex) que extraigan solo el primer nombre.
Por ejemplo, podrías implementar algo así:
function getFirstName(name) {
const firstName = name.split(' ')[0]; // Divide el nombre completo y toma la primera porción
return firstName;
}
Desafíos y recomendaciones
- Evaluar la diversidad de los nombres: Considera que algunos usuarios podrían tener caracteres especiales o emojis en sus nombres. Asegúrate de que tu lógica los maneje adecuadamente.
- Mejora constante: Prueba tu bot con diferentes usuarios y casos para afinar su funcionalidad.
- Comunicación y personalización: Ofrecer saludos personalizados ayuda a construir una relación más cercana con los usuarios, incrementando el engagement y mejorando su experiencia.
¡Con estos consejos y el ejemplo de implementación, estás listo para crear un saludo más cálido y personalizado para los usuarios de tu bot! ¡Continúa explorando y mejorando tu bot para ofrecer la mejor experiencia posible!