1
0
mirror of https://github.com/KubaPro010/fm-dx-webserver.git synced 2026-02-27 14:33:52 +01:00

fmlist logging hotfix

This commit is contained in:
NoobishSVK
2024-09-15 23:30:38 +02:00
parent d2020af3bb
commit 201d7bf261

View File

@@ -284,12 +284,12 @@ function canLog(id) {
} }
router.get('/log_fmlist', (req, res) => { router.get('/log_fmlist', (req, res) => {
if(dataHandler.dataToSend.txInfo.tx.length === 0) { if (dataHandler.dataToSend.txInfo.tx.length === 0) {
res.status(500).send('No suitable transmitter to log.'); res.status(500).send('No suitable transmitter to log.');
return; return;
} }
if(serverConfig.extras?.fmlist_integration == false) { if (serverConfig.extras?.fmlistIntegration === false) {
res.status(500).send('FMLIST Integration is not enabled on this server.'); res.status(500).send('FMLIST Integration is not enabled on this server.');
return; return;
} }
@@ -308,7 +308,7 @@ router.get('/log_fmlist', (req, res) => {
freq: dataHandler.dataToSend.freq, freq: dataHandler.dataToSend.freq,
pi: dataHandler.dataToSend.pi, pi: dataHandler.dataToSend.pi,
id: dataHandler.dataToSend.txInfo.id, id: dataHandler.dataToSend.txInfo.id,
rds_ps: dataHandler.dataToSend.ps, rds_ps: dataHandler.dataToSend.ps.replace(/'/g, "\\'"), // Escape quotes
signal: dataHandler.dataToSend.sig, signal: dataHandler.dataToSend.sig,
tp: dataHandler.dataToSend.tp, tp: dataHandler.dataToSend.tp,
ta: dataHandler.dataToSend.ta, ta: dataHandler.dataToSend.ta,
@@ -319,13 +319,13 @@ router.get('/log_fmlist', (req, res) => {
latitude: serverConfig.identification.lat, latitude: serverConfig.identification.lat,
longitude: serverConfig.identification.lon, longitude: serverConfig.identification.lon,
address: serverConfig.identification.proxyIp.length > 1 ? serverConfig.identification.proxyIp : ('Matches request IP with port ' + serverConfig.webserver.port), address: serverConfig.identification.proxyIp.length > 1 ? serverConfig.identification.proxyIp : ('Matches request IP with port ' + serverConfig.webserver.port),
webserver_name: serverConfig.identification.tunerName, webserver_name: serverConfig.identification.tunerName.replace(/'/g, "\\'"), // Escape quotes
omid: serverConfig.extras?.fmlistOmid || '', omid: serverConfig.extras?.fmlistOmid || '',
}, },
client: { client: {
request_ip: clientIp request_ip: clientIp
}, },
log_msg: `Logged PS: ${dataHandler.dataToSend.ps.replace(/\s+/g, '_')}, PI: ${dataHandler.dataToSend.pi}, Signal: ${dataHandler.dataToSend.sig.toFixed(0)} dBf` log_msg: "Logged PS: " + dataHandler.dataToSend.ps.replace(/\s+/g, '_') + ", PI: " + dataHandler.dataToSend.pi + ", Signal: " + dataHandler.dataToSend.sig.toFixed(0) + " dBf",
}); });
const options = { const options = {
@@ -334,27 +334,31 @@ router.get('/log_fmlist', (req, res) => {
method: 'POST', method: 'POST',
headers: { headers: {
'Content-Type': 'application/json', 'Content-Type': 'application/json',
'Content-Length': postData.length, 'Content-Length': Buffer.byteLength(postData) // Use Buffer.byteLength for accurate content length
} }
}; };
const request = https.request(options, (response) => { const request = https.request(options, (response) => {
let data = ''; let data = '';
response.on('data', (chunk) => { // Collect the response data // Collect response chunks
response.on('data', (chunk) => {
data += chunk; data += chunk;
}); });
// Response ended
response.on('end', () => { response.on('end', () => {
res.status(200).send(data); res.status(200).send(data);
}); });
}); });
// Handle errors in the request
request.on('error', (error) => { request.on('error', (error) => {
console.error('Error sending POST request:', error); console.error('Error sending POST request:', error);
res.status(500).send(error); res.status(500).send(error.message); // Send error message to client
}); });
// Write the postData and end the request properly
request.write(postData); request.write(postData);
request.end(); request.end();
}); });