initial commit
[shmoo-2020.git] / python-test / aprs2kismet.py
1 #!/usr/bin/python3
2
3 import serial
4 import json
5 import pprint
6
7 try:
8   ser = serial.Serial('/dev/ttyUSB0', 1200)
9 except:
10   print("/dev/ttyUSB0 not in")
11
12 Kisnabled=False
13
14 while True:
15   data = ser.readline()
16   if data:
17     #print(data)
18     if (Kisnabled==True and data):
19       print(data)
20       try:
21         toKismet=json.dumps(data.decode("utf-8").rstrip())   #was ascii
22         print("========")
23         aprs=json.loads(data.decode("utf-8").rstrip())
24         print("-------------------")
25         if (aprs['data'][0] == ";"):
26           aprs['object']=aprs['data'][1:10]
27           aprs['ztime']=aprs['data'][11:18]
28           aprs['lat']=aprs['data'][18:26]
29           aprs['long']=aprs['data'][28:36]
30
31         if (aprs['data'][0] == "!"):
32           aprs['object']=aprs['data'][20:25]
33           aprs['ztime']=""
34           aprs['lat']=aprs['data'][1:8]
35           aprs['long']=aprs['data'][10:18]
36
37         if (aprs['data'][0] == "}"):
38           tmp=aprs['data'].split(">")
39           aprs['object']=tmp[1:]
40           tmp2=tmp[1].split(":")
41           if(tmp2[1][0]=="/"):
42             aprs['ztime']=tmp[1][23:30]
43             aprs['lat']=tmp[1][30:38]
44             aprs['long']=tmp[1][40:48]
45
46         if (aprs['data'][0] == "="):
47           aprs['object']=aprs['data'][20:]
48           aprs['ztime']=""
49           aprs['lat']=aprs['data'][1:9]
50           aprs['long']=aprs['data'][10:19]
51
52         pprint.pprint(aprs)
53         print("========")
54       except:
55         print("========")
56         print("FAIL:")
57         print(data.decode("utf-8").rstrip())
58         print("========")
59     if (data==b'APRS2Kismet\r\n'):
60       Kisnabled=True
61       print("Enabling")