Spaces:
Sleeping
Sleeping
File size: 1,647 Bytes
19968c2 c145bc4 19968c2 c145bc4 19968c2 c145bc4 19968c2 c145bc4 19968c2 c145bc4 19968c2 c145bc4 b1761d4 c145bc4 19968c2 c145bc4 19968c2 c145bc4 19968c2 c145bc4 19968c2 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
from fastapi import FastAPI, HTTPException
from pydantic import BaseModel
import smtplib
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
import os
from dotenv import load_dotenv
# Charger les variables d'environnement
load_dotenv()
app = FastAPI()
# Définir un modèle de données pour la requête
class EmailRequest(BaseModel):
nom: str
prenom: str
email: str
message: str
@app.post("/send_email")
async def send_email(request: EmailRequest):
# Extraire les données du modèle
nom = request.nom
prenom = request.prenom
sender_email = request.email
message = request.message
# Sujet et destinataire par défaut
receiver_email = '[email protected]' # Changez ceci selon votre configuration
subject = f'Message from Bénin Traduction'
msg = MIMEMultipart()
msg['From'] = sender_email
msg['To'] = receiver_email
msg['Subject'] = subject
body = f"Nom: {nom}\nPrénom: {prenom}\nEmail: {sender_email}\n\nMessage:\n{message}"
msg.attach(MIMEText(body, 'plain'))
try:
# Envoi de l'e-mail
with smtplib.SMTP('smtp.gmail.com', 587) as server:
server.starttls()
server.login('[email protected]', 'ftrc foyu jlza dwmv') # Utilisez des variables d'environnement
server.send_message(msg)
return {"message": "E-mail envoyé avec succès"}
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))
# Lancer l'application avec Uvicorn
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=7860)
|