fix: KoePi HA-Button ist reiner Anzeige-Refresh ohne Pushover
This commit is contained in:
@@ -301,6 +301,25 @@ async function sendKoepiPushover(offers) {
|
||||
}
|
||||
}
|
||||
|
||||
// Reiner Anzeige-Refresh für den HA-Button "KöPi Check jetzt" — scraped frisch
|
||||
// und aktualisiert nur die MQTT-Entitäten. Sendet NIE Pushover und rührt den
|
||||
// in admin_settings gespeicherten Vergleichsstand nicht an (der bleibt exklusiv
|
||||
// dem 06:00-Cron vorbehalten, damit dessen Diff-Erkennung korrekt bleibt).
|
||||
async function refreshOffersOnly() {
|
||||
try {
|
||||
const { offers } = await scrapeMarktguru(true);
|
||||
const currentSig = offerSignature(offers);
|
||||
const lastSig = db.prepare('SELECT value FROM admin_settings WHERE key=?').get(KOEPI_SETTINGS_KEY)?.value || '';
|
||||
const changed = currentSig !== lastSig; // nur zur Anzeige im "geändert"-Sensor, löst nichts aus
|
||||
mqttClient.publishKoepiState({ offers, changed });
|
||||
console.log(`🍺 KöPi-Refresh (HA-Button): ${offers.length} Angebot(e) angezeigt, keine Pushover.`);
|
||||
return { changed, sent: false, offerCount: offers.length };
|
||||
} catch (e) {
|
||||
console.error('KöPi Refresh Fehler:', e.message);
|
||||
return { error: e.message };
|
||||
}
|
||||
}
|
||||
|
||||
// Wird täglich um 06:00 vom Scheduler in index.js aufgerufen.
|
||||
// forceNotify=true (manueller Admin-Test): Pushover wird auch ohne Änderung verschickt.
|
||||
async function runDailyCheck(forceNotify = false) {
|
||||
@@ -357,3 +376,4 @@ router.post('/run-daily-check', authenticate, async (req, res) => {
|
||||
|
||||
module.exports = router;
|
||||
module.exports.runDailyCheck = runDailyCheck;
|
||||
module.exports.refreshOffersOnly = refreshOffersOnly;
|
||||
|
||||
Reference in New Issue
Block a user