Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Lab 11 2020-1 Castillo Aliaga

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 9

Redes Convergentes AGI

Laboratorio: Interfaz de Programación


AMI

OBJETIVOS

 Aplicar las funcionalidades de colas de llamadas.


 Entender las funcionalidades de colas de llamadas que nos brinda Asterisk.
 Diseñar un call center básico con Asterisk

EQUIPOS, MATERIALES, PROGRAMAS Y RECURSOS

 PC Personal.
 Sistema operativo Windows XP, Windows 7, Windows 8, Windows 10
 Material disponible desde Tecsup Virtual.
 Vmware Workstation
 Conexión a Internet para la descarga de fuentes actualizadas.
 http://mirror.upb.edu.co/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1608.iso
 https://shareware.unc.edu/pub/win/SSHSecureShellClient-3.2.9.exe

SEGURIDAD

 Colocar las mochilas en el gabinete al final del salón para evitar caídas en caso de
sismo.
 No ingresar con bebidas ni comida.
 Apagar los equipos y los monitores al culminar la sesión.

INTRODUCCIÓN

En este laboratorio utilizaremos scripts AGI para aumentar las capacidades del plan de discado
haciendo consultas a la base de datos para obtener información y utilizarla en el plan de discado.
Redes Convergentes AGI

Interfase AMI
Para trabajar con AMI los archivos .php serán ejecutados desde el servidor web de la
máquina virtual donde instalo LAMP. Para comunicarnos con la interface AMI debemos
configurar un usuario administrador valido en manager.conf.

1. Editar el archivo manager.conf, modificar la siguiente configuración:


[general]
enabled = yes
port = 5038
bindaddr = 0.0.0.0

2. Editar el archivo manager.conf, la siguiente configuración:


[astadmin]
secret = 123456
deny=0.0.0.0/0.0.0.0
permit=192.168.14.0/255.255.255.0
read=system,call,log,verbose,command,agent,user
write=system,call,log,verbose,command,agent,user

Nota: Los scripts AMI serán ejecutados desde el servidor LAMP. Y deberán establecer
una conexión local con el servidor asterisk para recibir información y enviar acciones.

Conectándonos al servidor Asterisk


3. Crear el archivo conexionami.php:

<?php
//Script para probar la conexión con el servidor
$timeout = 10;
$socket = @fsockopen('192.168.14.xxx','5038',$errno,$errstr,$timeout);

if (!$socket){

$error = "No es posible conectarse al servidor: <br> $errstr ($errno)";


echo $error;

}else{
Redes Convergentes AGI
$wrets = fgets($socket,1024);
$msg = 'Conexion exitosa<br>'.$wrets;

echo $msg;
}

?>

4. Desde un navegador ejecutar el archivo conexionami.php. ¿Qué respuesta observa?

Nos muestra el mensaje que hubo una comunicación correcta con el servidor ya
que colocamos la ip corrspondiente.

Haciendo un login

5. Crear el archivo loginami.php:

<?php
$timeout = 10;
Redes Convergentes AGI
$socket = @fsockopen('192.168.14.xxx','5038',$errno,$errstr,$timeout);

if (!$socket){

$error = "No es posible conectarse al servidor: <br> $errstr ($errno)";


echo $error;

}else{

fwrite($socket,"Action: login\r\n");
fwrite($socket,"UserName: astadmin\r\n");
fwrite($socket,"Secret: 123456\r\n\r\n");

fwrite($socket, "Action: Logoff\r\n\r\n");

$wrets = '';
while (!feof($socket)) {
$wrets .= fread($socket, 8192);
}

fclose($socket);

$msg = 'Conexion exitosa<br><br>'.$wrets;

echo $msg;
}
?>

6. Abrir un explorador de Internet en el servidor web y ejecutar el archivo loginami.php.


Observar el CLI de asterisk. ¿Qué es lo que se observa?

Nos muestra el mensaje de conexión exitosa, lo que pasa es que se ha hecho un


