From 944f1ce6978472c8988a580e2dcbfba17afcafeb Mon Sep 17 00:00:00 2001 From: KF7EEL Date: Tue, 29 Dec 2020 20:38:03 -0800 Subject: [PATCH] basic functioning web dashboard --- gps_data.py | 4 +- scripts/dashboard/dashboard.py | 97 ++++++++++++++++++++++++++++++++++ 2 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 scripts/dashboard/dashboard.py diff --git a/gps_data.py b/gps_data.py index 5238d1b..4d07ac8 100644 --- a/gps_data.py +++ b/gps_data.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # ############################################################################### # HBLink - Copyright (C) 2020 Cortney T. Buffington, N0MJS @@ -111,7 +111,7 @@ def decode_full(_data): binlc.extend([_data[68],_data[53],_data[174],_data[159],_data[144],_data[129],_data[114],_data[99],_data[84],_data[69],_data[54],_data[39]]) binlc.extend([_data[24],_data[145],_data[130],_data[115],_data[100],_data[85],_data[70],_data[55],_data[40],_data[25],_data[10],_data[191]]) return binlc - + n_packet_assembly = 0 diff --git a/scripts/dashboard/dashboard.py b/scripts/dashboard/dashboard.py new file mode 100644 index 0000000..b90b133 --- /dev/null +++ b/scripts/dashboard/dashboard.py @@ -0,0 +1,97 @@ +#!/usr/bin/env python +# +############################################################################### +# HBLink - Copyright (C) 2020 Cortney T. Buffington, N0MJS +# GPS/Data - Copyright (C) 2020 Eric Craw, KF7EEL +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA +############################################################################### + +''' +This is a web dashboard for the GPS/Data application. +''' + +from flask import Flask +import ast, os + +app = Flask(__name__) +dash_entries = ast.literal_eval(os.popen('cat /tmp/gps_data_user_loc.txt').read()) +#dash_bb = ast.literal_eval(os.popen('cat /tmp/gps_data_user_bb.txt').read()) + +def get_data(): + dash_loc = ast.literal_eval(os.popen('cat /tmp/gps_data_user_loc.txt').read()) + dash_bb = ast.literal_eval(os.popen('cat /tmp/gps_data_user_bb.txt').read()) + tmp_bb = '' + tmp_loc = '' + tbl_hdr = ''' + +''' + tbl_ftr = ''' + +
+''' + bb_hdr = ''' + + +

 Callsign 

+ + +

 DMR ID 

+ + +

 Bulletin 

+ + +

 Local Time 

+ + +''' + loc_hdr = ''' + + +

 Callsign 

+ + +

 Latitude 

+ + +

 Longitude 

+ + +

 Local Time 

+ + +''' + + for e in dash_bb: + tmp_bb = tmp_bb + ''' + ''' + e['call'] + '''  +''' + str(e['dmr_id']) + ''' + ''' + e['bulliten'] + '''  + ''' + e['time'] + '''  +''' + for e in dash_loc: + tmp_loc = tmp_loc + ''' + ''' + e['call'] + '''  + ''' + str(e['lat']) + '''  + ''' + str(e['lon']) + '''  + ''' + e['time'] + '''  +''' + return str('

Bulletin Board

' + tbl_hdr + bb_hdr + tmp_bb + tbl_ftr + str('

Positions Received

') + tbl_hdr + loc_hdr + tmp_loc + tbl_ftr) + +@app.route('/') +def dash(): + #return 'Hello, World!' + return get_data()