Como ver el historial de mensajes con todos los alumnos

Como ver el historial de mensajes con todos los alumnos

de Jose Gonzalez -
Número de respuestas: 27
Hola, se como ver el historial de mensajes que he mantenido con un alumno, pero el problema es que ya he perdido la cuenta de todos los alumnos que han estado, y me gustaría recuperar todos los mensajes de todos los alumnos con migo.

Se que entrando alumno por alumno puedo ir viendo el historial con cada uno de ellos, pero me gustaría saber si existe la posibilidad de ver todos los mensajes que he enviado y recibido de cualquier usuario, sin falta de ir uno por uno.

Muchas gracias.
Promedio de valoraciones: -
En respuesta a Jose Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Mauro Chojrin -
Hola:

¿Me podrías comentar cómo ves el historial de mensajes con un usuario? Gracias!
En respuesta a Mauro Chojrin

Re: Como ver el historial de mensajes con todos los alumnos

de Jose Gonzalez -
Con un usuario es facil, abres la ventana de "mensajes", buscas al usuario de igual forma que si le fueras a enviar un mensaje, y cuando estas en la ventana donde tendrías que escribir el texto del mensaje, en la exquina superior derecha aparece:

Historia de mensajes.


Pues le das ahi y se te abre otra ventana con todos los mensajes enviados y recibidos entre esa persona y tu ordenados cronológicamente.

En respuesta a Jose Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Raul Garcia Canet -
Hola Jose,

Lamentablemente, me parece que no hay ninguna opción para recuperar TODOS los mensajes que has intercambiado con TODOS los usuarios.
No obstante me parece una opción interesante que podría incluirse en el propio perfil del usuario (igual que sí están los mensajes de los foros en los que ha participado el usuario)

A ver si encuentro un hueco y me pongo, a ver si consigo que funcione.

Hasta pronto,
Salu2
J. Raul (juagarc4) guay

En respuesta a Jose Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Raul Garcia Canet -
Hola a todos,
Creo que lo tengo gran sonrisa
Lo he estado probando y parece que funciona pero mejor que alguien más lo compruebe.

Versión de Moodle:'1.9.5+ (Build: 20091014)'

Dejo el parche para que se pueda aplicar directamente.
y los ficheros modificados para los que quieran sólo sustituir los ficheros

Los ficheros afectados son:

/moodle/user/tabs.php (añadir la pestaña en el perfil del usuario)
/moodle/message/lib.hp (la funcion para recuperar todos los mensajes)

Y un fichero nuevo creado:
/moodle/message/historyall.php (visualización de los mensajes)

Espero que vaya bien.
Hasta pronto,
Salu2
J. Raul (juagarc4) guay
En respuesta a Raul Garcia Canet

Re: Como ver el historial de mensajes con todos los alumnos

de Mariano Gonzalez -
Hola Juan, me podrías explicar un poco mas como puedo hacer esto??? es bastante interesante lo que comentas... pero para alguien como yo que lamentablemente no sabe mucho de codigos se me complica...

Saludos,

Mariano
En respuesta a Mariano Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Raul Garcia Canet -
Hola Mariano,

Bueno, es un poco largo, pero nada complejo.

Si no te manejas bien con las herramientas mezclado(merge) de código, lo más sencillo (aunque un poco tedioso) es modificar el código a mano.
Vamos allá, arremángate que empezamos gran sonrisa:

Te recomiendo que todos los pasos los hagas en una instalación local de moodle y luego (cuando hayas verificado que funciona) hacer los mismos pasos en el servidor.
NOTA IMPORTANTE: haz una copia de tus ficheros /moodle/user/tabs.php y /moodle/message/lib.php
El fichero "historyall.php" es nuevo y no lo tendrás, así que no puedes hacer copia de él.

Paso 1: Copia el fichero historyall.php en la carpeta moodle/message/

Este era el paso más fácil.
Ahora vamos a realizar las modificaciones en los ficheros tabs.php que está en la carpeta moodle/user/ y lib.php que está en la carpeta moodle/message

Para editar los ficheros asegurate de usar un editor que no se al bloc de notas de windows, ni el word. Yo uso el Notepad++ (en Windows) y el Vim(en Linux), per puedes usar cualesquieras. También puedes usar el phpedit (antes era gratuito, pero ya no lo es) o cualquier otro editor de páginas web (pero no te lo recomiendo)

Paso 2: Edita el fichero lib.php que está en la carpeta /moodle/message/

Busca la función:

function message_get_history($user1, $user2) {

....
return $message
}

