Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature : Configuration service mail #99

Open
wants to merge 8 commits into
base: develop
Choose a base branch
from

Conversation

JeffreyGbeho
Copy link
Collaborator

@JeffreyGbeho JeffreyGbeho commented Feb 17, 2025

Implémentation du système d'emails et environnements Docker

Nouvelles fonctionnalités

1. Configuration du système d'emails

  • Intégration du service d'emails via Gmail SMTP
  • Mise en place de RabbitMQ pour la gestion de la file d'attente des emails

Configuration des variables d'environnement requises

MAIL_FROM="[email protected]"
MAIL_USERNAME="[email protected]"
MAIL_PASSWORD="mot_de_passe_application"
MAIL_HOST="smtp.gmail.com"
MAIL_PORT=587
RABBITMQ_HOST="rabbitmq"  # utiliser "localhost" pour le projet back
RABBITMQ_USERNAME="username"
RABBITMQ_PASSWORD="password"

Configuration du mot de passe Gmail

Nécessite la création d'un mot de passe d'application dans les paramètres Google
Guide détaillé disponible ici dans la section "Configuring SMTP password"

2. Exemple d'utilisation

// Injection de dépendance
private final RabbitQueueService rabbitQueueService;

// Exemple d'envoi d'email
Map<String, Object> emailVariables = new HashMap<>();
emailVariables.put("firstName", "John");
emailVariables.put("accountLink", "https://google.com");

EmailRequest emailRequest = EmailRequest.builder()
        .templateName("welcome")
        .to(request.email())
        .subject("Welcome to Marketplace")
        .variables(emailVariables)
        .build();

rabbitQueueService.queueEmail(emailRequest);

3. Amélioration de l'architecture Docker

  • Séparation des environnements de développement et de test
  • Commandes de lancement :
    • Développement : docker compose up --build
    • Test : docker compose -f compose.test.yaml up --build

Prochaines étapes

  • Implémentation de la réinitialisation de mot de passe
  • Ajout de la vérification par email lors de l'inscription utilisateur

@JeffreyGbeho JeffreyGbeho self-assigned this Feb 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant