Blame view
lib/report-sender.js
1.98 KB
5ae543453
|
1 2 3 4 5 6 |
'use strict'; const request = require('request'); const config = require('komodo-sdk/config'); const logger = require('komodo-sdk/logger'); |
343164ad5
|
7 |
function incomingSMS(message, modemInfo) { |
2db546a87
|
8 9 10 11 12 13 14 |
if (!message || !config || !config.report_url || !config.report_url.incoming_sms) return; if (!message.metadata) { const e = new Error('Missing metadata on incoming sms'); e.smsObj = message; throw e; } |
6abb33e39
|
15 16 17 18 19 |
if (!message.metadata.from) { const e = new Error('Missing metadata.from on incoming sms'); e.smsObj = message; throw e; } |
2db546a87
|
20 21 22 23 24 |
if (!message.message) { const e = new Error('Missing message on incoming sms'); e.smsObj = message; throw e; } |
5ae543453
|
25 26 27 28 |
const requestOptions = { url: config.report_url.incoming_sms, qs: { |
edb8b6e81
|
29 30 31 |
ts: message.metadata.ts, status: message.metadata.status, number: message.metadata.from, |
5ae543453
|
32 |
msg: message.message, |
343164ad5
|
33 34 35 |
modem: config.name, modem_imsi: modemInfo.imsi, modem_msisdn: modemInfo.msisdn, |
e178a442a
|
36 |
modem_device: config.modem.device, |
3915d3289
|
37 38 39 |
modem_network_id: modemInfo.networkId, modem_network_name: modemInfo.networkName, modem_signal_strength: modemInfo.signalStrength, |
e178a442a
|
40 |
uptime: Math.floor(process.uptime()), |
d3b4dc71a
|
41 42 |
report_port: config.http_command_server.listen_port, report_apikey: config.http_command_server.apikey, |
a83edfda7
|
43 |
report_path_sms: '/sms', |
5ae543453
|
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
}, }; logger.info('Sending report via HTTP', requestOptions); request(requestOptions, (err, res, body) => { if (err) { logger.warn(`Error sending report via HTTP. ${err.toString()}`); return; } if (res.statusCode !== 200) { logger.warn(`Error sending report via HTTP. Server respond with HTTP status code ${res.statusCode}`, { http_status_code: res.statusCode, body }); } }); } exports.incomingSMS = incomingSMS; |