Commit aa933e02d6482a2863e5c807739f45ec65d5e80c
1 parent
5d9a5de65b
Exists in
master
ping setelah pesan
Showing 1 changed file with 21 additions and 0 deletions Side-by-side Diff
index.js
... | ... | @@ -14,6 +14,8 @@ var keepalive_interval = 60 * 1000; |
14 | 14 | var last_message_hash = ''; |
15 | 15 | var log_level = 'info'; |
16 | 16 | |
17 | +var internal_ping_prefix = 'INTERNAL_PING.'; | |
18 | + | |
17 | 19 | if (config.globals.log_level) { |
18 | 20 | log_level = config.globals.log_level; |
19 | 21 | } |
... | ... | @@ -89,6 +91,11 @@ function onHttpIncomingMessage(request, response) { |
89 | 91 | var qs = url.parse(request.url, true).query; |
90 | 92 | logger.info("onHttpIncomingMessage()", {qs: qs}); |
91 | 93 | |
94 | + // abaikan balikan ping | |
95 | + if (qs.to.match(internal_ping_prefix)) { | |
96 | + return; | |
97 | + } | |
98 | + | |
92 | 99 | var destination = qs.to.replace(config.globals.msisdn_suffix, ''); |
93 | 100 | logger.info('Sending message to ' + destination + ': ' + qs.msg); |
94 | 101 | ym.sendPM(destination, qs.msg); |
... | ... | @@ -119,6 +126,20 @@ function forwardMessageToEvo(sender, message, ts) { |
119 | 126 | return; |
120 | 127 | } |
121 | 128 | }); |
129 | + | |
130 | + | |
131 | + // kirim ping 1 detik setelah pesan agar segera diproses | |
132 | + setTimeout(function() { | |
133 | + var pingOpts = { | |
134 | + url: config.globals.evo_url, | |
135 | + qs: { | |
136 | + msg: 'PING.' + message, | |
137 | + msisdn: internal_ping_prefix + msisdn, | |
138 | + smsc: config.globals.smsc, | |
139 | + ts: strftime('%F %T') | |
140 | + } | |
141 | + } | |
142 | + }, 1000); | |
122 | 143 | } |
123 | 144 | |
124 | 145 | function createHttpServer() { |