update Do 11. Jun 17:31:01 CEST 2020
This commit is contained in:
parent
1daa8a4d98
commit
930f7baa85
@ -37,20 +37,21 @@ app_cfg.public = {
|
|||||||
url_privacy: 'https://www.nix.nix/datenschutz'
|
url_privacy: 'https://www.nix.nix/datenschutz'
|
||||||
};
|
};
|
||||||
|
|
||||||
// Daten von anderen Servern empfangen
|
// Daten von anderen Clients empfangen
|
||||||
app_cfg.api = {
|
app_cfg.api = {
|
||||||
enabled: true,
|
enabled: true,
|
||||||
secret: 'asdfwert1234567890#',
|
secret: 'asdfwert1234567890#',
|
||||||
access_list: ['192.168.2.20', '192.168.2.30'],
|
access_list: ['192.168.2.20', '192.168.2.30']
|
||||||
send_mission_type: ['Brandeinsatz', 'Hilfeleistung'],
|
|
||||||
send_data_type: ['uuid', 'nummer', 'alarmzeit', 'art', 'stichwort', 'sondersignal', 'ort', 'ortsteil', 'wgs84_area']
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// Daten an andere Server senden
|
// Daten an andere Server senden
|
||||||
app_cfg.endpoint = {
|
app_cfg.endpoint = {
|
||||||
enabled: true,
|
enabled: true,
|
||||||
host: 'https://192.168.1.25:8090/api',
|
host: 'https://192.168.1.25:8090/api',
|
||||||
secret: 'asdfwert1234567890#'
|
secret: 'asdfwert1234567890#',
|
||||||
|
// TODO in api rausfiltern
|
||||||
|
get_mission_type: ['Brandeinsatz', 'Hilfeleistung'],
|
||||||
|
get_data_type: ['uuid', 'nummer', 'alarmzeit', 'art', 'stichwort', 'sondersignal', 'ort', 'ortsteil', 'wgs84_area']
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = app_cfg;
|
module.exports = app_cfg;
|
||||||
@ -3,13 +3,24 @@ module.exports = function (app_cfg, sql, uuidv4) {
|
|||||||
// Module laden
|
// Module laden
|
||||||
const twit = require('twit');
|
const twit = require('twit');
|
||||||
|
|
||||||
function alert_vmtl_list(vmtl_data, callback) {
|
function alert_vmtl_list(list_data, callback) {
|
||||||
|
|
||||||
// vmtl_data: tw.tw_screen_name, tw_consumer_key, tw.tw_consumer_secret, tw.tw_access_token_key, tw.tw_access_token_secret, we.uuid, we.einsatzart, wa.name_wache
|
// waip_wachen_id, vmlt_typ, vmlt_account_name, vmtl_account_group, waip_id
|
||||||
if (app_cfg.global.development) {
|
if (app_cfg.global.development) {
|
||||||
console.log('Daten Vermittlung: ' + JSON.stringify(vmtl_data));
|
console.log('Liste Vermittlung: ' + JSON.stringify(list_data));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (list_data.vmlt_typ == 'twitter') {
|
||||||
|
// wenn es sich um eine Twitter-Liste/Gruppe handelt, Account-Zugangsdaten ermitteln
|
||||||
|
sql.db_vmtl_get_tw_account(list_data, function (vmtl_data) {
|
||||||
|
|
||||||
|
// vmtl_data: tw_screen_name, tw_consumer_key, tw_consumer_secret, tw_access_token_key, tw_access_token_secret, uuid, einsatzart, name_wache
|
||||||
|
if (app_cfg.global.development) {
|
||||||
|
console.log('Twitter-Account-Daten: ' + JSON.stringify(vmtl_data));
|
||||||
|
};
|
||||||
|
|
||||||
|
if (vmtl_data) {
|
||||||
|
|
||||||
var T = new twit({
|
var T = new twit({
|
||||||
consumer_key: vmtl_data.tw_consumer_key,
|
consumer_key: vmtl_data.tw_consumer_key,
|
||||||
consumer_secret: vmtl_data.tw_consumer_secret,
|
consumer_secret: vmtl_data.tw_consumer_secret,
|
||||||
@ -79,6 +90,17 @@ module.exports = function (app_cfg, sql, uuidv4) {
|
|||||||
callback && callback(null);
|
callback && callback(null);
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
} else {
|
||||||
|
sql.db_log('VMTL', 'Zugangsdaten für Twitter-Account ' + vmtl_data.tw_screen_name + ' konnten nicht ermittelt werden.');
|
||||||
|
};
|
||||||
|
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
// andere Listen/Gruppen/Schnittstellen koennten hier noch abgefragt werden
|
||||||
|
callback && callback(null);
|
||||||
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@ -2,7 +2,9 @@ module.exports = function (db, uuidv4, app_cfg) {
|
|||||||
|
|
||||||
// Module laden
|
// Module laden
|
||||||
const turf = require('@turf/turf');
|
const turf = require('@turf/turf');
|
||||||
const { v5: uuidv5 } = require('uuid');
|
const {
|
||||||
|
v5: uuidv5
|
||||||
|
} = require('uuid');
|
||||||
|
|
||||||
// SQL-Abfragen
|
// SQL-Abfragen
|
||||||
|
|
||||||
@ -188,7 +190,7 @@ module.exports = function (db, uuidv4, app_cfg) {
|
|||||||
|
|
||||||
function db_einsatz_get_by_waipid(waip_id, wachen_nr, user_id, callback) {
|
function db_einsatz_get_by_waipid(waip_id, wachen_nr, user_id, callback) {
|
||||||
// Einsatzdaten entsprechend der WAIP-ID zusammentragen
|
// Einsatzdaten entsprechend der WAIP-ID zusammentragen
|
||||||
// falls waip_id oder wachen_nur keine zahlen sind, abbruch
|
// falls waip_id oder wachen_nur keine zahlen sind, Abbruch
|
||||||
if (isNaN(waip_id) || isNaN(wachen_nr)) {
|
if (isNaN(waip_id) || isNaN(wachen_nr)) {
|
||||||
callback && callback(null);
|
callback && callback(null);
|
||||||
} else {
|
} else {
|
||||||
@ -344,8 +346,6 @@ module.exports = function (db, uuidv4, app_cfg) {
|
|||||||
db.run(`DELETE FROM waip_einsaetze WHERE id = ?`, [id]);
|
db.run(`DELETE FROM waip_einsaetze WHERE id = ?`, [id]);
|
||||||
// History loeschen
|
// History loeschen
|
||||||
db.run(`DELETE FROM waip_history WHERE waip_id = ?`, [id]);
|
db.run(`DELETE FROM waip_history WHERE waip_id = ?`, [id]);
|
||||||
// Rueckmeldungen löschen
|
|
||||||
db.run(`DELETE FROM waip_response WHERE waip_uuid = (select uuid from waip_einsaetze where id = ?)`, [id]);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
function db_wache_get_all(callback) {
|
function db_wache_get_all(callback) {
|
||||||
@ -817,45 +817,39 @@ module.exports = function (db, uuidv4, app_cfg) {
|
|||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
function db_rmld_loeschen(waip_uuid) {
|
||||||
|
// Rueckmeldungen löschen
|
||||||
|
db.run(`DELETE FROM waip_response WHERE waip_uuid = `, [waip_uuid]);
|
||||||
|
};
|
||||||
|
|
||||||
function db_vmtl_get_list(waip_id, callback) {
|
function db_vmtl_get_list(waip_id, callback) {
|
||||||
// Pruefen ob fuer eine Wache im Einsatz ein Verteilerliste hinterlegt ist
|
// Pruefen ob fuer eine Wache im Einsatz ein Verteilerliste hinterlegt ist
|
||||||
db.get(`select v.waip_wachen_id, v.vmlt_typ, v.vmlt_account_name, v.vmtl_account_group from waip_vmtl v
|
db.get(`select v.waip_wachen_id, v.vmlt_typ, v.vmlt_account_name, v.vmtl_account_group from waip_vmtl v
|
||||||
where v.waip_wachen_id = (select distinct w.id wachen_id from waip_wachen w left join waip_einsatzmittel em on em.wachenname = w.name_wache
|
where v.waip_wachen_id = (select distinct w.id wachen_id from waip_wachen w left join waip_einsatzmittel em on em.wachenname = w.name_wache
|
||||||
where em.waip_einsaetze_ID = ?)`, [waip_id], function (err, liste) {
|
where em.waip_einsaetze_ID = ?)`, [waip_id], function (err, liste) {
|
||||||
if (err == null && liste) {
|
if (err == null && liste) {
|
||||||
// Falls Liste für Wache hinterlegt, je nach Typ de
|
// waip_id zu Daten hinzufuegen
|
||||||
if () {
|
liste.waip_id = waip_id;
|
||||||
|
callback && callback(liste);
|
||||||
} else {
|
} else {
|
||||||
// andere Listen/Gruppen/Schnittstellen koennten hier noch abgefragt werden
|
|
||||||
callback && callback(null);
|
callback && callback(null);
|
||||||
}
|
};
|
||||||
// FIXME eee
|
});
|
||||||
vmtl_typ TEXT,
|
};
|
||||||
vmlt_account_name TEXT,
|
|
||||||
vmlt_account_group TEXT
|
|
||||||
|
|
||||||
|
function db_vmtl_get_tw_account(list_data, callback) {
|
||||||
// Falls Account und Liste hinterlegt sind, die Account-Zugangsdaten, Einsatz-UUID, Einsatzart und Wachenname auslesen
|
// falls Liste für Wache hinterlegt, dann hier die Twitter-Account-Daten, Einsatz-UUID, Einsatzart und Wachenname auslesen
|
||||||
db.get(`select tw.tw_screen_name, tw_consumer_key, tw.tw_consumer_secret, tw.tw_access_token_key, tw.tw_access_token_secret, we.uuid, we.einsatzart, wa.name_wache
|
db.get(`select tw.tw_screen_name, tw.tw_consumer_key, tw.tw_consumer_secret, tw.tw_access_token_key, tw.tw_access_token_secret, we.uuid, we.einsatzart, wa.name_wache
|
||||||
from waip_tw_accounts tw, waip_einsaetze we, waip_wachen wa
|
from waip_tw_accounts tw, waip_einsaetze we, waip_wachen wa
|
||||||
where tw.id = ? AND we.id = ? AND wa.id = ?`, [twitter_liste.tw_account_id, waip_id, twitter_liste.waip_wachen_id], function (err, vmtl_daten) {
|
where tw.tw_screen_name = ? AND we.id = ? AND wa.id = ?`, [list_data.vmlt_account_name, list_data.waip_id, list_data.waip_wachen_id], function (err, vmtl_daten) {
|
||||||
if (err == null && vmtl_daten) {
|
if (err == null && vmtl_daten) {
|
||||||
// Listen-Name zur Daten hinzufuegen
|
// Listen-Name zu Daten hinzufuegen
|
||||||
vmtl_daten.list = twitter_liste.tw_account_list;
|
vmtl_daten.list = list_data.vmtl_account_group;
|
||||||
callback && callback(vmtl_daten);
|
callback && callback(vmtl_daten);
|
||||||
} else {
|
} else {
|
||||||
callback && callback(null);
|
callback && callback(null);
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
} else {
|
|
||||||
callback && callback(null);
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
|
|
||||||
function db_vmtl_get_access_data(, callback) {
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
@ -890,8 +884,9 @@ module.exports = function (db, uuidv4, app_cfg) {
|
|||||||
db_rmld_get_fuer_wache: db_rmld_get_fuer_wache,
|
db_rmld_get_fuer_wache: db_rmld_get_fuer_wache,
|
||||||
db_rmld_get_by_rmlduuid: db_rmld_get_by_rmlduuid,
|
db_rmld_get_by_rmlduuid: db_rmld_get_by_rmlduuid,
|
||||||
db_rmld_get_by_waipuuid: db_rmld_get_by_waipuuid,
|
db_rmld_get_by_waipuuid: db_rmld_get_by_waipuuid,
|
||||||
|
db_rmld_loeschen: db_rmld_loeschen,
|
||||||
db_vmtl_get_list: db_vmtl_get_list,
|
db_vmtl_get_list: db_vmtl_get_list,
|
||||||
db_vmtl_get_access_data: db_vmtl_get_access_data
|
db_vmtl_get_tw_account: db_vmtl_get_tw_account
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|||||||
@ -374,7 +374,7 @@ module.exports = function (io, sql, brk, async, app_cfg, api, proof) {
|
|||||||
});
|
});
|
||||||
sql.db_socket_get_by_room(waip.uuid, function (socket_ids) {
|
sql.db_socket_get_by_room(waip.uuid, function (socket_ids) {
|
||||||
// Dashboards trennen, deren Einsatz geloescht wurde
|
// Dashboards trennen, deren Einsatz geloescht wurde
|
||||||
// TODO WAIP: testen der Dashboard-Trennen-Funktion
|
// TODO TEST: testen der Dashboard-Trennen-Funktion
|
||||||
if (socket_ids) {
|
if (socket_ids) {
|
||||||
socket_ids.forEach(function (row) {
|
socket_ids.forEach(function (row) {
|
||||||
var socket = io.of('/dbrd').connected[row.socket_id];
|
var socket = io.of('/dbrd').connected[row.socket_id];
|
||||||
@ -400,11 +400,11 @@ module.exports = function (io, sql, brk, async, app_cfg, api, proof) {
|
|||||||
// Mail-Adressen fuer Wachen zu dieser Einsatz-ID ermitteln, siehe db_vmtl_get_list
|
// Mail-Adressen fuer Wachen zu dieser Einsatz-ID ermitteln, siehe db_vmtl_get_list
|
||||||
// csv an diese Mail-Adressen per Mail senden
|
// csv an diese Mail-Adressen per Mail senden
|
||||||
// wenn app_cfg.global.mail_rmld is true
|
// wenn app_cfg.global.mail_rmld is true
|
||||||
|
db_rmld_loeschen(waip_uuid)
|
||||||
});
|
});
|
||||||
// Einsatz löschen
|
// Einsatz löschen
|
||||||
sql.db_einsatz_loeschen(waip.id);
|
sql.db_einsatz_loeschen(waip.id);
|
||||||
sql.db_log('WAIP', 'Einsatz ' + waip.id + ' gelöscht.');
|
sql.db_log('WAIP', 'Einsatz-Daten zu Einsatz ' + waip.id + ' gelöscht.');
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user