1.- Introducción a SGA para integradores
1. ¿Qué es SGA?
El Sistema de Gestión de Avisos (SGA) proporciona un sistema de envío de avisos y recepción de eventos a las aplicaciones que se integran.
Para el envío de avisos las aplicaciones tiene a su disposición una serie de métodos para poder enviar información a ciudadanos, administradores y empleados públicos tanto por correo electrónico como por sms. Estos avisos son de contenido libre, cada aplicación incluye la información que necesite, por lo que puede utilizarse para:
- Informar a un interesado del cambio de estado de un trámite
- Informar a administradores de aplicaciones de un error detectado
- Informar a un empleado público del cambio de estado de un documento o trámite
- ...
El módulo de eventos permite a aplicaciones suscribirse a un servicio REST en el que se publican eventos generados por aplicaciones.
Ejemplo
Una aplicación "A" genera un evento en SGA cuando finaliza un trámite.
La aplicación "B" está suscrita a ese tipo de eventos, y cuando se produce un cambio lo recibe y realiza las acciones pertinentes.
2.- ¿Qué funcionalidades ofrece SGA mediante sus servicios?
Mediante los servicios web expuestos se ofrecen las siguientes funcionalidades:
- Creación de avisos (envío de correos electrónicos con o sin adjuntos, envío de sms)
- Gestión de eventos
- Recepción de eventos
- Envío de eventos a suscriptores
3.- ¿Cómo funciona SGA?
3.1.- Módulos de SGA
Para poder gestionar toda la información necesaria, la aplicación cuenta con las siguientes herramientas:
Servicios / Core de SGA (SGA_CORE): publica los servicios y tiene la lógica de negocio de la aplicación.
- Portal de administración (SGA_ADMIN): Desde este portal se administran la aplicaciones generadoras y suscritas a eventos. También controla la periodicidad de envío de los avisos por aplicación. Este portal es solo accesible por los administradores de las aplicaciones AMM
El siguiente diagrama muestra la interacción del core con las diversas aplicaciones que utiliza:
3.2.- Avisos de SGA
A través de los métodos SOAP que publica SGA las aplicaciones pueden enviar avisos a través de correo electrónico y/o sms.
Ejemplos
SRT utiliza SGA para enviar un correo electrónico al usuario cuando se genera correctamente el justificante de registro, para avisar de que el organismo proporcionado está dado de baja...
SNT envía un correo electrónico al destinatario de una notificación cuando ésta se crea.
Estos avisos se envían por el método elegido (correo/sms) por el integrador con una periodicidad configurada en SGA.
Ejemplos
SNT: SGA comprueba cada 30 minutos si hay que enviar aviso de puesta a disposición de una notificación a un interesado
SRT: En caso de fallo bloqueante, se envía de manera inmediata un aviso al administrador
Este es un ejemplo de correo electrónico que envía SGA
Cuando existen avisos pendientes, SGA unifica la información en un único mensaje para no saturar el buzón del destinatario:
3.3.- Eventos en SGA
El módulo de gestión de eventos proporciona un sistema centralizado de envío de notificaciones/eventos entre aplicaciones a fin de disminuir el tráfico entre ellas y aumentar el control sobre el flujo de información.
Cómo se comunican las aplicaciones a través de eventos
- Una aplicación "A" genera un evento que comunica a SGA vía webservice SOAP.
- SGA almacena los datos asociados y los procesa cuando se haya especificado para esa aplicación.
- SGA envía la información en JSON a un servicio REST publicado por la aplicación "B" (y todas las aplicaciones subscritas al evento X de la aplicación A)
- La aplicación B consulta lo que necesite y comunica a SGA el resultado.