FLAG se divide en cuatro módulos que funcionan de manera independiente respecto a los demás. Por orden en que se ejecutan en el servicio son:
• Módulo de agentes
• Módulo de evaluación de criterios de ejecución • Módulo de ejecución de modelos
• Módulo de envío de alarmas.
Hasta este momento se han explicado los tres primeros, con sus cambios y mejoras respecto a la versión anterior. El módulo que resta es el de envío de alarmas a los clientes. Éste fue inicialmente desarrollado por Velázquez (2009), sin embargo, la parte de la captura y evaluación de criterios de alarmas fueron mejorados en el presente trabajo, como se explicó en las secciones 3.6 y 6.6, respectivamente. El proceso que sigue el envío de alarmas se explica a continuación.
Este módulo inicia desde donde queda la ejecución de modelos, lo cual es la actualización y/o inserción de nuevos registros en la tabla de alarmas generadas. Se reprodujo la Tabla 60 en la Tabla 61 mostrada a continuación para mejor comprensión de los envíos.
Tabla 61. Tabla de “alarmas generadas” (copia)
CAMPO TIPO DESCRIPCIÓN
ID cliente Entero Nombre Texto E – mail Texto Teléfono Texto Dirección Texto Fecha y hora de la
ejecución Date Fecha y hora de la ejecución que generó esta alarma Modo Byte Modo de aviso de la alarma
Mensaje Texto Mensaje generado
Mensaje enviado Boolean Falso hasta que se envía
Fecha y hora del
envío del mensaje Texto/date
Hubo error Boolean Si hay algún error en el envío del SMS o el mail, aquí se reporta para el reenvío
Tuvo respuesta Boolean Cuando se haya recibido el aviso
Última llamada
intentada Texto/date Se reporta la fecha y hora del último intento de comunicación con el cliente por teléfono
El intervalo de tiempo entre ejecuciones de envíos será definido por el administrador del sistema, sin embargo, se debe tomar en cuenta que, cuando el servicio esté funcionando y haya muchos usuarios registrados, la actualización de las alarmas generadas será cada minuto ya que es el tiempo mínimo que tardan los agentes en conseguir valores.
Los datos de la tabla de alarmas generadas que no cambian, después de creado el registro, son: id-cliente, nombre, mail, teléfono, dirección, fecha en que se generó el aviso, modo y mensaje generado. La fecha de ejecución y los datos del cliente sirven para bitácora, es decir, se quedan en la base con el fin de tener registrado quién y cuándo generó un aviso. Estos datos también se usan de otra forma, como se verá a continuación.
Dependiendo del modo de envío es como se hará uso de los campos de la tabla. Si el modo es vía correo electrónico, se usa la dirección de correo y se envía el “mensaje” guardado en el mismo registro. De esta forma el cliente puede consultar su mail y así enterarse del comportamiento de su modelo.
Si el modo es de tipo SMS, se usa el número telefónico y se envía el “mensaje” del registro. Para el caso de la llamada telefónica también se usa este número, solo que el envío es por medio de un mensaje de voz (se hace de forma automática) o manualmente, por un empleado de FLAG.
Cuando el programa de ejecución de los envíos de alarmas se dispone a leer la tabla de alarmas generadas, al obtener un registro, el primer campo en evaluar es “mensaje enviado”; si su valor es verdadero, se descarta y se prosigue con el siguiente registro, ya que el aviso fue ejecutado satisfactoriamente. En cada intento de envío siempre se actualiza el campo “fecha y hora de envío del mensaje”. Después de esto hay dos posibles resultados: que el mensaje se haya recibido o haya fallado. Para esto se usan los campos de la tabla: “hubo error” y “tuvo respuesta”. Si el modo de aviso es un mail o un SMS, se determina si hubo error al entregar el mensaje; esto puede ocurrir al fallar la conexión de internet, caída del servidor del servicio de correo, falta de señal del teléfono, entre otras cosas. En caso de que el modo sea llamada telefónica, se usa el campo “tuvo respuesta”. Si el cliente no atiende la llamada, no hay señal, no tiene saldo en el teléfono, se desvía la llamada, etc., “tuvo respuesta” queda como falso.
Como se dijo, los envíos se harán en un intervalo de tiempo y cada vez que se hagan, los campos mencionados se actualizarán. Si fallan los mensajes, entonces “habrá error” y si falla la llamada entonces “no tendrá respuesta” y, para esto último, se registra la fecha y hora de la “última llamada intentada”. El campo “mensaje enviado” se vuelve verdadero hasta que no haya fallos en el envío.
Nota sobre llamadas telefónicas. Con respecto a este tipo de aviso, se mencionó
que puede generarse de dos formas: mensaje automático y manual. Cuando el mensaje se efectúa de forma automática, el aviso se vuelve limitado, es decir, cuando el cliente contesta su teléfono solo recibe el mensaje de voz conteniendo el texto guardado en “mensaje”. En cambio, si se hace manualmente hay la posibilidad de que el empleado de FLAG le dé más detalles de su modelo al cliente, los cuales puede ser las VMR que cambiaron y que afectaron su modelo, sus otras VCL que cambiaron, nuevos valores adquiridos, etc.
El aviso de tipo llamada telefónica aún está en modo de afinación, por lo que posteriormente habrá mejoras para bien del servicio y del cliente potencial que hará uso de él.
El módulo de envíos fue desarrollado por Velázquez (2009) en su proyecto de investigación con más detalle, además de que fue publicado por Bauer y Velázquez (2010) en la revista Informing Science, en caso de que el lector quiera profundizar en el tema.