退信/巡检开关移入 params.ini [bounce],命令行仅作临时覆盖
原来这些开关只能靠命令行传,每次群发都得敲一长串,也容易漏。现在统一在 params.ini 的 [bounce] 小节长期配置,优先级为 命令行 > params.ini > 内置默认。 改动: - load_params 新增 [bounce] 解析:watch_bounces / watch_every / prune_unknown / no_invalid_list / invalid_file / bounce_report / imap_host / imap_port / since / since_days;新增 _parse_bool 支持 1/0、yes/no、true/false、on/off, 留空或非法值忽略并回退默认(带警告) - 相关 argparse 默认值改为 None,以便区分「用户显式传了」还是「没传」—— 没传才用 params.ini 的值,保证命令行优先级 - save_params 回写 [bounce](用当前生效值),并用 _preserve_extra_sections 原样保留文件里其它手写小节,避免保存时把配置抹掉 - 交互模式参数摘要里显示巡检开关的当前值与来源 - 把 argparse 构造抽成 build_arg_parser(),便于测试 - params.ini 补上 [bounce] 小节的默认配置与注释;README 同步
This commit is contained in:
+28
@@ -18,3 +18,31 @@ old_domain = box.tama.guru
|
||||
; to = 可选:默认测试收件邮箱(正式群发用命令行 --send,不加 --to)
|
||||
delay = 1.0
|
||||
group_pause = 3.0
|
||||
|
||||
; 退信核查 / 发送中限流巡检开关
|
||||
; 这些都能在 params.ini 里长期配置,命令行同名参数可临时覆盖
|
||||
[bounce]
|
||||
; 发送中巡检收件箱:出现「外发频率超过邮件系统限制」类限流退信立即中止发送
|
||||
; 中止后会把限流地址从断点清单剔除,等限制恢复重跑即自动补发
|
||||
watch_bounces = 1
|
||||
|
||||
; 每发 N 封巡检一次退信。调小更及时,但 IMAP 登录更频繁(不建议 < 5)
|
||||
watch_every = 10
|
||||
|
||||
; 退信核查时,分类不明的退信是否也按「可重试」一并剔除补发(默认 0,保守不补发)
|
||||
prune_unknown = 0
|
||||
|
||||
; 停用无效地址清单:既不跳过已知无效地址,也不写入新的硬退信
|
||||
no_invalid_list = 0
|
||||
|
||||
; 留空则用脚本同目录的默认文件名
|
||||
invalid_file =
|
||||
bounce_report =
|
||||
|
||||
; IMAP(退信核查要用发件邮箱的 IMAP;留空则按 SMTP 域名推导 smtp.xxx → imap.xxx)
|
||||
imap_host =
|
||||
imap_port = 993
|
||||
|
||||
; since = auto 表示从断点清单最早一条发送记录的时间开始扫描,只查本次群发的退信
|
||||
since = auto
|
||||
since_days = 3
|
||||
|
||||
Reference in New Issue
Block a user