Bonjour,

Je suis entrain de bricoler/�tudier un petit syst�me d'alerte pour effectuer un exercice dans une �cole primaire. L'objectif est de pouvoir lancer et recevoir une alerte dans les classes depuis un le tableau num�rique interactif.

J'ai retenu la solution suivante :
- un serveur xmpp (alpine-linux, prosody + broacast_mod)
- un script python pour "�couter"
- un script python pour "alerter"

Je dois vous avouer que c'est mes premiers pas et que ce que j'ai fait est plut�t un assemblage d'exemples trouv�s sur le web. J'ai malgr� tout r�ussi � obtenir un r�sultat fonctionnel quand j'ex�cute depuis idle ou pycharm-edu. Par contre, d�s que j'essaie de lancer le script depuis un raccourci sur le bureau windows, il d�marre et la console reste ouverte mais winsound ne joue plus mon fichier wav et le popup d'alerte ne surgit plus.

J'ai fouill� un peu sur les forums mais j'avoue que mes connaissances sont trop faibles pour savoir dans quelle direction r�ellement chercher. Si quelqu'un pouvait m'aider ou m'orienter �a serait gentil ?

Merci d'avance pour vos conseils.

Cordialement,
Pascal C.

Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
import ctypes
import winsound
import logging
 
from pymsgbox import *
 
from sleekxmpp import ClientXMPP
from sleekxmpp.exceptions import IqError, IqTimeout
 
class ListenBot(ClientXMPP):
 
    def __init__(self, jid, password):
        ClientXMPP.__init__(self, jid, password)
 
        self.add_event_handler("session_start", self.session_start)
        self.add_event_handler("message", self.message)
 
    def session_start(self, event):
        self.send_presence()
        self.get_roster()
 
    def message(self, msg):
        if msg['type'] in ('chat', 'normal'):
            winsound.PlaySound('sonAlarme.wav', winsound.SND_ASYNC)
            alert(text='Attention, \n Quelqu\'un vient de déclencher une alerte depuis son poste de Travail',title='Alerte')
 
if __name__ == '__main__':
 
    logging.basicConfig(level=logging.DEBUG,
                        format='%(levelname)-8s %(message)s')
 
    xmpp = ListenBot('[email protected]', '123456')
    xmpp.connect()
    xmpp.process(block=True)