Envoi d’Email
Le module EnvoyerMail
gère l’envoi d’emails via un serveur SMTP.
Usage
Ce module est utilisé par NotificationManager pour envoyer les rapports d’analyse par email.
Fonctionnalités
Envoi d’emails au format HTML.
Prise en charge des pièces jointes multiples.
Support des modes de sécurité SSL/TLS et STARTTLS.
Configuration via le ConfigManager.
Modules
- class src.smart_watch.core.EnvoyerMail.EmailSender(config: ConfigManager)[source]
Bases :
object
Classe pour envoyer des emails via SMTP.
- __init__(config: ConfigManager)[source]
Initialise l’EmailSender avec la configuration du gestionnaire de configuration.
Cette classe utilise les paramètres de configuration pour envoyer des emails, y compris les destinataires, l’émetteur, le serveur SMTP et les informations d’authentification.
- Paramètres:
config (ConfigManager) – instance de ConfigManager contenant les paramètres de configuration.
- send_email(subject: str, body: str, attachments: List[str] | None = None)[source]
Envoie un email avec support pour pièces jointes multiples.
- L’envoi se fait avec _send_ssl ou _send_starttls en fonction du port configuré :
Port 465 : SSL/TLS
Port 587 : STARTTLS
- _send_ssl(email_string: str)[source]
Envoie l’email via une connexion SSL/TLS. Utilise le port 465 pour la connexion SSL.
- Paramètres:
email_string (str) – contenu de l’email à envoyer.
Avertissement
Cette méthode utilise une connexion SSL/TLS non vérifiée pour contourner les erreurs de certificat SSL. Ceci est INSECURISÉ car bien que l’on connaisse le serveur dans notre cas, on ne peut être certain du réseau par contre.