• webmaster
    离线邮件提醒
    ID offline_mail_notice版本 1.0.3插件制作者 webmaster售价 10 积分1202 行 / 64 KBHook / 路由 / 后台页
    用户离线时把回帖、私信(含 mymsg 私信)、被 @ 提及汇总成邮件发送;在线则不发,避免打扰。
    收费插件安装说明购买后点击“授权码”获取一次性授权码;在后台 > 插件广场点击在线安装或更新,并填写该授权码。已购买用户更新免费:每次在线安装或更新前,重新点击“授权码”获取新的一次性授权码即可,无需再次购买;也可直接下载新版后用后台“插件上传”更新。尊重并感谢他人劳动,请勿传播代码。
    app/plugins/offline_mail_notice/plugin.php
    开发日志已有 1 条

    个人独立维护项目。

    • webmaster
      webmaster
      版本 1.0.3 1f2843122245 更新:用户在「个人主页 → 邮件提醒」里开启后,收到回帖 / 私信(站内私信由 mymsg 插件产生,kind=mymsg,已按「私信」处理)/ @ 提及会先入队;到达汇总延迟后,计划任务会先判断他是否在线,在线就直接丢弃不发邮件,离线才把这段时间的所有提醒合并成一封邮件发出。已被读过的通知不会重复发邮件。下面「发送状态」里能看到每批的实际结果:已发送 / 失败(发送失败的原因会写在这里)。已跳过的批次release
    主楼
  • webmaster

    版本 1.0.3 更新:
    用户在「个人主页 → 邮件提醒」里开启后,收到回帖 / 私信(站内私信由 mymsg 插件产生,kind=mymsg,已按「私信」处理)/ @ 提及会先入队;到达汇总延迟后,计划任务会先判断他是否在线,在线就直接丢弃不发邮件,离线才把这段时间的所有提醒合并成一封邮件发出。已被读过的通知不会重复发邮件。下面「发送状态」里能看到每批的实际结果:已发送 / 失败(发送失败的原因会写在这里)。已跳过的批次(例如用户在线、未读等)不再单独展示,需要保持记录整洁时可点「清空发送记录」。

    #1
  • 质量报告

    插件质量报告

    插件:offline_mail_notice

    Hook功能范围循环使用频率文件读写修改系统表读写系统表读写自己的表
    app.boot全站请求启动否5---写 plugin_offline_mail_presence
    notification.after_create通知及未读数写入后否3---写 plugin_offline_mail_queue
    profile.after_form个人资料编辑表单否3----
    reply.after_save回帖保存后否3--app_replies, app_topics-
    user.profile_tabs用户资料页标签栏(展示位置:个人主页Tab)否3----

    颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。

    数据字典

    plugin_offline_mail_settings

    字段类型可空默认值约束
    user_iduint否-主键
    enabledINTEGER否1-
    kindskey否'all'-
    digest_minutesuint否0-
    emailstring否''-
    quiet_enabledINTEGER否0-
    quiet_startuint否23-
    quiet_enduint否8-
    updated_atuint否0-

    plugin_offline_mail_queue

    字段类型可空默认值约束
    idid否-主键、自增
    user_iduint否--
    notification_iduint否0-
    kindkey否''-
    contenttext否--
    sender_iduint否0-
    topic_iduint否0-
    reply_iduint否0-
    created_atuint否0-
    available_atuint否0-
    statuskey否'pending'-
    attemptsuint否0-
    next_retry_atuint否0-
    last_errortext否--
    updated_atuint否0-

    plugin_offline_mail_presence

    字段类型可空默认值约束
    user_iduint否-主键
    last_seen_atuint否0-

    plugin_offline_mail_logs

    字段类型可空默认值约束
    idid否-主键、自增
    user_iduint否0-
    recipientstring否''-
    subjecttext否--
    item_countuint否0-
    statuskey否'sent'-
    messagetext否--
    created_atuint否0-
    #2
  • dcve

    有没有一种可能,邮箱信息我都不看呢🥳

    #3
  • webmaster

    哈哈,那咋办
    还有啥可以方便接入的?
    QQ微信之类的用户接入难度有点高

    #4
  • mingmeo

    qq的我有个实现方案,等会我写一个适配器,然后你的插件可以判断是否有适配器并调用它发信息

    #5
  • mingmeo

    已开发 QQ 平台适配器 可通过此插件向用户发送 QQ 消息。

    #6
  • webmaster

    这么厉害,试试看

    #7

发表回复

登录后回复