Skip to content

Commit c6a71a1

Browse files
handle decimals from rust parser
1 parent 3f326d5 commit c6a71a1

File tree

6 files changed

+196
-196
lines changed

6 files changed

+196
-196
lines changed

ogn/parser/parse.py

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -88,14 +88,14 @@ def parse(aprs_message, reference_timestamp=None, calculate_relations=False, use
8888
if 'address' in position: message['address'] = f"{position['address']:06X}"
8989

9090
if 'climb_rate' in position: message["climb_rate"] = position['climb_rate'] * FPM_TO_MS
91-
if 'turn_rate' in position: message["turn_rate"] = position['turn_rate'] * HPM_TO_DEGS
92-
if 'signal_quality' in position: message["signal_quality"] = position['signal_quality']
91+
if 'turn_rate' in position: message["turn_rate"] = float(position['turn_rate']) * HPM_TO_DEGS
92+
if 'signal_quality' in position: message["signal_quality"] = float(position['signal_quality'])
9393
if 'error' in position: message["error_count"] = position['error']
94-
if 'frequency_offset' in position: message["frequency_offset"] = position['frequency_offset']
94+
if 'frequency_offset' in position: message["frequency_offset"] = float(position['frequency_offset'])
9595
if 'gps_quality' in position: message["gps_quality"] = position['gps_quality']
9696
if 'flight_level' in position: message["flightlevel"] = position['flight_level']
9797
if 'signal_power' in position: message["signal_power"] = position['signal_power']
98-
if 'software_version' in position: message["software_version"] = position['software_version']
98+
if 'software_version' in position: message["software_version"] = float(position['software_version'])
9999
if 'hardware_version' in position: message["hardware_version"] = position['hardware_version']
100100
if 'original_address' in position: message["real_address"] = f"{position['original_address']:06X}"
101101

@@ -107,23 +107,23 @@ def parse(aprs_message, reference_timestamp=None, calculate_relations=False, use
107107

108108
if 'version' in status: message["version"] = status['version']
109109
if 'platform' in status: message["platform"] = status['platform']
110-
if 'cpu_load' in status: message["cpu_load"] = status['cpu_load']
111-
if 'ram_free' in status: message["free_ram"] = status['ram_free']
112-
if 'ram_total' in status: message["total_ram"] = status['ram_total']
113-
if 'ntp_offset' in status: message["ntp_error"] = status['ntp_offset']
114-
if 'ntp_correction' in status: message["rt_crystal_correction"] = status['ntp_correction']
115-
if 'voltage' in status: message["voltage"] = status['voltage']
116-
if 'amperage' in status: message["amperage"] = status['amperage']
117-
if 'cpu_temperature' in status: message["cpu_temp"] = status['cpu_temperature']
110+
if 'cpu_load' in status: message["cpu_load"] = float(status['cpu_load'])
111+
if 'ram_free' in status: message["free_ram"] = float(status['ram_free'])
112+
if 'ram_total' in status: message["total_ram"] = float(status['ram_total'])
113+
if 'ntp_offset' in status: message["ntp_error"] = float(status['ntp_offset'])
114+
if 'ntp_correction' in status: message["rt_crystal_correction"] = float(status['ntp_correction'])
115+
if 'voltage' in status: message["voltage"] = float(status['voltage'])
116+
if 'amperage' in status: message["amperage"] = float(status['amperage'])
117+
if 'cpu_temperature' in status: message["cpu_temp"] = float(status['cpu_temperature'])
118118
if 'visible_senders' in status: message["senders_visible"] = status['visible_senders']
119119
if 'latency' in status: message["latency"] = status['latency']
120120
if 'senders' in status: message["senders_total"] = status['senders']
121121
if 'rf_correction_manual' in status: message["rec_crystal_correction"] = status['rf_correction_manual']
122-
if 'rf_correction_automatic' in status: message["rec_crystal_correction_fine"] = status['rf_correction_automatic']
123-
if 'noise' in status: message["rec_input_noise"] = status['noise']
124-
if 'senders_signal_quality' in status: message["senders_signal"] = status['senders_signal_quality']
122+
if 'rf_correction_automatic' in status: message["rec_crystal_correction_fine"] = float(status['rf_correction_automatic'])
123+
if 'noise' in status: message["rec_input_noise"] = float(status['noise'])
124+
if 'senders_signal_quality' in status: message["senders_signal"] = float(status['senders_signal_quality'])
125125
if 'senders_messages' in status: message["senders_messages"] = status['senders_messages']
126-
if 'good_senders_signal_quality' in status: message["good_senders_signal"] = status['good_senders_signal_quality']
126+
if 'good_senders_signal_quality' in status: message["good_senders_signal"] = float(status['good_senders_signal_quality'])
127127
if 'good_senders' in status: message["good_senders"] = status['good_senders']
128128
if 'good_and_bad_senders' in status: message["good_and_bad_senders"] = status['good_and_bad_senders']
129129

0 commit comments

Comments
 (0)