공정훈

Update block connection

Showing 1 changed file with 113 additions and 38 deletions
...@@ -36,7 +36,7 @@ apiRouter.post('/sayHello', function(req, res) { ...@@ -36,7 +36,7 @@ apiRouter.post('/sayHello', function(req, res) {
36 36
37 apiRouter.post('/test', (req, res) => { 37 apiRouter.post('/test', (req, res) => {
38 var utt = req.body.userRequest.utterance; 38 var utt = req.body.userRequest.utterance;
39 - var data = { 39 + const responseBody = {
40 version: "2.0", 40 version: "2.0",
41 template: { 41 template: {
42 outputs: [ 42 outputs: [
...@@ -50,22 +50,17 @@ apiRouter.post('/test', (req, res) => { ...@@ -50,22 +50,17 @@ apiRouter.post('/test', (req, res) => {
50 action: "block", 50 action: "block",
51 label: "테스트 시작", 51 label: "테스트 시작",
52 message: "테스트 시작", 52 message: "테스트 시작",
53 - data: { 53 + blockId: "628b8005055a574d7df54466"
54 - "blockId": "628b8005055a574d7df54466",
55 - "extra": {
56 - "": ""
57 - }
58 - }
59 }] 54 }]
60 } 55 }
61 } 56 }
62 - res.json(data); 57 + res.status(200).send(responseBody);
63 }); 58 });
64 59
65 -app.post('/question1', (req, res) => { 60 +apiRouter.post('/question1', (req, res) => {
66 var mesg = req.body.userRequest; 61 var mesg = req.body.userRequest;
67 - console.log('[user message] ', mesg); 62 + console.log('[q1:user message] ', mesg);
68 - var data = { 63 + const responseBody = {
69 version: "2.0", 64 version: "2.0",
70 template: { 65 template: {
71 outputs: [ 66 outputs: [
...@@ -80,40 +75,90 @@ app.post('/question1', (req, res) => { ...@@ -80,40 +75,90 @@ app.post('/question1', (req, res) => {
80 action: "block", 75 action: "block",
81 label: "네", 76 label: "네",
82 message: "네", 77 message: "네",
83 - data: { 78 + blockId: "628e8cb07bd2fd433357f878"
84 - "blockId": "628e8cb07bd2fd433357f878",
85 - "extra": {
86 - "": ""
87 - }
88 - }
89 }, 79 },
90 { 80 {
91 action: "block", 81 action: "block",
92 label: "아니오", 82 label: "아니오",
93 message: "아니오", 83 message: "아니오",
94 - data: { 84 + blockId: "628e8cb07bd2fd433357f878"
95 - "blockId": "628e8cb07bd2fd433357f878", 85 + }
96 - "extra": { 86 + ]
97 - "": "" 87 + }
88 + }
89 + res.status(200).send(responseBody);
90 +});
91 +
92 +apiRouter.post('/question2', (req, res) => {
93 + var mesg = req.body.userRequest.utterance;
94 + console.log('[q2:user message] ', mesg);
95 + var mbti = '';
96 + if (mesg == "네") {
97 + mbti = 'E';
98 + } else if (mesg == "아니오") {
99 + mbti = 'I';
100 + }
101 + const responseBody = {
102 + version: "2.0",
103 + template: {
104 + outputs: [
105 + {
106 + simpleText: {
107 + text: 'mbti:'+mbti+'***\n평소 깻잎논쟁에 1시간 이상을 생각해봤다.\n맞다면 N 아니면 S을 입력해주세요.'
98 } 108 }
99 } 109 }
110 + ],
111 + quickReplies: [
112 + {
113 + action: "block",
114 + label: "네",
115 + message: "네",
116 + blockId: "628d239d93b31d5b60ab6c29"
117 + },
118 + {
119 + action: "block",
120 + label: "아니오",
121 + message: "아니오",
122 + blockId: "628d239d93b31d5b60ab6c29"
100 } 123 }
101 ] 124 ]
102 } 125 }
103 } 126 }
104 - res.json(data); 127 + res.status(200).send(responseBody);
105 }); 128 });
106 129
107 apiRouter.post('/question3', function(req, res) { 130 apiRouter.post('/question3', function(req, res) {
131 + var mesg = req.body.userRequest.utterance;
132 + console.log('[q3:user message] ', mesg);
133 + var mbti = '';
134 + if (mesg == '네') {
135 + mbti = 'N';
136 + } else if (mesg == '아니오') {
137 + mbti = 'S';
138 + }
108 const responseBody = { 139 const responseBody = {
109 version: "2.0", 140 version: "2.0",
110 template: { 141 template: {
111 outputs: [ 142 outputs: [
112 { 143 {
113 "simpleText": { 144 "simpleText": {
114 - "text": "다음과 같은 상황에서 어떻게 대답하겠습니까? 해당 숫자를 입력해 주세요. \n 친구: 나 기분 안 좋아서 옷 샀어 \n 1. 왜 기분 안 좋아? \n 2. 무슨 옷 샀어?" 145 + "text": "mbti:*"+mbti+"**\n다음과 같은 상황에서 어떻게 대답하겠습니까? 해당 숫자를 입력해 주세요. \n 친구: 나 기분 안 좋아서 옷 샀어 \n 1. 왜 기분 안 좋아? \n 2. 무슨 옷 샀어?"
115 } 146 }
116 } 147 }
148 + ],
149 + quickReplies: [
150 + {
151 + action: "block",
152 + label: "왜 기분 안 좋아?",
153 + message: "왜 기분 안 좋아?",
154 + blockId: "6290630451c40d32c6d8e71f"
155 + },
156 + {
157 + action: "block",
158 + label: "무슨 옷 샀어?",
159 + message: "무슨 옷 샀어?",
160 + blockId: "6290630451c40d32c6d8e71f"
161 + }
117 ] 162 ]
118 } 163 }
119 }; 164 };
...@@ -121,44 +166,74 @@ apiRouter.post('/question3', function(req, res) { ...@@ -121,44 +166,74 @@ apiRouter.post('/question3', function(req, res) {
121 res.status(200).send(responseBody); 166 res.status(200).send(responseBody);
122 }); 167 });
123 168
124 -apiRouter.post('/Q2', function(req, res) { 169 +apiRouter.post('/question4', (req, res) => {
170 + var mesg = req.body.userRequest.utterance;
171 + console.log('[q4:user message] ', mesg);
172 + var mbti = '';
173 + if (mesg == "왜 기분 안 좋아?") {
174 + mbti = 'F';
175 + } else if (mesg == "무슨 옷 샀어?") {
176 + mbti = 'T';
177 + }
125 const responseBody = { 178 const responseBody = {
126 version: "2.0", 179 version: "2.0",
127 template: { 180 template: {
128 outputs: [ 181 outputs: [
129 { 182 {
130 simpleText: { 183 simpleText: {
131 - text: '평소 깻잎논쟁에 1시간 이상을 생각해봤다.\n맞다면 N 아니면 S을 입력해주세요.' 184 + text: "mbti:**"+mbti+"*\n그날 할 일에 대해 계획을 미리 세우시나요?"
132 } 185 }
133 } 186 }
187 + ],
188 + quickReplies: [
189 + {
190 + action: "block",
191 + label: "네",
192 + message: "네",
193 + blockId: "6293885b7bd2fd4333583df0"
194 + },
195 + {
196 + action: "block",
197 + label: "아니오",
198 + message: "아니오",
199 + blockId: "6293885b7bd2fd4333583df0"
200 + }
134 ] 201 ]
135 } 202 }
136 - }; 203 + }
137 -
138 res.status(200).send(responseBody); 204 res.status(200).send(responseBody);
139 }); 205 });
140 206
141 -apiRouter.post('/A2', function(req, res) { 207 +apiRouter.post('/result', (req, res) => {
142 - 208 + var mesg = req.body.userRequest.utterance;
143 - const userRequest = req.body.userRequest; 209 + console.log('[result:user message] ', mesg);
144 - const utter = userRequest.utterance; 210 + var mbti = '';
145 - 211 + if (mesg == "네") {
146 -const responseBody = { 212 + mbti = 'J';
213 + } else if (mesg == "아니오") {
214 + mbti = 'P';
215 + }
216 + const responseBody = {
147 version: "2.0", 217 version: "2.0",
148 template: { 218 template: {
149 outputs: [ 219 outputs: [
150 { 220 {
151 simpleText: { 221 simpleText: {
152 - text: '당신의 MBTI는 *'+utter+'** 입니다.' 222 + text: "mbti: ***"+mbti
223 + }
224 + }
225 + ],
226 + quickReplies: [{
227 + action: "block",
228 + label: "mbti 결과 보기",
229 + message: "mbti 결과 보기",
230 + blockId : "629045977befc3101c3be778"
231 + }]
153 } 232 }
154 } 233 }
155 - ]
156 - }}
157 -
158 res.status(200).send(responseBody); 234 res.status(200).send(responseBody);
159 }); 235 });
160 236
161 -
162 app.listen((process.env.PORT || 3000), function() { 237 app.listen((process.env.PORT || 3000), function() {
163 console.log('Example skill server listening on port 3000!'); 238 console.log('Example skill server listening on port 3000!');
164 }); 239 });
...\ No newline at end of file ...\ No newline at end of file
......