The Higher Education and Research forge

Home My Page Projects Code Snippets Project Openings Développement de WIMS
Summary Activity Forums Tracker Tasks Docs Surveys News SCM Files Listes Sympa

[#8133] Limite de temps de composition forum

Date:
2012-02-01 09:41
Priority:
3
State:
Open
Submitted by:
Eric Reyssat (reyssat)
Assigned to:
Nobody (None)
Hardware:
none
Operating System:
none
Version:
none
Severity:
none
Resolution:
none
URL:
état:
Summary:
Limite de temps de composition forum

Detailed description
J'ai remarqué en deux occasions que l'écriture dans le forum de classe par l'enseignant n'entrainait pas toujours un mail à l'enseignant.
Les deux fois j'avais mis beaucoup de temps à écrire (peut-être 30 min) mais en gardant la session ouverte par des "aperçu" fréquents. Le message a bien été ajouté au forum, mais je n'ai pas reçu de mail. Est-ce que le compteur de temps remis à zéro lors d'un aperçu n'est pas pris en compte pour l'envoi du mail ?
Ce n'est pas gênant quand c'est l'enseignant qui écrit, ça l'est plus si ça se produit quand un élève écrit.

Eric
Message  ↓
Date: 2012-02-02 16:31
Sender: Eric Reyssat

Je n'ai pas la réponse pour l'instant, mais je consigne ici ce que j'ai compris, n'ayant pas le temps d'y retravailler tout de suite.

J'arrive au moins sur mon serveur svn à voir si un mail a été envoyé ou non (bien qu'il ne soit jamais reçu car bloqué au nivau du relai), mais je n'ai pas pu reproduire le bug (c'est long !).

Le message du forum est envoyé par
modules/adm/forum/mboard/var.proc.send, qui gère l'envoi des mails aux destinataires (via mailto) puis le stockage du message dans la classe (via .../mboard/scripts/send.sh). Ce qui pose problème est l'envoi de mail, le stockage est ok. Il se fait par la fonction mailto définie dans exec.c et appelée pour chacun des destinataires (juste l'enseignant pour mon pb).
Cette fonction mailto (plus exactement exec_mailto de exec.c) met le contenu du message dans un fichier mail.body du répertoire temporaire de la session en cours, puis appelle la fonction mail du shell (via call_sh) pour envoyer le contenu de ce fichier au destinataire, puis appelle la fonction mail_log (définie dans log.c) qui inscrit un rapport d'une ligne dans wims/log/mail.log.

Lorsque la commande mail du shell envoie normalement le contenu d'un fichier par mail, elle inscrit une ligne dans le fichier de rapport /var/log/mail (ou /var/log/maillog). Par contre, lorsque le mail n'est pas envoyé par suite d'erreur (par exemple si les paramètres de la commande mail ne peuvent être interprétés), il n'y a aucun rapport d'écrit.

Dans le cas que je décris, le rapport fait par wims existe bien, celui fait par le shell n'existe pas. Cela semble dire que la commande mail du shell a bien été émise (car l'instruction mail_log juste après a laissé des traces) mais n'a pas pu aboutir. Je pense que la raison est que le fichier mail.body contenant le message n'existait pas (ou était vide ?). Il faudra donc voir (serveur en mode debug) si ce fichier est bien écrit en temps utile (il est écrit par accessfile , je crois celui défini dans lines.c et non celui de wimsd.c) et ce qui pourrait empêcher son écriture.

Eric

Date: 2012-02-01 14:41
Sender: Eric Reyssat

Le pb est sur le serveur de Caen en 4.03a.
Sur ce serveur, le fichier wims/log/mail.log (qui est propre à wims) prétend que le mail a bien été envoyé, mais le fichier /var/log/mail (qui est propre au système) n'a pas trace de cet envoi alors qu'il mentionne correctement les autres envois automatiques.
J'ai du mal à tester sous svn car l'envoi de mail n'est pas configuré sur ma machine perso. Je vais tout de même essayer de tracer ce qui se passe.

Lors des ennuis sur le serveur de Caen, je ne pense pas avoir été viré de la classe (il est trop tard maintenant pour en être sûr, mais en tout cas je pouvais continuer à lire le forum).

Je suis d'accord qu'il n'y a pas de compteur à proprement parler, mais je parlais justement du système qui fait qu'on est viré au bout d'un certain temps. Viré d'où ? c'est peut-être la question à creuser.
Eric

Date: 2012-02-01 10:43
Sender: Bernadette Perrin-Riou

Peux-tu tester sur la version du svn. Il y a eu des modifs faites entre la version a et b. (d'ailleurs il faudrait toujours préciser la version de wims au moins lorsque le test ne porte pas sur la version svn) et si cela est possible tester sur la version svn aussi.

A priori, il n'y a pas de compteur. Sauf si les paramètres de session s'étaient effacés avec l'aperçu (mais je suppose qu'après avoir envoyé le message, tu n'as pas été "viré" de la classe).

Bernadette

No related tasks

No attached documents

No changes have been made to this item