- Edited
Clonas el repositorio, le cambias el remote, a uno propio, y puedes comenzar a trabajar. Puedes postear el link de tu repo para poder colabor con codigo, sugerencias, qa, etc.
Clonas el repositorio, le cambias el remote, a uno propio, y puedes comenzar a trabajar. Puedes postear el link de tu repo para poder colabor con codigo, sugerencias, qa, etc.
@juanelojga Si ese lo evalue, pero la verdad use como base el modulo break_administrator y con ese estoy comenzando a construir este de el cual los avances son los que estoy mostrando.
De igual forma gracias por la información.
bueno, pero este tiene buenas practicas, puedes hacer testing facilmente, ya viene lista la conexion a la base de datos, traits, contracts, etc.
Es cierto, aunque palosanto también implementa los objetos y tiene una librería para hacer todo dentro de la base de datos, consultar, insertar, actualizar,etc..
Por eso opte por ese módulo, y me guíe con los otros para hacer las consultas.
Ahora sólo me falta revisar el tema de los themes y la forma de pintar la consulta, ya que en el ejemplo que monte, llamé el HTML y el resultado de la consulta desde el mismo lugar y veo que palo santo lo hace de una manera diferente que aún me falta estudiar mejor para aprender a hacerlo de esa manera.
casoft Genial tiene buena pinta lo unico no se si eso es para ver campaña, por campaña o hay mostraria los de todas las campañas por lo que se podría añadir el campo de Campaña y alguna opción por ejemplo para lanzar la llamada ya o cambiar el numero de agente aunque ya eso seria mas avanzado de momento con mostrar esos datos esta genial ! en cuanto tengas mas o menos esa opcion si pones el codigo por aqui lo pruebo yo también y vamos viendo. te esta quedando muy bien y un gran aporte cuando este terminado
hgmnetwork efectivamente, ya esta funcional, la idea es que al ingresar a el modulo "Monitoreo de campaña" exista un boton que me lleve a la seccion de el modulo y me pase por parametro el ID de la campaña con el cual voy a hacer la consulta a la base de datos.
Neceisto la ayuda de alguien para crear ese boton dentro de el modulo y que me pase como parametro idcampana con el numero de la campaña. Si alguien sabe como hacerlo de forma rapida le agradezco ya que si lo paso por URL me funciona pero no he podido crear el boton, no se como construirlo en ese modulo.
La URL me pasa asi manualmente y me funciona:
index.php?menu=campaign_monitoring&action=ver_agendadas&idcampana=2
Lo de cambiar el numero de el agente lo voy a revisar creo que es algo viable y sensillo, espero esta noche poder montar el codigo.
casoft Hola Casoft, he creado un boton rapido con lo que pides, no es lo mas bonito ya que puse texto pero es funcional he mantenido el hash (#/detailt....)para poder cambiar entre url a posterior sin problema
lo he creado con javascript pero lo he probado y creo es funcionarl
te explico como implementarlo
edita el fichero
vi /var/www/html/modules/campaign_monitoring/themes/default/informacion_campania.tpl
donde pone al principio casi
<script type="text/x-handlebars" data-template-name="campaign">
<b>{$ETIQUETA_CAMPANIA}:</b>
{literal}
{{view Ember.Select
contentBinding="content"
optionValuePath="content.key_campaign"
optionLabelPath="content.desc_campaign"
valueBinding="key_campaign" }}
{/literal}
{literal}{{outlet}}{/literal}
</script>
añade esto
<!--
creado por hgmnetwork.com 09-07-2018 para pruebas
funcion para obtener el id de campaña en funcion del hash ejemplo #/details/outgoing/10 nos devuelve 10
-->
<script>
function obtener_idcampania (){
//alert("entra");
var URLactual = window.location.hash;
//alert(URLactual);
var idcampania = URLactual.replace("#/details/outgoing/", "");
//console.log(idcampania);
console.log("el id de campania es " + idcampania);
document.location.href="index.php?menu=campaign_monitoring&action=ver_agendadas&idcampana=" + idcampania;
}
</script>
[ <a href="javascript:obtener_idcampania();">ver llamadas Agendadas</a> ]
( puedes quitar lo de hgm eso lo pongo en codigo para saber los cambios que hago si no luego el codigo seria una locura con las pruebas que hago )
y justo debajo ya aparece donde se selcciona campaña
quedaria asi
[ <a href="javascript:obtener_idcampania();">ver llamadas Agendadas</a> ]
<script type="text/x-handlebars" data-template-name="campaign/details">
{ Atributos de la campaña elegida }
<table width="100%" >
<tr>
<td><b>{$ETIQUETA_FECHA_INICIO}:</b></td>
<td>{literal}{{fechaInicio}}{/literal}</td>
<td><b>{$ETIQUETA_FECHA_FINAL}:</b></td>
con eso al hacer click en el texto de ver llamadas agendadas cambiaria a la url que me indicaste de la siguiente forma
index.php?menu=campaign_monitoring&action=ver_agendadas&idcampana=(el id que se tenga seleccionado)#...
un ejemplo quedaria asi
espero te ayude cualquier cosa me avisas y la miro a ver si puedo ayudarte en lo maximo posible y lo mas rapido posible porque me parece muy buen aporte e interesante esa opcion de ver las agendadas
cualquier cosa que necesites si puedo ayudarte encantado.
hgmnetwork EXCELENTE!!!!!!
Ya podemos liberar la primer alpha de el modulo con esas modificaciones, gracias a ese boton que la verdad me habia quedado grande crearlo.
Aqui monto el link para la descarga, espero crear un repositorio en github como te habian sugerido para mejorar desde ahi las cosas, pero por ahora podemos avanzar por aqui.
https://casoft.com.co/issabeldev/campaign_monitoring.tgz
Los Betta tester son bienvenidos!
casoft subelo a git y de ahi se baja y también realizas un push hacia issabel para siguiente iso que saldra. gracias.
casoft Amigos el aporte es bueno, pero centralizar en un git va facilitar los cambios y llevar control.
sobre el archivo tbz en que ruta se debe colocar para ver los cambios.?
dariohimo Listo ya quedo, esta en https://github.com/casoftcol/campaign_monitoring
dale un push hacia issabel_foundation así lo tengan en cuenta. Gracias.
casoft se borro el codigo?
No sale en Github me guiare por tu codigo y lo pruebo y hago pruebas y te voy diciendo pero inicialmente genial una cosa mas mejorada y que nos ayudará a muchos ! ahora a probarlo
PAra hacer el push hay que todavia perfilarlo mas para que el texto del link y demas los use desde los ficheros de idiomas, ya que ahora estaria solo en español, de eso me puedo encargar yo, en cuanto tenga un hueco a probarlo me pongo con los cambios de idioma para hacerlo si le parece bien a casoft
Una cosa Casoft, descargue tu codigo pero veo muchas carpetas y ficheros hay que subirlos dentro de html/modules/?? si me puedes orientar a como dejarlo instalado para probarlo te lo agradezco,
Ya quedo listo en GitHub, perdon pero fue culpa de mi inexperiencia! jejej
Si la idea es remplazar esos archivos por los que estran dentro de la carpeta /var/www/html/modules/campaign_monitoring
Los reemplazas y listo
casoft Ok, en cuanto tenga un hueco lo reviso y lo pruebo dentro del listado de Agendadas, se podria ver si se ha realizado llamadas anteriores ? no me he fijado en la db como se almacena lo pruebo a l anoche o mañana que espero tener algo mas de tiempo.
Muy buen aporte Casoft, en cuanto pueda lo pruebo y si me da tiempo lo intento preparar para el uso de idiomas y adaptarlo para pruebas y subirlo a la oficial que seguro muchos lo utilizaran
casoft he modificado a mano ya que tengo mucha parte de codigo retocada por mi y cambiar todo me cambiaria mucho, pero ya lo he podido probar y esta genial.
He realizado un pequeño cambio a ver que les parece, al darle a ver llamadas agendadas cargaria lo mismo que monitoring y debajo ( en vez de un pagina nueva solo) añade al final las llamadas agendadas de la campaña asi se tiene en la misma pagina y es mas facil cambiar de campaña o realizar cualquier opcion.
el codigo que he modificado es bien facil solo es añadir esto en el index.php
buscamos case 'ver_agendadas':
break;
case 'ver_agendadas':
//mostramos la informacion de la campaña en la parte superior prueba hgmnetwork.com 10-07-2018
$sContenido = manejarMonitoreo_HTML($module_name, $smarty, $local_templates_dir);
//Genera listado con las llamadas programadas
$sContenido .= ver_agendadas($module_name,$smarty, $local_templates_dir,$pDB,getParameter('idcampana'));
break;
default:
añadimos primero el modulo de la campaña y debajo ponemos la misma variable con . para que añada el resto.
como les parece mejor ? en un panel por separado o debajo ? se puede poner tambien de mas formas es cuestion de que valoremos cual es mas útil en general.
Tambien se puede poner al revés, primero las agendadas y debajo la información de la campaña asi no se pierde de vista las llamadas y agentes mientras se revisan las agendadas.
He probado a agendar una llamada, pero me sale en blanco, es decir me sale la tabla
Llamadas agendadas
N.TELEFONO AGENTE FECHA PROGRAMADA HORA PROGRAMADA ESTADO
pero sin nada debajo y en la db en calls esta correctamente agendada. igual es que me falta algo por modificar
Te pongo los ficheros que he modificado por si me he saltado algo.
modulo campain_monitorin crear carpeta libs y dentro
todo el codigo que tienes
luego en index.php
buscar
case 'checkStatus':
$sContenido = manejarMonitoreo_checkStatus($module_name, $smarty, $local_templates_dir);
break;
case 'loadPreviousLogEntries':
$sContenido = manejarMonitoreo_loadPreviousLogEntries($module_name, $smarty, $local_templates_dir);
break;
y debajo poner
case 'ver_agendadas':
//Genera listado con las llamadas programadas
$sContenido = ver_agendadas($module_name,$smarty, $local_templates_dir,$pDB,getParameter('idcampana'));
break;
justo debajo esta
default:
// Página principal con plantilla
$sContenido = manejarMonitoreo_HTML($module_name, $smarty, $local_templates_dir);
}
return $sContenido;
}
y añadir la funcion
function ver_agendadas($module_name,$smarty, $local_templates_dir,$pDB, $idcampana )
{
$oBreaks = new PaloSantoBreaks($pD;
$datos=$oBreaks->Ver_Agendadas($idcampana);
$micon='<b>Llamadas agendadas</b>
<table width="100%">
<tr>
<td><b>N.TELEFONO</b></td>
<td><b>AGENTE</b></td>
<td><b>FECHA PROGRAMADA</b></td>
<td><b>HORA PROGRAMADA</b></td>
<td><b>ESTADO</b></td>
</tr>';
$cont = count($datos);
for ($i=0;$i<=$cont;$i++)
{
$micon.='<tr>
<td>'.$datos[$i][2].'</td>
<td>'.$datos[$i][19].'</td>
<td>'.$datos[$i][15].'</td>
<td>'.$datos[$i][17].'</td>
<td>'.$datos[$i][3] .'</td>
</tr>';
}
$micon.= '</table>
</div>';
return $micon;
}
igual me falta alguna parte mas por poner ya me dices cuando puedas para poder probarlo
gracias!
otra cuestion en la tabal calls veo que se puede programar fecha inicial y fecha fin entiendo que es para que haga la llamada entre el dia x al dia y y entre la hora x y la hora y pero en la imagen que pasaste solo sale una fecha y una hora, una vez resuelva lo de poder ver las agendadas añadire la opcion de si hay dos fechas y un rango de horas mostrarlo tambien para dejarlo mas completo y si no hay agente indicado que ponga cualquiera o algo asi para indicar que es un agente libre y no salga en blanco.
De pronto son las pequeñas cosas que se me ocurren para dejar mas completo el nuevo codigo
espero tus sugerencias tambien a v er que te parecen