박하늘

app.js : fuzzy string button update

......@@ -10,58 +10,115 @@ const sslport = 23023;
const bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.json());
app.post('/hook', function (req, res) {
var eventObj = req.body.events[0];
var source = eventObj.source;
var message = eventObj.message;
var pystring;
// request log
console.log('======================', new Date() ,'======================');
console.log('[request]', req.body);
console.log('[request source] ', eventObj.source);
console.log('[request message]', eventObj.message);
basicinform(eventObj.replyToken, eventObj.message.text)
res.sendStatus(200);
});
function basicinform(replyToken, message) {
var pystring;
const spawn = require("child_process").spawn;
const process = spawn("python", ["basic.py", eventObj.message.text]);
const process = spawn("python", ["basic.py", message]);
const Callback = (data) => {
console.log("Data :", data.toString());
pystring = data.toString();
// request log
console.log('======================', new Date() ,'======================');
console.log('[request]', req.body);
console.log('[request source] ', eventObj.source);
console.log('[request message]', eventObj.message);
request.post(
{
url: TARGET_URL,
headers: {
'Authorization': `Bearer ${TOKEN}`
},
json: {
"replyToken":eventObj.replyToken,
"messages":[
{
"type":"text",
"text":pystring
},
{
"type":"text",
"text":"May I help you?"
}
]
}
},(error, response, body) => {
console.log(body)
});
if(pystring[0] == '1')
{
pystring = pystring.replace('1현', '현');
request.post(
{
url: TARGET_URL,
headers: {
'Authorization': `Bearer ${TOKEN}`
},
json: {
"replyToken":replyToken,
"messages":[
{
"type":"text",
"text":pystring
}
]
}
},(error, response, body) => {
console.log(body)
});
}
else
{
var candarr = pystring.split('\n')
request.post(
{
url: TARGET_URL,
headers: {
'Authorization': `Bearer ${TOKEN}`
},
json: {
"replyToken":replyToken,
"messages":[
{
"type": "text",
"text": pystring,
"quickReply": {
"items": [
{
"type": "action",
"action": {
"type": "message",
"label": candarr[0],
"text": candarr[0]
}
},
{
"type": "action",
"action": {
"type": "message",
"label": candarr[1],
"text": candarr[1]
}
},
{
"type": "action",
"action": {
"type": "message",
"label": candarr[2],
"text": candarr[2]
}
}
]
}
}
]
}
},(error, response, body) => {
console.log(body)
});
}
res.sendStatus(200);
};
process.stdout.on("data", Callback);
});
}
try {
const option = {
......