package isapi
import (
"fmt"
mail "github.com/xhit/go-simple-mail/v2"
"log"
)
func SendAlarmEmail(cameraMac string, msg string, file *mail.File) {
var html = `
报警通知
%s
`
//查出所有相关email
//var emails []UserEmails
//
//for _, v := range emails {
// body := fmt.Sprintf(html, msg, v.Uid, v.Email)
// EmailPicture(v.Email,
// "防溺水通知",
// body,
// file)
//}
body := fmt.Sprintf(html, msg, 1, "1104038181@qq.com")
EmailPicture("1104038181@qq.com",
"防溺水通知",
body,
file)
}
type UserEmails struct {
Uid uint `json:"uid"`
Email string `json:"email"`
}
var emailClient = func() *mail.SMTPServer {
// 创建邮件客户端
client := mail.NewSMTPClient()
// 设置SMTP服务器和认证信息
client.Host = "smtp.163.com" // 替换为你的SMTP服务器地址
client.Port = 25 // 替换为SMTP服务器端口
client.Username = "17673481176@163.com" // 替换为SMTP服务器的用户名
client.Password = "kk992471" // 替换为SMTP服务器的密码
return client
}()
func EmailPicture(To, subject, data string, pic *mail.File) {
// 创建邮件客户端
smtpClient, err := emailClient.Connect()
if err != nil {
return
}
// 创建邮件对象
email := mail.NewMSG()
// 设置发件人
email.SetFrom("17673481176@163.com")
// 设置收件人
email.AddTo(To)
// 设置主题
email.SetSubject(subject)
// 设置html文本内容
email.SetBody(mail.TextHTML, data)
// 添加图片附件
if pic != nil {
email.Attach(pic)
}
// 发送邮件
err = email.Send(smtpClient)
if err != nil {
log.Println("116 Failed to send email:", err)
return
}
log.Println("Email sent successfully")
}