freedata network listener

This commit is contained in:
DJ2LS 2022-12-05 08:47:07 +01:00
parent fa7360f1f3
commit 2de80520e1

View file

@ -0,0 +1,52 @@
#!/usr/bin/python3
# -*- coding: utf-8 -*-
"""
daemon.py
Author: DJ2LS, January 2022
daemon for providing basic information for the tnc like audio or serial devices
"""
# pylint: disable=invalid-name, line-too-long, c-extension-no-member
# pylint: disable=import-outside-toplevel
import argparse
import socket
import structlog
import queue
import json
log = structlog.get_logger("CLIENT")
# --------------------------------------------GET PARAMETER INPUTS
parser = argparse.ArgumentParser(description='Simons TEST TNC')
parser.add_argument('--port', dest="socket_port", default=3000, help="Set the port, the socket is listening on.", type=int)
args = parser.parse_args()
ip, port = "localhost", args.socket_port
connected = True
data = bytes()
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock:
sock.connect((ip, port))
while connected:
chunk = sock.recv(2)
data += chunk
if data.endswith(b'\n'):
jsondata = json.loads(data.split(b'\n')[0])
data = bytes()
if jsondata.get('command') == "tnc_state":
pass
if jsondata.get('freedata') == "tnc-message":
log.info(jsondata)