correcto logueo hacia el AMI y eso es gracias a lo que pusimos en el
manager.conf com astadmin donde colocamos el usuario y contraseña

Trabajando con extensiones

7. Crear el archivo status.php. Este archivo verificara el estado de la extensión 3002.

<?php
$timeout = 10;

$socket = @fsockopen('192.168.14.xxx','5038',$errno,$errstr,$timeout);

if (!$socket){

$error = "No es posible conectarse al servidor: <br> $errstr ($errno)";


echo $error;
Redes Convergentes AGI
}else{

fwrite($socket,"Action: login\r\n");
fwrite($socket,"UserName: astadmin\r\n");
fwrite($socket,"Secret: 123456\r\n\r\n");

fwrite($socket, "Action: ExtensionState\r\n");


fwrite($socket, "Context: local\r\n");
fwrite($socket, "Exten: 3002\r\n\r\n");

fwrite($socket, "Action: Logoff\r\n\r\n");

$wrets = '';
while (!feof($socket)) {
$wrets .= fread($socket, 8192);
}

fclose($socket);

$msg = 'Conexion exitosa<br><br>';

echo $msg;

$lines = explode("\r\n",$wrets);
foreach ($lines as $value){

echo $value.'<br>';

}?>
Redes Convergentes AGI
8. En el archivo extensions.conf agregar la siguiente línea a la configuración de la
extensión 1002:
exten=>3002,hint,SIP/3002

9. Abrir un explorador de Internet en el servidor Web y ejecutar el archivo status.php. ¿En


qué estado aparece la extensión seleccionada?

Aparece con el estado de FULLYBOOTED que nos dice que esta arrancando y
además nos muestra mensajes que pasan cuando un anexo no conecta.
Redes Convergentes AGI

Originar una Llamada.-


10. Crear el archivo originar.php. Este archivo originará una llamada desde el canal 3001
hacia la extensión 3002

<?php
$timeout = 10;

$socket = @fsockopen('192.168.14.xxx','5038',$errno,$errstr,$timeout);

if (!$socket){

$error = "No es posible conectarse al servidor: <br> $errstr ($errno)";


echo $error;

}else{

fwrite($socket,"Action: login\r\n");
fwrite($socket,"UserName: astadmin\r\n");
fwrite($socket,"Secret: 123456\r\n\r\n");

fwrite($socket, "Action: originate\r\n");


fwrite($socket, "Channel: SIP/3001\r\n");
fwrite($socket, "Exten: 3002\r\n");
fwrite($socket, "Context: local\r\n");
fwrite($socket, "Priority: 1\r\n");
fwrite($socket, "Timeout: 10000\r\n");
fwrite($socket, "Callerid: 3001\r\n\r\n");

fwrite($socket, "Action: Logoff\r\n\r\n");

$wrets = '';
while (!feof($socket)) {
$wrets .= fread($socket, 8192);
}

fclose($socket);

$msg = 'Conexion exitosa<br><br>';

echo $msg;

$lines = explode("\r\n",$wrets);
foreach ($lines as $value){

echo $value.'<br>';

}
}?>
Redes Convergentes AGI

11. Abrir un explorador de Internet en el servidor Web y ejecutar el archivo originar.php.


Observar el CLI de asterisk. ¿Qué ocurre?

Se realizó una llamada del anexo 3002 al 3001, la llamda se relaizó con éxito pero
aparece los mensajes de que no contestó.
Redes Convergentes AGI
Observaciones y Conclusiones

 Con las aplicaciones de AMI podemos hacer configuraciones y


automatizaciones de procesos, asi mismo al crear los archivos php agilizamos
la configuración de muchas funciones.
 Con las aplicaciones podemos hacer una llamada cargando un archivo sin la
necesidad de usar un software softphone.
 Debemos crear nuestro usuario y contraseña y así mismo registrarlo en el
manager.conf para poder utilizarlo.

También podría gustarte