From 1f240dd31a70c24bb79b8f37a3388f2077704e7d Mon Sep 17 00:00:00 2001 From: Robert Richter Date: Tue, 9 Jun 2020 13:01:01 +0200 Subject: [PATCH] update Di 9. Jun 13:01:01 CEST 2020 --- server/sql_qry.js | 1 + server/waip.js | 35 ++++++++++++++++++++--------------- 2 files changed, 21 insertions(+), 15 deletions(-) diff --git a/server/sql_qry.js b/server/sql_qry.js index f01c801..8901319 100755 --- a/server/sql_qry.js +++ b/server/sql_qry.js @@ -144,6 +144,7 @@ module.exports = function (db, uuidv4, app_cfg) { }); }; + // FIXME: Einsatz nur verteilen, falls dieser nicht bereits so angezeigt wurde (Doppelalarmierung vermeiden) function db_einsatz_check_history(waip_id, einsatzdaten, socket_id, callback) { // Prüfen ob Wachalarm bereits in dieser Form an diesen Socket gesendet wurde const custom_namespace = '59cc72ec-4ff5-499d-81e2-ec49c1d01252' diff --git a/server/waip.js b/server/waip.js index 5676aec..d9c2796 100755 --- a/server/waip.js +++ b/server/waip.js @@ -67,22 +67,27 @@ module.exports = function (io, sql, brk, async, app_cfg, api, proof) { einsatzdaten.strasse = ''; einsatzdaten.wgs84_x = ''; einsatzdaten.wgs84_y = ''; - }; - // Einsatz an Client senden - // FIXME: Einsatz nur verteilen, falls dieser nicht bereits so angezeigt wurde (Doppelalarmierung vermeiden) - sql.... - - socket.emit('io.new_waip', einsatzdaten); - sql.db_log('WAIP', 'Einsatz ' + waip_id + ' fuer Wache ' + wachen_nr + ' an Socket ' + socket.id + ' gesendet'); - sql.db_client_update_status(socket, waip_id); - // Sound erstellen - tts_erstellen(app_cfg, socket.id, einsatzdaten, function (tts) { - if (tts) { - // Sound senden - socket.emit('io.playtts', tts); - sql.db_log('WAIP', 'ttsfile: ' + tts); + }; + // pruefen ob Einsatz bereits genau so beim Client angezeigt wurde (Doppelalarmierung) + sql.db_einsatz_check_history(waip_id, einsatzdaten, socket_id, function (result) { + if (!result) { + // Einsatz an Client senden + socket.emit('io.new_waip', einsatzdaten); + sql.db_log('WAIP', 'Einsatz ' + waip_id + ' fuer Wache ' + wachen_nr + ' an Socket ' + socket.id + ' gesendet.'); + sql.db_client_update_status(socket, waip_id); + // Sound erstellen + tts_erstellen(app_cfg, socket.id, einsatzdaten, function (tts) { + if (tts) { + // Sound senden + socket.emit('io.playtts', tts); + sql.db_log('WAIP', 'ttsfile: ' + tts); + }; + }); + } else { + // Log das Einsatz explizit nicht an Client gesendet wurde + sql.db_log('WAIP', 'Einsatz ' + waip_id + ' fuer Wache ' + wachen_nr + ' nicht an Socket ' + socket.id + ' gesendet, da bereits angezeigt.'); }; - }); + }); }); } else { // Standby senden