Yeastar/Historial/LDAP
Hola. Estoy probando este fantástico software y me encuentro con algunos problemas.
Lo tengo instalado y funcionando pero hay varios puntos que me fallan.
Mi centralita es una Yeastar, concretamente modelo U100. Tiene en su interior un asterisk 1.6-
Tengo varias preguntas
A)
He tenido que modificar varios archivos para poder acceder a la base de datos del historial, concretamente he añadido las siguiente líneas:
config.php
Debido a que la base de datos está en otro host, pero necesito acceder también al phonebook local he añadido a parte del fop2 local:
$HOST2='192.168.168.151';
$USER2='cdr';
$PASS2='cdr2015';
$DB2='asteriskcdr';
$CDRDBTABLE2 ='asteriskcdr.cdr_201502';
He añadido también la definicion $db3 como sigue:
if(function_exists('mysql_connect')) {
$db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, false);
$db3 = new dbcon($HOST2, $USER2, $PASS2, $DB2, false);
if(!$db->is_connected()) {
// Database connection details from amportal
if (is_readable("/etc/freepbx/freepbx.conf")) {
$amp_conf = parse_amportal_conf("/etc/freepbx/freepbx.conf");
$DBHOST = $amp_conf;
$DBNAME = $amp_conf;
$DBUSER = $amp_conf;
$DBPASS = $amp_conf;
} else if (is_readable("/etc/amportal.conf")) {
$amp_conf = parse_amportal_conf("/etc/amportal.conf");
$DBHOST = $amp_conf;
$DBNAME = $amp_conf;
$DBUSER = $amp_conf;
$DBPASS = $amp_conf;
}
$db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, true);
}
En phonetabs.php:
cdr=1;
$res2 = $db3->consulta("DESC $CDRDBTABLE2");
if(!$res2) {
$cdr=0;
}
Parece que no da error y que tiene acceso a la tabla, pero no se me presentan en pantalla los datos. Adjunto imagen.
He mirado la tabla de la base de datos en concreto y los nombre de los campos cambian. No sé si puede ser debido a eso.
b) He instalado también el plugin para chrome, pero no me identifica el nombre de quien llama , pone <unknown>, en cambio desde el panel fop2 si que lo hace.
c) Debido a que la centalita utiliza LDAP para la agenda, me encuentro que los nombres del teléfono y del panel no están sincronizados. Es posible configurar el FOP2 para hacer llamadas a LDAP? De esta manera, configurando los teléfonos contra LDAP y el FOP2 tendria una phonebook centralizada.
Uff vaya royo que he metido para ser la primera pergunta... jeje, es que me urgee .
Gracias de antemano.
Lo tengo instalado y funcionando pero hay varios puntos que me fallan.
Mi centralita es una Yeastar, concretamente modelo U100. Tiene en su interior un asterisk 1.6-
Tengo varias preguntas
A)
He tenido que modificar varios archivos para poder acceder a la base de datos del historial, concretamente he añadido las siguiente líneas:
config.php
Debido a que la base de datos está en otro host, pero necesito acceder también al phonebook local he añadido a parte del fop2 local:
$HOST2='192.168.168.151';
$USER2='cdr';
$PASS2='cdr2015';
$DB2='asteriskcdr';
$CDRDBTABLE2 ='asteriskcdr.cdr_201502';
He añadido también la definicion $db3 como sigue:
if(function_exists('mysql_connect')) {
$db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, false);
$db3 = new dbcon($HOST2, $USER2, $PASS2, $DB2, false);
if(!$db->is_connected()) {
// Database connection details from amportal
if (is_readable("/etc/freepbx/freepbx.conf")) {
$amp_conf = parse_amportal_conf("/etc/freepbx/freepbx.conf");
$DBHOST = $amp_conf;
$DBNAME = $amp_conf;
$DBUSER = $amp_conf;
$DBPASS = $amp_conf;
} else if (is_readable("/etc/amportal.conf")) {
$amp_conf = parse_amportal_conf("/etc/amportal.conf");
$DBHOST = $amp_conf;
$DBNAME = $amp_conf;
$DBUSER = $amp_conf;
$DBPASS = $amp_conf;
}
$db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, true);
}
En phonetabs.php:
cdr=1;
$res2 = $db3->consulta("DESC $CDRDBTABLE2");
if(!$res2) {
$cdr=0;
}
Parece que no da error y que tiene acceso a la tabla, pero no se me presentan en pantalla los datos. Adjunto imagen.
He mirado la tabla de la base de datos en concreto y los nombre de los campos cambian. No sé si puede ser debido a eso.
b) He instalado también el plugin para chrome, pero no me identifica el nombre de quien llama , pone <unknown>, en cambio desde el panel fop2 si que lo hace.
c) Debido a que la centalita utiliza LDAP para la agenda, me encuentro que los nombres del teléfono y del panel no están sincronizados. Es posible configurar el FOP2 para hacer llamadas a LDAP? De esta manera, configurando los teléfonos contra LDAP y el FOP2 tendria una phonebook centralizada.
Uff vaya royo que he metido para ser la primera pergunta... jeje, es que me urgee .
Gracias de antemano.
Comments
Entiendo que estés urgido, pero imagino que también entiendes que todo lo que necesitas son personalizaciones específicas para tu entorno, cosa que ya has empezado a encarar de forma correcta, pero que NO va a funcionar de forma automática. Estás desdoblando bases de datos, accediendo a bases distintas, el proceso es correcto en una mirada rápida, y debería de funcionar. Desafortunadamente no veo la imagen adjunto y no se que dato es el que no ves. Yo te diría que hagas las cosas por pasos, primero configures config.php como viene mas o menos por defecto, pero apuntando a la tabla de cdr, y que revises si en el historial ves los llamados o no, una vez que tengas funcionando eso, entonces recien encara la 2da base de datos o phonebook.
De todas maneras, me dices que quieres sincronizar de alguna manera con ldap, en ese caso, NO deberias usar el phonebook del fop2 para nada, olvidarte de eso y usar lo que te de tu centralita para manejar tu directorio. Y deberias entonces enfocarte en modificar el vphonebook.php para que en lugar de consultar las bases mysql propias del fop2, hagan una consulta ldap adecuada (eso es para el auto complete del campo dial de la barra de herramientas). Y modificar el checkdir.php si lo deseas tambien para consultar ldap (eso es para poner nombre en base al numero de telefono que hace un llamado).
Si necesitas asistencia para desarrollar esas customizaciones, puedes contratarlas, hay paquetes de horas en www.fop2.com/buy.php
Con respecto al unknown de la extensión de chrome, ese dato viene del manager mismo de asterisk, que versión de asterisk estás usando?
Saludos,
En relación a la versión, és una Asterisk 1.6.2.6
Además he tenido que cambiar el formato de como se nombra la tabla puesto que la centralita lo cambia en función del mes en curso:
$FECHA = date('Ym');
$CDRDBTABLE2 ='asteriskcdr.cdr_'. $FECHA .'';
A parte de esto ahora funciona.
Ahora voy a mirar de poner un desplegable de llamadas en la principal, para que sea un poco más rápido ver las últimas llamadas. A ver si lo consigo.