Posee un sistema de reportes muy bueno, si leemos la historia del proyecto su comienzo fue como un sistema de reportería para Asterisk y no como un sistema de comunicaciones unificadas. También maneja un esquema de usuarios/permisos en el cual permite generar distintos grupos con diferentes accesos a cada uno de los features.
Una de las cosas que entiendo le hace falta es poder generar un usuario/grupo para ver los reportes de llamadas sin necesidad de darle permisos de administrador. Si bien se puede crear, este puede ver únicamente los registros de la extensión asignada y no de todas las extensiones.
Por que necesitaría un usuario ver todos los reportes y no ser administrador?
Esta es una pregunta que me la hicieron en algún momento. Es sencillo de explicar con un ejemplo.
Supongamos que instalamos Elastix en una empresa, en la cual uno de los gerentes quiere tener reportes de cuantas llamadas entrantes/salientes tiene cada uno de sus empleados, así como también el detalle puntual de a donde llama cada uno. Como administrador del equipo no me daría confianza darle acceso a la configuración completa del sistema si lo que necesita ver es un simple reporte.
Existe alguna solución alternativa?
Por supuesto que si, es opensource!.
Como lo hago?
Antes que nada unas aclaraciones, esto no es un manual de Elastix, por lo que no verán detalles puntuales de la configuración del mismo.
Como siempre en toda modificación, solo comparto mi experiencia, yo lo probé en versiones 2.2, 2.3 y 2.4 de Elastix. Si van a aplicar modificaciones de código, lo hacen bajo su propio riesgo.
Ahora los pasos necesarios:
- Crear un grupo de usuarios en Elastix, en mi caso el grupo se llama "Reportes" y asignarle los permisos de acuerdo a las necesidades.
- Crear un usuario que sea miembro de este grupo pero que no tenga ninguna extensión asignada.
- Ahora se debe modificar el código de una de las clases PHP.
- Realizar copia del archivo "/var/www/html/libs/paloSantoACL.class.php" para tenerlo en caso de tener que hacer un rollback.
- Editar el archivo original "/var/www/html/libs/paloSantoACL.class.php" y buscar la función "isUserAdministratorGroup", aparecerá de la siguiente forma:
Eso es todo, intentar ingresar al sistema con el usuario creado y verificar los CDRs.