mirror of
https://github.com/DJ2LS/FreeDATA
synced 2024-05-14 08:04:33 +00:00
added activities list
This commit is contained in:
parent
0290c1a28c
commit
72658837c9
2 changed files with 29 additions and 2 deletions
|
@ -173,7 +173,16 @@ class DISPATCHER():
|
||||||
self.event_manager,
|
self.event_manager,
|
||||||
MODEM_TRANSMIT_QUEUE,
|
MODEM_TRANSMIT_QUEUE,
|
||||||
self.arq_sessions)
|
self.arq_sessions)
|
||||||
|
|
||||||
|
activity = {
|
||||||
|
"dxcallsign": deconstructed_frame["origin"],
|
||||||
|
"direction": "received",
|
||||||
|
"dxgrid": deconstructed_frame["gridsquare"],
|
||||||
|
"snr": snr,
|
||||||
|
"offset": offset,
|
||||||
|
"activity_type": self.FRAME_HANDLER[frametype]['name']
|
||||||
|
}
|
||||||
|
self.states.add_activity(activity)
|
||||||
handler.handle(deconstructed_frame, snr, offset, freedv, bytes_per_frame)
|
handler.handle(deconstructed_frame, snr, offset, freedv, bytes_per_frame)
|
||||||
|
|
||||||
def old_process_data(self, bytes_out, freedv, bytes_per_frame: int, snr) -> None:
|
def old_process_data(self, bytes_out, freedv, bytes_per_frame: int, snr) -> None:
|
||||||
|
|
|
@ -28,7 +28,9 @@ class StateManager:
|
||||||
self.audio_dbfs = 0
|
self.audio_dbfs = 0
|
||||||
self.dxcallsign: bytes = b"ZZ9YY-0"
|
self.dxcallsign: bytes = b"ZZ9YY-0"
|
||||||
self.dxgrid: bytes = b"------"
|
self.dxgrid: bytes = b"------"
|
||||||
self.heard_stations = []
|
|
||||||
|
self.heard_stations = [] # TODO remove it... heard stations list == deprecated
|
||||||
|
self.activities_list = {}
|
||||||
|
|
||||||
self.arq_instance_table = {}
|
self.arq_instance_table = {}
|
||||||
self.arq_session_state = 'disconnected'
|
self.arq_session_state = 'disconnected'
|
||||||
|
@ -92,6 +94,8 @@ class StateManager:
|
||||||
"radio_mode": self.radio_mode,
|
"radio_mode": self.radio_mode,
|
||||||
"channel_busy_slot": self.channel_busy_slot,
|
"channel_busy_slot": self.channel_busy_slot,
|
||||||
"audio_dbfs": self.audio_dbfs,
|
"audio_dbfs": self.audio_dbfs,
|
||||||
|
"heard_stations": self.heard_stations,
|
||||||
|
"activities": self.activities_list,
|
||||||
}
|
}
|
||||||
|
|
||||||
# .wait() blocks until the event is set
|
# .wait() blocks until the event is set
|
||||||
|
@ -122,3 +126,17 @@ class StateManager:
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
def add_activity(self, activity_data):
|
||||||
|
# Generate a random 8-byte string as hex
|
||||||
|
activity_id = np.random.bytes(8).hex()
|
||||||
|
|
||||||
|
# if timestamp not provided, add it here
|
||||||
|
if 'timestamp' not in activity_data:
|
||||||
|
activity_data['timestamp'] = int(time.time())
|
||||||
|
|
||||||
|
# if frequency not provided, add it here
|
||||||
|
if 'frequency' not in activity_data:
|
||||||
|
activity_data['frequency'] = self.radio_frequency
|
||||||
|
|
||||||
|
self.activities_list[activity_id] = activity_data
|
||||||
|
self.sendStateUpdate()
|
||||||
|
|
Loading…
Reference in a new issue