Commit a1095e72e5970ebbe69bb0348dae4e6820238edb

Authored by Adhidarma Hadiwinoto
1 parent 9ca059a9ae
Exists in master

Debug

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

1 const DEBUG_ON_NON_JSON_DIRECT_RESPONSE = !!(process.env.DEBUG_ON_NON_JSON_DIRECT_RESPONSE) 1 const DEBUG_ON_NON_JSON_DIRECT_RESPONSE = !!(process.env.DEBUG_ON_NON_JSON_DIRECT_RESPONSE)
2 2
3 const request = require('request'); 3 const request = require('request');
4 const config = require('komodo-sdk/config'); 4 const config = require('komodo-sdk/config');
5 const logger = require('komodo-sdk/logger'); 5 const logger = require('komodo-sdk/logger');
6 6
7 if (!process.env.KOMODO_MESSAGING_DO_NOT_LISTEN) { 7 if (!process.env.KOMODO_MESSAGING_DO_NOT_LISTEN) {
8 require('./http-callback-handler'); 8 require('./http-callback-handler');
9 } 9 }
10 10
11 let transport; 11 let transport;
12 12
13 const originData = { 13 const originData = {
14 origin: config.origin, 14 origin: config.origin,
15 report_port: config.listen_port 15 report_port: config.listen_port
16 } 16 }
17 17
18 function setTransport(_transport) { 18 function setTransport(_transport) {
19 transport = _transport; 19 transport = _transport;
20 } 20 }
21 21
22 function onIncomingMessage(params) { 22 function onIncomingMessage(params) {
23 23
24 if ( typeof params.partner !== 'string' || typeof params.msg !== 'string' || !params.partner.trim() || !params.msg.trim() ) { 24 if ( typeof params.partner !== 'string' || typeof params.msg !== 'string' || !params.partner.trim() || !params.msg.trim() ) {
25 logger.verbose('Not reporting to messaging center because of invalid parameter. F68CCCD74E79'); 25 logger.verbose('Not reporting to messaging center because of invalid parameter. F68CCCD74E79');
26 return; 26 return;
27 } 27 }
28 28
29 const requestOptions = { 29 const requestOptions = {
30 url: config.messaging_url, 30 url: config.messaging_url,
31 qs: { 31 qs: {
32 origin: originData.origin, 32 origin: originData.origin,
33 origin_label: params.origin_label, 33 origin_label: params.origin_label,
34 origin_transport: params.origin_transport, 34 origin_transport: params.origin_transport,
35 report_port: originData.report_port, 35 report_port: originData.report_port,
36 partner: params.partner, 36 partner: params.partner,
37 partner_raw: params.partner_raw || params.partner, 37 partner_raw: params.partner_raw || params.partner,
38 from: params.partner, 38 from: params.partner,
39 from_raw: params.partner_raw || params.partner, 39 from_raw: params.partner_raw || params.partner,
40 msg: params.msg.trim(), 40 msg: params.msg.trim(),
41 do_not_forward_to_core: params.do_not_forward_to_core || null, 41 do_not_forward_to_core: params.do_not_forward_to_core || null,
42 is_outgoing: params.is_outgoing || null, 42 is_outgoing: params.is_outgoing || null,
43 } 43 }
44 } 44 }
45 45
46 logger.verbose('MESSAGING-CLIENT-LIB: Sending report to messaging service'); 46 logger.verbose('MESSAGING-CLIENT-LIB: Sending report to messaging service', { qs: requestOptions.qs });
47 request(requestOptions, function(err, res, body) { 47 request(requestOptions, function(err, res, body) {
48 if (err) { 48 if (err) {
49 logger.warn('MESSAGING-CLIENT-LIB: error on request to messaging service', {err: err}); 49 logger.warn('MESSAGING-CLIENT-LIB: error on request to messaging service', {err: err});
50 return; 50 return;
51 } 51 }
52 52
53 if (params.do_not_forward_to_core) return; 53 if (params.do_not_forward_to_core) return;
54 if (params.is_outgoing) return; 54 if (params.is_outgoing) return;
55 55
56 try { 56 try {
57 var data = JSON.parse(body); 57 var data = JSON.parse(body);
58 } 58 }
59 catch(e) { 59 catch(e) {
60 if (DEBUG_ON_NON_JSON_DIRECT_RESPONSE) { 60 if (DEBUG_ON_NON_JSON_DIRECT_RESPONSE) {
61 logger.verbose('MESSAGING-CLIENT-LIB: direct response from messaging service is not on JSON format, forwarding raw response', { 61 logger.verbose('MESSAGING-CLIENT-LIB: direct response from messaging service is not on JSON format, forwarding raw response', {
62 partner: params.partner, 62 partner: params.partner,
63 msg: params.msg.trim(), 63 msg: params.msg.trim(),
64 directResponse: body, 64 directResponse: body,
65 }); 65 });
66 } 66 }
67 67
68 sendToPartner(params.partner, body); 68 sendToPartner(params.partner, body);
69 return; 69 return;
70 } 70 }
71 71
72 //logger.verbose('DEBUG', {msg: data.message, err: data.error}); 72 //logger.verbose('DEBUG', {msg: data.message, err: data.error});
73 const responseMessage = data.message || data.error; 73 const responseMessage = data.message || data.error;
74 sendToPartner(params.partner, responseMessage); 74 sendToPartner(params.partner, responseMessage);
75 }) 75 })
76 } 76 }
77 77
78 function sendToPartner(partner, msg) { 78 function sendToPartner(partner, msg) {
79 if (transport && transport.send) { 79 if (transport && transport.send) {
80 transport.send(partner, msg); 80 transport.send(partner, msg);
81 } 81 }
82 } 82 }
83 83
84 exports.setTransport = setTransport; 84 exports.setTransport = setTransport;
85 exports.onIncomingMessage = onIncomingMessage; 85 exports.onIncomingMessage = onIncomingMessage;
86 exports.sendToPartner = sendToPartner; 86 exports.sendToPartner = sendToPartner;