diff --git a/.github/workflows/build_appimage_bundle.yml b/.github/workflows/build_appimage_bundle.yml index 25cf09e0..8c14ab33 100644 --- a/.github/workflows/build_appimage_bundle.yml +++ b/.github/workflows/build_appimage_bundle.yml @@ -33,7 +33,7 @@ jobs: pip install -r requirements.txt - name: Build binaries - working-directory: modem + working-directory: freedata-server run: | python3 -m nuitka --remove-output --assume-yes-for-downloads --follow-imports --include-data-dir=lib=lib --include-data-files=lib/codec2/*=lib/codec2/ --include-data-files=config.ini.example=config.ini --standalone server.py --output-filename=freedata-server diff --git a/.github/workflows/build_nsis_bundle.yml b/.github/workflows/build_nsis_bundle.yml index 70409896..758bd501 100644 --- a/.github/workflows/build_nsis_bundle.yml +++ b/.github/workflows/build_nsis_bundle.yml @@ -34,10 +34,10 @@ jobs: fileName: " hamlib-w64-*.zip" latest: true extract: true - out-file-path: "modem/lib/hamlib/" + out-file-path: "freedata-server/lib/hamlib/" - name: Build binaries - working-directory: modem + working-directory: freedata-server run: | python3 -m nuitka --remove-output --assume-yes-for-downloads --follow-imports --include-data-dir=lib=lib --include-data-files=lib/codec2/*=lib/codec2/ --include-data-files=config.ini.example=config.ini --standalone server.py --output-filename=freedata-server diff --git a/.github/workflows/build_server.yml b/.github/workflows/build_server.yml index 9b122edd..76933abe 100644 --- a/.github/workflows/build_server.yml +++ b/.github/workflows/build_server.yml @@ -62,26 +62,26 @@ jobs: CERTIFICATE_PASSWORD: ${{ secrets.CERTIFICATE_PASSWORD }} - name: Build binaries - working-directory: modem + working-directory: freedata-server run: | python3 -m nuitka --remove-output --assume-yes-for-downloads --follow-imports --include-data-dir=lib=lib --include-data-files=lib/codec2/*=lib/codec2/ --include-data-files=config.ini.example=config.ini --standalone server.py --output-filename=freedata-server #- name: Download Portaudio binaries Linux macOS # if: ${{!startsWith(matrix.os, 'windows')}} - # working-directory: modem + # working-directory: freedata-server # run: | - # if ! test -d "server.dist/modem/_sounddevice_data"; then - # git clone https://github.com/spatialaudio/portaudio-binaries dist/modem/_sounddevice_data/portaudio-binaries + # if ! test -d "server.dist/freedata-server/_sounddevice_data"; then + # git clone https://github.com/spatialaudio/portaudio-binaries dist/freedata-server/_sounddevice_data/portaudio-binaries # fi #- name: Download Portaudio binaries Windows # if: ${{startsWith(matrix.os, 'windows')}} - # working-directory: modem + # working-directory: freedata-server # run: | - # if(Test-Path -Path "server.dist/modem/_sounddevice_data"){ + # if(Test-Path -Path "server.dist/freedata-server/_sounddevice_data"){ # echo "sounddevice folder already exists" # } else { - # git clone https://github.com/spatialaudio/portaudio-binaries dist/modem/_sounddevice_data/portaudio-binaries + # git clone https://github.com/spatialaudio/portaudio-binaries dist/freedata-server/_sounddevice_data/portaudio-binaries # } - name: LIST ALL FILES @@ -99,7 +99,7 @@ jobs: with: type: 'zip' filename: '${{ matrix.zip_name }}.zip' - directory: ./modem/server.dist + directory: ./freedata-server/server.dist path: . # exclusions: '*.git* /*node_modules/* .editorconfig' @@ -110,14 +110,14 @@ jobs: uses: actions/upload-artifact@v4 with: name: '${{ matrix.zip_name }}' - path: ./modem/server.dist/${{ matrix.zip_name }}.zip + path: ./freedata-server/server.dist/${{ matrix.zip_name }}.zip - name: Release Modem uses: softprops/action-gh-release@v2 if: startsWith(github.ref, 'refs/tags/v') with: draft: true - files: ./modem/server.dist/${{ matrix.zip_name }}.zip + files: ./freedata-server/server.dist/${{ matrix.zip_name }}.zip - name: LIST ALL FILES run: ls -R diff --git a/.gitignore b/.gitignore index 1dd7a4ff..297ee2c3 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ -# possible installation of codec2 within modem -modem/codec2 +# possible installation of codec2 within freedata-server +freedata-server/codec2 # temporary test artifacts **/build diff --git a/modem/.gitignore b/freedata-server/.gitignore similarity index 100% rename from modem/.gitignore rename to freedata-server/.gitignore diff --git a/modem/__init__.py b/freedata-server/__init__.py similarity index 100% rename from modem/__init__.py rename to freedata-server/__init__.py diff --git a/modem/api_validations.py b/freedata-server/api_validations.py similarity index 100% rename from modem/api_validations.py rename to freedata-server/api_validations.py diff --git a/modem/arq_data_type_handler.py b/freedata-server/arq_data_type_handler.py similarity index 100% rename from modem/arq_data_type_handler.py rename to freedata-server/arq_data_type_handler.py diff --git a/modem/arq_session.py b/freedata-server/arq_session.py similarity index 99% rename from modem/arq_session.py rename to freedata-server/arq_session.py index cf203840..fafc85b6 100644 --- a/modem/arq_session.py +++ b/freedata-server/arq_session.py @@ -49,7 +49,7 @@ class ARQSession: self.config = config self.event_manager: EventManager = modem.event_manager - #self.states = modem.states + #self.states = freedata-server.states self.states = state_manager self.states.setARQ(True) diff --git a/modem/arq_session_irs.py b/freedata-server/arq_session_irs.py similarity index 100% rename from modem/arq_session_irs.py rename to freedata-server/arq_session_irs.py diff --git a/modem/arq_session_iss.py b/freedata-server/arq_session_iss.py similarity index 100% rename from modem/arq_session_iss.py rename to freedata-server/arq_session_iss.py diff --git a/modem/audio.py b/freedata-server/audio.py similarity index 100% rename from modem/audio.py rename to freedata-server/audio.py diff --git a/modem/codec2.py b/freedata-server/codec2.py similarity index 99% rename from modem/codec2.py rename to freedata-server/codec2.py index c65f0bf0..4c732e6d 100644 --- a/modem/codec2.py +++ b/freedata-server/codec2.py @@ -419,7 +419,7 @@ class OFDM_CONFIG(ctypes.Structure): ("timing_mx_thresh", ctypes.c_float), # Threshold for timing metrics ("nc", ctypes.c_int), # Number of carriers ("ns", ctypes.c_int), # Number of Symbol frames - ("np", ctypes.c_int), # Number of modem frames per packet + ("np", ctypes.c_int), # Number of freedata-server frames per packet ("bps", ctypes.c_int), # Bits per Symbol ("txtbits", ctypes.c_int), # Number of auxiliary data bits ("nuwbits", ctypes.c_int), # Number of unique word bits diff --git a/modem/command.py b/freedata-server/command.py similarity index 100% rename from modem/command.py rename to freedata-server/command.py diff --git a/modem/command_arq_raw.py b/freedata-server/command_arq_raw.py similarity index 100% rename from modem/command_arq_raw.py rename to freedata-server/command_arq_raw.py diff --git a/modem/command_beacon.py b/freedata-server/command_beacon.py similarity index 70% rename from modem/command_beacon.py rename to freedata-server/command_beacon.py index 8e972ca3..2f0b9124 100644 --- a/modem/command_beacon.py +++ b/freedata-server/command_beacon.py @@ -7,8 +7,8 @@ class BeaconCommand(TxCommand): return self.frame_factory.build_beacon(beacon_state) - #def transmit(self, modem): - # super().transmit(modem) + #def transmit(self, freedata-server): + # super().transmit(freedata-server) # if self.config['MODEM']['enable_morse_identifier']: # mycall = f"{self.config['STATION']['mycall']}-{self.config['STATION']['myssid']}" - # modem.transmit_morse("morse", 1, 0, mycall) + # freedata-server.transmit_morse("morse", 1, 0, mycall) diff --git a/modem/command_cq.py b/freedata-server/command_cq.py similarity index 100% rename from modem/command_cq.py rename to freedata-server/command_cq.py diff --git a/modem/command_feq.py b/freedata-server/command_feq.py similarity index 100% rename from modem/command_feq.py rename to freedata-server/command_feq.py diff --git a/modem/command_message_send.py b/freedata-server/command_message_send.py similarity index 100% rename from modem/command_message_send.py rename to freedata-server/command_message_send.py diff --git a/modem/command_p2p_connection.py b/freedata-server/command_p2p_connection.py similarity index 100% rename from modem/command_p2p_connection.py rename to freedata-server/command_p2p_connection.py diff --git a/modem/command_ping.py b/freedata-server/command_ping.py similarity index 100% rename from modem/command_ping.py rename to freedata-server/command_ping.py diff --git a/modem/command_qrv.py b/freedata-server/command_qrv.py similarity index 100% rename from modem/command_qrv.py rename to freedata-server/command_qrv.py diff --git a/modem/command_test.py b/freedata-server/command_test.py similarity index 100% rename from modem/command_test.py rename to freedata-server/command_test.py diff --git a/modem/config.ini.example b/freedata-server/config.ini.example similarity index 100% rename from modem/config.ini.example rename to freedata-server/config.ini.example diff --git a/modem/config.py b/freedata-server/config.py similarity index 100% rename from modem/config.py rename to freedata-server/config.py diff --git a/modem/cw.py b/freedata-server/cw.py similarity index 100% rename from modem/cw.py rename to freedata-server/cw.py diff --git a/modem/data_frame_factory.py b/freedata-server/data_frame_factory.py similarity index 100% rename from modem/data_frame_factory.py rename to freedata-server/data_frame_factory.py diff --git a/modem/demodulator.py b/freedata-server/demodulator.py similarity index 98% rename from modem/demodulator.py rename to freedata-server/demodulator.py index cf1d6f08..66b742e7 100644 --- a/modem/demodulator.py +++ b/freedata-server/demodulator.py @@ -160,7 +160,7 @@ class Demodulator(): nbytes = codec2.api.freedv_rawdatarx( freedv, bytes_out, audiobuffer.buffer.ctypes ) - # get current modem states and write to list + # get current freedata-server states and write to list # 1 trial # 2 sync # 3 trial sync @@ -171,7 +171,7 @@ class Demodulator(): if rx_status not in [0]: self.is_codec2_traffic_counter = self.is_codec2_traffic_cooldown self.log.debug( - "[MDM] [demod_audio] modem state", mode=mode_name, rx_status=rx_status, + "[MDM] [demod_audio] freedata-server state", mode=mode_name, rx_status=rx_status, sync_flag=codec2.api.rx_sync_flags_to_text[rx_status] ) diff --git a/modem/event_manager.py b/freedata-server/event_manager.py similarity index 94% rename from modem/event_manager.py rename to freedata-server/event_manager.py index f4705cae..19845dd0 100644 --- a/modem/event_manager.py +++ b/freedata-server/event_manager.py @@ -82,19 +82,19 @@ class EventManager: self.broadcast(event) def modem_started(self): - event = {"modem": "started"} + event = {"freedata-server": "started"} self.broadcast(event) def modem_restarted(self): - event = {"modem": "restarted"} + event = {"freedata-server": "restarted"} self.broadcast(event) def modem_stopped(self): - event = {"modem": "stopped"} + event = {"freedata-server": "stopped"} self.broadcast(event) def modem_failed(self): - event = {"modem": "failed"} + event = {"freedata-server": "failed"} self.broadcast(event) def freedata_message_db_change(self): diff --git a/modem/exceptions.py b/freedata-server/exceptions.py similarity index 100% rename from modem/exceptions.py rename to freedata-server/exceptions.py diff --git a/modem/explorer.py b/freedata-server/explorer.py similarity index 100% rename from modem/explorer.py rename to freedata-server/explorer.py diff --git a/modem/frame_dispatcher.py b/freedata-server/frame_dispatcher.py similarity index 100% rename from modem/frame_dispatcher.py rename to freedata-server/frame_dispatcher.py diff --git a/modem/frame_handler.py b/freedata-server/frame_handler.py similarity index 100% rename from modem/frame_handler.py rename to freedata-server/frame_handler.py diff --git a/modem/frame_handler_arq_session.py b/freedata-server/frame_handler_arq_session.py similarity index 100% rename from modem/frame_handler_arq_session.py rename to freedata-server/frame_handler_arq_session.py diff --git a/modem/frame_handler_beacon.py b/freedata-server/frame_handler_beacon.py similarity index 100% rename from modem/frame_handler_beacon.py rename to freedata-server/frame_handler_beacon.py diff --git a/modem/frame_handler_cq.py b/freedata-server/frame_handler_cq.py similarity index 100% rename from modem/frame_handler_cq.py rename to freedata-server/frame_handler_cq.py diff --git a/modem/frame_handler_p2p_connection.py b/freedata-server/frame_handler_p2p_connection.py similarity index 100% rename from modem/frame_handler_p2p_connection.py rename to freedata-server/frame_handler_p2p_connection.py diff --git a/modem/frame_handler_ping.py b/freedata-server/frame_handler_ping.py similarity index 100% rename from modem/frame_handler_ping.py rename to freedata-server/frame_handler_ping.py diff --git a/modem/helpers.py b/freedata-server/helpers.py similarity index 100% rename from modem/helpers.py rename to freedata-server/helpers.py diff --git a/modem/log_handler.py b/freedata-server/log_handler.py similarity index 100% rename from modem/log_handler.py rename to freedata-server/log_handler.py diff --git a/modem/maidenhead.py b/freedata-server/maidenhead.py similarity index 100% rename from modem/maidenhead.py rename to freedata-server/maidenhead.py diff --git a/modem/mesh.py b/freedata-server/mesh.py similarity index 100% rename from modem/mesh.py rename to freedata-server/mesh.py diff --git a/modem/message_p2p.py b/freedata-server/message_p2p.py similarity index 100% rename from modem/message_p2p.py rename to freedata-server/message_p2p.py diff --git a/modem/message_system_db_attachments.py b/freedata-server/message_system_db_attachments.py similarity index 100% rename from modem/message_system_db_attachments.py rename to freedata-server/message_system_db_attachments.py diff --git a/modem/message_system_db_beacon.py b/freedata-server/message_system_db_beacon.py similarity index 100% rename from modem/message_system_db_beacon.py rename to freedata-server/message_system_db_beacon.py diff --git a/modem/message_system_db_manager.py b/freedata-server/message_system_db_manager.py similarity index 100% rename from modem/message_system_db_manager.py rename to freedata-server/message_system_db_manager.py diff --git a/modem/message_system_db_messages.py b/freedata-server/message_system_db_messages.py similarity index 100% rename from modem/message_system_db_messages.py rename to freedata-server/message_system_db_messages.py diff --git a/modem/message_system_db_model.py b/freedata-server/message_system_db_model.py similarity index 100% rename from modem/message_system_db_model.py rename to freedata-server/message_system_db_model.py diff --git a/modem/modem.py b/freedata-server/modem.py similarity index 99% rename from modem/modem.py rename to freedata-server/modem.py index 084e979e..884a165a 100644 --- a/modem/modem.py +++ b/freedata-server/modem.py @@ -109,7 +109,7 @@ class RF: def stop_modem(self): try: - # let's stop the modem service + # let's stop the freedata-server service self.service_queue.put("stop") # simulate audio class active state for reducing cli output # self.stream = lambda: None @@ -117,7 +117,7 @@ class RF: # self.stream.stop except Exception: - self.log.error("[MDM] Error stopping modem") + self.log.error("[MDM] Error stopping freedata-server") def init_audio(self): self.log.info(f"[MDM] init: get audio devices", input_device=self.audio_input_device, diff --git a/modem/modem_frametypes.py b/freedata-server/modem_frametypes.py similarity index 100% rename from modem/modem_frametypes.py rename to freedata-server/modem_frametypes.py diff --git a/modem/modulator.py b/freedata-server/modulator.py similarity index 100% rename from modem/modulator.py rename to freedata-server/modulator.py diff --git a/modem/p2p_connection.py b/freedata-server/p2p_connection.py similarity index 100% rename from modem/p2p_connection.py rename to freedata-server/p2p_connection.py diff --git a/modem/queues.py b/freedata-server/queues.py similarity index 100% rename from modem/queues.py rename to freedata-server/queues.py diff --git a/modem/radio_manager.py b/freedata-server/radio_manager.py similarity index 100% rename from modem/radio_manager.py rename to freedata-server/radio_manager.py diff --git a/modem/rigctld.py b/freedata-server/rigctld.py similarity index 100% rename from modem/rigctld.py rename to freedata-server/rigctld.py diff --git a/modem/rigdummy.py b/freedata-server/rigdummy.py similarity index 100% rename from modem/rigdummy.py rename to freedata-server/rigdummy.py diff --git a/modem/schedule_manager.py b/freedata-server/schedule_manager.py similarity index 98% rename from modem/schedule_manager.py rename to freedata-server/schedule_manager.py index 7c74072f..a4672edb 100644 --- a/modem/schedule_manager.py +++ b/freedata-server/schedule_manager.py @@ -41,7 +41,7 @@ class ScheduleManager: # wait some time threading.Event().wait(timeout=10) - # get actual modem instance + # get actual freedata-server instance self.modem = modem self.running = True # Set the running flag to True diff --git a/modem/selftest.py b/freedata-server/selftest.py similarity index 100% rename from modem/selftest.py rename to freedata-server/selftest.py diff --git a/modem/serial_ports.py b/freedata-server/serial_ports.py similarity index 100% rename from modem/serial_ports.py rename to freedata-server/serial_ports.py diff --git a/modem/server.py b/freedata-server/server.py similarity index 93% rename from modem/server.py rename to freedata-server/server.py index 4d2e1bd4..168d3c26 100644 --- a/modem/server.py +++ b/freedata-server/server.py @@ -132,11 +132,11 @@ def get_serial_devices(): devices = serial_ports.get_ports() return api_response(devices) -@app.route('/modem/state', methods=['GET']) +@app.route('/freedata-server/state', methods=['GET']) def get_modem_state(): return api_response(app.state_manager.sendState()) -@app.route('/modem/cqcqcq', methods=['POST', 'GET']) +@app.route('/freedata-server/cqcqcq', methods=['POST', 'GET']) def post_cqcqcq(): if request.method not in ['POST']: return api_response({"info": "endpoint for triggering a CQ via POST"}) @@ -145,7 +145,7 @@ def post_cqcqcq(): enqueue_tx_command(command_cq.CQCommand) return api_ok() -@app.route('/modem/beacon', methods=['POST']) +@app.route('/freedata-server/beacon', methods=['POST']) def post_beacon(): if request.method not in ['POST']: return api_response({"info": "endpoint for controlling BEACON STATE via POST"}) @@ -165,7 +165,7 @@ def post_beacon(): return api_response(request.json) -@app.route('/modem/ping_ping', methods=['POST']) +@app.route('/freedata-server/ping_ping', methods=['POST']) def post_ping(): if request.method not in ['POST']: return api_response({"info": "endpoint for controlling PING via POST"}) @@ -175,7 +175,7 @@ def post_ping(): enqueue_tx_command(command_ping.PingCommand, request.json) return api_ok() -@app.route('/modem/send_test_frame', methods=['POST']) +@app.route('/freedata-server/send_test_frame', methods=['POST']) def post_send_test_frame(): if request.method not in ['POST']: return api_response({"info": "endpoint for triggering a TEST_FRAME via POST"}) @@ -184,7 +184,7 @@ def post_send_test_frame(): enqueue_tx_command(command_test.TestCommand) return api_ok() -@app.route('/modem/fec_transmit', methods=['POST']) +@app.route('/freedata-server/fec_transmit', methods=['POST']) def post_send_fec_frame(): if request.method not in ['POST']: return api_response({"info": "endpoint for triggering a FEC frame via POST"}) @@ -193,7 +193,7 @@ def post_send_fec_frame(): enqueue_tx_command(command_feq.FecCommand, request.json) return api_ok() -@app.route('/modem/fec_is_writing', methods=['POST']) +@app.route('/freedata-server/fec_is_writing', methods=['POST']) def post_send_fec_is_writing(): if request.method not in ['POST']: return api_response({"info": "endpoint for triggering a IS WRITING frame via POST"}) @@ -202,18 +202,18 @@ def post_send_fec_is_writing(): #server_commands.modem_fec_is_writing(request.json) return 'Not implemented yet' -@app.route('/modem/start', methods=['POST']) +@app.route('/freedata-server/start', methods=['POST']) def post_modem_start(): if request.method not in ['POST']: - return api_response({"info": "endpoint for STARTING modem via POST"}) + return api_response({"info": "endpoint for STARTING freedata-server via POST"}) print("start received...") app.modem_service.put("start") return api_response(request.json) -@app.route('/modem/stop', methods=['POST']) +@app.route('/freedata-server/stop', methods=['POST']) def post_modem_stop(): if request.method not in ['POST']: - return api_response({"info": "endpoint for STOPPING modem via POST"}) + return api_response({"info": "endpoint for STOPPING freedata-server via POST"}) print("stop received...") app.modem_service.put("stop") @@ -223,7 +223,7 @@ def post_modem_stop(): def get_modem_version(): return api_response({"version": app.MODEM_VERSION}) -@app.route('/modem/send_arq_raw', methods=['POST']) +@app.route('/freedata-server/send_arq_raw', methods=['POST']) def post_modem_send_raw(): if request.method not in ['POST']: return api_response({"info": "endpoint for SENDING RAW DATA via POST"}) @@ -235,7 +235,7 @@ def post_modem_send_raw(): return api_response(request.json) else: api_abort('Error executing command...', 500) -@app.route('/modem/stop_transmission', methods=['POST']) +@app.route('/freedata-server/stop_transmission', methods=['POST']) def post_modem_send_raw_stop(): if request.method not in ['POST']: @@ -341,7 +341,7 @@ def stop_server(): audio.sd._terminate() except Exception as e: print(e) - print("Error stopping modem") + print("Error stopping freedata-server") time.sleep(1) print('Server shutdown...') print("------------------------------------------") @@ -354,12 +354,12 @@ def main(): config_file = set_config() app.config_manager = CONFIG(config_file) - # start modem + # start freedata-server app.p2p_data_queue = queue.Queue() # queue which holds processing data of p2p connections app.state_queue = queue.Queue() # queue which holds latest states app.modem_events = queue.Queue() # queue which holds latest events app.modem_fft = queue.Queue() # queue which holds latest fft data - app.modem_service = queue.Queue() # start / stop modem service + app.modem_service = queue.Queue() # start / stop freedata-server service app.event_manager = event_manager.EventManager([app.modem_events]) # TODO remove the app.modem_event custom queue # init state manager app.state_manager = state_manager.StateManager(app.state_queue) @@ -368,7 +368,7 @@ def main(): # start service manager app.service_manager = service_manager.SM(app) - # start modem service + # start freedata-server service app.modem_service.put("start") # initialize database default values DatabaseManager(app.event_manager).initialize_default_values() diff --git a/modem/service_manager.py b/freedata-server/service_manager.py similarity index 91% rename from modem/service_manager.py rename to freedata-server/service_manager.py index 45cba984..6f34f473 100644 --- a/modem/service_manager.py +++ b/freedata-server/service_manager.py @@ -62,7 +62,7 @@ class SM: self.event_manager.modem_restarted() else: - self.log.warning("[SVC] modem command processing failed", cmd=cmd, state=self.state_manager.is_modem_running) + self.log.warning("[SVC] freedata-server command processing failed", cmd=cmd, state=self.state_manager.is_modem_running) def start_modem(self): @@ -72,7 +72,7 @@ class SM: return False if self.state_manager.is_modem_running: - self.log.warning("modem already running") + self.log.warning("freedata-server already running") return False @@ -80,12 +80,12 @@ class SM: audio_test = self.test_audio() if False in audio_test or None in audio_test or self.state_manager.is_modem_running: - self.log.warning("starting modem failed", input_test=audio_test[0], output_test=audio_test[1]) + self.log.warning("starting freedata-server failed", input_test=audio_test[0], output_test=audio_test[1]) self.state_manager.set("is_modem_running", False) self.event_manager.modem_failed() return False - self.log.info("starting modem....") + self.log.info("starting freedata-server....") self.modem = modem.RF(self.config, self.event_manager, self.modem_fft, self.modem_service, self.state_manager, self.app.radio_manager) self.frame_dispatcher = frame_dispatcher.DISPATCHER(self.config, @@ -102,7 +102,7 @@ class SM: return True def stop_modem(self): - self.log.info("stopping modem....") + self.log.info("stopping freedata-server....") del self.modem self.modem = False self.state_manager.set("is_modem_running", False) diff --git a/modem/socket_interface.py b/freedata-server/socket_interface.py similarity index 100% rename from modem/socket_interface.py rename to freedata-server/socket_interface.py diff --git a/modem/socket_interface_commands.py b/freedata-server/socket_interface_commands.py similarity index 100% rename from modem/socket_interface_commands.py rename to freedata-server/socket_interface_commands.py diff --git a/modem/state_manager.py b/freedata-server/state_manager.py similarity index 99% rename from modem/state_manager.py rename to freedata-server/state_manager.py index 1c781f0e..99b622fa 100644 --- a/modem/state_manager.py +++ b/freedata-server/state_manager.py @@ -9,7 +9,7 @@ class StateManager: self.newstate = None self.last = time.time() - # modem related states + # freedata-server related states # not every state is needed to publish, yet # TODO can we reduce them? self.channel_busy_slot = [False, False, False, False, False] diff --git a/modem/stats.py b/freedata-server/stats.py similarity index 100% rename from modem/stats.py rename to freedata-server/stats.py diff --git a/modem/tci.py b/freedata-server/tci.py similarity index 100% rename from modem/tci.py rename to freedata-server/tci.py diff --git a/modem/websocket_manager.py b/freedata-server/websocket_manager.py similarity index 100% rename from modem/websocket_manager.py rename to freedata-server/websocket_manager.py diff --git a/modem/freedata.spec b/modem/freedata.spec deleted file mode 100644 index 2749d976..00000000 --- a/modem/freedata.spec +++ /dev/null @@ -1,52 +0,0 @@ -# -*- mode: python ; coding: utf-8 -*- - - -block_cipher = None - -# DAEMON -------------------------------------------------- -server_a = Analysis(['server.py'], - pathex=[], - binaries=[], - datas=[], - hiddenimports=[], - hookspath=[], - hooksconfig={}, - runtime_hooks=[], - excludes=[], - win_no_prefer_redirects=False, - win_private_assemblies=False, - cipher=block_cipher, - noarchive=False) -server_pyz = PYZ(server_a.pure, server_a.zipped_data, - cipher=block_cipher) - -server_exe = EXE(server_pyz, - server_a.scripts, - [], - exclude_binaries=True, - name='freedata-server', - bundle_identifier='app.freedata.freedata-server', - debug=False, - bootloader_ignore_signals=False, - strip=False, - upx=True, - console=True, - disable_windowed_traceback=False, - target_arch=None, - codesign_identity=None, - entitlements_file=None ) - -# add lib folder to system path. We only need to do this once -server_a.datas += Tree('lib', prefix='lib') -# daemon_a.datas += Tree('./codec2', prefix='codec2') - - - -coll = COLLECT(server_exe, - server_a.binaries, - server_a.zipfiles, - server_a.datas, - strip=False, - upx=True, - upx_exclude=[], - name='modem') diff --git a/modem/lib/codec2/libcodec2.dll b/modem/lib/codec2/libcodec2.dll deleted file mode 100644 index 916b6fdb..00000000 Binary files a/modem/lib/codec2/libcodec2.dll and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win32.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win32.whl deleted file mode 100644 index 714d844b..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win32.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win_amd64.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win_amd64.whl deleted file mode 100644 index 782de1b3..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp310-cp310-win_amd64.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win32.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win32.whl deleted file mode 100644 index 245f9222..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win32.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win_amd64.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win_amd64.whl deleted file mode 100644 index 50209e44..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp311-cp311-win_amd64.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win32.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win32.whl deleted file mode 100644 index bda06fd9..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win32.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win_amd64.whl b/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win_amd64.whl deleted file mode 100644 index 09114331..00000000 Binary files a/modem/lib/pyaudio/windows/PyAudio-0.2.11-cp39-cp39-win_amd64.whl and /dev/null differ diff --git a/modem/lib/pyaudio/windows/README.md b/modem/lib/pyaudio/windows/README.md deleted file mode 100644 index 7beb7c48..00000000 --- a/modem/lib/pyaudio/windows/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# PyAudio - -## downloaded from - -https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio diff --git a/setup.py b/setup.py index 182200e3..3c5fbdd3 100644 --- a/setup.py +++ b/setup.py @@ -23,12 +23,12 @@ setup( license='GPL3.0', entry_points={ 'console_scripts': [ - 'freedata-server=modem.server:main', # Points to the main() function in server.py + 'freedata-server=freedata-server.server:main', # Points to the main() function in server.py ], }, include_package_data=True, # Ensure non-python files are included if specified package_data={ - # Include all files under any directory within the 'modem' package - 'modem': ['lib/**/*'], # Recursive include for all files in 'lib' and its subdirectories + # Include all files under any directory within the 'freedata-server' package + 'freedata-server': ['lib/**/*'], # Recursive include for all files in 'lib' and its subdirectories }, ) diff --git a/tests/test_arq_session.py b/tests/test_arq_session.py index ad1f1e0e..2969d4f7 100644 --- a/tests/test_arq_session.py +++ b/tests/test_arq_session.py @@ -1,6 +1,6 @@ import sys import time -sys.path.append('modem') +sys.path.append('freedata-server') import unittest import unittest.mock @@ -58,7 +58,7 @@ class TestARQSession(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.logger = structlog.get_logger("TESTS") cls.frame_factory = DataFrameFactory(cls.config) diff --git a/tests/test_config.py b/tests/test_config.py index 90c49bed..4adfc35b 100755 --- a/tests/test_config.py +++ b/tests/test_config.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import unittest import config @@ -7,13 +7,13 @@ class TestConfigMethods(unittest.TestCase): @classmethod def setUpClass(cls): - cls.config = config.CONFIG('modem/config.ini.example') + cls.config = config.CONFIG('freedata-server/config.ini.example') def test_config_exists(self): - c = config.CONFIG('modem/config.ini.example') + c = config.CONFIG('freedata-server/config.ini.example') self.assertTrue(c.config_exists()) - #c = config.CONFIG('modem/nonexistant') + #c = config.CONFIG('freedata-server/nonexistant') #self.assertFalse(c.config_exists()) def test_read(self): diff --git a/tests/test_data_frame_factory.py b/tests/test_data_frame_factory.py index f782f2e1..e0ac0d02 100755 --- a/tests/test_data_frame_factory.py +++ b/tests/test_data_frame_factory.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import unittest from config import CONFIG @@ -12,7 +12,7 @@ class TestDataFrameFactory(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') config = config_manager.read() cls.factory = DataFrameFactory(config) diff --git a/tests/test_data_type_handler.py b/tests/test_data_type_handler.py index 7fafb58c..c8c5c942 100644 --- a/tests/test_data_type_handler.py +++ b/tests/test_data_type_handler.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import unittest import queue diff --git a/tests/test_message_database.py b/tests/test_message_database.py index 086bb85c..e9081b61 100644 --- a/tests/test_message_database.py +++ b/tests/test_message_database.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import numpy as np import unittest @@ -17,7 +17,7 @@ class TestDataFrameFactory(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.event_queue = queue.Queue() diff --git a/tests/test_message_p2p.py b/tests/test_message_p2p.py index 5ea115af..7e37faad 100755 --- a/tests/test_message_p2p.py +++ b/tests/test_message_p2p.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import numpy as np import unittest @@ -14,7 +14,7 @@ class TestDataFrameFactory(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.event_queue = queue.Queue() diff --git a/tests/test_message_protocol.py b/tests/test_message_protocol.py index cf968095..26a8a9ff 100644 --- a/tests/test_message_protocol.py +++ b/tests/test_message_protocol.py @@ -1,7 +1,7 @@ import sys import time -sys.path.append('modem') +sys.path.append('freedata-server') import unittest import unittest.mock @@ -59,7 +59,7 @@ class TestMessageProtocol(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.logger = structlog.get_logger("TESTS") cls.frame_factory = DataFrameFactory(cls.config) diff --git a/tests/test_p2p_connection.py b/tests/test_p2p_connection.py index 44ceb5ae..d70b47b3 100644 --- a/tests/test_p2p_connection.py +++ b/tests/test_p2p_connection.py @@ -1,7 +1,7 @@ import sys import time -sys.path.append('modem') +sys.path.append('freedata-server') import unittest import unittest.mock @@ -58,7 +58,7 @@ class TestP2PConnectionSession(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.logger = structlog.get_logger("TESTS") cls.frame_factory = DataFrameFactory(cls.config) diff --git a/tests/test_protocols.py b/tests/test_protocols.py index c6f64a03..1dc2d2c9 100755 --- a/tests/test_protocols.py +++ b/tests/test_protocols.py @@ -1,5 +1,5 @@ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import unittest from config import CONFIG @@ -18,7 +18,7 @@ class TestProtocols(unittest.TestCase): @classmethod def setUpClass(cls): - config_manager = CONFIG('modem/config.ini.example') + config_manager = CONFIG('freedata-server/config.ini.example') cls.config = config_manager.read() cls.state_manager_queue = queue.Queue() @@ -34,7 +34,7 @@ class TestProtocols(unittest.TestCase): modem.TESTMODE = True frame_handler.TESTMODE = True - #cls.modem.start_modem() + #cls.freedata-server.start_modem() cls.frame_dispatcher = DISPATCHER(cls.config, cls.event_manager, cls.state_manager, @@ -53,7 +53,7 @@ class TestProtocols(unittest.TestCase): # Run ping command api_params = { "dxcall": "AA1AAA-1"} ping_cmd = PingCommand(self.config, self.state_manager, self.event_manager, api_params) - #ping_cmd.run(self.event_queue, self.modem) + #ping_cmd.run(self.event_queue, self.freedata-server) frame = ping_cmd.test(self.event_queue) # Shortcut the transmit queue directly to the frame dispatcher self.shortcutTransmission(frame) @@ -69,7 +69,7 @@ class TestProtocols(unittest.TestCase): api_params = {} cmd = CQCommand(self.config, self.state_manager, self.event_manager, api_params) - #cmd.run(self.event_queue, self.modem) + #cmd.run(self.event_queue, self.freedata-server) frame = cmd.test(self.event_queue) self.shortcutTransmission(frame) diff --git a/tests/test_server.py b/tests/test_server.py index c4a0e47a..62f14b1c 100755 --- a/tests/test_server.py +++ b/tests/test_server.py @@ -13,10 +13,10 @@ class TestIntegration(unittest.TestCase): @classmethod def setUpClass(cls): - #cmd = "flask --app modem/server run" - cmd = "python3 modem/server.py" + #cmd = "flask --app freedata-server/server run" + cmd = "python3 freedata-server/server.py" my_env = os.environ.copy() - my_env["FREEDATA_CONFIG"] = "modem/config.ini.example" + my_env["FREEDATA_CONFIG"] = "freedata-server/config.ini.example" cls.process = Popen(shlex.split(cmd), stdin=PIPE, env=my_env) time.sleep(1) diff --git a/tools/create_hmac_tokes.py b/tools/create_hmac_tokes.py index b66e5149..932e1648 100755 --- a/tools/create_hmac_tokes.py +++ b/tools/create_hmac_tokes.py @@ -39,7 +39,7 @@ def create_hmac_salts(dxcallsign: str, mycallsign: str, num_tokens: int): for _ in range(len(token_array)): file.write(token_array[_] + '\n') - print("files created - place them in modem/hmac folder and share the file with the remote station") + print("files created - place them in freedata-server/hmac folder and share the file with the remote station") except Exception: print("error creating hmac file") diff --git a/tools/custom_mode_tests/create_custom_ofdm_mod.py b/tools/custom_mode_tests/create_custom_ofdm_mod.py index 020be98e..12d167e9 100644 --- a/tools/custom_mode_tests/create_custom_ofdm_mod.py +++ b/tools/custom_mode_tests/create_custom_ofdm_mod.py @@ -1,20 +1,20 @@ """ -FreeDATA % python3.11 tools/custom_mode_tests/create_custom_ofdm_mod.py | ./modem/lib/codec2/build_osx/src/freedv_data_raw_rx --vv --framesperburst 1 DATAC1 - /dev/null +FreeDATA % python3.11 tools/custom_mode_tests/create_custom_ofdm_mod.py | ./freedata-server/lib/codec2/build_osx/src/freedv_data_raw_rx --vv --framesperburst 1 DATAC1 - /dev/null """ import sys -sys.path.append('modem') +sys.path.append('freedata-server') import numpy as np -modem_path = '/../../modem' +modem_path = '/../../freedata-server' if modem_path not in sys.path: sys.path.append(modem_path) -#import modem.codec2 as codec2 +#import freedata-server.codec2 as codec2 from codec2 import * import threading import modulator as modulator @@ -50,7 +50,7 @@ def demod(txbuffer): nbytes = api.freedv_rawdatarx( freedv, bytes_out, audiobuffer.buffer.ctypes ) - # get current modem states and write to list + # get current freedata-server states and write to list # 1 trial # 2 sync # 3 trial sync diff --git a/tools/freedata_network_listener.py b/tools/freedata_network_listener.py index a7474165..bf6c83d5 100755 --- a/tools/freedata_network_listener.py +++ b/tools/freedata_network_listener.py @@ -5,7 +5,7 @@ deprecated_daemon.py Author: DJ2LS, January 2022 -daemon for providing basic information for the modem like audio or serial devices +daemon for providing basic information for the freedata-server like audio or serial devices """ # pylint: disable=invalid-name, line-too-long, c-extension-no-member @@ -92,7 +92,7 @@ with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as sock: #pass print(jsondata.get("routing_table")) - if jsondata.get('freedata') == "modem-message": + if jsondata.get('freedata') == "freedata-server-message": log.info(jsondata) if jsondata.get('ping') == "acknowledge": diff --git a/tools/run-server.sh b/tools/run-server.sh index ac23e67f..f6b0d537 100755 --- a/tools/run-server.sh +++ b/tools/run-server.sh @@ -1,2 +1,2 @@ -# FREEDATA_CONFIG=modem/config.ini flask --app modem/server run -FREEDATA_CONFIG=modem/config.ini python3 modem/server.py +# FREEDATA_CONFIG=freedata-server/config.ini flask --app freedata-server/server run +FREEDATA_CONFIG=freedata-server/config.ini python3 freedata-server/server.py