LogoArcartX Doc

配置

SystemMail 分文件配置、默认值与生效方式

配置

配置目录为 plugins/SystemMail/。SystemMail 按职责拆分配置,UI ID、服务端变量名和 handler 名称由代码固定,不需要服主重复填写。

config.yml

配置项默认值说明生效
server-idserver-11–64 位字母、数字、._-;每个子服唯一重启
time-zoneAsia/ShanghaiJava ZoneId;所有子服保持一致重启

database.yml

配置项默认值说明生效
typesqlitesqlitemysql重启
sqlite-filesystem-mail.db相对插件目录的 SQLite 文件重启
worker-threads4后台邮件任务线程数,2–16重启
mysql.host127.0.0.1MySQL 地址重启
mysql.port33061–65535重启
mysql.databasesystem_mail数据库名重启
mysql.usernameroot用户名重启
mysql.passwordchange-me密码,生产环境必须修改重启
mysql.parameters见生成文件JDBC 参数,不带开头 ?重启
mysql.pool-size10连接池上限,2–50重启

SQLite 模式不能启用 Redis;MySQL 模式必须启用 Redis。

redis.yml

配置项默认值说明生效
enabledfalseMySQL 多服必须为 true重启
host127.0.0.1Redis 地址重启
port63791–65535重启
username''空字符串表示不使用用户名重启
password''空字符串表示不使用密码重启
database00–15重启
key-prefixsystemmail:多服保持一致,2–128 位安全字符重启

通知频道固定为 <key-prefix>notifications。Redis 只负责快速通知,完整邮件与附件状态保存在数据库中。

mail.yml

配置项默认值说明生效
notification-poll-seconds5数据库检查新邮件间隔,1–60 秒重启
limits.max-title-length641–256重载
limits.max-content-length81921–32767重载
limits.max-item-slots270–54重载
limits.max-item-payload-bytes1048576单件物品序列化上限,4096–8388608重载
limits.max-mail-item-payload-bytes786432整封邮件物品序列化总上限,65536–4194304重载
limits.max-currencies160–64重载
limits.max-currency-per-provider1000000000.0单种货币最大正数金额重载
limits.max-commands160–64重载
limits.max-recipients-per-request10000单次发送收件人数,1–250000重载
limits.recipient-materialization-batch-rows5000每批数据库写入行数,100–50000重载
limits.max-admin-drafts500全服共享草稿上限,1–5000重载
limits.inbox-page-size20每页邮件数,1–100重载
limits.ui-claim-expiry-grace-minutes20当前详情领取宽限,0–120 分钟重载
retention.trashed-days30已删除邮件关系和结束附件操作保留天数,1–3650重载
retention.audit-days180审计记录保留天数,30–3650重载
retention.draft-attempt-days90已结束发送尝试保留天数,7–3650重载
retention.notification-hours48通知、回执和失活游标保留小时,24–720重载
maintenance.batch-rows5000每类记录每轮清理行数,100–10000重载
commands.allowed-prefixes[]空列表禁止命令附件;单项最长 128 且不能换行重载

命令白名单示例:

commands:
  allowed-prefixes:
    - "lp user "
    - "points give "

language.yml

language.yml 保存时间、附件名称和失败提示,可在线重载。

重载与重启

/sma reload

该命令重新读取 mail.ymllanguage.ymlui/inbox.ymlui/hud.yml。如果config.ymldatabase.ymlredis.ymlnotification-poll-seconds 改变,本次重载会失败并继续使用原设置,完整重启后生效。

配置模板只在对应文件不存在时释放。重载只读取当前文件,不会改写内容或自动增加字段。

不要使用 Bukkit /reload 或 PlugMan 热卸载 SystemMail。数据库、Redis 和共享运行库应随 服务器完整启动与关闭。

On this page