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 chat_ids = {}; var options = { polling: true }; var bot = new telegram(config.globals.token, options); function sendMessage(destination, message) { //destination = destination.replace(/@TELEGRAM$/, ''); console.log('Sending reply to ' + destination + ': ' + message); var chat_id = chat_ids[destination]; bot.sendMessage(chat_id, message); } function createHttpResponseServer(){ var httpServer = http.createServer(function(request,response){ var qs = url.parse(request.url, true).query; console.log('Incoming message from SMSIN server:') console.log(qs); response.end('OK'); sendMessage(qs.PhoneNumber, qs.text); }); httpServer.listen(config.globals.listen_port, function(){ console.log("listening on " + config.globals.listen_port); }) } createHttpResponseServer(); bot.getMe().then(function (me) { console.log('Hi my name is %s!', me.username); }); bot.on('text', function (msg) { console.log(msg); var from = msg.from.username.toUpperCase() + '@TELEGRAM'; chat_ids[from] = msg.chat.id; bot.sendMessage( msg.chat.id,'Pesan anda telah diterima: ' + msg.text); var request_opts = { url: config.globals.aaa, qs: { PhoneNumber: from, Text: msg.text, Res_Port: config.globals.listen_port, SMSCID: config.globals.smscid } }; request(request_opts, function(err, response, body) { if (err) { console.log('Request error: ' + err); return; } console.log('Response: ' + response); console.log('Body: ' + body); }); });