Enviado por admin el
La verdad me ha sorprendido mucho encontrarme con este programa porque no tenía la menor idea de su existencia y personalmente me parece muy bueno (además de Open Source).
MonAst es un panel de control para Asterisk que permite monitorear:
- Múltiples servidores Asterisk
- Extensiones SIP, IAX2, DAHDI
- Canales activos y llamadas
- Conferencias (Meetme)
- Llamadas parqueadas
- Colas de espera
En tiempo real permite:
- Originar una llamada
- Transferir las llamadas
- Colgar una llamada
- Parquear una llamada
- Espiar una llamada
- Invitar extensiones o números externos a una conferencia
- Sacar un usuario de una conferencia
- Añadir una extensión como agente a una cola de espera
- Quitar una extensión como agente de una cola de espera
- Poner en pausa un agente de una cola de espera
- Ejecutar comandos de la consola de Asterisk
En este articulo veremos como instalar el programa en una distribución CentOS 6.4. Como no hace falta instalar MonAst en el mismo servidor donde se encuentra Asterisk, se puede utilizar el mismo servidor Web que eventualmente ya se tiene disponible.
Una vez actualizado el sistema y reiniciado el servidor se instala el paquete de Python:
yum install python python-devel
Se instala Zope.Interface (versión 3.6 o superior):
cd /usr/src
wget --no-check-certificate https://pypi.python.org/packages/source/z/zope.interface/zope.interface-...
unzip zope.interface-4.0.5.zip
cd zope.interface-4.0.5
python setup.py install
Se continua con Twisted (versión 10.1 o superiores); primero se instala la dependencia gcc:
yum install gcc
cd /usr/src
wget --no-check-certificate https://pypi.python.org/packages/source/T/Twisted/Twisted-13.0.0.tar.bz2
tar -xf Twisted-13.0.0.tar.bz2
cd Twisted-13.0.0
python setup.py install
Se sigue con StarPy:
cd /usr/src
wget http://downloads.sourceforge.net/project/starpy/starpy/1.0.0a13/starpy-1...
tar -xf starpy-1.0.0a13.tar.gz
cd starpy-1.0.0a13
python setup.py install
Para terminar, para la parte web, se instalan algunos paquetes PHP, el servidor WEB y el paquete php pear HTTP_Client:
yum install php php-cli php-common php-process php-pdo php-pear httpd
pear install HTTP_Client
Llegados a este punto, se descarga MonAST:
cd /opt
wget http://sourceforge.net/projects/monast/files/Monast%20for%20Asterisk%201...
Se descomprime:
tar -xf monast-3.0b4.tar.gz
Se entra en la carpeta creada:
cd monast-3.0b4
Se ejecuta el archivo de instalación:
./install.sh
Se selecciona la carpeta donde se instalará el programa y la parte web del programa. Como se puede ver en la imagen, el archivo de configuración se instalará en la carpeta /etc y se instalará también el demonio del programa en la carpeta /etc/init.d
Ahora lo único que hace falta es configurar el programa. Se abre el archivo de configuración:
nano /etc/monast.conf
Para empezar se modifica esta línea:
auth_required = false
para que quede:
auth_required = true
De esta forma para acceder a la pagina Web del panel de control, el sistema pedirá de autenticarse con nombre de usuario y contraseña que se definen al final de este archivo:
Se configura el primer servidor Asterisk, modificando este bloque:
[server: Server_1] # Server name can not contains space
hostname = 192.168.0.1
hostport = 5038
username = ami_username
password = ami_password
De forma que quede:
[server: VozToVoice]
hostname = IPAsterisk
hostport = 5038
username = monast
password = sesamo
- server: nombre que se quiere asignar al servidor
- hostname: IP donde se encuentra Asterisk
- hostport: puerto para conectarse a la AMI de Asterisk
- username: usuario configurado en el manager.conf de Asterisk
- password: contraseña del usuario configurado en el manager.conf de Asterisk
En:
default_context = default
Se pone el nombre del contexto que se ha configurado para las extensiones
En:
transfer_context = default
Se pone el contexto para la transferencia de las llamadas
En:
meetme_context = default
meetme_prefix = monast-
Se pone el contexto configurado para las conferencias y, si se quiere, un prefijo para la conferencias creadas desde MonAst.
Luego, si se quiere se añade un segundo servidor siguiendo las pautas para la configuración del primero. Al final del archivo se definen los usuarios que tienen acceso a la parte web. Para cada usuario se define nombre, contraseña, los permisos y los servidores a los que puede acceder. Un ejemplo:
[user: admin]
secret = sesamo
roles = originate,queue,command,spy
servers = ALL
Los permisos:
- originate: el usuario puede originar, transferir, parquear y colgar las llamadas
- queue: el usuario puede añadir, quitar, meter en pausa los agentes de una cola
- command: el usuario puede ejecutar comandos de la consola de Asterisk
- spy: el usuario puede espiar los canales activos
Se guardan los cambios y se configura el manager.conf de Asterisk:
nano /etc/asterisk/manager.conf
se modifica esta línea:
enabled = no
Para que quede:
enabled = yes
y al final del archivo se añade el usuario configurado en el MonAst:
[monast]
secret=sesamo
writetimeout=100
read=system,call,log,verbose,command,agent,user,config,originate,reporting
write=system,call,log,verbose,command,agent,user,config,originate,reporting
Se guardan los cambios y se reinicia Asterisk.
service asterisk restart
Se inicia el servidor Web:
service httpd start
Se vuelve a la carpeta /opt/monast y se inicia el programa:
./monast.py
Si no aparecen errores significa que el programa se ha conectado correctamente al AMI de Asterisk. Se abre un navegador web y se pone la dirección IP del servidor WEB:
Nos autenticamos con nombre de usuario y contraseña definidos en el archivo monast.conf:
Los menú disponibles:
Las extensiones/troncales configuradas con las llamadas activas.
Si se quiere personalizar el output del panel Web, se modifica el archivo:
nano /var/www/html/lib/config.php
Una vez que tenemos certeza que el programa funciona bien, se sale de la consola de MonAst con CTRL-C y se inicia el demonio:
/etc/init.d/monast start
Por ahora es todo.
17 comentarios
Errores durante el proceso
Enviado por fox (no verificado) el
Esta muy bueno eso Pero a la hora de instalar
pear install HTTP_Client
me da este error
[root@dpgtsrv-cnx monast]# pear install HTTP_Client
No releases available for package "pear.php.net/HTTP_Client"
install failed
con todo eso seguí y todo proseguía de maravilla hasta el paso de poner la direccion ip en un navegador web pues la pagina no sale y el monast se conecta bien al AMI de asterisk
que puede ser
Re: Errores durante el proceso
Enviado por admin el
Hola,
acabo de realizar una nueva instalación y me ha pasado lo mismo.
Lo he solucionado de la siguiente manera:
peer search HTTP_Client
de esta forma se actualiza la base de datos de pear. Luego:
pear instll HTTP_Client
Saludos
Pude instalar todo sin ningún
Enviado por Gilberto (no verificado) el
Pude instalar todo sin ningún problema, pero cuando ingreso al link de la pagina me pide usuario y contraseña, le doy el que esta en el monast.conf y se queda autenticando pero no entra.
Que puede estar sucediendo...?
Gracias
Hola pudiste solucionar el
Enviado por frandipardo (no verificado) el
Hola pudiste solucionar el problema? yo tengo el mismo problema y no encuentro solucion todavia.
Muchas gracias.
saludos.
Re: Hola pudiste solucionar el
Enviado por admin el
Hola,
cuando activas el programa con ./monast e intentas conectarte, que te aparece en la consola?
Debería estar presente algún error.
Me cuentas.
Saludos
Hola, ya solucioné el
Enviado por frandipardo (no verificado) el
Hola, ya solucioné el problema, lo que sucedía era que en mi centos 6.5, estaba activo el SELINUX, una vez desactivado se solucionó el problema.
Saludos.
como configurar las cuentas de peers y user en monast
Enviado por Jose Maria Giraldo R (no verificado) el
Cordial saludo.
Mi duda es la siguiente, logre instalar y configurar el monast , entre en le pero no me salen los usuarios sip ni troncales ni nada, como hago para configurarlo para personalizarlos.
gracias.
Asterisk 11
Enviado por Cesar Guevara (no verificado) el
Hola Andrea como estas
has logrado hacerlo funcionar en asterisk 11??
Saludos Cordiales
Re: Monast Asterisk 11
Enviado por admin el
Hola Cesar,
si me ha funcionado en Asterisk 11.
Ves algún error?
Saludos
si, no deja iniciar
Enviado por cesargdmi el
Hola Andrea,
definitivamente con asterisk 11.25.3 y Centos 6.9 no he logrado q funcione, al iniciar el ejecutable sale este error en la consola
./monast.py
[Fri Apr 27 19:25:14 2018] NOTICE :: Initializing Monast AMI Interface...
[Fri Apr 27 19:25:14 2018] NOTICE :: Parsing config file /etc/monast.conf
[Fri Apr 27 19:25:14 2018] ERROR :: Username admin has errors in config file!
esta es la linea del bloque de usuario
[user: admin]
secret = 10203040
roles = originate,queue,command,spy
servers = ALL
en la web aparece error 500 y en el log de httpd aparece
[Fri Apr 27 19:23:51 2018] [error] [client 192.168.157.2] PHP Warning: require_once(HTTP/Client.php): failed to open stream: No such file or directory in /var/www/html/monast/lib/util.php on line 31
[Fri Apr 27 19:23:51 2018] [error] [client 192.168.157.2] PHP Fatal error: require_once(): Failed opening required 'HTTP/Client.php' (include_path='.:/usr/share/pear:/usr/share/php') in /var/www/html/monast/lib/util.php on line 31
no se que mas revisar.
gracias de antemano
ya no me saca error pero....
Enviado por cesargdmi el
Hola andrea,
ya no me saca el error en la consola.
[root@HJT-PBX01 monast]# ./monast.py
[Sat Apr 28 15:42:39 2018] NOTICE :: Initializing Monast AMI Interface...
[Sat Apr 28 15:42:39 2018] NOTICE :: Parsing config file /etc/monast.conf
[Sat Apr 28 15:42:39 2018] NOTICE :: Server Hotel :: AMI Connected...
sin embargo el error en log de httpd y en la web siguen siendo los mismos,
seguire intentando
ya me funciono
Enviado por cesargdmi el
ya me funciono andrea.
era que no habia instalado el pear http (bah)
Saludos
DUDA CON PHP
Enviado por Humberto Alcantara el
Hola que tal Admin, buenos dias, tengo un enorme problema y la verdad soy junior en esto no se como resolverlo ya intente de varios modos, instalo todo, ejecuto sin errores, pero al momento que ejecuto el navegador con la direccion de mi servidor de MonAst me dice que mi pagina no funciona mas sin embargo si esta ese es el unico problema el error 500 al visualizar la pagina de Monast quisiera saber si te ha pasado algo similar o alguien lo ha resuelto....Mil Gracias
Re: DUDA CON PHP
Enviado por admin el
Hola Humberto,
yo lo sigo utilizando en CentOS 6 con Asterisk 13.X sin problemas... quizás, como no se ha actualizado desde hace rato (2011), puede ser que no funcione correctamente en CentOS 7.
Me cuentas...
Saludos
Asterisk 13 con PjSIP
Enviado por cesargdmi el
Hola Andrea.
tu puedes usar MonAsT con asterisk 13 y pjsip, lo pregunto porque tengo entedido q monast usar la visualizacion de peers (lo que supondria que usaba chan_sip para ver el estado) o tal ves este equivocado
Saludos Cordiales
ya encontre el error en centos 7
Enviado por cesargdmi el
EL problema en centos 7 esta en el pear php se requiere la version 1.10.1 o superior, el saca este error
pear install HTTP_Client
WARNING: "pear/HTTP_Client" is deprecated in favor of "pear/HTTP_Request2"
WARNING: channel "pear.php.net" has updated its protocols, use "pear channel-update pear.php.net" to update
WARNING: "pear/HTTP_Request" is deprecated in favor of "pear/HTTP_Request2"
WARNING: "pear/Net_URL" is deprecated in favor of "pear/Net_URL2"
pear/Net_Socket requires PEAR Installer (version >= 1.10.1), installed version is 1.9.4
pear/HTTP_Request requires package "pear/Net_Socket" (version >= 1.0.7)
pear/HTTP_Client requires package "pear/HTTP_Request" (version >= 1.4.0)
No valid packages found
install failed
se soluciona facil instalando pear desde los repositorios de remi
pear install HTTP_Client
pear install Net_Socket
solucionado, voy a probar si los peers se ven.. estare comentandoles
malas noticias
Enviado por cesargdmi el
lo que me temia.
monast aun no es funcional con pjsip, el desarrollador del panel al parecer esta trabajando en ello, toca estar pendiente. el panel me parece excelente pero muere en asterisk 11 o sirve en 13 pero con chan_sip ya lo probe por encima y al menos si ve los peers