def graTemp(rep, date): d = datetime.now() allValue = [] allTime = [] if rep == "temp": valeur = selectSpecificValue('temperature', date) rep = "Temperature" color = 'rgb(255,0,0)' elif rep == "hum": valeur = selectSpecificValue('humidite', date) rep = "Humidite" color = 'rgb(0,0,255)' elif rep == "pres": valeur = selectSpecificValue('pressure', date) rep = "Pression" color = 'rgb(0, 255,0)' annee = str(d)[:4] titre = " Temperature actuelle : " + str(getTemp()) + " °C" for row in valeur: allValue.append(row[0]) allTime.append(row[1]) ndate = d + timedelta(days=1) pdate = d - timedelta(days=1) return render_template('graphTemp.html', d=d.strftime("%d-%m-%Y"), color=color, rep=rep, titre=titre, temp=getTemp(), value=allValue, time=allTime, prevDate=ndate.strftime("%Y-%m-%d"), nextDate=pdate.strftime("%Y-%m-%d"))
def home(): valmin = 0 valminpress = 0 valminhumi = 0 pressiontable = [] humiditetable = [] temperaturetable = [] horairetable = [] d = datetime.now() y = d.strftime('%Y-%m-%d') tableau = selectValue(False) localisation = SelectLocalisation() for row in localisation: name = row[3] # ATTENTION LAVEC L'HORAIRE DE LA BDD h-2(en été) h-1(hiver) for row in tableau: pressiontable.append(row[1] / 10) humiditetable.append(row[2]) temperaturetable.append(row[3]) horairetable.append(row[4]) return render_template("home.html", title="Supervision salle serveur", temp=getTemp(), humi=getHumidity(), press=getPressure(), value=tableau, date=y, pressiongraph=pressiontable, humiditegraph=humiditetable, temperaturegraph=temperaturetable, timegraph=horairetable, session=session, name=name)
def insertfivemin(): insertValue(str(getTemp()), str(getPressure()), str(getHumidity())) valeur = SelectSeuilValue() for row in valeur: if row[0] == 1: if int(getTemp()) < int(row[1]): sendEmail('Temperature Trop basse', 'temperature', 'basse') if row[0] == 2: if int(getTemp()) > int(row[1]): sendEmail('Temperature Trop haute', 'temperature', 'haute') if row[0] == 3: if int(getPressure()) < float(row[1]): sendEmail('Pression Trop basse', 'Pression', 'basse') if row[0] == 4: if int(getPressure()) > float(row[1]): sendEmail('Pression Trop haute', 'Pression', 'haute') if row[0] == 5: if int(getHumidity()) < int(row[1]): sendEmail('Humidité Trop basse', 'Humidité', 'basse') if row[0] == 6: if int(getHumidity()) > int(row[1]): sendEmail('Humidité Trop haute', 'Humidité', 'haute') return
def sendEmail(text, type, etat): jour = datetime.now() heure = jour.hour minute = jour.minute value = selectValue(False) msg = MIMEMultipart() msg['From'] = email() msg['Subject'] = 'Probleme Supervision Serveur ' + type + ' ' + etat + ' ' + str( heure) + ':' + str(minute) + '\n' message = debut_email() message = 'Bonjour !' + '<br />' message += text message += '<br />' message += '<b>PROBLEME :</b>' + '<br />' if type == 'temperature': message += 'Le serveur possede un probleme sur la ' + type + ' ' + str( getTemp()) + '°C' elif type == 'Humidité': message += 'Le serveur possede un probleme sur l\'' + type + ' ' + str( getHumidity()) + ' %' elif type == 'Pression': message += 'Le serveur possede un probleme sur la ' + type + ' ' + str( getPressure()) + ' mBar' message += '<br />' message += 'Merci de reglé le probleme' message += '<br />' message += 'Florian Catinaud' message += end_email() msg.attach(MIMEText(message, 'html')) mailserver = smtplib.SMTP('smtp.gmail.com', 587) mailserver.ehlo() mailserver.starttls() mailserver.ehlo() mailserver.login(email(), emailMDP()) # SI probleme a la ligne 41 c'esst normal # J'ai mis les mails dans un fichier a part que je ne mais pas dans le git # Pour raison de securité valeur = SelectALlMail() #print(valeur) for row in valeur: to = row[1] mailserver.sendmail(msg['From'], to, msg.as_string()) print('Envoie de mail à ' + to + ' ' + str(type) + " " + str(etat)) mailserver.quit() return
def sendEmail(text, type, etat): jour = datetime.now() heure = jour.hour minute = jour.minute value = selectValue(False) msg = MIMEMultipart() msg['From'] = email() msg['Subject'] = 'Probleme Supervision Serveur ' + type + ' ' + etat + ' ' + str( heure) + ':' + str(minute) + '\n' message = debut_email() message = 'Bonjour !' + '<br />' message += text message += '<br />' message += '<b>PROBLEME :</b>' + '<br />' if type == 'temperature': message += 'Le serveur possede un probleme sur la ' + type + ' ' + str( getTemp()) + '°C' elif type == 'Humidité': message += 'Le serveur possede un probleme sur l\'' + type + ' ' + str( getHumidity()) + ' %' elif type == 'Pression': message += 'Le serveur possede un probleme sur la ' + type + ' ' + str( getPressure()) + ' mBar' message += '<br />' message += 'Merci de reglé le probleme' message += '<br />' message += 'Shaïan AMABLE' message += end_email() mailserver = smtplib.SMTP('smtp.gmail.com', 587) mailserver.ehlo() mailserver.starttls() mailserver.ehlo() mailserver.login(email(), emailMDP()) valeur = SelectALlMail() for row in valeur: to = row[1] mailserver.sendmail(msg['From'], to, msg.as_string()) print('Envoie de mail à ' + to + ' ' + str(type) + " " + str(etat)) mailserver.quit() return