Justo después de la llave de cierre y antes de la línea:
function message_format_message(&$message, &$user, $format='', $keywords='', $class='other') {


pega este código:

function message_get_all_messages($user1){
$messages = get_records_select('message_read', "(useridfrom = '$user1->id')",'timecreated');
return $messages;
}

Esta función recuperará todos los mensajes del usuario actual.
Guarda el fichero.

Paso 3: Edita el fichero tabs.php que está en /moodle/user/
Busca estas líneas:

$secondrow = $reportsecondrow;
}
}
(Aquí pega el código)
} //close last bracket (individual tags)

Pega el siguiente código, en el lugar que te indico con el texto en rojo (Aquí pega el código) es decir, antes de la llave "} //close last bracket"

//Add tab to see instant messages

$toprow[] = new tabobject('messagin', $CFG->wwwroot.'/message/historyall.php?id='.$user->id.'&course='.$course->id ,get_string('messagehistory','message'));

Guarda el fichero.

Este código añadirá una pestaña en el perfil del usuario que se llama "Historia de Mensajes"

Ahora entra en el perfil de tu usuario y comprueba que todo funciona correctamente.
Si no tienes mensajes, te informará de ello. Prueba a mandar un mensaje a algunos usario y a responderte desde esos usuarios.
Si todo ha ido bien, podrás ver el historial de mensajes con todos los usuarios.

Si tines algun problema no dudes en postear guiño
Hasta pronto,
Salu2
J. Raul (juagarc4) guay
En respuesta a Raul Garcia Canet

Re: Como ver el historial de mensajes con todos los alumnos

de Mariano Gonzalez -
j. Raul, me dejas sin palabras... MUCHISIMAS GRACIAS por el exelente nivel de explicación... ahora mis mo me pongo con esto y te comento como me fué.

Muchas gracias de nuevo...
En respuesta a Mariano Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Mariano Gonzalez -
J. Raul, funciona perfecto... ya lo probe en el local host, pero lo unico es que estoy viendo que todos pueden ver el historial de todos... osea que puedo ver conversaciones de otras personas...
Esto e muy dificil de solucionar? hacer qeu solo el administrador o porfesor pueda ver este historial?

Saludos,
En respuesta a Mariano Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de Raul Garcia Canet -
Hola Mariano,

Lo más fácil es coultar la pestaña en el perfil, así que en el fichero:
/moodle/user/tabs.php

Cambia la línea

$toprow[] = new tabobject('messagin', $CFG->wwwroot.'/message/historyall.php?id='.$user->id.'&course='.$course->id ,get_string('messagehistory','message'));

Por:
//Esto comprueba que es administrador o que tiene la capacidad de manejar los archivos (normalmente los roles por encima del alumno pueden) y entonces muestra el tab, sino no lo muestra.

If (is_siteadmin($user->id) || has_capability('moodle/course:managefiles', $coursecontext)){

$toprow[] = new tabobject('messagin', $CFG->wwwroot.'/message/historyall.php?id='.$user->id.'&course='.$course->id ,get_string('messagehistory','message'));

}

Lo siento, pero ahora no puedo probarlo porque estoy en plena actualización de mi sistema, pero debe de funcionar bien.

Hasta pronto,
Salu2
J. Raul (juagarc4) guay

En respuesta a Raul Garcia Canet

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Ya lo tengo. He probado en otra instalación de moodle y me ha salido correcto. Muchas gracias por tu ayuda.

Sin embargo el problema es que todos ven los mensajes de todos, y aunque en el foro plantea ocultar la pestaña a algunos usuarios, lo que yo necesito es que cada profesor vea sólo los mensajes suyos, no los de otros profesores.

¿Tú tienes idea de cómo modificar el código fuente para conseguir esto?.

De nuevo. Muchas gracias de antemano.

Saludos

Amparo

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de Xavier Paz -

En principio solo debería mostrar el historial de mensajes con aquellos usuarios con los cuales hayas intercambiado mensajes. Esta es la parte del código de historyall.php que parece que se encarga de ello:

$my_messages=message_get_all_messages($user);

Básicamente recolecta todos los mensajes del usuario, y va desgranando por destinatario.

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Ya lo tengo. tenías razón en que cada uno sólo ve sus conversaciones pero el caso es que las mismas conversaciones me salen repetidas varias veces. Intuyo que se repiten tantas veces como cursos en los que está matriculado el alumno. ¿Cómo hacer que sólo se vean una sola vez los mensajes y no se repitan? Gracias de antemano y espero que esta sea la última petición de ayuda. Gracias Amparo

