#!/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. """ import os import sqlite3 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 get_db_connection(): conn = sqlite3.connect('database.db') conn.row_factory = sqlite3.Row return conn def print_frame(frame): print(Frame.from_bytes(frame)) a = str(Frame.from_bytes(frame)) dir(frame) return(a) 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) ki.read(callback=print_frame, min_frames=None) conn = get_db_connection() print(ki.read(callback=print_frame, min_frames=None),) #conn.execute('INSERT INTO frames (frame) VALUES (?)', # ((,)) conn.commit() conn.close() if __name__ == "__main__": main()