Toggle navigation
Toggle navigation
This project
Loading...
Sign in
최재웅
/
menu_recommand_webpage
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
taegwon
2022-06-01 03:12:08 +0900
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
86a14e334dae0a265dbe19d5d4a2a8e11b5b69ed
86a14e33
1 parent
1c9e35df
fixed app.js
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
160 additions
and
97 deletions
CHATBOT/app.js
CHATBOT/app.js
View file @
86a14e3
var
lenguage
=
'not'
;
var
end
=
false
;
var
count
=
0
;
var
express
=
require
(
'express'
);
const
request
=
require
(
'request'
);
const
TARGET_URL
=
'https://api.line.me/v2/bot/message/
reply
'
const
TARGET_URL
=
'https://api.line.me/v2/bot/message/
push
'
const
TOKEN
=
'Ur8nbk2bQAc9KavLSSJv0uzlKWCxCBnOJOKyqbRS1mMHWgJlEOPfb7v+X1DDEHocUmhU7KnPFN+KHt5S3SYd5QmF42aTeQpW2gDVTjyqty1Tn+p6QqEhI/uSz659PBHwczEYn0Plx+akfCNHDPJRpAdB04t89/1O/w1cDnyilFU='
const
PAPAGO_URL
=
'https://openapi.naver.com/v1/papago/n2mt'
const
PAPAGO_ID
=
'1Z83W3lUGLqnNbrDAk8A'
const
PAPAGO_SECRET
=
'ST7ElRPFPP'
const
USER_ID
=
'Ub5fa0ab321e4713638a85fbfa7ecc20b'
const
fs
=
require
(
'fs'
);
const
path
=
require
(
'path'
);
const
HTTPS
=
require
(
'https'
);
const
domain
=
"2021105602.osschatbot2022.tk"
const
sslport
=
23023
;
const
bodyParser
=
require
(
'body-parser'
);
const
res
=
require
(
'express/lib/response'
)
;
var
choosen
=
[]
;
var
app
=
express
();
do
{
do
{
app
.
use
(
bodyParser
.
json
());
app
.
post
(
'/hook'
,
function
(
req
,
res
)
{
...
...
@@ -29,53 +27,101 @@ do
console
.
log
(
'[request source] '
,
eventObj
.
source
);
console
.
log
(
'[request message]'
,
eventObj
.
message
);
if
(
eventObj
.
message
.
text
==
'영어'
)
var
msg
=
eventObj
.
message
.
text
;
if
(
eventObj
.
message
.
text
==
'start'
)
{
lenguage
=
'en'
;
}
else
if
(
eventObj
.
message
.
text
==
'일본어'
)
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Hi\nThis is Menu recommend Chatbot!\nIf you follow the instructions, I will recommend the menu!"
},
{
"type"
:
"text"
,
"text"
:
"Choose a number\n1. 한식\n2. 중식\n3. 일식\n4. 양식\n5. 기타"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
count
++
;
}
else
if
(
count
==
1
&
!
end
)
{
lenguage
=
'ja'
}
else
if
(
eventObj
.
message
.
text
==
'프랑스어'
)
{
lenguage
=
'fr'
}
else
{
if
(
lenguage
==
'en'
)
{
trans_en
(
eventObj
.
replyToken
,
eventObj
.
message
.
text
);
}
else
if
(
lenguage
==
'ja'
)
{
trans_ja
(
eventObj
.
replyToken
,
eventObj
.
message
.
text
);
}
else
if
(
lenguage
==
'fr'
)
if
(
msg
==
'1'
|
msg
==
'2'
|
msg
==
'3'
|
msg
==
'4'
|
msg
==
'5'
)
{
trans_fr
(
eventObj
.
replyToken
,
eventObj
.
message
.
text
);
}
else
{
trans_en
(
eventObj
.
replyToken
,
'오류'
);
choosen
.
push
(
msg
);
count
++
;
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Choose a number\n1. 고기\n2. 해산물\n3. 기타"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
}
else
{
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Please choose a number between 1 to 5!"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
}
}
res
.
sendStatus
(
200
);
});
}
while
(
lenguage
==
'en'
|
lenguage
==
'fr'
|
lenguage
==
'ja'
);
function
trans_en
(
replyToken
,
message
)
{
request
.
post
(
}
else
if
(
count
==
2
&
!
end
)
{
url
:
PAPAGO_URL
,
headers
:
{
'Content-Type'
:
'application/x-www-form-urlencoded; charset=UTF-8'
,
'X-Naver-Client-Id'
:
`
${
PAPAGO_ID
}
`
,
'X-Naver-Client-Secret'
:
`
${
PAPAGO_SECRET
}
`
},
body
:
'source=ko&target=en&text='
+
message
,
json
:
true
},(
error
,
response
,
body
)
=>
{
if
(
!
error
&&
response
.
statusCode
==
200
)
{
console
.
log
(
body
.
message
);
var
transMessage
=
body
.
message
.
result
.
translatedText
;
if
(
msg
==
1
|
msg
==
2
|
msg
==
3
)
{
choosen
.
push
(
msg
);
count
++
;
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Choose a number\n1. 뜨거운 음식\n2. 찬 음식"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
}
else
{
request
.
post
(
{
url
:
TARGET_URL
,
...
...
@@ -83,11 +129,11 @@ function trans_en(replyToken, message) {
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
replyToken
,
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
transMessage
"text"
:
"Please choose a number between 1 to 3!"
}
]
}
...
...
@@ -95,26 +141,31 @@ function trans_en(replyToken, message) {
console
.
log
(
body
)
});
}
});
}
function
trans_ja
(
replyToken
,
message
)
{
request
.
post
(
}
else
if
(
count
==
3
&
!
end
)
{
url
:
PAPAGO_URL
,
headers
:
{
'Content-Type'
:
'application/x-www-form-urlencoded; charset=UTF-8'
,
'X-Naver-Client-Id'
:
`
${
PAPAGO_ID
}
`
,
'X-Naver-Client-Secret'
:
`
${
PAPAGO_SECRET
}
`
},
body
:
'source=ko&target=ja&text='
+
message
,
json
:
true
},(
error
,
response
,
body
)
=>
{
if
(
!
error
&&
response
.
statusCode
==
200
)
{
console
.
log
(
body
.
message
);
var
transMessage
=
body
.
message
.
result
.
translatedText
;
if
(
msg
==
1
|
msg
==
2
)
{
choosen
.
push
(
msg
);
count
++
;
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Choose a number\n1. 국물\n2. 국물 없는 음식"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
}
else
{
request
.
post
(
{
url
:
TARGET_URL
,
...
...
@@ -122,11 +173,11 @@ function trans_ja(replyToken, message) {
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
replyToken
,
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
transMessage
"text"
:
"Please choose a number between 1 to 2!"
}
]
}
...
...
@@ -134,26 +185,31 @@ function trans_ja(replyToken, message) {
console
.
log
(
body
)
});
}
});
}
function
trans_fr
(
replyToken
,
message
)
{
request
.
post
(
}
else
if
(
count
==
4
&
!
end
)
{
url
:
PAPAGO_URL
,
headers
:
{
'Content-Type'
:
'application/x-www-form-urlencoded; charset=UTF-8'
,
'X-Naver-Client-Id'
:
`
${
PAPAGO_ID
}
`
,
'X-Naver-Client-Secret'
:
`
${
PAPAGO_SECRET
}
`
},
body
:
'source=ko&target=fr&text='
+
message
,
json
:
true
},(
error
,
response
,
body
)
=>
{
if
(
!
error
&&
response
.
statusCode
==
200
)
{
console
.
log
(
body
.
message
);
var
transMessage
=
body
.
message
.
result
.
translatedText
;
if
(
msg
==
1
|
msg
==
2
)
{
choosen
.
push
(
msg
);
count
++
;
request
.
post
(
{
url
:
TARGET_URL
,
headers
:
{
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
"Choose a number\n1. 매운 음식\n2. 안매운 음식"
}
]
}
},(
error
,
response
,
body
)
=>
{
console
.
log
(
body
)
});
}
else
{
request
.
post
(
{
url
:
TARGET_URL
,
...
...
@@ -161,11 +217,11 @@ function trans_fr(replyToken, message) {
'Authorization'
:
`Bearer
${
TOKEN
}
`
},
json
:
{
"replyToken"
:
replyToken
,
"replyToken"
:
eventObj
.
replyToken
,
"messages"
:[
{
"type"
:
"text"
,
"text"
:
transMessage
"text"
:
"Please choose a number between 1 to 2!"
}
]
}
...
...
@@ -173,9 +229,16 @@ function trans_fr(replyToken, message) {
console
.
log
(
body
)
});
}
}
);
}
}
if
(
count
==
5
)
{
end
==
true
;
}
res
.
sendStatus
(
200
);
});
}
while
(
!
end
);
try
{
...
...
@@ -192,4 +255,4 @@ try {
console
.
log
(
'[HTTPS] HTTPS 오류가 발생하였습니다. HTTPS 서버는 실행되지 않습니다.'
);
console
.
log
(
error
);
}
\ No newline at end of file
\ No newline at end of file
...
...
Please
register
or
login
to post a comment