Add background KISS connection, log frames to database #20

Merged
W1CDN merged 10 commits from add-kiss into main 2023-04-16 16:45:54 -05:00
3 changed files with 43 additions and 2 deletions
Showing only changes of commit 5e86b40f38 - Show all commits

View File

@ -53,6 +53,10 @@ log_folder = config['Settings']['log_folder']
# Load logs first (just to check for errors before page loads)
data = read_logs(log_folder)
# Start subprocess to watch KISS connection
import subprocess
subprocess.Popen(["python3","kiss_and_db.py"])
api.add_resource(Packets, '/packets') # and '/locations' is our entry point for Locations
if __name__ == '__main__':

39
kiss_and_db.py Normal file
View File

@ -0,0 +1,39 @@
#!/usr/bin/env python3
"""
Send a test frame via TCP, then read & print KISS frames from a TCP Socket.
For use with programs like Dire Wolf.
From https://github.com/python-aprs/kiss3/blob/main/examples/tcp_send_recv.py
"""
import os
from ax253 import Frame
import kiss
MYCALL = os.environ.get("MYCALL", "W1CDN")
KISS_HOST = os.environ.get("KISS_HOST", "192.168.0.30")
KISS_PORT = os.environ.get("KISS_PORT", "8001")
def print_frame(frame):
print(Frame.from_bytes(frame))
def main():
ki = kiss.TCPKISS(host=KISS_HOST, port=int(KISS_PORT), strip_df_start=True)
ki.start()
# frame = Frame.ui(
# destination="PYKISS",
# source=MYCALL,
# path=["WIDE1-1"],
# info=">Hello World!",
# )
#ki.write(frame)
# Write received frame to terminal
ki.read(callback=print_frame, min_frames=None)
# put some database stuff here
if __name__ == "__main__":
main()

View File

@ -1,4 +1,2 @@
flask
flask_restful
pandas
numpy