{"repo":"pototazhang/emby-js","free":true,"listed":false,"github":"https://github.com/pototazhang/emby-js","clone":"git clone https://github.com/pototazhang/emby-js.git","description":"Emby 节点监控面板，支持在线探测、历史可用率、Telegram 通知、媒体库统计和公开分享。","language":"JavaScript","stars":45,"topics":["cloudflare-workers","dashboard","emby","javascript","monitoring","react","server-monitoring","tailwindcss","telegram-bot","uptime-monitor"],"license":null,"category":"analytics","readme_excerpt":"Emby Cluster Monitor 一个部署在 Cloudflare Workers 上的 Emby 节点监控面板。它会定时探测多个 Emby 服务器的在线状态、延迟和最近 7 天历史记录，并支持 Telegram 通知、媒体库数量统计和自定义图标库。 交流 Telegram 交流群：https://t.me/+mrGqjEyRCZk3YTI1 预览 节点看板 历史大盘 功能 - 多节点在线状态监控，支持手动测速和定时测速。 - 近 7 天探测历史，节点看板支持按近 24 小时或近 7 天查看可用率。 - 历史大盘展示最近 60 次探测，便于快速查看短期波动。 - Telegram 通知，节点连续离线满 5 分钟后通知，恢复在线后通知。 - 媒体库资源统计，可记录电影、剧集、集数，并按自然日对比昨日变化。 - 第三方图标库导入，支持从 JSON 或文本中提取图片链接。 - 图标库搜索，可按图标名称或图片链接筛选。 - Cloudflare KV 持久化配置，不依赖本地浏览器存储。 - 管理 Token 保护，后台默认锁定，必须显式配置 ADMIN TOKEN 才能进入和修改配置。 - 版本检测和可选一键更新。配置 Cloudflare API Token 后，可在页面里直接更新到仓库最新版。 项目结构 日常维护请修改 src/ ，不要直接手改根目录 emby.js 。 wrangler.toml 只在使用 Wrangler 命令行部署，或者 Cloudflare 连接仓库自动构建时需要。按下面的控制台方式手动部署时，可以忽略这个文件。 开发流程 1. 修改 src/ 中对应职责文件。 2. 如果改动影响线上行为，先更新 src/app-meta.json 的 version 、 updateChannels 和 updateNotes 。 3. 执行 npm run check ，它会重新生成根目录 emby.js 并校验版本、更新说明、KV key、自更新 marker 和 wrangler.toml 入口。 4. 提交时包含 src/ 、 scripts/ 、文档和生成后的根目录 emby.js 。 version 是共享展示版本；页面自更新通道按 updateChannels.worker 和 updateChannels.docker 分开比较。以后如果只发布 Docker 镜像，可以只提升 updateChannels.docker ，这样 Worker 不会误报更新；只发布 Worker 版本时同理。 普通部署、GitHub raw 自更新、一键更新和手动复制部署仍然使用根目录 emby.js ，不需要部署 src/ 里的拆分文件。 部署要求 - Cloudflare Workers - Cloudflare KV namespace - 一个 Cloudflare 账号 在 Cloudflare Workers 控制台部署 直接在 Cloudflare 后台创建 Worker，选择 Helloword，并把 emby.js 粘贴进去，点击部署。 1. 登录 Cloudflare Dashboard。 2. 进入 Workers & Pages ，点击 Create 。 3. 选择 Workers ，创建一个新的 Worker。 4. 打开刚创建的 Worker，进入 Edit code 。 5. 删除默认示例代码，把本仓库的 emby.js 内容完整粘贴进去。 6. 点击 Deploy 保存并发布。 7. 回到 Worker ","default_branch":null,"files":null,"tree":[],"storefront":"/r/pototazhang","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pototazhang/emby-js/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}