diff --git a/src/lib/watchers/wotwizard/json-watcher.ts b/src/lib/watchers/wotwizard/json-watcher.ts index fa312de..23d1762 100644 --- a/src/lib/watchers/wotwizard/json-watcher.ts +++ b/src/lib/watchers/wotwizard/json-watcher.ts @@ -1,24 +1,26 @@ import {Conf, ConfWWMeta} from "../../types/conf"; import {urlWatcher, UrlWatcherResult} from '../abstract/url-watcher' +import {moment} from "duniter/app/lib/common-libs/moment"; function handleLateness(confHead: ConfWWMeta, data: WWMetaJson) { const diff = Math.round(Date.now()/1000 - data.now) if (diff >= confHead.maxLate) { - return UrlWatcherResult.ko(`WWMeta.json is late by ${diff}s (>= ${confHead.maxLate})`) + return UrlWatcherResult.ko(`WWData is late by ${diff}s (>= ${confHead.maxLate})`) } return UrlWatcherResult.ok() } export function jsonWatcher(conf: Conf) { - const URL_PATH = '/WWMeta.json' + const URL_PATH = '/00wwView' return async (confWWMeta: ConfWWMeta) => { - return urlWatcher(conf, async (data) => { + return urlWatcher(conf, async (html) => { + const data = parseData(html) return handleLateness(confWWMeta, data) })({ - name: `WWMeta.json watcher ${confWWMeta.address}`, + name: `WWData watcher ${confWWMeta.address}`, address: confWWMeta.address + URL_PATH, frequency: confWWMeta.frequency }, @@ -28,9 +30,19 @@ export function jsonWatcher(conf: Conf) { } } +function parseData(html: string): WWMetaJson { + const h3 = html.match(/