From 15ff1ab55763ce8e79865149c9705a2485d07c4d Mon Sep 17 00:00:00 2001 From: Michel Date: Sat, 10 May 2025 09:41:40 +0200 Subject: [PATCH] Ajout ou correction sur develop --- README.md | Bin 7862 -> 8432 bytes alerte_sms.py | 42 +++++++++++++++++++++++++++++++++ générer_la_Consumer_Key_OVH.py | 22 +++++++++++++++++ requirements.txt | 1 + 4 files changed, 65 insertions(+) create mode 100644 alerte_sms.py create mode 100644 générer_la_Consumer_Key_OVH.py diff --git a/README.md b/README.md index 512c05949f3d36ec927ae545476ad54d3f25247d..9dc239e63c654d48098a9062923fe44e55b42def 100644 GIT binary patch delta 476 zcmbu5%}WAN6vdBO!F*YWi_k#_S{MU?iAb9Q%|14fp|og|eMksp(1@#nqIH3A|AMxy z3PIXRt*fQ*N&-z#yyO!;6or{2lCTJZa) zC9Y+qr={dt3k~nMG{(i!qS9gYwB?a}M$brDKVTM4xGgpx!2KTS{tT+V_6)!$AnY@TcX0iy6)Z{Z<9FuSG7)*}i z;RA}9LHTx*eR$1S6&QeUay@VAdEih!;vgSc$7uzW8gW5HxYcG-zr1O!uoeoz3*7cdk6{gE?qzbuae NgNQo+KP`}}832~eM63V+ diff --git a/alerte_sms.py b/alerte_sms.py new file mode 100644 index 0000000..6864a3f --- /dev/null +++ b/alerte_sms.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +import ovh +import os +from dotenv import load_dotenv + +load_dotenv() + +# Dictionnaire des numéros par site +NUMEROS_PAR_SITE = { + "Saclay": ["+33635164680", "+33650270939","+33682069405"], + "Meudon": ["+33616443455"], + # ajoute d'autres sites ici +} + +def envoyer_sms_ovh(message, site): + numeros = NUMEROS_PAR_SITE.get(site) + if not numeros: + print(f"[!] Aucun numéro défini pour le site {site}. SMS non envoyé.") + return + + client = ovh.Client( + endpoint=os.getenv("OVH_ENDPOINT"), + application_key=os.getenv("OVH_APP_KEY"), + application_secret=os.getenv("OVH_APP_SECRET"), + consumer_key=os.getenv("OVH_CONSUMER_KEY"), + ) + + account = os.getenv("OVH_SMS_ACCOUNT") + + try: + result = client.post(f'/sms/{account}/jobs', + sender='Supervision', + message=message, + receivers=numeros, + priority='high', + noStopClause=True, + ) + print(f"[✓] SMS envoyé pour {site} à {numeros}") + return result + except Exception as e: + print(f"[!] Erreur envoi SMS OVH : {e}") + diff --git a/générer_la_Consumer_Key_OVH.py b/générer_la_Consumer_Key_OVH.py new file mode 100644 index 0000000..bcaefc1 --- /dev/null +++ b/générer_la_Consumer_Key_OVH.py @@ -0,0 +1,22 @@ +import ovh +import os +from dotenv import load_dotenv + +load_dotenv() + +client = ovh.Client( + endpoint=os.getenv("OVH_ENDPOINT"), + application_key=os.getenv("OVH_APP_KEY"), + application_secret=os.getenv("OVH_APP_SECRET"), +) + +# Demande de consumer key avec les permissions nécessaires +ck_request = client.new_consumer_key_request() +ck_request.add_rules(ovh.API_READ_WRITE, "/sms/*") + +validation = ck_request.request() + +print("=== LIEN D'AUTORISATION OVH ===") +print(validation['validationUrl']) +print("\nUne fois autorisé, voici votre CONSUMER_KEY à copier dans le .env :") +print(validation['consumerKey']) diff --git a/requirements.txt b/requirements.txt index 29cc77d..14727e4 100644 --- a/requirements.txt +++ b/requirements.txt @@ -10,3 +10,4 @@ schedule~=1.2.2 paramiko~=3.5.1 dotenv fpdf +ovh \ No newline at end of file