certimate-go / certimate-go/certimate
[Feature] Support SMTP XOAuth2 authentication, such as Outlook
- Dominant language
- Go
- Stars
- 9.3k
- Forks
- 898
- Avg merge
- 4d 5h
- Merged PRs (30d)
- 8
Description
### 软件版本 / Release Version
v0.4.4
### 缺陷描述 / Description
在通知渠道中添加SMTP邮件通知,如果配置outlook的 SMTP服务,勾选SSL/TLS发件会提示tls: first record does not look like a TLS handshake,如果不勾选SSL/TLS会提示504错误。
### 复现步骤 / Steps to reproduce
1. 点击菜单授权凭证
2. 选择通知授权
3. 点击新建授权
4. 选择邮件(SMTP)
5. 填写SMTP 服务器:smtp-mail.outlook.com
6. 输入端口:587
7. 勾选SSL/TLS
8. 填写其他选项
9. 提交
10. 测试通知
11. 提示错误:tls: first record does not look like a TLS handshake
12. 取消勾选SSL/TLS并保存
13. 测试通知,提示:504错误
### 日志 / Logs
```console
#hA5U5sElLDXjqOHR4DrEZ 开始
[2025-11-14 15:16:56]
the workflow is starting
#qzBCImAEWRJHDGhjtYyTk 通知
[2025-11-14 15:16:56]
ready to send notification ...
config:
{"provider":"email","providerAccessId":"b1wrd3ryk130b3z","providerConfig":{"receiverAddress":"pw_guo@hotmail.com"},"subject":"Test","message":"TTTTTTTT","skipOnAllPrevSkipped":false}
[2025-11-14 15:16:56]
could not send notification
[2025-11-14 15:16:56]
tls: first record does not look like a TLS handshake
```
### 其他 / Miscellaneous
_No response_
### 贡献 / Contribution
- [ ] 我乐意为此贡献 PR! / I am interested in contributing a PR for this!
Contributor guide
Research direction
Start from the notification authorization flow described in the reproduction steps, using the SMTP provider configuration for smtp-mail.outlook.com on port 587. Reproduce both TLS errors and trace the email notification path to determine where XOAuth2 support belongs. Done means Outlook SMTP authentication works and a test notification is sent successfully.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go
- Domain
- authentication, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100