/dialogo-legislativo-notifier

Modulo API Notifier (Mailer) del proyecto "Diálogo Legislativo", para la Legislatura Ciudad Autónoma de Buenos Aires

Primary LanguageJavaScriptGNU General Public License v3.0GPL-3.0

Header

Diálogo Legislativo - API Notifier (Mailer)

Quality Gate Status GitHub license

Este es uno de los cuatros modulos que se requieren descargar, hacer setup e instalar cada uno de los repositorios para poder utilizar Diálogo Legislativo. Para saber mas del conjunto de modulos que compone Diálogo Legislativo, hace click aqui


Setup dialogo-legislativo-notifier

⚠️ NOTAS IMPORTANTES

El siguiente conjunto de sistemas requiere de:

  • Mongo3.6
  • Keycloak 4.4.x o 6.0.x

Sobre Mongo3.6, es necesario que instales mongo 3.6 en tu computadora, con una base de datos llamada "dialogoLegislativo". No hace falta crear alguna collection, eso lo hace la app en inicio.

Keycloak es un sistema open source de identificación y gestión de acceso de usuarios. Es un sistema complejo y para fines de testing, en Democracia en Red sabemos que la instalacion de Keycloak puede ser un bloqueo para intenciones de testing. Para eso, comunicate con nosotros y podemos ayudarte a hacer el setup y utilizar nuestro Keycloak de Democracia en Red. Envianos un correo electronico en mailto:it@democraciaenred.org o contactanos a través de nuestro Twitter.

Ir a la carpeta del repo y instalar las dependencias.

dev/:$ cd dialogo-legislativo-notifier
dev/dialogo-legislativo-notifier:$ npm install

Ahora tenemos que crear un archivo .env que son nuestras variables de entorno

PORT=5000
MONGO_URL=mongodb://localhost
DB_COLLECTION=dialogoLegislativo
ORGANIZATION_EMAIL=##############TODO
ORGANIZATION_NAME=###############TODO
ORGANIZATION_API_URL=http://localhost:4000
NODEMAILER_HOST=##############TODO
NODEMAILER_PASS=##############TODO
NODEMAILER_USER=##############TODO
NODEMAILER_PORT=##############TODO
NODEMAILER_SECURE=true||false
NODE_ENV=development || production
BULK_EMAIL_CHUNK_SIZE=100-or-change-it

Comando para ejecutar:

dev/dialogo-legislativo-notifier:$ npm run dev

ℹ Simple test

Por el momento, intentá hacer un POST a...

/api/sendemail

Con el siguiente body...

{
	"type":"the-type",
	"info": {
		"to":"the-email-to@notify.com",
		"document": {
			"comment":"The original comment",
			"title":"The document title",
			"author":"The document author"
		}
	}
}

Actualmente hay 3 tipos de notificaciones al momento: "comment-resolved", "comment-liked", "document-edited"

Esto se puede realizar rápidamente editando el archivo test-post-data.json y ejecutando: curl -v -H "Content-Type: application/json" -d @test-post-data.json http://localhost:5000/api/send-email


Licencia

El siguiente repositorio es un desarrollo de codigo abierto bajo la licencia GNU General Public License v3.0. Pueden acceder a la haciendo click aqui.