From 02815f138d5028625460719cb2d8fd94ffba943c Mon Sep 17 00:00:00 2001 From: arcg Date: Thu, 2 Jun 2022 17:46:44 +0200 Subject: [PATCH] initial commit --- grafics/openwebtx.png | Bin 0 -> 183668 bytes htdocs/index.html | 13 + htdocs/owt.css | 44 +++ htdocs/owt.js | 207 ++++++++++++++ tx.py | 635 ++++++++++++++++++++++++++++++++++++++++++ 5 files changed, 899 insertions(+) create mode 100755 grafics/openwebtx.png create mode 100644 htdocs/index.html create mode 100644 htdocs/owt.css create mode 100644 htdocs/owt.js create mode 100644 tx.py diff --git a/grafics/openwebtx.png b/grafics/openwebtx.png new file mode 100755 index 0000000000000000000000000000000000000000..12fbddcb560ad7981485d3e293b4843b808c3b72 GIT binary patch literal 183668 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%0DJBF2n~4xfVbt8dar9T) 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 M^e*U@qR + + + + + + + + +
connect TX
+
+ + diff --git a/htdocs/owt.css b/htdocs/owt.css new file mode 100644 index 0000000..06dba89 --- /dev/null +++ b/htdocs/owt.css @@ -0,0 +1,44 @@ +#owt_head +{ + display: inline-block; + padding: 0px; + vertical-align: top; + margin-top: 20px; +} +#owt_head a +{ + font-size: 11px; + text-decoration: underline; + color: #ccccff; +} +#owt_pids +{ + width: 200px; +} +.owt_pid +{ + width: calc(10% - 10px); + height: 5px; + display: inline-block; + margin-right: 1px; + background-color: #e6e7e8; +} +#owt_button +{ + display: inline-block +} +#owt_ptt +{ + background: #ff0000; +} +@media only screen and (max-height: 400px) { + #owt_head + { + margin-top: 3px !important; + } + #owt_ptt + { + margin-right: 20px; + margin-left: 10px; + } +} diff --git a/htdocs/owt.js b/htdocs/owt.js new file mode 100644 index 0000000..973f320 --- /dev/null +++ b/htdocs/owt.js @@ -0,0 +1,207 @@ +var owt_protocol = 'ws://'; +if(window.location.toString().indexOf('https://') == 0){ + owt_protocol = 'wss://'; +} +owt_url1=owt_protocol+window.location.href.split("://")[1] +owt_lastslash = owt_url1.lastIndexOf('/'); +owt_firstslash= owt_url1.indexOf('/',6); +owt_url2=owt_url1.substr(0,owt_firstslash) +//owt_url2=owt_url1.substr(0,owt_lastslash) +owt_ws_url=owt_url2+"/tx/ws/"; +owt_button_orig="" +var owt_webSocket; +var owt_mediaRecorder +function owt_start_ws(start_audio) { + owt_webSocket = new WebSocket(owt_ws_url); + owt_webSocket.binaryType = 'blob'; + + owt_webSocket.onmessage= function (event) { + console.log('Message from server ', event.data); + owt_make_msg(event.data); + } + owt_webSocket.onclose =function (event) { + console.log('ws closed :(', event.data); + owt_make_button_orig(); + owt_make_msg('TX connection closed!'); + owt_destroy_ws() + } + if(start_audio) { + //owt_webSocket.onopen =owt_start_audio(); + if (MediaRecorder.isTypeSupported('audio/ogg;codecs=opus')) { + mimeType="audio/ogg;codecs=opus"; + } else { + mimeType="audio/webm;codecs=opus"; + } + + //function owt_start_audio(){ + owt_webSocket.onopen = event => { + console.log("[open] Audio Node-RED websocket connection established"); + navigator.mediaDevices + .getUserMedia({ audio: true, video: false, channelCount: 1, sampleRate: 12000, sampleSize: 16 }) + .then(stream => { + owt_mediaRecorder = new MediaRecorder(stream, { + //audioBitsPerSecond : 128000, + audioBitsPerSecond : 64000, + //mimeType: 'audio/webm;codecs=opus', + //mimeType: 'audio/ogg;codecs=opus', + mimeType: mimeType, + }); + owt_mediaRecorder.addEventListener('dataavailable', event => { + if (event.data.size > 0) { + //console.log(event.data.length) + owt_webSocket.send(event.data); + } + }); + owt_mediaRecorder.start(100); + }); + } + } +} +function owt_stop_ws() { + track=owt_mediaRecorder.stream.getAudioTracks() + track.forEach(function(track) { track.stop(); }); + + owt_webSocket.close() + owt_make_button_orig() +} +function owt_destroy_ws() { + if (typeof owt_mediaRecorder === "object" ) { + a=owt_mediaRecorder.stream.getAudioTracks(); + owt_mediaRecorder.stream.removeTrack(a[0]); + owt_mediaRecorder.removeEventListener('dataavilable',Element) + owt_mediaRecorder.stop() + owt_mediaRecorder=0 + console.log("audio destroyed") + } + owt_webSocket=0; + console.log("ws destroyed") +} +function owt_make_button_running() { + //PTT button, close link + document.getElementById('owt_button').innerHTML="
PTT
disconnect" +} +function owt_make_button_orig() { + //connect button from variable + document.getElementById('owt_button').innerHTML=owt_button_orig +} +function owt_make_msg(data) { +//if data contains config:, status: => ignore +//else if containts msg: => split and print + document.getElementById('owt_msg').innerHTML="" +//else print +} +function owt_start() { + //owt_vumeter() + owt_button_orig= document.getElementById('owt_button').innerHTML + owt_start_ws(1); + //owt_start_audio(); + owt_make_button_running(); +} + +function owt_ptt_on() { + mute=false; + toggleMute(); + owt_webSocket.send("SET:PTT=1") + document.getElementById('owt_ptt').style.background="#fff" + document.getElementById('owt_ptt').style.color="#f00" +} +function owt_ptt_off() { + mute=true; + toggleMute(); + owt_webSocket.send("SET:PTT=0") + document.getElementById('owt_ptt').style.background="#f00" + document.getElementById('owt_ptt').style.color="#fff" +} +//keypress +//keydown +//keyup +//left 37 +//right 39 +//up 38 +//down 40 +document.addEventListener('keydown', function(e) { + var keynum = e.keyCode || e.which; + console.log(keynum) + if(keynum == 32) { + owt_ptt_on() + } +}); +document.addEventListener('keyup', function(e) { + var keynum = e.keyCode || e.which; + console.log("up"+keynum) + if(keynum == 32) { + owt_ptt_off() + } +}); +document.addEventListener('keypress', function(e) { + var keynum = e.keyCode || e.which; + console.log("press"+keynum) +// if(keynum == 32) { +// owt_ptt_off() +// } +}); + +//https://stackoverflow.com/questions/33322681/checking-microphone-volume-in-javascript +function owt_vumeter() { + document.getElementById('owt_pids').innerHTML=` +
+
+
+
+
+
`; + + navigator.mediaDevices.getUserMedia({ + audio: true, + video: false, + }) + .then(function(stream) { + const audioContext = new AudioContext(); + const analyser = audioContext.createAnalyser(); + const microphone = audioContext.createMediaStreamSource(stream); + const scriptProcessor = audioContext.createScriptProcessor(2048, 1, 1); + analyser.smoothingTimeConstant = 0.8; + analyser.fftSize = 1024; + + microphone.connect(analyser); + analyser.connect(scriptProcessor); + scriptProcessor.connect(audioContext.destination); + scriptProcessor.onaudioprocess = function() { + const array = new Uint8Array(analyser.frequencyBinCount); + analyser.getByteFrequencyData(array); + const arraySum = array.reduce((a, value) => a + value, 0); + const average = arraySum / array.length; + //console.log(Math.round(average)); + owt_colorPids(average); + }; + }) + .catch(function(err) { + /* handle the error */ + console.error(err); + }); +} +function owt_colorPids(vol) { + //console.log('vu'+vol); + const allPids = [...document.querySelectorAll('.owt_pid')]; + const numberOfPidsToColor = Math.round(vol / 20); + const pidsToColor = allPids.slice(0, numberOfPidsToColor); + for (const pid of allPids) { + pid.style.backgroundColor = "#e6e7e8"; + } + for (const pid of pidsToColor) { + //console.log(pid[i]); + pid.style.backgroundColor = "#00ce00"; + } +} + + + +//TODO +// //on websocket rx +// display MSG (on air, problem [rigctl, high-swr, other user took over], ....) +// on websocket close => display msg +// fkt: +// display msg +// get parameters from ws-rx and update gui if gui present +// send parameters from gui to ws (relay shift, ctcss, power, external IO) + diff --git a/tx.py b/tx.py new file mode 100644 index 0000000..280ba9a --- /dev/null +++ b/tx.py @@ -0,0 +1,635 @@ +#!/usr/bin/python3 +""" + + This file is part of OpenWeb-TX (owt), + an open-source web transceiver software with a web UI. + Copyright (c) 2013-2015 by Andras Retzler + Copyright (c) 2022 by LSP/ARCG + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero 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 Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + + + +https://gist.github.com/artizirk/04eb23d957d7916c01ca632bb27d5436 +https://websockets.readthedocs.io/en/stable/index.html +https://stackoverflow.com/questions/53689602/python-3-websockets-server-http-server-run-forever-serve-forever + + +TODO: + script for putting webrx into dummy mode if 1h without openwebrx +""" +import code +import importlib +import _thread +import time +import datetime +import subprocess +import os +from socketserver import ThreadingMixIn +import fcntl +import random +import threading +import sys +import traceback +from collections import namedtuple + +import ctypes +import multiprocessing +import psutil + +import signal +import socket +from functools import reduce + +#httpnew 202201 +import asyncio +import functools +import websockets +from http import HTTPStatus + +#pypy compatibility +try: import dl +except: pass +try: import __pypy__ +except: pass +pypy="__pypy__" in globals() + + +config_web_port=8074 +config_audio_fifo="test_fifo" +#config_audio_out_cmd= "opusdec --force-wav - - | aplay -D hw:1,0 -" +#config_audio_out_cmd= "ffmpeg -y -i - -ac 2 -f alsa hw:1,0" +config_audio_out_cmd= "ffmpeg -y -re -flags low_delay -thread_queue_size 1024 -i - -ac 2 -f alsa hw:1,0" +#config_audio_out_cmd= "ffmpeg -y -i - -ac 2 -f pulse '0'" +#config_audio_out_cmd= "ffmpeg -y -i - -filter_complex \"[0:a][0:a]amerge=inputs=2[a]\" -map \"[a]\" -c 2 -f alsa hw:1,0" + #"ffmpeg -y -i - -ac 1 -f wav - | paplay --latency-msec 1" + #https://stackoverflow.com/questions/66843134/windows-ffmpeg-send-audio-to-sound-cards-output ffplay? + #"mpv -" + #"ffmpeg -y -ac 1 -i - -f wav - | paplay --latency-msec 1" + #"cat /dev/stdin >> test2.opus" + #ffmpeg -loglevel debug -y -ac 1 -i test2.opus -f wav - | paplay + #"cat "+config_audio_fifo+" | " + #cmd decoding audio + playback on system + #signal-chain gets input from stdin +config_rig={} +config_rig['interface']= "/dev/ttyUSB0" #serial Port of CAT interface of TRX +config_rig['baud']= 9600 #baud rate of serial port +config_rig['mod_fm']= "FM 0" #modulation set for FM-TX +config_rig['mod_lsb']= "LSB 0" #modulation set for LSB-TX +config_rig['mod_usb']= "USB 0" #modulation set for USB-TX +#config_rig['rigctl_cmd']= "rigctld -m 1022 -s 9600 -r /dev/ttyUSB0 -P RTS -t 4532" #FT857 +config_rig['rigctl_cmd']= "rigctld -m 1023 -s 9600 -r /dev/ttyUSB0 -P RTS -t 4532" #FT897 +#config_rig['rigctl_cmd']= "rigctld -m 1023 -s 9600 -r /dev/ttyUSB0 -P RTS -t 4532" #FT817 + #"rigctld -m 120 -s 9600 -r /dev/ttyACM0 --dcd-type=NONE -P RTS" #FT817 + #command to start rigctl software + # rigctl -l lists TRX list für '-m' + +config_cmd={} +config_cmd['TX']= "/home/pi/rf-route.sh tx" #cmd executed on TX /PTT-ON +config_cmd['RX']= "/home/pi/rf-route.sh rx" #cmd executed on RX /PTT-OFF +#config_cmd['TX_PWR_ON']= "echo 'on'" #cmd executed on Session start /TX-Power-ON +config_cmd['TX_PWR_ON']= "/home/pi/rf-route.sh on" #cmd executed on Session start /TX-Power-ON +#config_cmd['TX_PWR_OFF']= "echo 'off'" #cmd executed on Session start /TX-Power-OFF +config_cmd['TX_PWR_OFF']= "/home/pi/rf-route.sh off" #cmd executed on Session start /TX-Power-OFF + + + + +global openwebrx +openwebrx={} # init for parameter handling +openwebrx['modulation']= "nfm" +global session_sempathor +session_semaphor= 0 + + +def handle_signal_to_del(sig, frame): + global spectrum_dsp + if sig == signal.SIGUSR1: + print("[openwebrx] Verbose status information on USR1 signal") + print() + print("time.time() =", time.time()) + print("clients_mutex.locked() =", clients_mutex.locked()) + print("clients_mutex_locker =", clients_mutex_locker) + if server_fail: print("server_fail = ", server_fail) + print("spectrum_thread_watchdog_last_tick =", spectrum_thread_watchdog_last_tick) + print() + print("clients:",len(clients)) + for client in clients: + print() + for key in client._fields: + print("\t%s = %s"%(key,str(getattr(client,key)))) + elif sig == signal.SIGUSR2: + code.interact(local=globals()) + else: + print("[openwebrx] Ctrl+C: aborting.") + cleanup_clients(True) + spectrum_dsp.stop() + os._exit(1) #not too graceful exit + +## function start_openwebrx +# +# function for openwebrx thread, starts openwebrx +# reads stdin from stdout of openwebrx for frequency and modulation +def start_openwebrx(): + global openwebrx + p = subprocess.Popen(['python3 -u openwebrx.py 2>&1 '], + stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, + bufsize=0, + shell=True, + stdin=None, + universal_newlines=True, + cwd="../") + modb="" + print("startopenwebrx") + for line in iter(p.stdout.readline, b''): + # Sampling at 2400000 S/s. + # Tuned to 144250000 Hz. + # [openwebrx-httpd:ws,1] command: SET mod=nfm low_cut=-4000 high_cut=4000 offset_freq=0 + # csdr_s shift_addition_cc: reinitialized to 0.128407 + # csdr_s bandpass_fir_fft_cc: filter initialized, low_cut = -0.24875, high_cut = -0.00704792 + + if "sampling_rate:" in line: + sampl= line.split("sampling_rate:",1)[1] + sampl= int(sampl) + openwebrx['samplerate']=sampl + print ("S:"+str(sampl)) + + elif "center_freq:" in line: + freq_cent= line.split("center_freq:",1)[1] + freq_cent= int(freq_cent) + openwebrx['centerfreq']=freq_cent + print ("T:"+str(freq_cent)) + + elif "SET mod=" in line: + moda= line.split("SET mod=",1)[1] + modb= moda.split(" ")[0] + print ("M:"+modb) + + elif "csdr_s shift_addition_cc: reinitialized to" in line: + offset= float(line.split("cc: reinitialized to",1)[1]) + openwebrx['offset']=offset + print ("s:"+str(offset) ) + + if modb == "ssb": + if "csdr_s bandpass_fir_fft_cc: filter initialized," in line: + low_cuta= line.split("low_cut = ",1)[1] + low_cut= low_cuta.split(",",1)[0] + high_cut= line.split("high_cut = ",1)[1] + #print("low_cut"+low_cut) + #print("high_cut"+high_cut) + low=abs(float(low_cut)) + high=abs(float(high_cut)) + if (low > high): + mod="lsb" + print("lsb") + else: + mod="usb" + print("usb") + openwebrx['modulation']=mod + else: + openwebrx['modulation']=modb + +## function asyncWorker +# +# loop to handle anything for tx operation that might consume time and thereby +# delay audio samples, +# quick and dirty communication over global variables "aw_*" +def asyncWorker(): + global process_audio, process_rigctl, rigctl_thread, socket_rigctl + global aw_trx_on, aw_trx_off, aw_rx, aw_tx, aw_ptt_on, aw_ptt_off + #global vars, tcp client, rigctl server + #start and end rigctl + #connect tcp client to rigtctl + #on / off tx + #rx / tx switch + #anything else that needs time + aw_trx_on= 0 + aw_trx_off= 0 + aw_rx= 0 + aw_tx= 0 + aw_ptt_on= 0 + aw_ptt_off= 0 + while True: + a=0 + #if tx schould be switched on + # wait x start rigctl + if aw_trx_on: + aw_trx_on= 0 + print("AW: trx on") + try: + process_txpwr = subprocess.Popen((config_cmd['TX_PWR_ON']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + except: + pass + #### BEGIN RIGCTL ##### + try: + process_rigctl = subprocess.Popen([config_rig['rigctl_cmd']], stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + except: + pass + time.sleep(1.2) + try: + rigctl_pid= process_rigctl.pid + rigctl_thread=psutil.Process(rigctl_pid) + time.sleep(1.8) + print("rigctl started") + socket_rigctl = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + server_address = ('127.0.0.1', 4532) + print('rigctld connecting to {} port {}'.format(*server_address)) + socket_rigctl.connect(server_address) + socket_rigctl.sendall(b'M LSB 0\n\n') + print("AW: trx on") + except: + pass + #if tx off, take care of rigctl + #end tcp client + if aw_trx_off: + aw_trx_off= 0 + try: + socket_rigctl.sendall(("T 0\n").encode()) + time.sleep(1) + socket_rigctl.close() + except: + pass + if rigctl_thread.is_running(): + children=rigctl_thread.children(recursive=True) + for child in children: + try: + child.kill() + except: + pass + process_txpwr = subprocess.Popen((config_cmd['TX_PWR_OFF']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + print("AW: trx off") + + #set tx, relais, + if aw_tx: + aw_tx= 0 + process_tx = subprocess.Popen((config_cmd['TX']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + print("AW: relais to TRX") + + + #set rx, relais + if aw_rx: + aw_rx= 0 + process_tx = subprocess.Popen((config_cmd['RX']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + print("AW: relais to SDR") + + #set ptt on, relais, rigctl + if aw_ptt_on: + aw_ptt_on= 0 + process_tx = subprocess.Popen((config_cmd['TX']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + time.sleep(0.27) + socket_rigctl.sendall(("T 1\n").encode()) + print("AW: ptt on") + + #set ptt of, rigctl, relais + if aw_ptt_off: + aw_ptt_off=0 + socket_rigctl.sendall(("T 0\n").encode()) + time.sleep(0.15) + process_tx = subprocess.Popen((config_cmd['RX']), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + print("AW: ptt off") + + + #if relais only, to it + time.sleep(0.01) + + + +receiver_failed=spectrum_thread_watchdog_last_tick=rtl_thread=spectrum_dsp=server_fail=None + +## function main +# +# main function, everything gets started here +# openwebrx +# asynchron worker +# webserver +# websocket +def main(): + global process_audio + #global clients, clients_mutex, pypy, lock_try_time, avatar_ctime, cfg, logs + #global serverfail, rtl_thread, spectrum_thread, ws_kill, sdr_selected, spectrum_kill + + #Change process name to "openwebrx" (to be seen in ps) + try: + for libcpath in ["/lib/i386-linux-gnu/libc.so.6","/lib/libc.so.6"]: + if os.path.exists(libcpath): + libc = dl.open(libcpath) + libc.call("prctl", 15, "openwebrx-tx", 0, 0, 0) + break + except: + pass + + #check for external programs #todo, add rigctld, ffmpeg, ... + if os.system("csdr_s 2> /dev/null") == 32512: #check for csdr + print("[openwebrx-main] You need to install \"csdr_s\" to run OpenWebRX!\n") + return + if os.system("nmux_s --help 2> /dev/null") == 32512: #check for nmux + print("[openwebrx-main] You need to install an up-to-date version of \"csdr\" that contains the \"nmux\" tool to run OpenWebRX! Please upgrade \"csdr\"!\n") + return + #if start_sdr() == False: #moved out for interactive sdr change + # return + + #Initialize clients + clients=[] + + #threading.Thread(target = measure_thread_function, args = ()).start() + + #### BEGIN OPENWEBRX #### + thread_openwebrx = threading.Thread(target = start_openwebrx, args= ()).start() + #### END OPENWEBRX #### + + #### BEGIN AsynWorker #### + thread_asyncWorker = threading.Thread(target = asyncWorker, args= ()).start() + #### END AsyncWorker #### + + + ####Start HTTP and WS #### + # set first argument for the handler to current working directory + handler = functools.partial(process_request, os.getcwd()) + start_server = websockets.serve(ws_process, "0.0.0.0", config_web_port, + process_request=handler) + print("Running server at http://127.0.0.1 port:"+str(config_web_port)) + + asyncio.get_event_loop().run_until_complete(start_server) + try: + print("running") + asyncio.get_event_loop().run_forever() + except KeyboardInterrupt: + print("server crashed") + + +def send_302_to_del(self,what): + self.send_response(302) + self.send_header('Content-type','text/html') + self.send_header("Location", "{0}".format(what)) + self.end_headers() + mime='text/html' + data="

Object moved

Please click here to continue.".format(what) + + response_headers = [ + ('Server', 'asyncio websocket server'), + ('Connection', 'close'), + ] + + response_headers.append(('Content-Type', mime)) + response_headers.append(("Location", "{0}".format(what))) + + # Read the whole file into memory and send it out + #body = open(full_path, 'rb').read() + response_headers.append(('Content-Length', str(len(data)))) + return HTTPStatus.FOUND, response_headers, data + + + #def do_GET(self): + +## function freq_shift +# +# decides if frequency shift for repeater operation is needed +# returns new frequency +def freq_shift(f,mod): + if (mod == "fm"): + #10m -100e3 + if (f >= 29620e3 and f<29690e3): + f=f-100e3 + return f + + #6m -600e3 + if (f >= 51810e3 and f<51990e3): + f=f-600e3 + return f + + #2m -600e3 + if (f >= 145500e3 and f<146000e3): + f=f-600e3 + return f + + #70cmi -7.6e6 + if (f >= 438,6375e6 and f<439.6e6): + f=f-7.6e6 + return f + #439.8..400 is 9.4 + + #23cm -28e6 + if (f >= 1298.025e6 and f<1298.975e6): + f=f-28e6 + return f + else: + return f + +## function write_data +# +# sends http response for http server +def write_data(path,mime_type,data): #makes http header and content + #data=data.encode() + response_headers = [ + ('Server', 'asyncio websocket server'), + ('Connection', 'close'), + ] + + response_headers.append(('Content-Type', mime_type)) + + response_headers.append(('Content-Length', str(len(data)))) + return HTTPStatus.OK, response_headers, data + +## function ws_process +# +# handles http Websocket requests +# main task compressed audio => stdout, must not be delayed! +async def ws_process(websocket, path): + global dsp_plugin, clients_mutex, clients, avatar_ctime, sw_version, receiver_failed, ws_kill, sdr_selected, process_rigctl + global session_semaphor + global aw_trx_on, aw_trx_off, aw_rx, aw_tx, aw_ptt_on, aw_ptt_off + + global process_audio, rigctl_thread, socket_rigctl, openwebrx + print("New WebSocket connection from", websocket.remote_address) + + path=path.replace("..","") + path_temp_parts=path.split("?") + path=path_temp_parts[0] + client_address= websocket.remote_address[0] + session_is_mine= 0 #1 if this is the active session + try: + if path[:4]=="/ws/": + loopstat=0 + print("[openwebrx-ws] Client requested WebSocket connection") + try: + #check if rigctl is still running, othervise return + #TODO send error ws-msg to client + if session_semaphor == 0 and path[:4]=="/ws/": + session_semaphor= 1 + session_is_mine= 1 + #elif path[:4] != "/wc/": + # return + if session_is_mine : + process_audio = subprocess.Popen((config_audio_out_cmd), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + + print("process_audio started") + #switch tx power on + aw_trx_on= 1 + else: + print("WS wrong session, semaphor!") + raise ValueError('WS wrong session, semphor!') + #send default parameters + #startstr=("MSG center_freq={0} bandwidth={1} fft_size={2} fft_fps={3} audio_compression={4} fft_compression={5} max_clients={6} sdr={7} setup".format(str(cfg.shown_center_freq[sdr_selected]),str(cfg.samp_rate[sdr_selected]),cfg.fft_size,cfg.fft_fps,cfg.audio_compression,cfg.fft_compression,cfg.max_clients,sdr_selected)).encode() + + while True: + + try: + rdata= await asyncio.wait_for(websocket.recv(), timeout=0.01) + except asyncio.TimeoutError: + rdata = 0 + + if (rdata != 0): + + if rdata[:3]=="SET": + print(rdata) + pairs=rdata[4:].split(" ") + for pair in pairs: + param_name, param_value = pair.split("=") + if param_name == "PTT" and session_is_mine: + if process_rigctl.poll() : + print("no rigctl!") + raise ValueError('No rigctl!') + return + + print("WS start pttW") + freq= float(openwebrx['centerfreq'])-float(openwebrx['samplerate'])*float(openwebrx['offset']) + mod="" + if (openwebrx['modulation'] == "nfm"): + mod= config_rig['mod_fm'] + elif (openwebrx['modulation'] == "lsb"): + mod= config_rig['mod_lsb'] + elif (openwebrx['modulation'] == "usb"): + mod= config_rig['mod_usb'] + if (mod != ""): #if modulation valid + print("F "+str(freq)) + print("center "+str(openwebrx['centerfreq'])) + print("samp "+str(openwebrx['samplerate'])) + print("offset "+str(openwebrx['offset'])) + #TODO + if (int(param_value)): + freq=freq_shift(freq,mod) + socket_rigctl.sendall(("F "+str(freq)+"\n").encode()) + socket_rigctl.sendall(("M "+mod+"\n").encode()) + aw_ptt_on= 1 + else: + aw_ptt_off=1 + else: + error_msg="modulation not valid for TX" + print(error_msg) + elif param_name == "low_cut" and -filter_limit <= int(param_value) <= filter_limit: + a=3 + #TODO + # repater shift, enable/disable + # power + else: + print("[openwebrx-httpd:ws] invalid parameter") + else: + process_audio.stdin.write(rdata) + + except: + if session_is_mine: + process_audio.stdin.close() + process_audio.send_signal(signal.SIGINT) + aw_trx_off= 1 + session_semaphor= 0 + process_audio = subprocess.Popen(("killall -9 ffmpeg"), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + + exc_type, exc_value, exc_traceback = sys.exc_info() + print("[openwebrx-httpd:ws] exception: ",exc_type,exc_value) + traceback.print_tb(exc_traceback) #TODO digimodes + if exc_value[0]==32: #"broken pipe", client disconnected + print("broken ws, client disconnected") + elif exc_value[0]==11: #"resource unavailable" on recv, client disconnected + print("resource unavailable on recv") + else: + print ("[openwebrx-httpd] error in /ws/ handler: ",exc_type,exc_value) + + try: + print("do_GET /ws/ delete disconnected") + if session_is_mine: + process_audio.stdin.close() + process_audio.send_signal(signal.SIGINT) + aw_trx_off= 1 + session_semaphor= 0 + process_audio = subprocess.Popen(("killall -9 ffmpeg"), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + + exc_type, exc_value, exc_traceback = sys.exc_info() + except: + exc_type, exc_value, exc_traceback = sys.exc_info() + print("[openwebrx-httpd:ws] client cannot be closed: ",exc_type,exc_value) + traceback.print_tb(exc_traceback) + finally: + cmr() + return + except: + print("[openwebrx-httpd:ws] error (@outside)") + if session_is_mine: + process_audio.stdin.close() + process_audio.send_signal(signal.SIGINT) + aw_trx_off= 1 + session_semaphor= 0 + process_audio = subprocess.Popen(("killall -9 ffmpeg"), stdout=subprocess.PIPE, stdin=subprocess.PIPE, shell=True ) + + return + + +## function process request +# +# handles http GET requests +async def process_request(sever_root, path, request_headers): + global dsp_plugin, clients_mutex, clients, avatar_ctime, sw_version, receiver_failed + if "Upgrade" in request_headers: + return # Probably a WebSocket connection + #return write_data(path,'text/html','bla') + rootdir = 'htdocs' + mime_type= 'text/html' + path=path.replace("..","") + path_temp_parts=path.split("?") + path=path_temp_parts[0] + user_agent= request_headers._list[1][1] # 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:95.0) Gecko/20100101 Firefox/95.0' + client_address=request_headers._list[0][1] #'127.0.0.1:8073' + request_param=path_temp_parts[1] if(len(path_temp_parts)>1) else "" + try: + if path=="/" or path=="": + path="/index.html" + # there's even another cool tip at http://stackoverflow.com/questions/4419650/how-to-implement-timeout-in-basehttpserver-basehttprequesthandler-python + + else: + f=open(rootdir+path, "rb") + data=f.read() + extension=path[(len(path)-4):len(path)] + extension=extension[2:] if extension[1]=='.' else extension[1:] + if(("wrx","html","htm","html").count(extension)): + mime_type= 'text/html' + elif(extension=="js"): + mime_type= 'text/javascript' + elif(extension=="css"): + mime_type= 'text/css' + f.close() + return write_data(path,mime_type,data) + + return + except IOError: + #self.send_error(404, 'Invalid path.') + return HTTPStatus.NOT_FOUND, [], b'404 NOT FOUND' + + except: + exc_type, exc_value, exc_traceback = sys.exc_info() + print("[openwebrx-httpd] error (@outside):", exc_type, exc_value) + traceback.print_tb(exc_traceback) + +if __name__=="__main__": + main() +