diff --git a/package-lock.json b/package-lock.json index cef8cc5..8aae444 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1555,6 +1555,11 @@ "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==" }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, "body-parser": { "version": "1.19.0", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", @@ -6893,20 +6898,14 @@ "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" }, - "twitter": { - "version": "1.7.1", - "resolved": "https://registry.npmjs.org/twitter/-/twitter-1.7.1.tgz", - "integrity": "sha1-B2I3jx3BwFDkj2ZqypBOJLGpYvQ=", + "twit": { + "version": "2.2.11", + "resolved": "https://registry.npmjs.org/twit/-/twit-2.2.11.tgz", + "integrity": "sha512-BkdwvZGRVoUTcEBp0zuocuqfih4LB+kEFUWkWJOVBg6pAE9Ebv9vmsYTTrfXleZGf45Bj5H3A1/O9YhF2uSYNg==", "requires": { - "deep-extend": "^0.5.0", - "request": "^2.72.0" - }, - "dependencies": { - "deep-extend": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.5.1.tgz", - "integrity": "sha512-N8vBdOa+DF7zkRrDCsaOXoCs/E2fJfx9B9MrKnnSiHNh4ws7eSys6YQE4KvT1cecKmOASYQBhbKjeuDD9lT81w==" - } + "bluebird": "^3.1.5", + "mime": "^1.3.4", + "request": "^2.68.0" } }, "two-product": { diff --git a/package.json b/package.json index 172b4f4..06a0d5a 100644 --- a/package.json +++ b/package.json @@ -27,7 +27,7 @@ "socket.io": "^2.3.0", "socket.io-client": "^2.3.0", "sqlite3": "^4.1.1", - "twitter": "^1.7.1", + "twit": "^2.2.11", "uuid": "^3.4.0" }, "devDependencies": {}, diff --git a/server/twitter.js b/server/twitter.js index b34bfa6..c7ad34e 100755 --- a/server/twitter.js +++ b/server/twitter.js @@ -1,35 +1,48 @@ -module.exports = function(twitter, uuidv4, app_cfg) { +module.exports = function(twit, uuidv4, app_cfg) { function alert_twitter_list(twitter_data, callback) { // 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 - var client = new twitter({ + + + var T = new twit({ consumer_key: twitter_data.tw_consumer_key, consumer_secret: twitter_data.tw_consumer_secret, access_token_key: twitter_data.tw_access_token_key, access_token_secret: twitter_data.tw_access_token_secret - }); + timeout_ms: 60*1000, // optional HTTP request timeout to apply to all requests. + strictSSL: true, // optional - requires SSL certificates to be valid. + }) var params = {screen_name: twitter_data.tw_screen_name}; - client.get('lists/list', params, function(error, lists, response) { + T.get('lists/list', params, function(error, lists, response) { if (!error) { var list_obj = lists.filter(function(o){return o.name == twitter_data.list;} ); //console.log(JSON.stringify(list_obj)); console.log(list_obj[0].id_str); var member_params = {list_id: list_obj[0].id_str, count: 50}; - client.get('lists/members', member_params, function(error, members, response) { + T.get('lists/members', member_params, function(error, members, response) { if (!error) { console.log(JSON.stringify(members)); var arrayLength = members.users.length; for (var i = 0; i < arrayLength; i++) { console.log(members.users[i].screen_name); + //Do something - } - - callback && callback(members); + var msg_params = {type: "message_create", message_create: {target: {recipient_id: members.users[i].id}, message_data: {text: "Hello World!"}}}; + T.post('direct_messages/events/new', msg_params, function(error, members, response) { + if (!error) { + console.log(OK); + callback && callback(members); + } else { + console.log(error); + callback && callback(null); + }; + }); + }; } else { console.log(error); callback && callback(null);