miércoles, 19 de octubre de 2011

Instalacion Asterisk 1.8.en CENTOS

OS: Centos 5.6 x86_64 o i386
Sólo sistema base en el momento de instalción. No instalar Gnome / KDE. Paticiones por defecto.
Unha vez instalado el sistema, agregar los componentes requeridos via yum:
yum update
reboot

En el caso de VMWare, instalar los VMWare Tools: Desde el vSphere Client, selccionar la VM -> Guest -> Install Upgrade VMWare Tools -> OK
En la consola del Linux:
mount /dev/cdrom /mnt
cd /usr/local/src
tar xvfz /mnt/VMwareTools-4.0.0-208167.tar.gz
umount /dev/cdrom
cd vmware-tools-distrib
./vmware-install.pl
Seguir las indicaciones, todo por defecto.

Deshabilitar el Firewall y SELinux via setup



yum groupinstall development-tools development-libs mysql
yum install mysql-devel

Verificar si estan estos paquetes, sino se deben instalar.
rpm -q bison
rpm -q bison-devel
rpm -q ncurses
rpm -q ncurses-devel
rpm -q zlib
rpm -q zlib-devel
rpm -q openssl
rpm -q openssl-devel
rpm -q gnutls-devel
rpm -q gcc
rpm -q gcc-c++
De la siguiente forma:
yum install bison
yum install bison-devel
yum install ncurses
yum install ncurses-devel
yum install zlib
yum install zlib-devel
yum install openssl
yum install openssl-devel
yum install gnutls-devel
yum install gcc
yum install gcc-c++
yum install libxml*

Sino estan no compila el Asterisk
Descargar el Asterisk:
cd /usr/local/src
Ir a la página de http://www.asterisk.org/downloads y el link de las última versiones de Asterisk 1.8. en este caso es:
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.5.0.tar.gz
tar xvfz asterisk-1.8.5.0.tar.gz
cd asterisk-1.8.5.0
./configure

si todo sale bien nos compila



make menuselect


En addons, seleccionar cdr_mysql, salvar y salir.






 Y salvar, con S

make install
make samples
make config
groupadd asterisk
useradd -d /var/lib/asterisk -g asterisk asterisk
chown -R asterisk:asterisk /var/lib/asterisk
chown -R asterisk:asterisk /var/log/asterisk
chown -R asterisk:asterisk /var/run/asterisk
chown -R asterisk:asterisk /var/spool/asterisk
chown -R asterisk:asterisk /usr/lib/asterisk
chown -R asterisk:asterisk /etc/asterisk


chmod -R u=rwX,g=rX,o= /var/lib/asterisk
chmod -R u=rwX,g=rX,o= /var/log/asterisk
chmod -R u=rwX,g=rX,o= /var/run/asterisk
chmod -R u=rwX,g=rX,o= /var/spool/asterisk
chmod -R u=rwX,g=rX,o= /usr/lib/asterisk
vi vi /etc/sysconfig/asterisk
Remover los comentarios '#' en:
AST_USER="asterisk"
AST_GROUP="asterisk"

Arrancamos el mysqld

chkconfig mysqld on
service mysqld start

Creamos la tabla de CDR

mysql

CREATE DATABASE asterisk;
GRANT INSERT,SELECT
  ON asterisk.*
  TO asterisk@localhost
  IDENTIFIED BY '**password**';
USE asterisk;

CREATE TABLE `cdr` (
`calldate` datetime NOT NULL default '0000-00-00 00:00:00',
`clid` varchar(80) NOT NULL default '',
`src` varchar(80) NOT NULL default '',
`dst` varchar(80) NOT NULL default '',
`dcontext` varchar(80) NOT NULL default '', 
`channel` varchar(80) NOT NULL default '',
`dstchannel` varchar(80) NOT NULL default '',
`lastapp` varchar(80) NOT NULL default '',
`lastdata` varchar(80) NOT NULL default '',
`duration` int(11) NOT NULL default '0',
`billsec` int(11) NOT NULL default '0',
`disposition` varchar(45) NOT NULL default '', 
`amaflags` int(11) NOT NULL default '0',
`accountcode` varchar(20) NOT NULL default '',
`userfield` varchar(255) NOT NULL default ''
);

Debe haberse creado la tabla asi:


Se modifican unas cositas:

ALTER TABLE `cdr` ADD `uniqueid` VARCHAR(32) NOT NULL default '';
ALTER TABLE `cdr` ADD INDEX ( `calldate` );
ALTER TABLE `cdr` ADD INDEX ( `dst` );
ALTER TABLE `cdr` ADD INDEX ( `accountcode` );

Para quedar asi:



notan la diferencia?, agregamos mas indices.


Ahora editamos: el cdr_mysql.conf


cd /etc/asterisk
vi cdr_mysql.conf
Editar según la configuración de la base de datos, por ejemplo:
[global]
hostname=localhost
dbname=asterisk
table=cdr
password=**password**
user=asterisk
port=3306
sock=/var/lib/mysql/mysql.sock


Descargar los codec g729 y g723:

cd /usr/lib/asterisk/modules
Ejemplo 64 bits:
wget http://asterisk.hosting.lv/bin162/codec_g723-ast16-gcc4-glibc-x86_64-pentium4.so
wget http://asterisk.hosting.lv/bin162/codec_g729-ast16-gcc4-glibc-x86_64-pentium4.so
Ejemplo 32 bits:
wget http://asterisk.hosting.lv/bin162/codec_g723-ast16-gcc4-glibc-pentium4.so
wget http://asterisk.hosting.lv/bin162/codec_g729-ast16-gcc4-glibc-pentium4.so
chown -R asterisk:asterisk *.so
vi /etc/asterisk/codecs.conf
adicionar:
[g723]
; 6.3Kbps stream, default
sendrate=63
; 5.3Kbps
;sendrate=53
iniciar servicio:
service asterisk start

2 comentarios:

  1. mil gracias muy buena el manual..


    pero y que pasa con los servicios de g729 que no tan online?

    ResponderEliminar
  2. Para los codecs G729 es necesario en algunos casos comprar la licencia

    ResponderEliminar