`
javahigh1
  • 浏览: 1225347 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Asterisk 1.6.X - MeetMe Realtime

 
阅读更多

Hoy en teoría tenía que hablar de Web-Meetme, un modulo con interfaz grafica para asterisk que permite configurar y monitorear las conferencias. Desafortunadamente a la hora de compilar el modulo app_cbmysql me sale un error y hasta ahora no he podido resolverlo. Pues decidí abordar el tema de la configuración de MeetMe en realtime. Si no queremos depender del archivo de configuración meetme.conf podemos elegir guardar la configuración de las distintas conferencias en una base de datos MySQL con el conector ODBC para el realtime.

Vamos a empezar. Primero creamos la base de datos:

mysqladmin create asteriskmeetme -u root -p

Entramos en el cliente mysql:

mysql -u root -p
Enter password:

Welcome to the MySQL monitor. Commands end with ; or /g.
Your MySQL connection id is 47897
Server version: 5.1.37 MySQL Community Server (GPL) by Remi

Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.

mysql> use asteriskmeetme
Database changed

creamos la tabla meetme:

mysql> CREATE TABLE `meetme` (
`confno`char(80)NOTNULLdefault'0',
`starttime`datetimeNOTNULLdefault'0000-00-0000:00:00',
`endtime`datetimedefaultNULL,
`pin`char(20)defaultNULL,
`opts`char(100)defaultNULL,
`adminpin`char(20)defaultNULL,
`adminopts`char(100)defaultNULL,
`members`int(11)NOTNULLdefault'0',
`maxusers`int(11)NOTNULLdefault'0',
PRIMARYKEY(`confno`,`starttime`)
);

Query OK, 0 rows affected (0.01 sec)

configuramos los privilegios para la base de datos asteriskmeetme (cambien “fulano” y “contraseña” a su gusto”):

mysql> GRANT ALL PRIVILEGES ON asteriskmeetme.* TO 'fulano'@'localhost' IDENTIFIED BY 'contraseña';
Query OK, 0 rows affected (0.00 sec)

Insertamos algunos datos en la tabla meetme

mysql> INSERT INTO meetme (confno,pin,adminpin,members,starttime,endtime) VALUES ("500O","1234","2345","0","2009-09-24 19:00","2009-09-24 20:00");
Query OK, 1 row affected (0.00 sec)

mysql> INSERT INTO meetme (confno,pin,adminpin,members,starttime,endtime) VALUES ("5001","1234","2345","0","2009-09-25 19:00","2009-09-25 20:00");
Query OK, 1 row affected (0.00 sec)

y salimos del cliente:

mysql> quit
Bye

Con estos datos hemos programado dos conferencias:

  • la 5000 que iniziará a las 7 de la tarde del 24 de septiembre del 2009 y terminará a las 8 de la tarde del mismo día;
  • la 5000 que iniziará a las 7 de la tarde del 25 de septiembre del 2009 y terminará a las 8 de la tarde del mismo día;

Ahora pasamos a la configuración de odbc y asterisk:

nano /etc/odbc.ini

pegamos estas líneas:

[asterisk-meetme]
Description = MySQL connection to 'asteriskmeetme' database
Driver = MySQL
Database = asteriskmeetme
Server = localhost
User = fulano
Password = contraseña
Port = 3306
Option = 3

Guardamos los cambios.

Modificamos el archivo res_odbc.conf y añadimos estas líneas:

[asterisk]
enabled = yes
dsn = asterisk-meetme
username = fulano
password = contraseña
loguniqueid = yes
pre-connect = yes

guardamos los cambios.

Modificamos el archivo extconfig.conf

nano /etc/asterisk/extconfig.conf

y pegamos esta línea

meetme => odbc,asterisk,meetme

Ahora modificamos el dialplan:

nano /etc/asterisk/extensions.conf

y en nuestro contexto preferido ponemos:

exten => _500X,1,Meetme(${EXTEN})
exten => _500X,n,Hangup

Nos aseguramos que en el archivo meetme.conf el parametro schedule esté en yes

nano /etc/asterisk/meetme.conf

schedule=yes

Reiniciamos Asterisk:

/etc/init.d/asterisk restart

A la hora que hemos programado la conferencia llamamos la extensión 5000 para ver si todo está funcionando como debe.

Alguna locuciones no extixten en las fuentes de asterisk. Pueden descargar las en inglés y copiarlas en la carpeta: /var/lib/asterisk/sounds/en

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics