惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
WordPress大学
WordPress大学
Google DeepMind News
Google DeepMind News
T
The Exploit Database - CXSecurity.com
阮一峰的网络日志
阮一峰的网络日志
F
Fox-IT International blog
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
I
Intezer
P
Privacy & Cybersecurity Law Blog
B
Blog RSS Feed
Latest news
Latest news
小众软件
小众软件
A
Arctic Wolf
Attack and Defense Labs
Attack and Defense Labs
L
LINUX DO - 热门话题
博客园 - 聂微东
B
Blog
T
Troy Hunt's Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
IntelliJ IDEA : IntelliJ IDEA – the Leading IDE for Professional Development in Java and Kotlin | The JetBrains Blog
Malwarebytes
Malwarebytes
爱范儿
爱范儿
Recorded Future
Recorded Future
Apple Machine Learning Research
Apple Machine Learning Research
人人都是产品经理
人人都是产品经理
D
Docker
T
Threat Research - Cisco Blogs
MyScale Blog
MyScale Blog
Martin Fowler
Martin Fowler
E
Exploit-DB.com RSS Feed
F
Fortinet All Blogs
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
PCI Perspectives
PCI Perspectives
Scott Helme
Scott Helme
N
Netflix TechBlog - Medium
博客园 - 三生石上(FineUI控件)
T
True Tiger Recordings
C
Check Point Blog
Microsoft Azure Blog
Microsoft Azure Blog
D
Darknet – Hacking Tools, Hacker News & Cyber Security
K
Kaspersky official blog
Security Latest
Security Latest
The Hacker News
The Hacker News
Microsoft Security Blog
Microsoft Security Blog
Hacker News - Newest:
Hacker News - Newest: "LLM"
Stack Overflow Blog
Stack Overflow Blog
S
Security @ Cisco Blogs
C
CXSECURITY Database RSS Feed - CXSecurity.com
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
M
Microsoft Research Blog - Microsoft Research

蛋蛋之家

Halo 博客晚间卡顿排查记:从"玄学卡顿"到"真凶落网" 我用这个开源项目,把 AI 绘画提示词变成了"代码"——awesome-gpt-image-2 深度体验报告 群晖部署 LX Music Server:浏览器就是你的音乐播放器【详细版】 500道Word题库太痛苦?于是我写了个智能学习平台 别用一个人的奔跑,耗尽两个人的余生——《你凭什么认为我会一直喜欢你呢》 博客评论自动填充新方案:兼容 Vue/React 响应式绑定与跨架构填充逻辑 2026 生产级指南:Halo 2.x + PostgreSQL 自动化部署与性能优化手册 - 蛋蛋之家 从 Typecho 转向 Halo 2.x:全能型 Nginx 架构与 SEO 无损迁移指南 - 蛋蛋之家 Typecho 迁移 Halo 完整教程:数据库视图解决表前缀 + 自动提取封面图 + 去重检测 - 蛋蛋之家 我的 CodeBuddy 装备库:218个技能全公开 + 使用心得 - 蛋蛋之家 为博客添加自定义评论表情 - 蛋蛋之家 - 一枚蛋蛋的自留地 又拍云插件 UpyunFile v1.2 更新:修复 Typecho 1.3.0 兼容性问题 - 蛋蛋之家 手把手修复RSS 403:从PHP警告到Cloudflare拦截的全链路排查 - 蛋蛋之家 - 一枚蛋蛋的自留地 网站被镜像怎么办?2026年反镜像攻防实战指南 - 蛋蛋之家 - 一枚蛋蛋的自留地 VLESS + Reality + Vision:2026 极致隐蔽节点搭建全解析 - 蛋蛋之家 给OpenList和Alist加上液态玻璃效果,颜值直接拉满! - 蛋蛋之家 - 一枚蛋蛋的自留地 网页截图瞬间“赛博飞升”?手把手教你根治 Windows HDR 截图发白 - 蛋蛋之家 群晖 NAS 影音终极方案:Docker Rclone + OpenList 完美挂载 Plex 全攻略 - 蛋蛋之家 一个简洁高效的SVG图标库 - 蛋蛋之家 - 一枚蛋蛋的自留地 告别重复劳动!一键填充评论的神奇书签脚本 - 蛋蛋之家 - 一枚蛋蛋的自留地 解锁思源笔记的隐藏力量:siyuan-patch 深度体验与技术实现 - 蛋蛋之家 - 一枚蛋蛋的自留地 Oracle Cloud 自救指南:旧手机丢失后如何绕过 MFA 重新登录【更新2026年最新政策】 - 蛋蛋之家 本站已加入“萌国ICP备案”联萌!😄 - 蛋蛋之家 - 一枚蛋蛋的自留地 Excel 月报自动化指南:告别重复劳动,让数据主动为你服务 - 蛋蛋之家 - 一枚蛋蛋的自留地 梦呓:为异地女友准备的2周年惊喜礼物 - 蛋蛋之家 - 一枚蛋蛋的自留地 Typecho 多吉云插件优化:更灵活的存储目录配置 - 蛋蛋之家 - 一枚蛋蛋的自留地
Comment2Bark:Typecho评论推送到Bark插件
吴蛋蛋 · 2026-04-04 · via 蛋蛋之家

