Creo que no estás tomando el camino correcto, y que lo primero que deberías
comprobar es que la query SQL funciona desde consola, es decir, entrando
con "mysql -u usuario -p base_datos" y haciendo el INSERT a mano.
Si funciona entonces ya mirarías otras causas de error, pero no trates de
meterte en un AGI tal vez innecesario sólo porque no te funcione un INSERT.
> Por lo que he leído es posible hacerlo con un AGI ¿es posible hacerlo
> con SHELL scrip en lugar de con PHP?
Un AGI puede ser en cualquier lenguaje:
http://www.voip-info.org/wiki-Asterisk+AGI
;)
Pero si usas alguno para el que existan cómodas librerías de manejo de AGI's
será mucho más rápido de programar.
--
Iñaki Baz Castillo
Irontec: Internet y Sistemas sobre GNU/Linux
http://www.irontec.com
+0034 944416024
Pero no escribe nada y no sé como hacerle un debug en Suse9.3
Si pudiese evitar el AGI, pues mejor, si no.......... :-\
Respecto a lo del debug, me da este error al cargar Asterisk:
[res_config_mysql.so] => (MySQL RealTime Configuration Driver)
Nov 23 02:40:25 ERROR[19586]: res_config_mysql.c:651 mysql_reconnect:
MySQL RealTime: Failed to connect database server on (err 2002). Check
debug for more info.
Nov 23 02:40:25 WARNING[19586]: res_config_mysql.c:477 load_module:
MySQL RealTime: Couldn't establish connection. Check debug.
Nov 23 02:40:25 NOTICE[19586]: config.c:863 ast_config_engine_register:
Registered Config Engine mysql
MySQL RealTime driver
loaded.
Estará aqui el problema?¿A qué debug se refiere?
> El Jueves, 23 de Noviembre de 2006 10:05, Gerardo escribió:
>
>> El problema lo tengo al intentar grabar
>> en la base de datos los números entrantes, dado que el INSERT INTO no da
>> error pero no escribe.
>>
>
> Creo que no estás tomando el camino correcto, y que lo primero que deberías
> comprobar es que la query SQL funciona desde consola, es decir, entrando
> con "mysql -u usuario -p base_datos" y haciendo el INSERT a mano.
> Si funciona entonces ya mirarías otras causas de error, pero no trates de
> meterte en un AGI tal vez innecesario sólo porque no te funcione un INSERT.
>
>
>
>> Por lo que he leído es posible hacerlo con un AGI ¿es posible hacerlo
>> con SHELL scrip en lugar de con PHP?
>>
>
> Un AGI puede ser en cualquier lenguaje:
> http://www.voip-info.org/wiki-Asterisk+AGI
> ;)
>
> Pero si usas alguno para el que existan cómodas librerías de manejo de AGI's
> será mucho más rápido de programar.
>
>
>
>
--
Proxima Systems
Edificio CEEI - Módulo 1.14
Parque Tecnológico de Boecillo
47151 Boecillo - Valladolid
http://www.proximasystems.net
Tlf: (+34) 983 548145
Fax: (+34) 983 548156
¿Y haces el insert así, a pelo y sin vaselina? por lo menos conectate a la
base de datos primero .. ;-)
> Respecto a lo del debug, me da este error al cargar Asterisk:
> [res_config_mysql.so] => (MySQL RealTime Configuration Driver)
> Nov 23 02:40:25 ERROR[19586]: res_config_mysql.c:651 mysql_reconnect:
> MySQL RealTime: Failed to connect database server on (err 2002). Check
> debug for more info.
> Nov 23 02:40:25 WARNING[19586]: res_config_mysql.c:477 load_module:
> MySQL RealTime: Couldn't establish connection. Check debug.
> Nov 23 02:40:25 NOTICE[19586]: config.c:863 ast_config_engine_register:
> Registered Config Engine mysql
> MySQL RealTime driver
> loaded.
Este error es solo referido a la parte de RT de Asterisk basada en el motor
MYSQL, no tiene nada que ver con ejecutar consultas en medio del dialplan.
--
Saludos.
Raúl Alexis Betancor Santana
Dimensión Virtual S.L.
*CLI> -- Executing MYSQL("OSS/dsp", "Connect connid localhost user
pass asterisk") in new stack
Con esta sentencia no me conecto?¿Para consultas (SELECT) si que funciona?
> *CLI> -- Executing MYSQL("OSS/dsp", "Connect connid localhost user
> pass asterisk") in new stack
>
> Con esta sentencia no me conecto?¿Para consultas (SELECT) si que funciona?
Perdona, no me había fijado ... a ver .. código que A MÍ me ha funcionado en
una prueba rápida.
exten => 1,1,NoOp("Prueba Rápida")
exten => 1,n,MYSQL(Connect connid localhost test test test)
exten => 1,n,MYSQL(Query resultid ${connid} INSERT INTO test(var1,value)
VALUES('test','Ok'))
exten => 1,n,MYSQL(Query resultid ${connid} SELECT value FROM test WHERE var1
= 'test')
exten => 1,n,MYSQL(Fetch fetchid ${resultid} VarValue)
exten => 1,n,NoOp(${VarValue})
exten => 1,n,MYSQL(Clear ${resultid})
exten => 1,n,MYSQL(Disconnect ${connid})
> [res_config_mysql.so] => (MySQL RealTime Configuration Driver)
> Nov 23 02:40:25 ERROR[19586]: res_config_mysql.c:651 mysql_reconnect:
> MySQL RealTime: Failed to connect database server on (err 2002). Check
> debug for more info.
> Nov 23 02:40:25 WARNING[19586]: res_config_mysql.c:477 load_module:
> MySQL RealTime: Couldn't establish connection. Check debug.
> Nov 23 02:40:25 NOTICE[19586]: config.c:863 ast_config_engine_register:
> Registered Config Engine mysql
> MySQL RealTime driver
> loaded.
>
>
> Estará aqui el problema?
Pues sí, claro, te está diciendo que "no se puede conectar a la base de
datos", así que imposible que funcione.
> ¿A qué debug se refiere?
tail -f /var/log/asterisk/messages
¿Es correcto tu fichero /etc/asterisk/res_mysql.conf ?
PD: Para comprobar si Asterisk está realmente conectado a la base de datos
ejecuta en el CLI:
CLI> realtime mysql status
Y me la rellena correctamente en cada llamada, pero me sigue dando el error:
*CLI> realtime mysql status
Nov 23 04:34:26 ERROR[22342]: res_config_mysql.c:651 mysql_reconnect:
MySQL RealTime: Failed to connect database server on (err 2002). Check
debug for more info.
Por otro lado el archivo:
/etc/asterisk/res_mysql.conf
no lo tengo, el más parecido es:
/etc/asterisk/res_odbc.conf
; ENV is a global set of environmental variables that will get set.
; Note that all environmental variables can be seen by all connections,
; so you can't have different values for different connections.
[ENV]
INFORMIXSERVER => my_special_database
INFORMIXDIR => /opt/informix
; All other sections are arbitrary names for database connections.
[asterisk]
enabled => yes
dsn => asterisk
;username => myuser
;password => mypass
pre-connect => yes
[mysql2]
enabled => no
dsn => MySQL-asterisk
username => myuser
password => mypass
pre-connect => yes
Sí, es lo que te comentaba en el otro correo, que me he equivocada al
responderte. Olvida lo de realtime y res_mysql.conf.
¿A qué error te refieres?
> > El Jueves, 23 de Noviembre de 2006 12:41, Gerardo Rodríguez Visus
escribió:
> >> pero me sigue dando el
> >> error:
> >>
> >> *CLI> realtime mysql status
> >> Nov 23 04:34:26 ERROR[22342]: res_config_mysql.c:651 mysql_reconnect:
> >> MySQL RealTime: Failed to connect database server on (err 2002). Check
> >> debug for more info.
> >>
> >> Por otro lado el archivo:
> >>
> >> /etc/asterisk/res_mysql.conf
> >>
> >> no lo tengo
> >
> > Sí, es lo que te comentaba en el otro correo, que me he equivocada al
> > responderte. Olvida lo de realtime y res_mysql.conf.
>
>
Al que está un poco más abajo en este email y se le produce por lo que yo le
comenté en otro mensaje del mismo hilo, retomo un poco más abajo para
aclararnos todos ...
> > > El Jueves, 23 de Noviembre de 2006 12:41, Gerardo Rodríguez Visus
>
> escribió:
> > >> pero me sigue dando el
> > >> error:
> > >>
> > >> *CLI> realtime mysql status
> > >> Nov 23 04:34:26 ERROR[22342]: res_config_mysql.c:651 mysql_reconnect:
> > >> MySQL RealTime: Failed to connect database server on (err 2002).
> > >> Check debug for more info.
> > >>
> > >> Por otro lado el archivo:
> > >>
> > >> /etc/asterisk/res_mysql.conf
> > >>
> > >> no lo tengo
A ver amigo Gerardo, Si los INSERT se te ejecutan bien .. estas haciendolo
bien, el ERROR que comentas es del módulo de RT, tal como te dije en otro
email, simplemente comenta la linea load=res_config_mysql.so del
modules.conf, si no vas a usar la función de RT de asterisk.
Repito resumiendo:
- No es un ERROR, es que has cargado un módulo que no necesitas, porque no lo
usas y te está diciendo que ese módulo está mal configurado, módulo en
cuestión: res_config_mysql.so
- Si los INSERT's te funcionaban desde el principio, tiene que ser que yo he
leído mal el hilo, porque había entendido que los INSERT's no te funcionaban.
> El Jueves, 23 de Noviembre de 2006 12:52, Gerardo Rodríguez Visus escribió:
>
>> Ok. Entonces ¿Hay alguna manera de evitar este error? Porque las
>> funcionalidades que necesito las consigo con la base de datos de
>> Asterisk, pero no suele ser recomendable correr un programa con un error.
>>
>
> ¿A qué error te refieres?
>
>
>
>>> El Jueves, 23 de Noviembre de 2006 12:41, Gerardo Rodríguez Visus
>>>
> escribió:
>
>>>> pero me sigue dando el
>>>> error:
>>>>
>>>> *CLI> realtime mysql status
>>>> Nov 23 04:34:26 ERROR[22342]: res_config_mysql.c:651 mysql_reconnect:
>>>> MySQL RealTime: Failed to connect database server on (err 2002). Check
>>>> debug for more info.
>>>>
>>>> Por otro lado el archivo:
>>>>
>>>> /etc/asterisk/res_mysql.conf
>>>>
>>>> no lo tengo
>>>>
>>> Sí, es lo que te comentaba en el otro correo, que me he equivocada al
>>> responderte. Olvida lo de realtime y res_mysql.conf.
>>>
>>
--
El Jueves, 23 de Noviembre de 2006 15:33, Gerardo Rodríguez Visus escribió:
> > ¿A qué error te refieres?
> **CLI> realtime mysql status
>
> > >> Nov 23 04:34:26 ERROR[22342]: res_config_mysql.c:651 mysql_reconnect:
> > >> MySQL RealTime: Failed to connect database server on (err 2002).
> > >> Check debug for more info.*
Lee el correo anterior de Raúl. Explica perfectamente que ese error nada tiene
que ver con tu problema.
Les cuento que no entiendo ni un solo punto de Asterisk en cuanto a
configuracion y estoy viendo la posibilidad de encontrar la informacion que
busco a traves de este medio.
Quisiera saber que Equipos necesito? Hardware?
Que Sistema operativo?
Que lenguaje utilizar? PHP?
Que aplicaciones ya existen? Open Source? Compradas?
Que desarrolladores Freelance existen?
Estoy interesado en montar una central con Asterix que pueda configurar con
varios servicios. Menus, leer MP3 almacenados, Leer contenido de una base de
datos, usar locuento para alguna parte del proceso, crear hasta
reconocimiento de instruccciones por voz, crear menus dinamicos de acuerdo
al ID de quien llame etc.
No se si esta bien preguntar esto aquí porque no aporta nada a los demas
pero si me gustaria poder saber si puedo conseguir esta orientacion aquí.
Dejenme saber por favor sus datos y demas.
Alguna persona que me pueda server de Out Sorcing para poner mi propio Aseterisk desde Cero?