概览
dsh-quake-alert
README / ZH
插件文档
目录摘要
dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。
在 GitHub 阅读完整 READMELIMITATIONS
已知限制
- 插件随 DSH 页面运行:页面关闭则停止;浏览器若冻结后台标签页,通知可能延迟。 - 取消 / 解除提醒只针对此前提醒过的事件;没提醒过的取消消息只进历史,不会打扰。 - 海啸预报(552)没有可归并的事件 id,同一海啸的多次发布(追加区域 / 等级升级)会逐条提醒。 - 多开 DSH 页面时每个页面各维持**两条** WebSocket 连接(P2PQuake + EMSC)。提醒已通过 BroadcastChannel 去重,但连接数随标签页数成倍增加;P2PQuake 存在并发连接数限制,大量多开时请留意。 - 多个 DSH 页面**共享同一套按源划分的游标**(每个源一个,跨页面共享):某个页面已处理过的电文 / 地震不会在另一个页面重放(跨标签页去重本来也只让一个页面播报)。代价是后开或刷新过的页面不会把这些已被消费的条目补进自己的「最近预警」列表。 - 震源情报(551 的「震源情报 / 远地地震」)不含震度数据,无法按阈值判定,只会记录到「最近预警」并标注说明。 - 系统通知权限需首次点击「测试系统通知」授权;提示音需一次用户交互后可用(浏览器自动播放策略)。 - **覆盖范围**:日本的地震 / EEW / 海啸来自 P2PQuake 的 WebSocket 推送,气象灾害来自气象厅 Atom feed(Host 约每分钟轮询);日本以外由 EMSC(实时推送)、USGS(Host 每 2 分钟轮询地震目录)与 NOAA(Host 每 5 分钟轮询海啸 CAP)覆盖。区域气象源(美国 NWS、欧洲 MeteoAlarm 等)为后续版本规划。 - **全球源的粒度与日本源不同**:全球源只有震中坐标与震级,没有市区町村级信息;海啸以 NOAA 的海域(如 `SCOTIA SEA`)为单位,不是日本的津波予報区;日本以外的"泥石流 / 洪水"目前没有接入通道。 - **同一场地震可能被两个全球源各报一次**:EMSC 与 USGS 的发震时刻若跨过分钟边界,归并会失败。取舍是宁可多响一次也不漏报。 - **EMSC 的连接不做"久无数据"检测**:全球 M4+ 平均约 30 分钟一条,用消息间隔判断连接死活不成立。真正的断开仍会被检测并重连。 - 气象灾害刻意不给阈值:边界固定为警戒レベル4,设置页只有开关、没有档位。 - 沙箱回放的历史多为低震度小地震,默认「震度4以上」阈值下可能长时间无命中属正常。 ### 0.4.1 起需要知道的行为 - **关注地区的过滤对"认不出归属县的区域"更严谨了(0.4.2 微调)**:同一条消息里只要**有**区域能 归到县,认不出的那部分就不参与县级过滤(不会因为一个未收录的预报区名而提醒所有人); 只有整条消息的区域都归不到县时才放行(宁可多报,避免整条静默)。 - **气象灾害按「气象台 + 灾种」归并成一个事件**:同一气象台对同一灾种在 3 小时内的持续发布 (更新、扩区、维持)只提醒一次,强度升级(L3→L4 等)仍会再次提醒。跨小时边界、或同一事件由 不同气象台发布时,仍可能重复提醒一次——取舍是宁可多响一次也不漏。 - **播报闸门看「命中地区自己的级别」**:同一条电文里不同市町村的级别可以不同(实测 2026-09-14 兵庫県:姫路市 L4、相生市 L3、西脇市 L2)。只关注低级别地区时不会被同县的 L4 连坐,反过来也 不会因为只到 L2 而收到「避难指示级」的夸大提醒。 - **海啸的解除提醒需要电文给出预报区列表**才能与发布匹配;不带列表的解除只记历史、不打扰 (这是为了避免"任意海域的解除都被当成你关心的事件"那种假解除)。 - **全球地震的严重度按震级判定**(EMSC / USGS 没有震度);因此静默时段的红色穿透对 M7 以上 全球地震同样生效。 - **"源在响应但数据是旧的"会被单独标出**:JMA 的 feed 更新时刻或 USGS 的 feed 生成时刻超出阈值时, 状态显示「上游数据已过期」(中灰),与"没有新闻"区分开。 - **数据格式异常是蓝色的**:源改版导致解析不了时显示蓝点而不是红点——那不是用户的网络问题, 等插件更新即可;设置页提供「重试」。 - **P2PQuake 的时间按 JST 解析后转成本地时区显示**:历史详情里的时间现在是**你所在时区**的时间 (此前直接显示 JST 原文,大陆用户会看到一个差 1 小时、且没有任何标注的时间)。
