update Fr 12. Jun 22:01:01 CEST 2020
This commit is contained in:
parent
500516e784
commit
aa7a86c72c
@ -19,7 +19,14 @@ module.exports = function (io, sql, app_cfg, waip) {
|
||||
// versuche Remote-IP zu ermitteln
|
||||
var remote_ip = socket.handshake.headers["x-real-ip"] || socket.handshake.headers['x-forwarded-for'] || socket.request.connection.remoteAddress;
|
||||
|
||||
//TODO API: Eingehende Verbindung nur mit passendem Geheimnis und aus passendem IP-Bereich zulassen, das Ergebnis loggen
|
||||
// FIXME zulassen, aber nichts senden, ist besser
|
||||
// Remote-Verbindung nur zulassen, wenn IP in Access-List
|
||||
if (!app_cfg.api.access_list.includes(remote_ip);) {
|
||||
socket.close();
|
||||
sql.db_log('API', 'Verbindung von ' + remote_ip + ' geschlossen, da nicht in Zugangsliste.');
|
||||
};
|
||||
|
||||
//TODO API: Eingehende Verbindung nur mit passendem Geheimnis zulassen, das Ergebnis loggen
|
||||
|
||||
// in Liste der Clients mit aufnehmen
|
||||
sql.db_client_update_status(socket, 'api');
|
||||
|
||||
@ -61,7 +61,7 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
var user_obj = socket.request.user;
|
||||
sql.db_einsatz_get_by_waipid(waip_id, wachen_nr, user_obj.id, function (einsatzdaten) {
|
||||
if (einsatzdaten) {
|
||||
// Berechtigung ueberpruefen
|
||||
// Berechtigung des Users ueberpruefen
|
||||
sql.db_user_check_permission(user_obj, waip_id, function (valid) {
|
||||
// Wenn nutzer nicht angemeldet, Daten entfernen
|
||||
if (!valid) {
|
||||
@ -81,7 +81,7 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
// Sound erstellen
|
||||
tts_erstellen(app_cfg, socket.id, einsatzdaten, function (tts) {
|
||||
if (tts) {
|
||||
// Sound senden
|
||||
// Sound-Link senden
|
||||
socket.emit('io.playtts', tts);
|
||||
sql.db_log('WAIP', 'ttsfile: ' + tts);
|
||||
};
|
||||
@ -93,9 +93,9 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
});
|
||||
});
|
||||
} else {
|
||||
// Standby senden
|
||||
// wenn keine Einsatzdaten, dann Standby senden
|
||||
socket.emit('io.standby', null);
|
||||
sql.db_log('WAIP', 'Kein Einsatz fuer Wache ' + wachen_nr + ' vorhanden, Standby an Socket ' + socket.id + ' gesendet.');
|
||||
sql.db_log('WAIP', 'Kein Einsatz für Wache ' + wachen_nr + ' vorhanden, Standby an Socket ' + socket.id + ' gesendet.');
|
||||
sql.db_client_update_status(socket, null);
|
||||
};
|
||||
});
|
||||
@ -126,7 +126,7 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
};
|
||||
|
||||
function rmld_verteilen_by_uuid(waip_uuid, rmld_uuid) {
|
||||
// Einsatz-ID mittels Einsatz-UUID ermitteln
|
||||
// Einsatz-ID mittels Einsatz-UUID ermitteln, und Rueckmelung an alle relevanten Clients verteilen
|
||||
sql.db_einsatz_get_waipid_by_uuid(waip_uuid, function (waip_id) {
|
||||
// am Einsatz beteilite Socket-Räume ermitteln
|
||||
sql.db_einsatz_get_rooms(waip_id, function (socket_rooms) {
|
||||
@ -148,37 +148,18 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
sql.db_log('DEBUG', 'Rückmeldung JSON: ' + JSON.stringify(rmld_obj));
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
/*socket_rooms.forEach(function (rooms) {
|
||||
io.of('/waip').to(rooms.room).emit('io.new_rmld', rmld_obj);
|
||||
sql.db_log('RMLD', 'Rückmeldung ' + rmld_uuid + ' für den Einsatz mit der ID ' + waip_id + ' an Wache ' + rooms.room + ' gesendet.');
|
||||
sql.db_log('DEBUG', 'Rückmeldung JSON: ' + JSON.stringify(rmld_obj));
|
||||
});*/
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
};
|
||||
});
|
||||
};
|
||||
});
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
});
|
||||
};
|
||||
|
||||
function rmld_verteilen_for_one_client(waip_id, socket, wachen_id) {
|
||||
// Rueckmeldung an einen bestimmten Client senden
|
||||
if (typeof socket !== 'undefined') {
|
||||
sql.db_rmld_get_fuer_wache(waip_id, wachen_id, function (rmld_obj) {
|
||||
if (rmld_obj) {
|
||||
@ -193,8 +174,8 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
function dbrd_verteilen(dbrd_uuid, socket) {
|
||||
// Einsatzdaten an Dashboard senden
|
||||
sql.db_einsatz_get_by_uuid(dbrd_uuid, function (einsatzdaten) {
|
||||
if (einsatzdaten) {
|
||||
sql.db_user_check_permission(socket.request.user, einsatzdaten.id, function (valid) {
|
||||
@ -335,7 +316,8 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
|
||||
setInterval(function () {
|
||||
|
||||
// Aufräumen (alle 10 Sekunden)
|
||||
// (alle 10 Sekunden)
|
||||
|
||||
sql.db_socket_get_all_to_standby(function (socket_ids) {
|
||||
// alle User-Einstellungen prüfen und ggf. Standby senden
|
||||
if (socket_ids) {
|
||||
@ -470,16 +452,16 @@ module.exports = function (io, sql, fs, brk, async, app_cfg, api, proof) {
|
||||
};
|
||||
});
|
||||
};
|
||||
})
|
||||
}, 10000);
|
||||
});
|
||||
|
||||
}, 10000);
|
||||
|
||||
return {
|
||||
waip_speichern: waip_speichern,
|
||||
waip_verteilen: waip_verteilen,
|
||||
rmld_speichern: rmld_speichern,
|
||||
dbrd_verteilen: dbrd_verteilen,
|
||||
rmld_verteilen_for_one_client: rmld_verteilen_for_one_client,
|
||||
rmld_verteilen_by_uuid: rmld_verteilen_by_uuid
|
||||
rmld_verteilen_by_uuid: rmld_verteilen_by_uuid,
|
||||
dbrd_verteilen: dbrd_verteilen
|
||||
};
|
||||
};
|
||||
Loading…
Reference in New Issue
Block a user