Showing
2 changed files
with
65 additions
and
29 deletions
1 | +const { send } = require('express/lib/response'); | ||
1 | const request = require('request'); | 2 | const request = require('request'); |
2 | const TARGET_URL = 'https://api.line.me/v2/bot/message/push' | 3 | const TARGET_URL = 'https://api.line.me/v2/bot/message/push' |
3 | const MULTI_TARGET_URL = 'https://api.line.me/v2/bot/message/multicast' | 4 | const MULTI_TARGET_URL = 'https://api.line.me/v2/bot/message/multicast' |
... | @@ -31,42 +32,20 @@ const USER_ID = '사Uc4258407a7677769f74ba184ec036651' | ... | @@ -31,42 +32,20 @@ const USER_ID = '사Uc4258407a7677769f74ba184ec036651' |
31 | 32 | ||
32 | 33 | ||
33 | // Multicast User | 34 | // Multicast User |
34 | -request.post( | ||
35 | - { | ||
36 | - url: MULTI_TARGET_URL, | ||
37 | - headers: { | ||
38 | - 'Authorization': `Bearer ${TOKEN}` | ||
39 | - }, | ||
40 | - json: { | ||
41 | - "to": [`${USER_ID}`], | ||
42 | - "messages":[ | ||
43 | - { | ||
44 | - "type":"text", | ||
45 | - "text":"This is push message." | ||
46 | - }, | ||
47 | - { | ||
48 | - "type":"text", | ||
49 | - "text":"May I help you?" | ||
50 | - } | ||
51 | - ] | ||
52 | - } | ||
53 | - },(error, response, body) => { | ||
54 | - console.log(body) | ||
55 | - }); | ||
56 | 35 | ||
57 | - | 36 | +function Multicast(sendMsg){ |
58 | -// Broadcast | ||
59 | request.post( | 37 | request.post( |
60 | { | 38 | { |
61 | - url: BROAD_TARGET_URL, | 39 | + url: MULTI_TARGET_URL, |
62 | headers: { | 40 | headers: { |
63 | 'Authorization': `Bearer ${TOKEN}` | 41 | 'Authorization': `Bearer ${TOKEN}` |
64 | }, | 42 | }, |
65 | json: { | 43 | json: { |
44 | + "to": [`${USER_ID}`], | ||
66 | "messages":[ | 45 | "messages":[ |
67 | { | 46 | { |
68 | "type":"text", | 47 | "type":"text", |
69 | - "text":"This is broadcast message." | 48 | + "text":sendMsg |
70 | }, | 49 | }, |
71 | { | 50 | { |
72 | "type":"text", | 51 | "type":"text", |
... | @@ -76,4 +55,33 @@ request.post( | ... | @@ -76,4 +55,33 @@ request.post( |
76 | } | 55 | } |
77 | },(error, response, body) => { | 56 | },(error, response, body) => { |
78 | console.log(body) | 57 | console.log(body) |
79 | - }); | ||
... | \ No newline at end of file | ... | \ No newline at end of file |
58 | + }); | ||
59 | +} | ||
60 | + | ||
61 | + | ||
62 | +exports.SendMessage = function(sendMessage){ | ||
63 | + Multicast(sendMessage); | ||
64 | +} | ||
65 | + | ||
66 | +// // Broadcast | ||
67 | +// request.post( | ||
68 | +// { | ||
69 | +// url: BROAD_TARGET_URL, | ||
70 | +// headers: { | ||
71 | +// 'Authorization': `Bearer ${TOKEN}` | ||
72 | +// }, | ||
73 | +// json: { | ||
74 | +// "messages":[ | ||
75 | +// { | ||
76 | +// "type":"text", | ||
77 | +// "text":"This is broadcast message." | ||
78 | +// }, | ||
79 | +// { | ||
80 | +// "type":"text", | ||
81 | +// "text":"May I help you?" | ||
82 | +// } | ||
83 | +// ] | ||
84 | +// } | ||
85 | +// },(error, response, body) => { | ||
86 | +// console.log(body) | ||
87 | +// }); | ||
... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
... | @@ -13,8 +13,10 @@ const sslport = 23023; | ... | @@ -13,8 +13,10 @@ const sslport = 23023; |
13 | 13 | ||
14 | var data = require('./getid.js'); | 14 | var data = require('./getid.js'); |
15 | var soccerAPI = require('./appfunctions.js'); | 15 | var soccerAPI = require('./appfunctions.js'); |
16 | +var push = require('./push.js'); | ||
16 | 17 | ||
17 | const bodyParser = require('body-parser'); | 18 | const bodyParser = require('body-parser'); |
19 | +const { defaultProxyHeaderExclusiveList } = require('request/request'); | ||
18 | 20 | ||
19 | var isLeagueInfo = false; | 21 | var isLeagueInfo = false; |
20 | var step = 0; | 22 | var step = 0; |
... | @@ -22,6 +24,8 @@ var step = 0; | ... | @@ -22,6 +24,8 @@ var step = 0; |
22 | var currentLeagueID = 0; | 24 | var currentLeagueID = 0; |
23 | var currentTeamID = 0; | 25 | var currentTeamID = 0; |
24 | 26 | ||
27 | +push.SendMessage(DefaultSelectMessage()); | ||
28 | + | ||
25 | data.SetData(); | 29 | data.SetData(); |
26 | 30 | ||
27 | var app = express(); | 31 | var app = express(); |
... | @@ -180,15 +184,34 @@ function SelectLeagueInfo(eventObj, inputNum){ | ... | @@ -180,15 +184,34 @@ function SelectLeagueInfo(eventObj, inputNum){ |
180 | for(var i = 0; i < 20; i++){ | 184 | for(var i = 0; i < 20; i++){ |
181 | valueText += standingJson.response[0].league.standings[0][i].rank + "|" + standingJson.response[0].league.standings[0][i].team.name + "|" + standingJson.response[0].league.standings[0][i].all.played + "|" + standingJson.response[0].league.standings[0][i].points + "|" + standingJson.response[0].league.standings[0][i].all.win + "|" + standingJson.response[0].league.standings[0][i].all.draw + "|" + standingJson.response[0].league.standings[0][i].all.lose + "|" + standingJson.response[0].league.standings[0][i].all.goals.for + "|" + standingJson.response[0].league.standings[0][i].all.goals.against + '\n'; | 185 | valueText += standingJson.response[0].league.standings[0][i].rank + "|" + standingJson.response[0].league.standings[0][i].team.name + "|" + standingJson.response[0].league.standings[0][i].all.played + "|" + standingJson.response[0].league.standings[0][i].points + "|" + standingJson.response[0].league.standings[0][i].all.win + "|" + standingJson.response[0].league.standings[0][i].all.draw + "|" + standingJson.response[0].league.standings[0][i].all.lose + "|" + standingJson.response[0].league.standings[0][i].all.goals.for + "|" + standingJson.response[0].league.standings[0][i].all.goals.against + '\n'; |
182 | } | 186 | } |
183 | - returnMsg = MakeReplyMessage('팀 순위', '순위|팀명|경기|득점|승리|무승부|패배|득점|??', valueText); | 187 | + returnMsg = MakeReplyMessage('팀 순위', '순위|팀명|경기|득점|승리|무승부|패배|득점|실점', valueText); |
184 | Reply(eventObj, returnMsg); | 188 | Reply(eventObj, returnMsg); |
185 | }); | 189 | }); |
186 | break; | 190 | break; |
187 | case 2: // 득점 순위 | 191 | case 2: // 득점 순위 |
192 | + soccerAPI.TopScorer(currentLeagueID, function(body){ | ||
193 | + let standingJson = JSON.parse(body); | ||
194 | + let valueText = ""; | ||
195 | + for(var i = 0; i < 20; i++){ | ||
196 | + valueText += (i+1).toString() + "|" + topScorerJson.response[i].player.name + "|" + topScorerJson.response[i].statistics[0].team.name + "|" + topScorerJson.response[i].statistics[0].games.appearences + "|" + topScorerJson.response[i].statistics[0].goals.total + '\n'; | ||
197 | + } | ||
198 | + returnMsg = MakeReplyMessage('득점 순위', '순위|이름|소속팀|경기|득점', valueText); | ||
199 | + Reply(eventObj, returnMsg); | ||
200 | + }); | ||
188 | break; | 201 | break; |
189 | case 3: // 도움 순위 | 202 | case 3: // 도움 순위 |
203 | + soccerAPI.TopAssist(currentLeagueID, function(body){ | ||
204 | + let standingJson = JSON.parse(body); | ||
205 | + let valueText = ""; | ||
206 | + for(var i = 0; i < 20; i++){ | ||
207 | + valueText += (i+1).toString() + "|" + topAssistJson.response[i].player.name + "|" + topAssistJson.response[i].statistics[0].team.name + "|" + topAssistJson.response[i].statistics[0].games.appearences + "|" + topAssistJson.response[i].statistics[0].goals.assists + '\n'; | ||
208 | + } | ||
209 | + returnMsg = MakeReplyMessage('도움 순위', '순위|이름|소속팀|경기|도움', valueText); | ||
210 | + Reply(eventObj, returnMsg); | ||
211 | + }); | ||
190 | break; | 212 | break; |
191 | case 4: // 처음으로 | 213 | case 4: // 처음으로 |
214 | + SetDefault(); | ||
192 | break; | 215 | break; |
193 | default: | 216 | default: |
194 | break; | 217 | break; |
... | @@ -196,6 +219,11 @@ function SelectLeagueInfo(eventObj, inputNum){ | ... | @@ -196,6 +219,11 @@ function SelectLeagueInfo(eventObj, inputNum){ |
196 | return returnMsg; | 219 | return returnMsg; |
197 | } | 220 | } |
198 | 221 | ||
222 | +function SetDefault(){ | ||
223 | + step = 0; | ||
224 | + push.SendMessage(DefaultSelectMessage()); | ||
225 | +} | ||
226 | + | ||
199 | function MakeReplyMessage(title, keys, values){ | 227 | function MakeReplyMessage(title, keys, values){ |
200 | return title + '\n' + keys + '\n' + values; | 228 | return title + '\n' + keys + '\n' + values; |
201 | } | 229 | } |
... | @@ -205,7 +233,7 @@ function SelectTeamInfo(inputNum){ | ... | @@ -205,7 +233,7 @@ function SelectTeamInfo(inputNum){ |
205 | } | 233 | } |
206 | 234 | ||
207 | function DefaultSelectMessage(){ | 235 | function DefaultSelectMessage(){ |
208 | - return '환영합니다.'; | 236 | + return '안녕하세요. \n리그번호 혹은 팀명을 입력해주세요.'; |
209 | } | 237 | } |
210 | 238 | ||
211 | function SelectLeagueInfoMessage(){ | 239 | function SelectLeagueInfoMessage(){ | ... | ... |
-
Please register or login to post a comment