Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
N
node_crisp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
web
node_crisp
Commits
a70c76b9
Commit
a70c76b9
authored
Nov 25, 2021
by
Gabriel
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Agrega readme
parent
066e709f
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
43 additions
and
0 deletions
+43
-0
README.md
README.md
+43
-0
No files found.
README.md
View file @
a70c76b9
# Crisp Chatbot
Este proyecto es un servidor escrito en NodeJS que brinda la interacción de usuario para los chatbots
de reserva de turnos. Se basa en un servicio de eventos, los cuales recibe de Crisp cada vez que el usuario escribe
un mensaje. Cuando esto sucede, interceptamos el mensaje y manejamos los datos del usuario, sobre todo
para saber en qué paso se encuentra dentro de la conversación, y los datos que fue ingresando.
Actualmente el chatbot se despliega en dos sitios web: reserva de turnos bajo demanda (IPS), y
reserva de turnos programados.
El chatbot de reserva de turnos programados se carga en el sitio de Integrando Pacientes.
El script que lo carga (configurado en el proyecto de dicha aplicación web), postea
además los datos del usuario en la API de Crisp, tales como su nombre, apellido y teléfono.
Dichos datos son recuperados por este servidor la primera vez que el usuario interacciona
con el chatbot de reserva de turnos programados, y los envía a Sendinblue. En Sendinblue
tenemos una lista de correos donde enviamos tutoriales de cómo usar el chatbot.
## Configuración
Los siguientes parametros deben ser configurados en
[
default.json
](
./config/default.json
)
*
credenciales.crisp.identifier: identifier para la integración con Crisp.
*
credenciales.crisp.key: key para la integración con Crisp.
*
credenciales.sendinblue.apikey: API Key de Sendinblue.
*
credenciales.isApiToken: API Token de Integrando Salud.
*
isBaseUrl: URL base de Integrando Salud (https://www.integrandosalud.com/src-v2/public/api/v1)
*
sendingbluBaseUrl: URL base de Sendingblue (https://api.sendinblue.com/v3)
*
sendingblueListId: ID de la lista de correo de Sendinblue (54)
*
crispWebsiteIdIpsTurnosBajoDemanda: Website ID para el website de turnos bajo demanda.
*
crispWebsiteIdIsTurnosProgramados Website ID para el website de turnos programados.
*
idAgendaIPS: ID de la agenda del IPS.
*
idDominioIPS: ID del dominio del IPS.
## Ejecución
Para correr el proyecto, una vez seteada la configuración, correr el siguiente comando:
```npm run start```
## Logs
Los logs se almacenan en el directorio
[
/logs
](
./logs
)
.
*
El archivo
[
error.log
](
./logs/error.log
)
muestra solamente errores.
*
El archivo
[
info.log
](
./logs/error.log
)
muestra tanto errores como logs de información.
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment