app.js 3.86 KB
// const lineCtrl = require("./line.ctrl");

// var Koa = require('koa');
// const request = require('request');
// const TARGET_URL = 'https://api.line.me/v2/bot/message/reply'
// const TOKEN = 'iaoVQEV5adLHh7MbW8bZvHKoULoKZUD6B0bXD2l0srO+yXyXKRe4HBLvWQwrkKQx2fwdsz1O/qVpVh9eucUf9GxRb8w2dSaaWCXd9FTqDLP5Yu9xovneGprYlU/0VKSAVw1iphi9BfJWfjIjwWY2pAdB04t89/1O/w1cDnyilFU=';
// const fs = require('fs');
// const path = require('path');
// const HTTPS = require('https');
// const domain = "www.ossjaksimsamil.ml"
// const sslport = 23023;

// const bodyParser = require('body-parser');
// var app = new Koa();
// app.use(bodyParser.json());
// let username; //username 저장
// app.post('/hook', function (req, res) {

//     var eventObj = req.body.events[0];
//     //var source = eventObj.source;
//     //var message = eventObj.message;

//     // request log
//     console.log('======================', new Date() ,'======================');
//     console.log('[request]', req.body);
//     console.log('[request source] ', eventObj.source);
//     console.log('[request message]', eventObj.message);
//     if((eventObj.message.text == '문제추천')&&(username != undefined)){
//         console.log("문제를 추천합니다.");
//         recommendData = lineCtrl.lineRecommend(username);
//         recommendBJ(eventObj.replyToken, recommendData);
//     } else {
//     let isExist = lineCtrl.findID(eventObj.message.text);
//     if (isExist == true)
//         username = eventObj.message.text;
//     else{
//         request.post(
//             {
//                 url: TARGET_URL,
//                 headers: {
//                     'Authorization': `Bearer ${TOKEN}`
//                 },
//                 json: {
//                     "replyToken":replyToken,
//                     "messages":[
//                         {
//                             "type":"text",
//                             "text": "작심삼일 혹은 백준 사이트의 ID값이 올바르지 않습니다. 다시 입력해주세요."
//                         }
//                     ]
//                 }
//             },(body) => {
//                 console.log(body)
//             });
//         }
    
//     recommendBJ(eventObj.replyToken, eventObj.message.text);
//     }
//     res.sendStatus(200);
// },

// function recommendBJ(replyToken, message) {
//     var recommendProblem = "오늘의 추천문제는 " + message.problem_title + "입니다.";
//     var problemURL = "https://www.boj.kr/" + recommendData.problem_number;
//     request.post(
//         {
//             url: TARGET_URL,
//             headers: {
//                 'Authorization': `Bearer ${TOKEN}`
//             },
//             json: {
//                 "replyToken":replyToken,
//                 "messages":[
//                     {
//                         "type":"text",
//                         "text": recommendProblem
//                     },
//                     {
//                         "type":"text",
//                         "text": problemURL
//                     }
//                 ]
//             }
//         },(body) => {
//             console.log(body)
//         });
    

//     res.sendStatus(200);
// });

// try {
//     const option = {
//       ca: fs.readFileSync('/etc/letsencrypt/live/' + domain +'/fullchain.pem'),
//       key: fs.readFileSync(path.resolve(process.cwd(), '/etc/letsencrypt/live/' + domain +'/privkey.pem'), 'utf8').toString(),
//       cert: fs.readFileSync(path.resolve(process.cwd(), '/etc/letsencrypt/live/' + domain +'/cert.pem'), 'utf8').toString(),
//     };
  
//     HTTPS.createServer(option, app).listen(sslport, () => {
//       console.log(`[HTTPS] Server is started on port ${sslport}`);
//     });
//   } catch (error) {
//     console.log('[HTTPS] HTTPS 오류가 발생하였습니다. HTTPS 서버는 실행되지 않습니다.');
//     console.log(error);
//   }