Nous sommes actuellement le Dim Sep 23, 2018 5:03 am
Publier un nouveau sujetPublier une réponse Page 1 sur 1   [ 1 message ]
Auteur Message
Message Publié : Ven Déc 06, 2013 9:54 pm 
Avatar de l’utilisateur

Inscription : Ven Mai 24, 2013 9:58 am
Message(s) : 26
Je vais vous expliquer ici comment créer un script python de notification de mail avec l'API OpenBot.

Tout d'abord, il faut savoir où ce situe le dossier script!
Le lien du dossier rpi est le suivant: /var/www/modules/scripts/
Mais disponible également via le partage réseaux: \\OPENBOT\front-end\modules\scripts

Créer dans le dossier script un fichier *.py (par exemple 'mon_mail_notifier.py')

Voici le contenu détaillé du script:

#!/usr/bin/python
# -*- coding: utf-8 -*-
# __name__ is the script running name
# __args__ is an array with the optional script params

from _api import * # do not remove this line!!! it's for import the OpenBot API !!!!

# catch error if exception, nice for debug
try:
# now, you can start your code here.

# send notify to all socket client that the script is starting
launch({"function":"socket_server.send", "name":__name__, "message":"Starting script"})

# execute library 'mail' with function 'countUnread' and get 'result' variable as expected is API doc
nb_new_mail = launch({"function":"mail.countUnread"})['result']

# set text to speech string message
text = "Il y a " + str(nb_new_mail) + " nouveaux mails!"

# send notify to all socket a message
launch({"function":"socket_server.send", "name":__name__, "message":text})

# according to API doc, check if library 'google_speech' with function 'isSpeaking' is allready speaking
isSpeaking = launch({"function":"google_speech.isSpeaking"})['result']
if isSpeaking == 0:
# if not allready speaking, speak the string message with volume to 100% and French language
launch({"function":"google_speech.speak", 'text':text, 'lang':'fr', 'volume':100})

# send notify to all socket client that the script is stopping
launch({"function":"socket_server.send", "name":__name__, "message":"End of script"})

except Exception, e:
# send notify to all socket client that an error occurred
launch({"function":"socket_server.send", "result":-1, "error":1, "name":__name__, "message":e.__str__()})


Voici ce que donne le script une fois épuré de tous les commentaires, seulement 9 lignes !

#!/usr/bin/python
from _api import *
launch({"function":"socket_server.send", "name":__name__, "message":"Starting script"})
nb_new_mail = launch({"function":"mail.countUnread"})['result']
launch({"function":"socket_server.send", "name":__name__, "message":"Il y a " + str(nb_new_mail) + " nouveaux mails!"})
isSpeaking = launch({"function":"google_speech.isSpeaking"})['result']
if isSpeaking == 0:
launch({"function":"google_speech.speak", 'text':text, 'lang':'fr', 'volume':100})
launch({"function":"socket_server.send", "name":__name__, "message":"End of script"})


le fichier complet est disponible via le lien ci-dessous:
http://www.ms-robot.com/%5Bdoc%5D/api/e ... ier_v1.rar


Haut
Hors-ligneProfil
Afficher les messages publiés depuis :  Trier par  
Publier un nouveau sujetPublier une réponse Page 1 sur 1   [ 1 message ]


Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 0 invité(s)


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Recherche de :
Aller vers :  
cron

Propulsé par phpBB® Forum Software © phpBB Group
Code Black-Bird © 2011-2012 by FanFanLaTuFlippe
Traduction et support en françaisHébergement phpBB