Primeros pasos
@bot/provider
Avanzado
Comunidad
addAnswer
Esta funcion se importa desde @bot-whatsapp/bot
Se encarga de responder al usuario, puedes responder un texto o archivo adjunto.
const { addKeyword } = require('@bot-whatsapp/bot')
const flowWelcome = addKeyword('hola').addAnswer('Hola y bievendido! como puedo ayudarte')
El mensaje'Hola y bievendido! como puedo ayudarte'
se enviara como un mensaje de whatsapp
Enviar más de un mensaje
const { addKeyword } = require('@bot-whatsapp/bot')
const flowWelcome = addKeyword('hola')
.addAnswer('Hola!')
.addAnswer('Bienvenido')
.addAnswer('¿Como puedo ayudarte?')
Se enviaran (3) tres mensajes por separados consecutivamente. Hola
, Bienvenido
, ¿Como puedo ayudarte?
Enviar mensaje con salto de linea
const { addKeyword } = require('@bot-whatsapp/bot')
const flowWelcome = addKeyword('hola')
.addAnswer(['Hola!','Bienvenido','¿Como puedo ayudarte?'])
Se enviara (1) un mensaje pero con saltos de linea
Retardo
Enviar un mensaje con 1000ms = 1segundo
de espera
const { addKeyword } = require('@bot-whatsapp/bot')
const flowString = addKeyword('hola').addAnswer('Este mensaje se enviara 1 segundo despues', {
delay: 1000,
})
Enviar imagen, video, pdf: Url externa
Puedes enviar archivos desde url externas publicas o desde archivos locales.
const { addKeyword } = require('@bot-whatsapp/bot')
const flowString = addKeyword('hola').addAnswer('Este mensaje envia una imagen', {
media: 'https://i.imgur.com/0HpzsEm.png',
})
Esta imagen https://i.imgur.com/0HpzsEm.png
se envia desde una URL externa.
Enviar imagen, video, pdf: locales
Dependiendo de tus sistema operativo asegurate de colocar bien la ruta absoluta
const { addKeyword } = require('@bot-whatsapp/bot')
const flowString = addKeyword('hola').addAnswer('Este mensaje envia una imagen', {
media: 'c:/ruta/imagen.png', //'c:\ruta\imagen.png'
})
Botones
NOTA Los botones funcionan bien en Meta o Twilio. En los proveedores gratuitos son inestables.
const { addKeyword } = require('@bot-whatsapp/bot')
const flowString = addKeyword('hola').addAnswer('Este mensaje envia tres botones', {
buttons: [{ body: 'Boton 1' }, { body: 'Boton 2' }, { body: 'Boton 3' }],
})
Capture
En algunas ocaciones necesitamos esperar por la respuesta del usuario para ello usamos capture
const { addKeyword } = require('@bot-whatsapp/bot')
const flowString = addKeyword('hola').addAnswer('¿Cual es tu email?', {
capture: true,
})
Ejemplos
En este ejemplo, se crean dos flujos de conversación: uno para saludar al usuario cuando escribe "hola" y otro para despedirse cuando escribe "adios".
Cada flujo tiene una respuesta predefinida que se mostrará al usuario. Puedes personalizar las respuestas según tus necesidades.
const { addKeyword } = require('@bot-whatsapp/bot')
const flowSaludo = addKeyword('hola')
.addAnswer('¡Hola! ¿En qué puedo ayudarte?')
const flowDespedida = addKeyword('adios')
.addAnswer('¡Hasta luego! Espero haberte sido de ayuda. ¡Vuelve pronto!')
En este ejemplo, se crean dos flujos de conversación: uno para el saludo y otro para la despedida.
Además, se agrega un flujo adicional para enviar una imagen cuando se recibe el mensaje 'imagen'.
const flowSaludo = addKeyword('hola').addAnswer('¡Hola! ¿En qué puedo ayudarte?');
const flowDespedida = addKeyword('adios').addAnswer('¡Hasta luego! Espero haberte sido de ayuda.');
const flowImagen = addKeyword('imagen').addAnswer('¡Aquí tienes una imagen!', { media: 'https://ruta/a/imagen.jpg' });
const adapterFlow = createFlow([flowSaludo, flowDespedida, flowImagen]);
const adapterProvider = createProvider(WebWhatsappProvider);
createBot({
flow: adapterFlow,
provider: adapterProvider,
database: adapterDB,
});
- 📄 Editar esta pagina
Forma parte de esta comunidad mejorando la documentación siente libre de poder agregar o editar lo que quieras