장수창

added status reply

var express = require('express');
const request = require('request');
const TARGET_URL = 'https://api.line.me/v2/bot/message/reply'
const TOKEN = 'vGuGN1jGbvuOH79MdjIY00fdDr+nDp0ZGDUqzidK5u4c1KiMJQ1UjrgekSiptVVK2sMymCx7U761J1M/8So3gCWWRR34zvPp9YZpUFn07/gPd7yKVFPgZO/kTaEwyjvBk9WI+OfZo1ch8YD8x6iUzgdB04t89/1O/w1cDnyilFU='
const BROAD_TARGET_URL = 'https://api.line.me/v2/bot/message/broadcast'
const TOKEN = ''
const fs = require('fs');
const path = require('path');
const HTTPS = require('https');
......@@ -10,6 +11,7 @@ const sslport = 23023;
const bodyParser = require('body-parser');
var app = express();
app.use(bodyParser.json());
app.post('/hook', function (req, res) {
......@@ -23,6 +25,28 @@ app.post('/hook', function (req, res) {
console.log('[request source] ', eventObj.source);
console.log('[request message]', eventObj.message);
var isNationWide = message.text;
var sub_nationwide = "국내";
if(isNationWide.indexOf(sub_nationwide) !== -1){
replyNationWide(eventObj);
}
else if(message.text == "야" || message.text == "도움말"){
hello(eventObj)
}
res.sendStatus(200);
});
//reply
function replyNationWide(eventObj) {
//read status
var strings = ['날짜', '확진환자', '격리해제', '검사진행', '사망자']
var fs = require('fs');
var array = fs.readFileSync('status.txt').toString().split("\n");
for(i in array) {
strings[i] = array[i]
}
request.post(
{
url: TARGET_URL,
......@@ -34,6 +58,76 @@ app.post('/hook', function (req, res) {
"messages":[
{
"type":"text",
"text":strings[0]
},
{
"type":"text",
"text":strings[1]
},
{
"type":"text",
"text":strings[2]
},
{
"type":"text",
"text":strings[3]
},
{
"type":"text",
"text":strings[4]
},
]
}
},(error, response, body) => {
console.log(body)
});
}
//hello
function hello(eventObj) {
request.post(
{
url: TARGET_URL,
headers: {
'Authorization': `Bearer ${TOKEN}`
},
json: {
"replyToken":eventObj.replyToken,
"messages":[
{
"type":"text",
"text":"안녕하십니까. 코로나 도우미 입니다."
},
{
"type":"text",
"text":"국내 현황은 '국내'를 타이핑 해주세요."
},
{
"type": "sticker",
"packageId": "11539",
"stickerId": "52114110"
}
]
}
},(error, response, body) => {
console.log(body)
});
}
// Broadcast
function broadcast(eventObj){
request.post(
{
url: BROAD_TARGET_URL,
headers: {
'Authorization': `Bearer ${TOKEN}`
},
json: {
"messages":[
{
"type":"text",
"text":"Hello, user"
},
{
......@@ -45,10 +139,7 @@ app.post('/hook', function (req, res) {
},(error, response, body) => {
console.log(body)
});
res.sendStatus(200);
});
}
try {
const option = {
......