Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 19/03/2006, à 18:34

tonyo

Lancer un petit son en Python

Salut,

je voudrais modifier le desklet mailer (adesklet) pour qu'il joue un petit son lorsqu'un nouveau message est arrivé.
J'ai vu dans le code du desklet qu'il y a un petit script "beep.sh" qui est lancé quand un message est arrivé (mais je ne suis pas sur... tongue)
Donc peut-être, éventuellement il serait possible d'utiliser ce script ".sh" pour lancer un petit son ?

Qu'en pensez-vous ?

tonyo

Hors ligne

#2 Le 19/03/2006, à 18:37

Anbreizh

Re : Lancer un petit son en Python

Normalement oui ! big_smile
Avec un script bash tu peux facilement lance un son (la commande est ogg123 je crois ......)
Il suffit que tu ouvre ce script et que tu modife le chemin d'acces au son ! wink


"C'est le devoir de chaque homme de rendre au monde au moins autant qu'il en a reçu"     Albert Einstein
Pour votre webcam : http://projet.jbtheou.fr
Mon site web (Mathématique, physique, science et service de publication ) http://jbtheou.fr

Hors ligne

#3 Le 07/04/2006, à 20:55

tonyo

Re : Lancer un petit son en Python

Bonjour,
j'ai un peu de temps pour me repencher sur le problème. Alors voila ce que j'ai dans mon fichier beep.sh :

#!/bin/sh
#

play question.wav

Lorsque je lance depuis une console via un ./beep.sh, le son est joué, et c'est marqué "playing question.wav".
Malheureusement, lorsque je recois de nouveaux messages, rien ne se passe. Alors je me demande si le script est bien lancé par le desklet mailer... mais comment le vérifier ??
Voila le bout de code où est lancé le script :

    def alarm(self):
        """
        Refresh the display as needed
        """
        self.block()
        mail = self.mailer()
        self._display()
        if mail > self.mailer.last_size and mail>0:
            if self.config['program_on_new']:
                self._execute(join(self.basedir,
                                   self.config['program_on_new']))
        self.unblock()

et la fonction _execute() est définie ainsi :

    def _execute(self,command):
        spawnlp(P_NOWAIT, command.split()[0], *command.split())

Quelqu'un a une idée pour faire jouer ce son du problème qui se pose ?
merci d'avance wink

Hors ligne