from __future__ import print_function import smtplib from email.mime.multipart import MIMEMultipart from email.mime.text import MIMEText from email.mime.base import MIMEBase from email import encoders import locale import datetime import inspect import sys, os import prj_common as mycommon import GlobalVariable as MYSY_GV from dateutil import tz import pytz import sib_api_v3_sdk from sib_api_v3_sdk.rest import ApiException configuration = sib_api_v3_sdk.Configuration() configuration.api_key['api-key'] = MYSY_GV.SENDINBLUE_API_KEY_SUPPORT api_instance = sib_api_v3_sdk.TransactionalEmailsApi(sib_api_v3_sdk.ApiClient(configuration)) locale.setlocale(category=locale.LC_ALL, locale='fr_FR.utf8') smtp_address = 'smtp-relay.sendinblue.com' port = 587 sender = 'support@mysy-training.com' receiver = ["cbalde3@mysy-training.com","billardman1@gmail.com"] user = 'support@mysy-training.com' password = 'Tut29488!+' """ Envoi de l'email de confirmation d'inscription à une formation """ def incription_training_confirmation_mail(diction): try: print(" ### incription_training_confirmation_mail = "+str(diction)) """ Verification de la liste des champs obligatoires """ field_list_obligatoire = ['nom', 'prenom', 'email', 'date_du', 'date_au', 'adresse', 'title'] for val in field_list_obligatoire: if val not in diction: mycommon.myprint( str(inspect.stack()[0][3]) + " - : La valeur '" + val + "' n'est pas presente dans liste ") return False, "Impossible d'envoyer l'email de confirmation de l'inscritpion" tomorrow = datetime.date.today() + datetime.timedelta(days=1) tomorrow_day = tomorrow.strftime("%A") print("debut envoi mail de test ") # on rentre les renseignements pris sur le site du fournisseur msg = MIMEMultipart("alternative") msg['Subject'] = 'MySy Training : Confirmation inscription formation' msg['From'] = 'contact@mysy-training.com' msg['To'] = str(diction['email']) to = [{"email": str(diction['email'])}] bcc = [{"email": "contact@mysy-training.com"}] print(" ### Adresse = "+str(diction['adresse']) ) send_smtp_email = sib_api_v3_sdk.SendSmtpEmail(template_id=1, params={ "nom": str(diction['nom']), "prenom":str(diction['prenom']), "date_du": str(diction['date_du']), "date_fin": str(diction['date_au']), "adresse": str(diction['adresse']), "title":str(diction['title'])}, to=to, bcc=bcc ) api_response = api_instance.send_transac_email(send_smtp_email) print(api_response) return True, " Email bien envoyé" except Exception as e: exc_type, exc_obj, exc_tb = sys.exc_info() mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno)) return False, " Impossible d'envoyer l'email de notification " """ Email de pre-inscription """ def Pre_incription_training_confirmation_mail(diction): try: print(" ### Preincription_training_confirmation_mail = "+str(diction)) """ Verification de la liste des champs obligatoires """ field_list_obligatoire = ['nom', 'prenom', 'email', 'date_du', 'date_au', 'adresse', 'title'] for val in field_list_obligatoire: if val not in diction: mycommon.myprint( str(inspect.stack()[0][3]) + " - : La valeur '" + val + "' n'est pas presente dans liste ") return False, "Impossible d'envoyer l'email de confirmation de l'inscritpion" tomorrow = datetime.date.today() + datetime.timedelta(days=1) tomorrow_day = tomorrow.strftime("%A") print("debut envoi mail de test ") # on rentre les renseignements pris sur le site du fournisseur msg = MIMEMultipart("alternative") msg['Subject'] = 'MySy Training : pre-inscription formation' msg['From'] = 'contact@mysy-training.com' msg['To'] = str(diction['email']) to = [{"email": str(diction['email'])}] bcc = [{"email": "contact@mysy-training.com"}] print(" ### Adresse = "+str(diction['adresse']) ) send_smtp_email = sib_api_v3_sdk.SendSmtpEmail(template_id=2, params={ "nom": str(diction['nom']), "prenom":str(diction['prenom']), "date_du": str(diction['date_du']), "date_fin": str(diction['date_au']), "adresse": str(diction['adresse']), "title":str(diction['title'])}, to=to, bcc=bcc ) api_response = api_instance.send_transac_email(send_smtp_email) print(api_response) return True, " Email bien envoyé" except Exception as e: exc_type, exc_obj, exc_tb = sys.exc_info() mycommon.myprint(str(inspect.stack()[0][3]) + " -" + str(e) + " - ERRORRRR AT Line : " + str(exc_tb.tb_lineno)) return False, " Impossible d'envoyer l'email de notification "