概述

Comment2Bark 是一款 Typecho 评论推送插件,核心功能是将博客评论通过 Bark 服务推送至 iOS 设备。本项目在原有代码基础上进行了全面重构,优化了代码结构、修复了兼容性问题、完善了功能实现。


Comment2Bark

技术背景:Bark 推送服务

Bark 是由 Finb 开发的开源 iOS 推送工具,采用 MIT 协议发布。其技术特点包括:

  • 服务端通过标准 HTTP POST 请求触发推送
  • 客户端支持 iOS 15.0+
  • 支持自定义图标、分组、音效等参数
  • 可部署私有服务器或使用官方托管服务

功能特性

推送场景

场景 触发条件 推送标题 消息体 链接指向
📩 新评论 评论审核通过 📩 【博客名】有新评论 「文章标题」\n👤 评论者:内容 当前评论
💬 回复通知 访客回复评论 💬 {被回复者}的评论被回复 回复:「原评论摘要」\n👤 回复者:内容 当前回复
⏳ 待审核 评论进入审核队列 ⏳ 【博客名】有「待审」评论 「文章标题」\n👤 评论者:内容 后台管理
🗑️ 垃圾评论 评论被标记为垃圾 🗑️ 【博客名】有「垃圾」评论 「文章标题」\n👤 评论者:内容 后台管理

核心能力

  • 🔗 精确链接 - 自动计算评论分页,点击推送直接跳转到对应评论位置
  • 🔄 自动重试 - 推送失败自动重试 3 次(间隔 1s、2s、4s)
  • 🛡️ 安全处理 - 评论内容经过 HTML 过滤和 XSS 处理
  • 📊 调试模式 - 启用后可查看详细推送日志
  • 🎨 自定义配置 - 支持自定义图标、分组、提示音

功能配置说明

配置项 类型 说明
服务器地址 URL Bark API 端点,默认 https://api.day.app/
Bark Key string 设备标识,从 Bark App 获取(必填)
消息保存 boolean 是否在客户端保留历史记录
忽略自己 boolean 按 UID 过滤博主评论
博主 UID integer 博主用户 ID,默认 1
推送图标 URL 通知图标完整链接
消息分组 string 通知分类标识
提示音 string 音效文件名,参考列表
调试模式 boolean 启用请求/响应日志记录

推送数据格式

插件向 Bark API 发送的 POST 数据:

[
    'title'     => '📩 【博客名】有新评论',
    'body'      => '「文章标题」\n👤 评论者:内容摘要...',
    'url'       => 'https://example.com/article/comment-page-1#comment-123',
    'icon'      => $options->barkIcon,      // 可选
    'group'     => $options->barkGroup,     // 可选
    'isArchive' => $options->barkArchive,   // 1 或 0
    'sound'     => $options->barkSound,     // 可选
    'level'     => 'active' | 'timeSensitive'
]

安装与使用

环境要求

  • Typecho 1.3.0
  • PHP ≥ 7.4(推荐 8.0+)

安装步骤

  1. 下载插件文件
  2. 解压至 /usr/plugins/Comment2Bark/
  3. 后台「控制台 → 插件」启用
  4. 填写 Bark Key 完成配置

获取 Bark Key

  1. iOS 设备安装 Bark App
  2. 打开 App 自动生成 Key
  3. 格式示例:https://api.day.app/xxxxxxxxxx

版本历史

v2.0.2

  • 代码优化​:match 表达式语法修正
  • 安全加强​:回复通知中原评论内容统一使用 sanitizeText 处理

v2.0.1

  • 钩子修复​:修复 onMark 钩子参数错误
  • 通知优化​:审核通知区分回复和新评论

v2.0.0

  • 代码重构​:精简代码,模块化设计
  • 钩子升级​:使用 finishComment 替代已弃用的 onComment
  • 链接修复​:修复 Typecho permalink 字段不存在问题,改用 Widget_Archive 动态获取
  • 分页优化​:修复评论分页计算逻辑,支持 ASC/DESC 两种排序方式
  • 统一架构​:5 个推送场景统一使用相同的链接构建逻辑

v1.4.0

  • 全面代码重构,提取魔法数字为类常量
  • 合并 barkSend 和 finishComment 为统一入口
  • 新增 isSuccess()、sanitizeText() 等辅助方法
  • 优化评论链接生成逻辑

v1.3.0

  • 添加推送失败重试机制
  • 加强评论内容处理,防止 XSS
  • 添加推送分级参数

v1.2.0 - v1.2.1

  • 支持 Typecho 1.3.0+ 版本
  • 使用新的 finishComment 回调

v1.0

  • 初始版本,实现基本评论推送功能

项目信息

  • 开源协议:MIT
  • 代码仓库:https://github.com/NoEggEgg/Comment2Bark
  • Bark:https://github.com/Finb/Bark

相关资源

Typecho 插件开发文档:http://docs.typecho.org/plugins
Bark 服务端部署指南:https://bark.day.app/#/deploy
Bark 音效列表:https://github.com/Finb/Bark/tree/master/Sounds