Files
aiagents-stock/docs/邮件配置指南.md
T

2.9 KiB

邮件通知配置指南

配置方法

方法一:环境变量配置(推荐)

在项目根目录创建或修改 .env 文件,添加以下配置:

# 邮件通知配置
EMAIL_ENABLED=true
SMTP_SERVER=smtp.qq.com  # 或 smtp.163.com, smtp.gmail.com 等
SMTP_PORT=587
EMAIL_FROM=your_email@qq.com
EMAIL_PASSWORD=your_app_password  # 注意:不是邮箱登录密码,是应用专用密码
EMAIL_TO=receiver@example.com

方法二:直接修改代码

notification_service.py_load_config 方法中修改默认配置:

config = {
    'email_enabled': True,  # 启用邮件通知
    'smtp_server': 'smtp.qq.com',
    'smtp_port': 587,
    'email_from': 'your_email@qq.com',
    'email_password': 'your_app_password',
    'email_to': 'receiver@example.com',
    'webhook_enabled': False,
    'webhook_url': ''
}

各邮箱服务商配置示例

QQ邮箱配置

SMTP_SERVER=smtp.qq.com
SMTP_PORT=587
EMAIL_FROM=your_qq@qq.com
EMAIL_PASSWORD=16位授权码  # 需要在QQ邮箱设置中获取

163邮箱配置

SMTP_SERVER=smtp.163.com
SMTP_PORT=587
EMAIL_FROM=your_email@163.com
EMAIL_PASSWORD=客户端授权密码

Gmail配置

SMTP_SERVER=smtp.gmail.com
SMTP_PORT=587
EMAIL_FROM=your_email@gmail.com
EMAIL_PASSWORD=应用专用密码

获取邮箱授权码/应用密码

QQ邮箱

  1. 登录QQ邮箱
  2. 进入"设置" → "账户"
  3. 找到"POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务"
  4. 开启"IMAP/SMTP服务"
  5. 生成16位授权码

163邮箱

  1. 登录163邮箱
  2. 进入"设置" → "POP3/SMTP/IMAP"
  3. 开启"IMAP/SMTP服务"
  4. 设置客户端授权密码

Gmail

  1. 登录Gmail
  2. 进入"设置" → "账号和导入"
  3. 在"更改账号设置"中启用"两步验证"
  4. 生成应用专用密码

测试邮件配置

在Streamlit应用中,可以通过以下方式测试邮件配置:

  1. 在监测面板中点击"测试邮件配置"按钮
  2. 或者在Python中运行测试代码:
from notification_service import notification_service
if notification_service.test_email_config():
    print("✅ 邮件配置正常")
else:
    print("❌ 邮件配置有问题")

注意事项

  1. 安全提醒:不要在代码中硬编码邮箱密码,使用环境变量
  2. 应用密码:使用应用专用密码,不要使用邮箱登录密码
  3. 端口设置:通常使用587端口(TLS加密)
  4. 防火墙:确保服务器可以访问SMTP服务商的端口
  5. 垃圾邮件:首次使用可能被标记为垃圾邮件,请检查垃圾邮件文件夹

故障排除

如果邮件发送失败,检查以下事项:

  1. SMTP服务器地址和端口是否正确
  2. 邮箱账号和密码是否正确
  3. 是否开启了SMTP服务
  4. 网络连接是否正常
  5. 防火墙是否阻止了SMTP连接

如果需要帮助,请查看详细的错误日志信息。