EC2 Default User

Fix app.js

Showing 1 changed file with 57 additions and 58 deletions
...@@ -3,7 +3,6 @@ const request = require('request'); ...@@ -3,7 +3,6 @@ const request = require('request');
3 const PUSH_TARGET_URL = 'https://api.line.me/v2/bot/message/push' 3 const PUSH_TARGET_URL = 'https://api.line.me/v2/bot/message/push'
4 const REPLY_TARGET_URL = 'https://api.line.me/v2/bot/message/reply' 4 const REPLY_TARGET_URL = 'https://api.line.me/v2/bot/message/reply'
5 const TOKEN = 'Zd+BLpi6wLHMngB3EK74S1W7ApnAXuYZ86xGIi60JKrSW0xI0JyXlCzpunYxk9fxtOkH4y2/CNrb6K7WYldpXBwUkCKNIyEQ04AUpQKQ1EzS6C3qm6y5sBm0zs/Gmzn6n1v1jLfmSpxyLir7VqHk5wdB04t89/1O/w1cDnyilFU=' 5 const TOKEN = 'Zd+BLpi6wLHMngB3EK74S1W7ApnAXuYZ86xGIi60JKrSW0xI0JyXlCzpunYxk9fxtOkH4y2/CNrb6K7WYldpXBwUkCKNIyEQ04AUpQKQ1EzS6C3qm6y5sBm0zs/Gmzn6n1v1jLfmSpxyLir7VqHk5wdB04t89/1O/w1cDnyilFU='
6 -const USER_ID = 'Uaa6ee8ae309532533aead588d062180d'
7 const fs = require('fs'); 6 const fs = require('fs');
8 const path = require('path'); 7 const path = require('path');
9 const HTTPS = require('https'); 8 const HTTPS = require('https');
...@@ -14,43 +13,16 @@ const bodyParser = require('body-parser'); ...@@ -14,43 +13,16 @@ const bodyParser = require('body-parser');
14 var app = express(); 13 var app = express();
15 app.use(bodyParser.json()); 14 app.use(bodyParser.json());
16 15
17 -request.post( 16 +const foodArr = [
18 - { 17 + {index : 1, kr_name: "한식", en_name: 'korean food'},
19 - url: PUSH_TARGET_URL, 18 + {index : 2, kr_name: "중식", en_name: 'chinese food'},
20 - headers: { 19 + {index : 3, kr_name: "양식", en_name: 'western food'},
21 - 'Authorization': `Bearer ${TOKEN}` 20 + {index : 4, kr_name: "일식", en_name: 'japanese food'},
22 - }, 21 + {index : 5, kr_name: "분식", en_name: 'snack food'},
23 - json: { 22 + {index : 6, kr_name: "아시안", en_name: 'asian food'},
24 - "to": `${USER_ID}`, 23 + {index: 7, kr_name: "패스트푸드", en_name: 'fast food'},
25 - "messages":[ 24 + {index: 8, kr_name: "학식", en_name: 'school food'}
26 - { 25 +];
27 - "type":"sticker",
28 - "packageId":"11538",
29 - "stickerId":"51626517"
30 - },
31 - {
32 - "type":"text",
33 - "text":"안녕하세요\n"+
34 - "음식추천 챗봇 쿠밥봇입니다\n\n"+
35 - "원하시는 메뉴를 골라주세요\n\n"+
36 - "1.한식2.중식3.양식\n"+
37 - "4.일식.5.분식6.아시안\n"+
38 - "7.패스트푸드8.학식"
39 - },
40 - {
41 - "type":"text",
42 - "text":"Welcome!!!\n" +
43 - "I'm a food recommendation chatbot, KHUBABBOT\n"+
44 - "Please choose the menu you want\n"+
45 - "1. Korean food 2. Chinese food 3. Western food\n"+
46 - "4. Japanese food 5. Snack food 6. Asian food\n"+
47 - "7. Fast food 8. School food\n"
48 - }
49 - ]
50 - }
51 - },(error, response, body) => {
52 - console.log(body)
53 - });
54 26
55 app.post('/hook', function (req, res) { 27 app.post('/hook', function (req, res) {
56 28
...@@ -58,27 +30,15 @@ app.post('/hook', function (req, res) { ...@@ -58,27 +30,15 @@ app.post('/hook', function (req, res) {
58 var source = eventObj.source; 30 var source = eventObj.source;
59 var message = eventObj.message; 31 var message = eventObj.message;
60 32
61 - const foodArr = [
62 - {index : 1, kr_name: "한식", en_name: 'Korean food'},
63 - {index : 2, kr_name: "중식", en_name: 'Chinese food'},
64 - {index : 3, kr_name: "양식", en_name: 'Western food'},
65 - {index : 4, kr_name: "일식", en_name: 'Japanese food'},
66 - {index : 5, kr_name: "분식", en_name: 'Snack food'},
67 - {index : 6, kr_name: "아시안", en_name: 'Asian food'},
68 - {index: 7, kr_name: "패스트푸드", en_name: 'Fast food'},
69 - {index: 8, kr_name: "학식", en_name: 'School food'}
70 - ];
71 -
72 // request log 33 // request log
73 console.log('======================', new Date() ,'======================'); 34 console.log('======================', new Date() ,'======================');
74 console.log('[request]', req.body); 35 console.log('[request]', req.body);
75 console.log('[request source] ', eventObj.source); 36 console.log('[request source] ', eventObj.source);
76 console.log('[request message]', eventObj.message); 37 console.log('[request message]', eventObj.message);
77 38
78 - var food = foodArr.find(element => element.index == message.text || element.kr_name == message.text || element.en_name == message.text); 39 + var food = foodArr.find(element => element.index == message.text || element.kr_name == message.text || element.en_name == message.text.toLowerCase());
79 - 40 +
80 - console.log(food); 41 + if (message.text == "안내" || message.text.toLowerCase() == "guide"){
81 - if (food != undefined){
82 request.post( 42 request.post(
83 { 43 {
84 url: REPLY_TARGET_URL, 44 url: REPLY_TARGET_URL,
...@@ -89,11 +49,50 @@ app.post('/hook', function (req, res) { ...@@ -89,11 +49,50 @@ app.post('/hook', function (req, res) {
89 "replyToken":eventObj.replyToken, 49 "replyToken":eventObj.replyToken,
90 "messages":[ 50 "messages":[
91 { 51 {
92 - "type": "location", 52 + "type":"sticker",
93 - "title": "my location", 53 + "packageId":"11538",
94 - "address": "1-6-1 Yotsuya, Shinjuku-ku, Tokyo, 160-0004, Japan", 54 + "stickerId":"51626517"
95 - "latitude": 35.687574, 55 + },
96 - "longitude": 139.72922 56 + {
57 + "type":"text",
58 + "text":"안녕하세요\n"+
59 + "음식추천 챗봇 쿠밥봇입니다\n\n"+
60 + "원하시는 메뉴를 골라주세요\n\n"+
61 + "1.한식2.중식3.양식\n"+
62 + "4.일식.5.분식6.아시안\n"+
63 + "7.패스트푸드8.학식"
64 + },
65 + {
66 + "type":"text",
67 + "text":"Welcome!!!\n" +
68 + "I'm a food recommendation chatbot, KHUBABBOT\n"+
69 + "Please choose the menu you want\n"+
70 + "1. Korean food 2. Chinese food 3. Western food\n"+
71 + "4. Japanese food 5. Snack food 6. Asian food\n"+
72 + "7. Fast food 8. School food\n"
73 + }
74 + ]
75 + }
76 + },(error, response, body) => {
77 + console.log(body)
78 + });
79 + }
80 + else if (food != undefined){
81 + request.post(
82 + {
83 + url: REPLY_TARGET_URL,
84 + headers: {
85 + Authorization: `Bearer ${TOKEN}`
86 + },
87 + json: {
88 + "replyToken":eventObj.replyToken,
89 + "messages":[
90 + {
91 + "type": "location",
92 + "title": "my location",
93 + "address": "1-6-1 Yotsuya, Shinjuku-ku, Tokyo, 160-0004, Japan",
94 + "latitude": 37.5666805,
95 + "longitude": 126.9784147
97 } 96 }
98 ] 97 ]
99 } 98 }
......