Funcionalidad
Esta funcionalidad es exclusiva de ebavel66 del producto que otorga la posibilidad de:
- Crear una función de workprocess "sendNotification" que permita la posibilidad de configurar mensajes por un array de usuarios.
- Y/o por un array roles.
En la aplicación de eBavel en el entorno de producción, las notificaciones se visualizarán a través de un icono en forma de campana, ubicado en la pantalla principal, de lado derecho a un costado donde se visualiza el usuario con el que se está iniciada la sesión.
Alcances
- El Icono de las notificaciones, siempre será visible.
- El icono muestra un contador que permite entender que hay mensajes nuevos NO LEIDOS Los mensajes aparecerán en una lista, mostrando claramente aquellos NO LEIDOS de los ya previamente LEIDOS, así como una lista con la totalidad de los mensajes
- cada mensaje mantiene un "estatus" para saber si ya ha sido leído o no leído, la campana deberá seguir mostrando el contador siempre y cuando existan mensajes sin leer
- El mensaje debe tener un título, descripción, acción, gravedad y autor de la notificación [esto se verá más a fondo después]
- Él envió de las notificaciones será por medio de una función de workprocess para enviar las notificaciones se usara la nueva función "SendNotification".
- La campana se actualizará al hacer Refresh a la página (No se actualiza en tiempo real).
- Se visualizara únicamente los mensajes que van destinados a tu usuario, no se podrán ver notificaciones ajenas a tu usuario, y mucho menos marcarlas como leídas o borrarlas.
- El usuario podrá borrar la notificación haciendo clic al icono de borrado
Limitantes
No se soporta lo siguientes puntos:
- Notificaciones push.
- Agregar campo richtext para introducir html.
- Agregar Imagenes o documentos.
- Versión Movil.
- Agente que procese los mensajes.
- Agregar un tiempo de vigencia a la notificación.
Sintaxis Nueva Funcionalidad
Como se mencionó anteriormente, las notificaciones de la campanita se generarán vía workprocess, la sintaxis de la nueva funcionalidad es la siguiente:
sendNotification([
"users" => [“usuario 1”, “usuario 2”,...”Usuario N”],
"roles" => ["Rol 1”, “Rol 2”,...”Rol N"],
"rolesId" => ["Rol 1”, “Rol 2”,...”Rol N"],
"title" => “Notificacion nueva”,
"description" => “Nuevo usaurio registrado”,
"action" => [],
"severity" => "Info",
"authorNotification" => "Ebavel"
]);
Donde:
"users" | "roles" | "rolesId": Determinan el (o los) usuarios a los que les llegaran las notificaciones.
Nota: Se puede colocar uno de estos, dos de ellos, o los tres si así lo desea, la sintaxis NO requiere que obligatoriamente coloque todas las opciones
"title": Aquí se coloca el encabezado que tendrá la notificación.
"description": el mensaje que contendrá la notificación.
"action": un hipervínculo, que puede redirigirte a un link externo, a una forma de Ebavel o un registro especifico de Ebavel.
Sintaxis del action:
La sintaxis puede ser de 3 tipos:
1. Public link ["type"=> "publiclink", "taglink"=>"Redirige a google","url"=> "http://google.com"]
2. Form ["type"=> "Form", "taglink"=>"Redirige a forma","form"=> "FRM_B3A16533","view"=> "FRMW_0D3815C8"]
3. Record ["type"=> "Record", "taglink"=>"Redirige a registro","form"=> "FRM_B3A16533","view"=> "FRMW_0D3815C8","id"=> 13]
"severity": determina el tipo de notificacion, puede ser “info”, “success”, “warning”, “error”
"authorNotification": como dice el nombre, asignar un nombre como autor [Opcional, puede quitarse]