update Mi 17. Jun 14:01:01 CEST 2020

This commit is contained in:
Robert Richter 2020-06-17 14:01:01 +02:00
parent c4c6bfea5d
commit 458488c2a2

View File

@ -32,72 +32,78 @@ module.exports = function (app_cfg, sql, uuidv4) {
if (vmtl_data) {
var T = new twit({
consumer_key: vmtl_data.tw_consumer_key,
consumer_secret: vmtl_data.tw_consumer_secret,
access_token: vmtl_data.tw_access_token_key,
access_token_secret: vmtl_data.tw_access_token_secret
})
sql.db_vmtl_check_history(vmtl_data, list_data, function (exists) {
if (!exists) {
var T = new twit({
consumer_key: vmtl_data.tw_consumer_key,
consumer_secret: vmtl_data.tw_consumer_secret,
access_token: vmtl_data.tw_access_token_key,
access_token_secret: vmtl_data.tw_access_token_secret
})
var params = {
screen_name: vmtl_data.tw_screen_name
};
// Twitter-Liste beschicken
T.get('lists/list', params, function (error, lists, response) {
if (!error) {
var list_obj = lists.filter(function (o) {
return o.name == vmtl_data.list;
});
var member_params = {
list_id: list_obj[0].id_str,
count: 50
var params = {
screen_name: vmtl_data.tw_screen_name
};
// mit List_id die Mitglieder der Liste auslesen
T.get('lists/members', member_params, function (error, members, response) {
// Twitter-Liste beschicken
T.get('lists/list', params, function (error, lists, response) {
if (!error) {
if (app_cfg.global.development) {
console.log('Mitglieder der Twitter-Liste: ' + JSON.stringify(members));
var list_obj = lists.filter(function (o) {
return o.name == vmtl_data.list;
});
var member_params = {
list_id: list_obj[0].id_str,
count: 50
};
// an jedes Mitglied der Liste eine Meldung senden
var arrayLength = members.users.length;
for (var i = 0; i < arrayLength; i++) {
// Mitteilungstext festelgen
var tw_text = String.fromCodePoint(0x1F4DF) + ' ' + String.fromCodePoint(0x1F6A8) + String.fromCodePoint(0x0A) +
'Einsatz für ' + vmtl_data.name_wache + ' ' + String.fromCodePoint(0x27A1) + ' ' + vmtl_data.einsatzart + ', ' + vmtl_data.stichwort + String.fromCodePoint(0x0A) +
'jetzt Rückmeldung senden: ' + app_cfg.public.url + '/rmld/' + vmtl_data.uuid + '/' + uuidv4();
// Parameter der Mitteilung
var msg_params = {
event: {
type: "message_create",
message_create: {
target: {
recipient_id: members.users[i].id
},
message_data: {
text: tw_text
}
}
}
};
// Mitteilung senden
T.post('direct_messages/events/new', msg_params, function (error, members, response) {
if (!error) {
sql.db_log('VMTL', 'Einsatz-Link gesendet: ' + JSON.stringify(members));
callback && callback(vmtl_data.list);
} else {
sql.db_log('VMTL', 'Fehler beim senden eines Einsatz-Links: ' + error);
// mit List_id die Mitglieder der Liste auslesen
T.get('lists/members', member_params, function (error, members, response) {
if (!error) {
if (app_cfg.global.development) {
console.log('Mitglieder der Twitter-Liste: ' + JSON.stringify(members));
};
});
};
// an jedes Mitglied der Liste eine Meldung senden
var arrayLength = members.users.length;
for (var i = 0; i < arrayLength; i++) {
// Mitteilungstext festelgen
var tw_text = String.fromCodePoint(0x1F4DF) + ' ' + String.fromCodePoint(0x1F6A8) + String.fromCodePoint(0x0A) +
'Einsatz für ' + vmtl_data.name_wache + ' ' + String.fromCodePoint(0x27A1) + ' ' + vmtl_data.einsatzart + ', ' + vmtl_data.stichwort + String.fromCodePoint(0x0A) +
'jetzt Rückmeldung senden: ' + app_cfg.public.url + '/rmld/' + vmtl_data.uuid + '/' + uuidv4();
// Parameter der Mitteilung
var msg_params = {
event: {
type: "message_create",
message_create: {
target: {
recipient_id: members.users[i].id
},
message_data: {
text: tw_text
}
}
}
};
// Mitteilung senden
T.post('direct_messages/events/new', msg_params, function (error, members, response) {
if (!error) {
sql.db_log('VMTL', 'Einsatz-Link gesendet: ' + JSON.stringify(members));
callback && callback(vmtl_data.list);
} else {
sql.db_log('VMTL', 'Fehler beim senden eines Einsatz-Links: ' + error);
};
});
};
} else {
sql.db_log('VMTL', 'Fehler beim lesen der Mitglieder der Twitter-Liste: ' + error);
callback && callback(null);
};
});
} else {
sql.db_log('VMTL', 'Fehler beim lesen der Mitglieder der Twitter-Liste: ' + error);
sql.db_log('VMTL', 'Fehler beim lesen der Twitter-Liste: ' + error);
callback && callback(null);
};
});
} else {
sql.db_log('VMTL', 'Fehler beim lesen der Twitter-Liste: ' + error);
callback && callback(null);
sql.db_log('VMTL', 'Rückmeldungs-Link für Twitter-Account ' + list_data.vmtl_account_name + ' bereits zuvor gesendet. Wird verworfen.');
};
});