Commit bd55bd82bf5b0a6119dc8abae2474f2e087c9b3c

Authored by Husni Mubarok
1 parent 499065fa9d
Exists in master

Reply First closed #2

Showing 1 changed file with 2 additions and 0 deletions Inline Diff

1 var iniparser = require('iniparser'); 1 var iniparser = require('iniparser');
2 var config = iniparser.parseSync('./config.ini'); 2 var config = iniparser.parseSync('./config.ini');
3 var telegram = require('node-telegram-bot-api'); 3 var telegram = require('node-telegram-bot-api');
4 var request = require('request'); 4 var request = require('request');
5 var http = require('http'); 5 var http = require('http');
6 var url = require('url'); 6 var url = require('url');
7 7
8 var chat_ids = {}; 8 var chat_ids = {};
9 9
10 var options = { 10 var options = {
11 polling: true 11 polling: true
12 }; 12 };
13 13
14 var bot = new telegram(config.globals.token, options); 14 var bot = new telegram(config.globals.token, options);
15 15
16 function sendMessage(destination, message) { 16 function sendMessage(destination, message) {
17 //destination = destination.replace(/@TELEGRAM$/, ''); 17 //destination = destination.replace(/@TELEGRAM$/, '');
18 console.log('Sending reply to ' + destination + ': ' + message); 18 console.log('Sending reply to ' + destination + ': ' + message);
19 var chat_id = chat_ids[destination]; 19 var chat_id = chat_ids[destination];
20 bot.sendMessage(chat_id, message); 20 bot.sendMessage(chat_id, message);
21 } 21 }
22 22
23 function createHttpResponseServer(){ 23 function createHttpResponseServer(){
24 var httpServer = http.createServer(function(request,response){ 24 var httpServer = http.createServer(function(request,response){
25 var qs = url.parse(request.url, true).query; 25 var qs = url.parse(request.url, true).query;
26 console.log('Incoming message from SMSIN server:') 26 console.log('Incoming message from SMSIN server:')
27 console.log(qs); 27 console.log(qs);
28 response.end('OK'); 28 response.end('OK');
29 29
30 sendMessage(qs.PhoneNumber, qs.text); 30 sendMessage(qs.PhoneNumber, qs.text);
31 }); 31 });
32 httpServer.listen(config.globals.listen_port, function(){ 32 httpServer.listen(config.globals.listen_port, function(){
33 console.log("listening on " + config.globals.listen_port); 33 console.log("listening on " + config.globals.listen_port);
34 }) 34 })
35 } 35 }
36 createHttpResponseServer(); 36 createHttpResponseServer();
37 37
38 bot.getMe().then(function (me) { 38 bot.getMe().then(function (me) {
39 console.log('Hi my name is %s!', me.username); 39 console.log('Hi my name is %s!', me.username);
40 }); 40 });
41 bot.on('text', function (msg) { 41 bot.on('text', function (msg) {
42 console.log(msg); 42 console.log(msg);
43 43
44 var from = msg.from.username.toUpperCase() + '@TELEGRAM'; 44 var from = msg.from.username.toUpperCase() + '@TELEGRAM';
45 45
46 chat_ids[from] = msg.chat.id; 46 chat_ids[from] = msg.chat.id;
47 47
48 bot.sendMessage( msg.chat.id,'Pesan anda telah diterima: ' + msg.text);
49
48 var request_opts = { 50 var request_opts = {
49 url: config.globals.aaa, 51 url: config.globals.aaa,
50 qs: { 52 qs: {
51 PhoneNumber: from, 53 PhoneNumber: from,
52 Text: msg.text, 54 Text: msg.text,
53 Res_Port: config.globals.listen_port, 55 Res_Port: config.globals.listen_port,
54 SMSCID: config.globals.smscid 56 SMSCID: config.globals.smscid
55 } 57 }
56 }; 58 };
57 59
58 request(request_opts, function(err, response, body) { 60 request(request_opts, function(err, response, body) {
59 if (err) { 61 if (err) {
60 console.log('Request error: ' + err); 62 console.log('Request error: ' + err);
61 return; 63 return;
62 } 64 }
63 65
64 console.log('Response: ' + response); 66 console.log('Response: ' + response);
65 console.log('Body: ' + body); 67 console.log('Body: ' + body);
66 68
67 }); 69 });
68 }); 70 });
69 71
70 72