// Extract the payload let payload = msg.payload; msg.container = "S5"; // Initialize the result object let result = { analog_sensors: {}, digital_inputs: {} }; // Regex patterns to match the sensor readings let analogSensorPattern = /([^<]+)<\/td>([^<]+)<\/td><\/tr>/g; let digitalSensorPattern = /([^<]+)<\/td>([^<]+)<\/td><\/tr>/g; // Extract analog sensor readings let match; while (match = analogSensorPattern.exec(payload)) { let sensorName = match[1].trim(); let sensorValue = match[2].trim(); result.analog_sensors[sensorName] = sensorValue; } // Extract digital input readings while (match = digitalSensorPattern.exec(payload)) { let sensorName = match[1].trim(); let sensorValue = match[2].trim(); result.digital_inputs[sensorName] = sensorValue; } // Return the result as a JSON object msg.payload = result; return msg;