Added "power", "voltage" and "amperage"

pull/15/head
Konstantin Gründger 2016-10-10 19:26:46 +02:00
rodzic d33cd5b7b9
commit b5b85d7e1b
2 zmienionych plików z 11 dodań i 1 usunięć

Wyświetl plik

@ -57,7 +57,7 @@ def parse_ogn_aircraft_beacon(aprs_comment):
'software_version': float(ac_match.group('flarm_software_version')) if ac_match.group('flarm_software_version') else None,
'hardware_version': int(ac_match.group('flarm_hardware_version'), 16) if ac_match.group('flarm_hardware_version') else None,
'real_address': ac_match.group('flarm_id'),
'power': ac_match.group('power')}
'power': float(ac_match.group('power')) if ac_match.group('power') else None}
else:
return None
@ -65,6 +65,9 @@ def parse_ogn_aircraft_beacon(aprs_comment):
def parse_ogn_receiver_beacon(aprs_comment):
rec_match = re.search(PATTERN_RECEIVER_BEACON, aprs_comment)
if rec_match:
print(rec_match.group('voltage'))
if rec_match.group('voltage'):
print(aprs_comment)
return {'version': rec_match.group('version'),
'platform': rec_match.group('platform'),
'cpu_load': float(rec_match.group('cpu_load')),
@ -72,6 +75,8 @@ def parse_ogn_receiver_beacon(aprs_comment):
'total_ram': float(rec_match.group('ram_total')),
'ntp_error': float(rec_match.group('ntp_offset')),
'rt_crystal_correction': float(rec_match.group('ntp_correction')),
'voltage': float(rec_match.group('voltage')) if rec_match.group('voltage') else None,
'amperage': float(rec_match.group('amperage')) if rec_match.group('amperage') else None,
'cpu_temp': float(rec_match.group('cpu_temperature')) if rec_match.group('cpu_temperature') else None,
'senders_visible': int(rec_match.group('visible_senders')) if rec_match.group('visible_senders') else None,
'senders_total': int(rec_match.group('senders')) if rec_match.group('senders') else None,

Wyświetl plik

@ -44,6 +44,11 @@ class TestStringMethods(unittest.TestCase):
self.assertEqual(aircraft_beacon['flightlevel'], 4.43)
def test_v025(self):
aircraft_beacon = parse_ogn_aircraft_beacon("id06DDE28D +535fpm +3.8rot 11.5dB 0e -1.0kHz gps2x3 s6.01 h0C +7.4dBm")
self.assertEqual(aircraft_beacon['power'], 7.4)
if __name__ == '__main__':
unittest.main()