Code pour débuter

This commit is contained in:
Thierry Pellé 2023-03-27 14:37:11 +02:00
parent b37adaf4b7
commit eb956e38ab
2 changed files with 49 additions and 0 deletions

13
actions.py Normal file
View File

@ -0,0 +1,13 @@
#!/usr/bin/env python3
"""
Fonctions de traitement des actions lors d'une impulsion
"""
import inspect
def stocker():
print(inspect.getframeinfo(inspect.currentframe()).function," non encore fonctionnel")
def créer_graphe():
print(inspect.getframeinfo(inspect.currentframe()).function," non encore fonctionnel")

36
serveur-capteur.py Normal file
View File

@ -0,0 +1,36 @@
#!/usr/bin/env python3
"""
Serveur écoutant les impulsions de l'objet capteur.
"""
import socketserver
from actions import stocker
from actions import créer_graphe
# Paramètres
HOST = "localhost"
PORT = 10000
class gestionnaire_impulsion(socketserver.BaseRequestHandler):
"""
Classe de gestionnaire du serveur.
Est instanciée à chaque implusion envoyée de par le capteur de pluie.
Le traitement est réalisé en surchargeant la méthode .handle().
"""
def handle(self):
# self.request est la socket TCP connectée au client (le capteur de pluie).
if self.request:
print("Impulsion")
stocker()
créer_graphe()
if __name__ == "__main__":
# Création de l'instance serveur attaché à IP/TCP
socketserver.TCPServer.allow_reuse_address = True
with socketserver.TCPServer((HOST, PORT), gestionnaire_impulsion) as serveur_pluviomètre:
# Lance le server. Il est arrêté par Ctrl-C
print("Lancement du serveur")
serveur_pluviomètre.serve_forever()