엄성진

Add Buttons, Fix Function for Communicating

1 -//라인 고유 토큰
2 -exports.TOKEN = 'Kb1/rQYz4MUhF8XyKQv7z9x0MxVQ5bX/XO8S/yt/1qQEJVAbsEFAaMvXKEOx9Umr7KhivfyDPfZHRRLFPngR0O4ZGWV2VFses8ufPE7uAdvYr4G6keBNAU69nBz5IC71HfbIrUHxXYqD7GfhVwXzpwdB04t89/1O/w1cDnyilFU='
3 -exports.YoutubeKey = 'AIzaSyBInggOtXxPFYIRee0Xs3vb5iZ9YE9_518'
4 -exports.domain='2020105631.oss2021.tk'
...\ No newline at end of file ...\ No newline at end of file
This diff is collapsed. Click to expand it.
...@@ -11,7 +11,6 @@ var app = express(); ...@@ -11,7 +11,6 @@ var app = express();
11 app.use(bodyParser.json()); 11 app.use(bodyParser.json());
12 var songs = require('./check'); 12 var songs = require('./check');
13 var thumbnail = 1;// 썸네일 출력 여부 (1:출력/0:미출력/기본값:1) 13 var thumbnail = 1;// 썸네일 출력 여부 (1:출력/0:미출력/기본값:1)
14 -var post2 = require('./post2');
15 var thumbnail_yes; 14 var thumbnail_yes;
16 app.post('/hook', function (req, res) { 15 app.post('/hook', function (req, res) {
17 16
...@@ -20,90 +19,91 @@ app.post('/hook', function (req, res) { ...@@ -20,90 +19,91 @@ app.post('/hook', function (req, res) {
20 19
21 // request log 20 // request log
22 console.log('======================', new Date(), '======================'); 21 console.log('======================', new Date(), '======================');
23 - console.log(eventObj); 22 +
24 if (eventObj.type=="message") // 일반 메시지일때 23 if (eventObj.type=="message") // 일반 메시지일때
25 react(eventObj.replyToken, message.text,eventObj.source.userId); 24 react(eventObj.replyToken, message.text,eventObj.source.userId);
26 - else if (eventObj.postback.data=="썸네일") //설정에서 썸네일 설정버튼을 눌렀을때
27 - {
28 - console.log('썸네일 출력 설정');
29 - request.post(
30 - {
31 - url: TARGET_URL,
32 - headers:
33 - {
34 - 'Authorization': `Bearer ${Info.TOKEN}`
35 - },
36 - json:
37 - {
38 - "replyToken": eventObj.replyToken,
39 - "messages":
40 - [
41 - {
42 - "type": "text",
43 - "text": sendMessage
44 - },
45 - {
46 - "type": "template",
47 - "altText": "설정메뉴입니다.",
48 - "template": {
49 - "type": "buttons",
50 - "title": "썸네일 출력 여부 변경",
51 - "text": "아래 항목을 골라주세요.",
52 - "actions": [
53 - {
54 - "type": "postback",
55 - "label": "썸네일 출력 O",
56 - "data": thumbnail_yes = 1
57 - },
58 - {
59 - "type": "postback",
60 - "label": "썸네일 출력 X",
61 - "data": thumbnail_yes = 0
62 - },
63 - {
64 - "type": "postback",
65 - "label": "뒤로가기",
66 - "data": thumbnail_yes = -1
67 - }
68 - ]
69 - }
70 - }
71 - ]
72 - }
73 - }
74 -
75 - );
76 25
26 + else
27 + switch (eventObj.postback.data) {
28 + case "썸네일": //설정에서 썸네일 설정버튼을 눌렀을때
29 + songs.thumbnail_settings(eventObj.replyToken);
30 + break;
31 + case "enablethumbnail": //설정 -> 썸네일 설정 -> 활성화
32 + songs.enablethumbnail(eventObj.replyToken,eventObj.source.userId);
33 + break;
34 + case "unablethumbnail": //설정 -> 썸네일 설정 -> 비활성화
35 + songs.unablethumbnail(eventObj.replyToken,eventObj.source.userId);
36 + break;
77 37
78 - }
79 - else if (eventObj.postback.data=="개수") //설정에서 출력 개수 설정버튼을 눌렀을때
80 - songs.amount_settings(eventObj.replyToken,eventObj.source.userId);
81 -
82 - //else if (출력 개수 설정 버튼을 누르고 거기서 응답이 들어왔을때)
83 38
84 - else if (eventObj.postback.data=="주소") //설정에서 유튜브 주소 설정버튼을 눌렀을때
85 - songs.address_settings(eventObj.replyToken,eventObj.source.userId);
86 39
87 - //else if (유튜브 주소 설정 버튼을 누르고 거기서 응답이 들어왔을때)
88 40
89 - //★★else if (플레이리스트를 입력했을때 뜬 버튼에서 장르를 눌렀을때) 41 + case "개수": //설정에서 출력 개수 설정버튼을 눌렀을때
42 + songs.amount_settings(eventObj.replyToken,eventObj.source.userId);
43 + break;
44 +
45 +
46 +
47 +
48 + case "주소": //설정에서 유튜브 주소 설정버튼을 눌렀을때
49 + songs.address_settings(eventObj.replyToken);
50 + break;
51 + case "enableaddress": //설정 -> 주소 설정 -> 활성화
52 + songs.enableaddress(eventObj.replyToken,eventObj.source.userId);
53 + break;
54 + case "unableaddress": //설정 -> 주소 설정 -> 비활성화
55 + songs.unableaddress(eventObj.replyToken,eventObj.source.userId);
56 + break;
57 +
58 +
59 + case "genre": // 플레이리스트 -> 장르
60 + songs.genre(eventObj.replyToken);
61 + break;
62 +
63 + case "hiphop": // 플레이리스트 -> 장르 -> 힙합
64 + songs.hiphop(eventObj.replyToken,eventObj.source.userId);
65 + break;
66 + case "piano": // 플레이리스트 -> 장르 -> 피아노
67 + songs.piano(eventObj.replyToken,eventObj.source.userId);
68 + break;
69 + case "pop": // 플레이리스트 -> 장르 -> 팝
70 + songs.pop(eventObj.replyToken,eventObj.source.userId);
71 + break;
72 +
73 + case "mood": // 플레이리스트 -> 무드
74 + songs.mood(eventObj.replyToken);
75 + break;
76 +
77 + case "exciting": // 플레이리스트 -> 무드 -> 신남
78 + songs.exciting(eventObj.replyToken,eventObj.source.userId);
79 + break;
80 + case "sad": // 플레이리스트 -> 무드 -> 슬픔
81 + songs.sad(eventObj.replyToken,eventObj.source.userId);
82 + break;
83 +
84 + case "singer": // 플레이리스트 -> 가수
85 + songs.singer(eventObj.replyToken);
86 + break;
87 +
88 + case "blackpink": // 플레이리스트 -> 가수 -> 블랙핑크
89 + songs.blackpink(eventObj.replyToken,eventObj.source.userId);
90 + break;
91 + case "iu": // 플레이리스트 -> 가수 -> 아이유
92 + songs.iu(eventObj.replyToken,eventObj.source.userId);
93 + break;
94 + case "redvelvet": // 플레이리스트 -> 가수 -> 레드벨벳
95 + songs.redvelvet(eventObj.replyToken,eventObj.source.userId);
96 + break;
97 + case "twice": // 플레이리스트 -> 가수 -> 트와이스
98 + songs.twice(eventObj.replyToken,eventObj.source.userId);
99 + break;
90 100
91 - //★★else if (플레이리스트를 입력했을때 뜬 버튼에서 무드를 눌렀을때)
92 101
93 - //★★else if (플레이리스트를 입력했을때 뜬 버튼에서 가수를 눌렀을때) 102 + //else if (출력 개수 설정 버튼을 누르고 거기서 응답이 들어왔을때)
94 - thumbnail_yes = postback.data;
95 - console.log("thumbnail_yes : "+thumbnail_yes);
96 - if (thumbnail_yes === 1 || thumbnail_yes === 0) {
97 - songs.thumbnail_settings(thumbnail_yes, eventObj.source.userId);
98 103
99 - }
100 - else if (thumbnail_yes === -1) console.log("뒤로가기");
101 - else console.log("NULL값 입력임");
102 104
105 +};
103 106
104 -console.log("11");
105 - res.sendStatus(200);
106 -});
107 function react(replyToken, message,userId) { 107 function react(replyToken, message,userId) {
108 108
109 request.post( 109 request.post(
......