Llamadas de Ámsterdam es una extraordinaria historia de amor. Con una impecable tensión narrativa, Juan Villoro despliega una trama hecha de coincidencias, separaciones, misteriosas oportunidades d...
Plan de Monitoreo ArqueologicoDescripción completa
Responde las inquietudes acerca de los monitoreos de agentes físicos, químicos, biológicos, disergonómicos y psicosociales.Descripción completa
okDescripción completa
17/11/2014
Monitoreo de llamadas (monitoring) Elastix + Freepbx. | Asterisk y yo!
19th November 2012 Monitoreo de llamadas (monitoring) Elastix + Freepbx. Mi primer gran problema al montar un elastix en mi compañía fue con el departamento de Auditoría en el Monitoreo de llamadas ya que el sistema no me mostraba la información de la llamada, del agente o del numero de teléfono a quien se le habia llamado a menos que la llamada hubiera sido manual. Adicional que si no era Administrador no podía ver el global de las llamadas. Por eso les dejo acá la pequeña solución para solventar estos inconvenientes. Primero creamos una extensión que vamos a definir únicamente para administrar el monitoreo. En mi caso yo cree la 101. Luego nos vamos al archivo que maneja todos los parámetros de búsqueda y acceso de nuestro sistema de monitoreo. cd /var/www/ht /var/www/html/modules/monitoring ml/modules/monitoring Acá nos vamos a index.php index.php Y agregamos las siguientes lineas en la seccion de:
//conexion resource $arrConf['dsn_conn_database'] $arrConf['dsn_con n_database'] = generarDSNSistema('asterisku generarDSNSistema('asteriskuser', ser', 'asteriskcdrdb'); $pDB = new paloDB($arrConf['dsn paloDB($arrConf['dsn_conn_database' _conn_database']); ]); $pDBACL = new paloDB($arrConf['elast paloDB($arrConf['elastix_dsn']['acl']); ix_dsn']['acl']); $pACL = new paloACL($pDBACL paloACL($pDBACL); ); $user = isset($_SESSION['elastix_u isset($_SESSION['elastix_user'])?$_SESSION['elastix_u ser'])?$_SESSION['elastix_user']:""; ser']:""; $extension = $pACL->getUserExten $pACL->getUserExtension($user); sion($user); $esAdministrador = $pACL->isUserAdminist $pACL->isUserAdministratorGroup($user); ratorGroup($user); if($extension==101) $esAdministrador=true; if($extension=="" || is_null($extension)){ if($esAdministrador) $smarty->assign("mb_message", $smarty->assign("mb_ message", ""._tr("no_ ""._tr("no_extension")."" extension").""); ); else{ $smarty->assign("mb_message", $smarty->assign("mb_ message", ""._tr("cont ""._tr("contact_admin")." act_admin").""); "); return ""; } } Obviamente solo agregamos las que están en rojo pero coloque todo el contexto para ayudar a quien nunca a manipulado estos archivos. Con esto logramos que a cada usuario que le coloquemos la extensión 101 logre ver todas las llamadas que se encuentran en el sistema de monitoreo sin importar que extensión sea. Ahora vamos con la vista de la información que deseamos. Mi gran problema en particular era que que si la llamada se realizaba por medio de una cola, no podía ver que agente fue a quien se le asigno la llamada, y el numero de teléfono ya ya que este es remplazado remplazado en las llamadas salientes por el el numero de cola. Así que acá les http://asteriskgt.blogspot.com/2012/11/monitoreo-de-llamadas-monitoring.html
1/3
17/11/2014
Monitoreo de llamadas (monitoring) Elastix + Freepbx. | Asterisk y yo!
dejo la molificación del mismo archivo en una sección diferente. Esto lo modifique de esta forma para campanas outgoing. Agregamos las siguientes lineas en rojo bajo la sección que marca los campos como "unknow" $arrTmp[0] = ""; $arrTmp[1] = date('d M Y',strtotime($value['calldate'])); $arrTmp[2] = date('H:i:s',strtotime($value['calldate'])); if(!isset($value['src']) || $value['src']=="") $src = ""._tr("unknown").""; else $src = $value['src']; if(!isset($value['dst']) || $value['dst']=="") $dst = ""._tr("unknown").""; else $src = $value['src']; if(substr($value['dstchannel'],0,5) == "Agent") $src = $value['dstchannel']; else $dst = $value['dst']; if(substr($value['channel'],0,5) == "Local") $dst = substr($value['channel'],6,-21); El primero indica que si en dstchannel los primeros 5 letras son iguales a Agent lo convierta en el valor que buscamos para src que seria igual a source en la parte gráfica de nuestro sistema de monitoreo. En el segundo indica que si empieza con Local tome los datos que se encuentra en channel y le quite los primeros 6 letras o números y los últimos 21. Esto nos deja nuestro numero de teléfono y este dato lo convierta en dst que es igual a destino en la parte gráfica de nuestro sistema de monitoreo. Con estas modificaciones ya podrán definir usuarios especiales para buscar llamadas y podrán tener una vista de que operador recibió la llamada y que numero de teléfono tenia esta llamada. Espero les ayude y en algo haya podido colaborar les. Saludos.