Windows Server

Thursday, June 14, 2018

Documentación para Rol Auditor Llamadas Elastix (No Admin)

Documentación para Rol Auditor Llamadas Elastix (No Admin)

El día de hoy me tope con una necesidad de crear un usuario el cual se encargue de auditar las llamadas de todos las demás extensiones y no solo la que el posea o se le haya asignado.
Actualmente en Elastix existe por defecto 3 grupos de usuarios, Administrador, operador y extensión, cada uno de estos grupos posee unos permisos necesarios para dicha gestión.

Pasos
Lo primero que debemos hacer es determinar el nombre del grupo, en este caso, el grupo lo hemos llamado grabaciones.

1. Ingresamos a la ruta cd /var/www/html/libs
2. Realizamos un Backup del archivo paloSantoACL.class.php esto lo hacemos de la siguiente manera.
                    cp paloSantoACL.class.php paloSantoACL.class.php.old

3. Editamos y debe quedar de la siguiente manera, recordando que en mí ejemplo   esta como nombre al grupo: grabaciones:
{
$is=false;
$idUser = $this->getIdUser($username);
if($idUser){
$arrGroup = $this->getMembership($idUser);
//$is = array_key_exists('administrator',$arrGroup);
$is = array_search('1', $arrGroup);

$is=true;
}
return $is;

}

Comando para reparar base de datos mysql

Comando para reparar base de datos mysql asterisk,elastix,issabel


mysqlcheck -u root -p --auto-repair --optimize --all-databases


Como authenticar llamadas en Asterisk


1.En /etc/asterisk creamos un directorio llamado authenticate, dentro del
mismo creamos un archivo con el nombre de pass_list.txt.


2.En extensión.conf agregamos estas líneas en el trunk de salida.

exten => _8X.,1,Authenticate(/etc/asterisk/authenticate/pass_list.txt)
exten => _8X.,n,Dial(SIP/PSTN/${EXTEN:1})
exten => _8X.,n,Hangup()

Wednesday, June 13, 2018

Balanceo de llamadas en Troncales SIP

El requerimiento es que las troncales tengan el mismo nombre seguido de un número, empezando con el cero. En el ejemplo mis troncales se llaman R0,R1,R2,R3.

[from-internal-custom]

include => dialroundrobin
include => roundrobin

[roundrobin]

exten => _1X.,1,Set(last=$[(${DB(rr/last)}+1)%2]) ;cambiar el valor 2 por la cantidad de troncales en su RR
exten => _1X.,n,Set(DB(rr/last)=${last})
exten => _1X.,n,Dial(SIP/R${last}/${EXTEN}) ;Cambiar R por el nombre de su troncal
exten => _1X.,n,GotoIf(${DIALSTATUS}="BUSY",1,fin)
exten => _1X.,n(fin),Hangup

[dialroundrobin]

exten => _1X.,1,Goto(roundrobin,${EXTEN},1)


-------------------------------------------------------------------------------------------------------------------

                                                                    PRUEBA EXITOSA
-----------------------------------------------------------------------------------------------------------------

   -- Executing [1809754@from-internal:1] Goto("SIP/1200-00000024", "roundrobin,1809754,1") in new stack
    -- Goto (roundrobin,1809754,1)
    -- Executing [1809754@roundrobin:1] Set("SIP/1200-00000024", "last=1") in new stack
    -- Executing [1809754@roundrobin:2] Set("SIP/1200-00000024", "DB(rr/last)=1") in new stack
    -- Executing [1809754@roundrobin:3] Dial("SIP/1200-00000024", "SIP/R1/1809754") in new stack
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
    -- Called SIP/R1/1809754
       > 0x2d0e650 -- Strict RTP learning after remote address set to: 192.168.50.63:16414
    -- SIP/R1-00000025 is making progress passing it to SIP/1200-00000024
  == Spawn extension (roundrobin, 1809754, 3) exited non-zero on 'SIP/1200-00000024'
  == Using SIP RTP TOS bits 184
  == Using SIP RTP CoS mark 5
       > 0x7fc74c008c20 -- Strict RTP learning after remote address set to: 192.168.50.20:9172
    -- Executing [1809754@from-internal:1] Goto("SIP/1200-00000026", "roundrobin,1809754,1") in new stack
    -- Goto (roundrobin,180975,1)
    -- Executing [1809754@roundrobin:1] Set("SIP/1200-00000026", "last=0") in new stack
    -- Executing [1809754@roundrobin:2] Set("SIP/1200-00000026", "DB(rr/last)=0") in new stack
    -- Executing [1809754@roundrobin:3] Dial("SIP/1200-00000026", "SIP/R0/1809754") in new stack

Documentación para Rol Auditor Llamadas Elastix (No Admin)

Documentación para Rol Auditor Llamadas Elastix (No Admin) El día de hoy me tope con una necesidad de crear un usuario el cual se encar...