En respuesta a Mariano Gonzalez

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Hola ¿Cómo lo conseguiste? A mi me sale la pestaña nueva de historiald e mensajes pero me sale vacio después de haber enviado y recibido mensajes.

Gracias

Amparo

En respuesta a Raul Garcia Canet

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -
Hola:

Estoy muy interesado en esto que se está planteando pero no sé dónde está el fichero historyall.php que debo copiar en la carpeta moodle/message/.

También deciros que estoy en pleno desarrollo de curso. ¿Sabéis si este cambio puede afectar y/o bloquear alguna otra función?.

Gracias como siempre.

Amparo
En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -
Hola de nuevo:

He visto que estaba colgado el parche pero además de que dice que tiene un error y no lo descarga bien, yo sólo necesito el archivo historyall.php ya que voy a hacer la modificación a mano.

Saludos de nuevo y muchas gracias.

Amparo

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de Xavier Paz -

Con permiso de Juan Raúl, vuelvo a subir el archivo en formato zip.

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Muchísmias gracias Xavier. Ahora lo he descargado bien.Voy a probarlo y ya os dirá algo.

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Hola Xavier:

Lo he probado y la pestaña de mensajes me sale bien pero al hacer clic en ella no me sale ningún historial. Me sale vacía la ventana. Por otro lado he visto que en el archivo comprimido hay 4 archivos cuando en el foro se habla sólo de 3. Este 4º archivo es el archivo messagehistory.diff no sé para qué es y si el problema puede tener que ver con esto.

 

De nuevo muchas gracias de antemano.

Saludos

Amparo

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de Xavier Paz -

El archivo diff es un parche que contiene las modificaciones aplicadas al fichero original (messagehistory.php supongo) y que se debe aplicar sobre este. Para ello puedes usar varias herramientas como el comando diff en Linux o winmerge en windows.

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Perdóname pero no entiendo ni sé còmo tengo que hacer xon ese arvhivo.

 

Gracias de nuevo

Amparo

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de Xavier Paz -
En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Muchas gracias por todo.

He intentado hacerlo como dice en el foro original, modificando los archivos en lugar de con el parche y sigue saliendo lo mismo: el historial vacío. Tiene que haber otro problema ya que he seguido los pasos uno a uno como indican y hay otra persona que lo ha hecho así y le funciona bien según dice en el foro. ¿Sabes tú qué puede estar pasando?

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de Xavier Paz -

Puede ser por varios motivos. Es posible que sea un error de sintaxis, porque hayas olvidado algún paréntesis, punto y coma,llave o similar. Otra opción es que no existan mensajes entre esos usuarios..

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Ya lo tengo. He probado en otra instalación de moodle y me ha salido correcto. Muchas gracias por tu ayuda.

Sin embargo el problema es que todos ven los mensajes de todos, y aunque en el foro plantea ocultar la pestaña a algunos usuarios, lo que yo necesito es que cada profesor vea sólo los mensajes suyos, no los de otros profesores.

¿Tú tienes idea de cómo modificar el código fuente para conseguir esto?.

De nuevo. Muchas gracias de antemano.

Saludos

Amparo

En respuesta a amparo ayala

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Por fin. Ya lo tengo. tenías razón en que cada uno sólo ve sus conversaciones pero el caso es que las mismas conversaciones me salen repetidas varias veces. Intuyo que se repiten tantas veces como cursos en los que está matriculado el alumno.

¿Cómo hacer que sólo se vean una sola vez los mensajes y no se repitan?

Gracias de antemano y espero que esta sea la última petición de ayuda.

Gracias

Amparo

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Por fin. Ya lo tengo. tenías razón en que cada uno sólo ve sus conversaciones pero el caso es que las mismas conversaciones me salen repetidas varias veces. Intuyo que se repiten tantas veces como cursos en los que está matriculado el alumno.

¿Cómo hacer que sólo se vean una sola vez los mensajes y no se repitan?

Gracias de antemano y espero que esta sea la última petición de ayuda.

Gracias

Amparo

En respuesta a Xavier Paz

Re: Como ver el historial de mensajes con todos los alumnos

de amparo ayala -

Hola Xavier o Juan Raúl:

Necesito tu ayuda de nuevo. es muy urgente. En este archivo que subiste de nuevo al copiarlo, me va todo de lujo pero me salen las mismas conversaciones repetidas tantas veces como cursos hace el alumno. ¿Cómo lo arreglo? Necesito ayuda.

 

Gracias