1. Creación de Bots en Dify
Puede configurar diversos bots en Dify utilizando triggers para iniciar las interacciones. La configuración del bot puede realizarse a través del endpoint/dify/create/{{instance}}.
Endpoint para Creación de Bots
Endpoint
Cuerpo de la Solicitud
Aquí hay un ejemplo de cuerpo JSON para configurar un bot en Dify:Explicación de los Parámetros
enabled: Activa (true) o desactiva (false) el bot.botType: Tipo del bot Dify (chatBot,textGenerator,agent,workflow).apiUrl: URL de la API de Dify (sin la/al final).apiKey: Clave de la API proporcionada por Dify.- Opciones:
triggerType: Tipo de trigger para iniciar el bot (allokeyword).triggerOperator: Operador utilizado para evaluar el trigger (contains,equals,startsWith,endsWith,regex,none).triggerValue: Valor utilizado en el trigger (por ejemplo, una palabra clave o regex).expire: Tiempo en minutos después del cual el bot expira, reiniciándose si la sesión expiró.keywordFinish: Palabra clave que finaliza la sesión del bot.delayMessage: Retraso (en milisegundos) para simular la escritura antes de enviar un mensaje.unknownMessage: Mensaje enviado cuando la entrada del usuario no es reconocida.listeningFromMe: Define si el bot debe escuchar los mensajes enviados por el propio usuario (trueofalse).stopBotFromMe: Define si el bot debe detenerse cuando el propio usuario envía un mensaje (trueofalse).keepOpen: Mantiene la sesión abierta, evitando que el bot sea reiniciado para el mismo contacto.debounceTime: Tiempo (en segundos) para juntar varios mensajes en uno solo.ignoreJids: Lista de JIDs de contactos que no activarán el bot.
2. Configuraciones Predeterminadas de Dify
Puede definir configuraciones predeterminadas que se aplicarán en caso de que los parámetros no sean proporcionados durante la creación del bot.Endpoint para Configuraciones Predeterminadas
Endpoint
Cuerpo de la Solicitud
Aquí hay un ejemplo de configuración predeterminada:Explicación de los Parámetros
expire: Tiempo en minutos después del cual el bot expira.keywordFinish: Palabra clave que finaliza la sesión del bot.delayMessage: Retraso para simular la escritura antes de enviar un mensaje.unknownMessage: Mensaje enviado cuando la entrada del usuario no es reconocida.listeningFromMe: Define si el bot debe escuchar los mensajes enviados por el propio usuario.stopBotFromMe: Define si el bot debe detenerse cuando el propio usuario envía un mensaje.keepOpen: Mantiene la sesión abierta, evitando que el bot sea reiniciado para el mismo contacto.debounceTime: Tiempo para juntar varios mensajes en uno solo.ignoreJids: Lista de JIDs de contactos que no activarán el bot.difyIdFallback: ID del bot de respaldo que se utilizará en caso de que ningún trigger sea activado.
3. Gestión de Sesiones de Dify
Puede gestionar las sesiones del bot, cambiando el estado entre abierta, pausada o cerrada para cada contacto específico.Endpoint para Gestión de Sesiones
Endpoint
Cuerpo de la Solicitud
Aquí hay un ejemplo de cómo gestionar el estado de la sesión:Explicación de los Parámetros
remoteJid: JID (identificador) del contacto en WhatsApp.status: Estado de la sesión (opened,paused,closed).
4. Variables Automáticas y Especiales en Dify
Cuando se inicia una sesión de Dify, algunas variables predefinidas se envían automáticamente:Explicación de las Variables Automáticas
remoteJid: JID del contacto con quien el bot está interactuando.pushName: Nombre del contacto en WhatsApp.instanceName: Nombre de la instancia que está ejecutando el bot.serverUrl: URL del servidor donde la Evolution API está alojada.apiKey: Clave de API usada para autenticar las solicitudes.
Variables Especiales para Workflows
En el caso de bots de tipo workflow, el mensaje recibido se envía en la variablequery dentro de los inputs. Esto permite que el workflow procese el mensaje directamente basándose en el contenido de la variable query.