diff --git a/index.js b/index.js index 4be4c38..1d9786a 100644 --- a/index.js +++ b/index.js @@ -1,13 +1,15 @@ -var iniparser = require('iniparser'); -var config = iniparser.parseSync('./config.ini'); -var telegram = require('node-telegram-bot-api'); -var request = require('request'); -var http = require('http'); -var url = require('url'); -var strftime = require('strftime'); -var winston = require('winston'); - -var logger = new (winston.Logger)({ +"use strict"; + +const iniparser = require('iniparser'); +const config = iniparser.parseSync('./config.ini'); +const telegram = require('node-telegram-bot-api'); +const request = require('request'); +const http = require('http'); +const url = require('url'); +const strftime = require('strftime'); +const winston = require('winston'); + +const logger = new (winston.Logger)({ transports: [ new (winston.transports.Console)({ timestamp: function() { @@ -34,11 +36,9 @@ var logger = new (winston.Logger)({ }); -var chat_ids = {}; +const chat_ids = {}; - -var bot; -var options = { +const options = { webHook: { port: config.globals.webhook_port, key: __dirname+'/key.pem', @@ -46,7 +46,7 @@ var options = { } }; -bot = new telegram(config.globals.token, options); +const bot = new telegram(config.globals.token, options); bot.setWebHook(config.globals.webhook_prefix + config.globals.token, __dirname+'/crt.pem'); /* @@ -63,7 +63,7 @@ function deleteChatId(from) { function sendMessage(destination, message) { //destination = destination.replace(/@TELEGRAM$/, ''); - var chat_id = chat_ids[destination]; + let chat_id = chat_ids[destination]; if (!chat_id) { logger.warn('Can not find approriate chat id for ' + destination + '. Abort sending message.'); @@ -76,10 +76,9 @@ function sendMessage(destination, message) { } function createHttpResponseServer(){ - var httpServer = http.createServer(function(request,response){ - var qs = url.parse(request.url, true).query; + const httpServer = http.createServer(function(request,response){ + let qs = url.parse(request.url, true).query; logger.info('Incoming request from SMSIN server:', {qs: qs}) - //logger.info(qs); response.end('OK'); sendMessage(qs.PhoneNumber, qs.text); @@ -104,19 +103,18 @@ bot.on('text', function (msg) { return; } - var now = Math.floor(new Date().getTime()/1000); + let now = Math.floor(new Date().getTime()/1000); if (now - msg.date > config.globals.message_max_age){ - var message = 'Pesan "' + msg.text + '" diabaikan. Silahkan diulang kembali.'; + let message = 'Pesan "' + msg.text + '" diabaikan. Silahkan diulang kembali.'; logger.info(message) bot.sendMessage(msg.chat.id, message); return; } - var from = msg.from.username.toUpperCase() + config.globals.msisdn_suffix; + let from = msg.from.username.toUpperCase() + config.globals.msisdn_suffix; chat_ids[from] = msg.chat.id; - //setTimeout(deleteChatId, 1000 * 3600 * 24 * 2, from) bot.sendMessage( msg.chat.id,'Pesan anda telah diterima: ' + msg.text); @@ -143,9 +141,9 @@ bot.on('text', function (msg) { }); -function dumpChatIds() { - var i = 0; - for (var key in chat_ids) { +function dumpChatIds() { + let i = 0; + for (let key in chat_ids) { logger.verbose('DUMPED CHAT IDS #' + ++i + ' ' + key + ': ' + chat_ids[key]) } }