Toggle navigation
Toggle navigation
This project
Loading...
Sign in
신지원
/
LineMusicChatbot
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Graphs
Network
Create a new issue
Commits
Issue Boards
Authored by
엄성진
2021-06-08 15:28:41 +0000
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
de2b66848210e860f752e756064a929b596f8302
de2b6684
1 parent
55f8835d
Add Buttons, Fix Function for Communicating
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
74 additions
and
78 deletions
Info.js
check.js
index.js
Info.js
deleted
100644 → 0
View file @
55f8835
//라인 고유 토큰
exports
.
TOKEN
=
'Kb1/rQYz4MUhF8XyKQv7z9x0MxVQ5bX/XO8S/yt/1qQEJVAbsEFAaMvXKEOx9Umr7KhivfyDPfZHRRLFPngR0O4ZGWV2VFses8ufPE7uAdvYr4G6keBNAU69nBz5IC71HfbIrUHxXYqD7GfhVwXzpwdB04t89/1O/w1cDnyilFU='
exports
.
YoutubeKey
=
'AIzaSyBInggOtXxPFYIRee0Xs3vb5iZ9YE9_518'
exports
.
domain
=
'2020105631.oss2021.tk'
\ No newline at end of file
check.js
View file @
de2b668
This diff is collapsed. Click to expand it.
index.js
View file @
de2b668
...
...
@@ -11,7 +11,6 @@ var app = express();
app
.
use
(
bodyParser
.
json
());
var
songs
=
require
(
'./check'
);
var
thumbnail
=
1
;
// 썸네일 출력 여부 (1:출력/0:미출력/기본값:1)
var
post2
=
require
(
'./post2'
);
var
thumbnail_yes
;
app
.
post
(
'/hook'
,
function
(
req
,
res
)
{
...
...
@@ -20,90 +19,91 @@ app.post('/hook', function (req, res) {
// request log
console
.
log
(
'======================'
,
new
Date
(),
'======================'
);
console
.
log
(
eventObj
);
if
(
eventObj
.
type
==
"message"
)
// 일반 메시지일때
react
(
eventObj
.
replyToken
,
message
.
text
,
eventObj
.
source
.
userId
);
else
if
(
eventObj
.
postback
.
data
==
"썸네일"
)
//설정에서 썸네일 설정버튼을 눌렀을때
{
console
.
log
(
'썸네일 출력 설정'
);
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
Info
.
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:
[
{
"type"
:
"text"
,
"text"
:
sendMessage
},
{
"type"
:
"template"
,
"altText"
:
"설정메뉴입니다."
,
"template"
:
{
"type"
:
"buttons"
,
"title"
:
"썸네일 출력 여부 변경"
,
"text"
:
"아래 항목을 골라주세요."
,
"actions"
:
[
{
"type"
:
"postback"
,
"label"
:
"썸네일 출력 O"
,
"data"
:
thumbnail_yes
=
1
},
{
"type"
:
"postback"
,
"label"
:
"썸네일 출력 X"
,
"data"
:
thumbnail_yes
=
0
},
{
"type"
:
"postback"
,
"label"
:
"뒤로가기"
,
"data"
:
thumbnail_yes
=
-
1
}
]
}
}
]
}
}
);
}
else
if
(
eventObj
.
postback
.
data
==
"개수"
)
//설정에서 출력 개수 설정버튼을 눌렀을때
songs
.
amount_settings
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
else
switch
(
eventObj
.
postback
.
data
)
{
case
"썸네일"
:
//설정에서 썸네일 설정버튼을 눌렀을때
songs
.
thumbnail_settings
(
eventObj
.
replyToken
);
break
;
case
"enablethumbnail"
:
//설정 -> 썸네일 설정 -> 활성화
songs
.
enablethumbnail
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"unablethumbnail"
:
//설정 -> 썸네일 설정 -> 비활성화
songs
.
unablethumbnail
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
//else if (출력 개수 설정 버튼을 누르고 거기서 응답이 들어왔을때)
else
if
(
eventObj
.
postback
.
data
==
"주소"
)
//설정에서 유튜브 주소 설정버튼을 눌렀을때
songs
.
address_settings
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
case
"개수"
:
//설정에서 출력 개수 설정버튼을 눌렀을때
songs
.
amount_settings
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
//else if (유튜브 주소 설정 버튼을 누르고 거기서 응답이 들어왔을때)
//★★else if (플레이리스트를 입력했을때 뜬 버튼에서 장르를 눌렀을때)
//★★else if (플레이리스트를 입력했을때 뜬 버튼에서 무드를 눌렀을때)
//★★else if (플레이리스트를 입력했을때 뜬 버튼에서 가수를 눌렀을때)
thumbnail_yes
=
postback
.
data
;
console
.
log
(
"thumbnail_yes : "
+
thumbnail_yes
);
if
(
thumbnail_yes
===
1
||
thumbnail_yes
===
0
)
{
songs
.
thumbnail_settings
(
thumbnail_yes
,
eventObj
.
source
.
userId
);
case
"주소"
:
//설정에서 유튜브 주소 설정버튼을 눌렀을때
songs
.
address_settings
(
eventObj
.
replyToken
);
break
;
case
"enableaddress"
:
//설정 -> 주소 설정 -> 활성화
songs
.
enableaddress
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"unableaddress"
:
//설정 -> 주소 설정 -> 비활성화
songs
.
unableaddress
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
}
else
if
(
thumbnail_yes
===
-
1
)
console
.
log
(
"뒤로가기"
);
else
console
.
log
(
"NULL값 입력임"
);
case
"genre"
:
// 플레이리스트 -> 장르
songs
.
genre
(
eventObj
.
replyToken
);
break
;
case
"hiphop"
:
// 플레이리스트 -> 장르 -> 힙합
songs
.
hiphop
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"piano"
:
// 플레이리스트 -> 장르 -> 피아노
songs
.
piano
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"pop"
:
// 플레이리스트 -> 장르 -> 팝
songs
.
pop
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"mood"
:
// 플레이리스트 -> 무드
songs
.
mood
(
eventObj
.
replyToken
);
break
;
case
"exciting"
:
// 플레이리스트 -> 무드 -> 신남
songs
.
exciting
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"sad"
:
// 플레이리스트 -> 무드 -> 슬픔
songs
.
sad
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"singer"
:
// 플레이리스트 -> 가수
songs
.
singer
(
eventObj
.
replyToken
);
break
;
case
"blackpink"
:
// 플레이리스트 -> 가수 -> 블랙핑크
songs
.
blackpink
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"iu"
:
// 플레이리스트 -> 가수 -> 아이유
songs
.
iu
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"redvelvet"
:
// 플레이리스트 -> 가수 -> 레드벨벳
songs
.
redvelvet
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
case
"twice"
:
// 플레이리스트 -> 가수 -> 트와이스
songs
.
twice
(
eventObj
.
replyToken
,
eventObj
.
source
.
userId
);
break
;
//else if (출력 개수 설정 버튼을 누르고 거기서 응답이 들어왔을때)
};
console
.
log
(
"11"
);
res
.
sendStatus
(
200
);
});
function
react
(
replyToken
,
message
,
userId
)
{
request
.
post
(
...
...
Please
register
or
login
to post a comment