diff --git a/pom.xml b/pom.xml index 43bb9ca..6a633c3 100644 --- a/pom.xml +++ b/pom.xml @@ -91,6 +91,11 @@ com.fasterxml.jackson.core jackson-databind + + org.springframework.boot + spring-boot-starter-mail + + diff --git a/snails-chat/src/main/java/com/hanserwei/chat/consumer/RabbitMQConsumer.java b/snails-chat/src/main/java/com/hanserwei/chat/consumer/RabbitMQConsumer.java index 2fadac3..1c29751 100644 --- a/snails-chat/src/main/java/com/hanserwei/chat/consumer/RabbitMQConsumer.java +++ b/snails-chat/src/main/java/com/hanserwei/chat/consumer/RabbitMQConsumer.java @@ -1,8 +1,11 @@ package com.hanserwei.chat.consumer; +import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.annotation.RabbitListener; +import org.springframework.mail.SimpleMailMessage; +import org.springframework.mail.javamail.JavaMailSender; import org.springframework.stereotype.Component; import java.nio.charset.StandardCharsets; @@ -11,10 +14,24 @@ import java.nio.charset.StandardCharsets; @Component public class RabbitMQConsumer { + @Resource + private JavaMailSender mailSender; + @RabbitListener(queues = "chat.queue") public void receiveMessage(Object message) { String messageText = extractMessage(message); log.info("Received message text:\n{}", messageText); + SimpleMailMessage mailMessage = new SimpleMailMessage(); + // 配置发送者邮箱 + mailMessage.setFrom("2628273921@qq.com"); + // 配置接受者邮箱 + mailMessage.setTo("ssw010723@gmail.com"); + // 配置邮件主题 + mailMessage.setSubject("主题:及时联系客户"); + // 配置邮件内容 + mailMessage.setText(messageText); + // 发送邮件 + mailSender.send(mailMessage); } private String extractMessage(Object message) { diff --git a/snails-chat/src/main/resources/config/application.yml b/snails-chat/src/main/resources/config/application.yml index a4b6d2b..a57c715 100644 --- a/snails-chat/src/main/resources/config/application.yml +++ b/snails-chat/src/main/resources/config/application.yml @@ -12,6 +12,15 @@ spring: jackson: serialization: write-dates-as-timestamps: false + mail: + host: ${MAIL_HOST:smtp.qq.com} + port: ${MAIL_PORT:587} + username: ${MAIL_USERNAME:2628273921@qq.com} + password: ENC(ARrAyZNZhbaG6tebogv6WSQbtCO+Vq93NfSA6tMAiD0tTogujERVwEGBECakH0LUhYq9oTaXgfw7tonxNAFEwg==) + properties: + mail.smtp.auth: true + mail.smtp.starttls.enable: true + mail.smtp.starttls.required: true data: redis: host: localhost