Jakob Ketterl
37e7331627
fix device failover (concurrent modification problem)
2021-03-18 19:47:11 +01:00
Jakob Ketterl
b25a673829
refactor state handling: uncouple failed and enabled flags
2021-03-18 19:34:53 +01:00
Jakob Ketterl
916f19ac60
mapping sdr device layer
2021-03-18 18:59:38 +01:00
Jakob Ketterl
620771eaf2
use a property layer right from the start
2021-03-18 18:58:29 +01:00
Jakob Ketterl
161408dbf4
handle deletions correctly
2021-03-06 23:48:31 +01:00
Jakob Ketterl
e0985c3802
fix status page
2021-03-06 23:34:27 +01:00
Jakob Ketterl
3d20e3ed80
simplify api by abstracting layer changes
2021-03-06 22:20:47 +01:00
Jakob Ketterl
ff9f771e1b
handle the resampler
2021-03-05 19:44:45 +01:00
Jakob Ketterl
4c5ec23ba7
remove profile list from sdr device index
2021-03-05 19:44:25 +01:00
Jakob Ketterl
1b44229ec3
clean up profile handling
2021-03-05 19:28:54 +01:00
Jakob Ketterl
2e28694b49
implement profile removal behaviour
2021-03-05 19:09:51 +01:00
Jakob Ketterl
2ba2ec38e0
new profile carousel implementation reacts to new profiles
2021-03-05 18:57:09 +01:00
Jakob Ketterl
a3cfde02c4
re-wire profile add & delete
2021-03-05 18:32:16 +01:00
Jakob Ketterl
a14f247859
make the add button look more like the remove button
2021-03-05 18:07:19 +01:00
Jakob Ketterl
45e9bd12a5
hightlight "new profile" link
2021-03-05 17:51:19 +01:00
Jakob Ketterl
190c90ccdf
tab styling
2021-03-05 17:43:15 +01:00
Jakob Ketterl
60df3afe26
add tab navigation to profile and device pages
2021-03-04 22:14:10 +01:00
Jakob Ketterl
4e14b29537
apply type="button" on all buttons to make submit on enter work
2021-03-03 23:25:00 +01:00
Jakob Ketterl
3814200452
implement device and profile deletion
2021-03-03 23:07:41 +01:00
Jakob Ketterl
a9dbedee6d
consistent wording
2021-03-03 22:35:57 +01:00
Jakob Ketterl
8671f98c14
implement "add profile" sequence
2021-03-03 22:33:37 +01:00
Jakob Ketterl
400ed3541d
update "new sdr" routing too to avoid conflicts
2021-03-03 22:10:19 +01:00
Jakob Ketterl
03315d7960
switch url scheme to avoid conflicts
2021-03-03 21:55:49 +01:00
Jakob Ketterl
d123232f28
implement device and profile delete modals
2021-03-03 21:51:33 +01:00
Jakob Ketterl
eab1c6ce80
remove profile list from device page; make links work
2021-03-03 15:38:15 +01:00
Jakob Ketterl
fdbb76bca1
add working redirect after device add completes
2021-03-03 15:30:33 +01:00
Jakob Ketterl
c0b7cf5f8d
resolve the ugly assets_prefix hack
2021-03-03 15:24:18 +01:00
Jakob Ketterl
37d89c074b
implement "new device" page (redirects not working yet)
2021-03-03 00:16:28 +01:00
Jakob Ketterl
2b1dc76e48
add profile list to the device page
2021-03-02 20:28:49 +01:00
Jakob Ketterl
e0b289b6a5
remove debugging message
2021-03-02 20:19:48 +01:00
Jakob Ketterl
d81f0ae96c
change display precision behavior to reference Hertz
2021-03-01 01:19:06 +01:00
Jakob Ketterl
6bd47cf914
implement property carousel for profile switching
2021-03-01 00:26:56 +01:00
Jakob Ketterl
c7db144f7b
add name input for profiles
2021-02-28 21:26:55 +01:00
Jakob Ketterl
d0ddf72b10
fix typo
2021-02-28 21:04:43 +01:00
Jakob Ketterl
0537e23e38
make a more generic ExponentialInput and use that for the sample_rate input
2021-02-27 23:14:41 +01:00
Jakob Ketterl
7a0c934af5
use frequency input for the other inputs, too
2021-02-27 22:44:48 +01:00
Jakob Ketterl
c389d3b619
implement a frequency input with switchable exponent
2021-02-27 22:15:19 +01:00
Jakob Ketterl
ccdb010e9d
more information on the sdr list
2021-02-27 20:48:37 +01:00
Jakob Ketterl
36c4a16fb5
move to settings module
2021-02-27 01:16:03 +01:00
Jakob Ketterl
e9cb5d54be
send changed keys over websocket connection for the map
2021-02-27 01:00:38 +01:00
Jakob Ketterl
ad3ed1e626
disconnect clients if the max_clients setting is lowered
2021-02-27 00:01:21 +01:00
Jakob Ketterl
0a76801a03
activate "service_decoder" setting
2021-02-26 23:50:58 +01:00
Jakob Ketterl
3164683e74
handle device shudown when schedule is off
2021-02-26 22:36:15 +01:00
Jakob Ketterl
4e7f02fc2c
activate more scheduler and service settings
2021-02-26 21:27:42 +01:00
Jakob Ketterl
0231d98ab8
wire "services_enabled" setting
2021-02-26 17:53:32 +01:00
Jakob Ketterl
412e0a51c7
implement property deletion handling; activate scheduler deletion
2021-02-26 01:12:03 +01:00
Jakob Ketterl
91c4d6f568
make scheduler respond to config changes
2021-02-25 22:19:05 +01:00
Jakob Ketterl
d8b3974728
use floats; explicit conversion
2021-02-25 20:50:40 +01:00
Jakob Ketterl
5cd9d386a6
combine waterfall_[min|max]_level into a single config
2021-02-25 15:13:39 +01:00
Jakob Ketterl
f6f0a87002
this todo is resolved
2021-02-25 00:38:23 +01:00
Jakob Ketterl
8c767be53a
add inputs for perseus
2021-02-24 23:54:46 +01:00
Jakob Ketterl
bccb87e660
handle deletions in the top layer
2021-02-24 23:04:57 +01:00
Jakob Ketterl
0c1dc70217
Make the apply button always visible
2021-02-24 23:04:23 +01:00
Jakob Ketterl
388d9d46fe
prevent runtime properties in the config
2021-02-24 22:30:28 +01:00
Jakob Ketterl
2785f43c6a
implement adding and removing scheduler slots
2021-02-24 21:09:19 +01:00
Jakob Ketterl
45a70a1079
parse values from form
2021-02-24 20:17:43 +01:00
Jakob Ketterl
2d823b2945
render scheduler profile inputs
2021-02-24 19:56:07 +01:00
Jakob Ketterl
65758a0098
start implementing scheduler input (daylight works)
2021-02-24 17:12:23 +01:00
Jakob Ketterl
ea96038201
remove unused imports
2021-02-24 12:31:53 +01:00
Jakob Ketterl
f69d78926e
create filtering that prevents overwriting the device name
2021-02-24 00:09:57 +01:00
Jakob Ketterl
4199a583f8
fix agc parameter
2021-02-23 23:24:30 +01:00
Jakob Ketterl
dfaecdb357
use hierarchical property layers to make config changes effective
...
immediately
2021-02-23 23:23:37 +01:00
Jakob Ketterl
631232fe7c
make AGC optional
2021-02-23 20:02:38 +01:00
Jakob Ketterl
f9772faa6f
add separator before the optional inputs dropdown
2021-02-23 19:23:54 +01:00
Jakob Ketterl
4e32d724c4
fix storing profiles
2021-02-23 18:41:49 +01:00
Jakob Ketterl
c5df6a1527
implement profile editing page
2021-02-23 18:32:23 +01:00
Jakob Ketterl
ed258cc9a0
fill in gain stages for hackrf
2021-02-23 17:40:06 +01:00
Jakob Ketterl
437943c26c
fill in airspy gain stages
2021-02-23 17:36:16 +01:00
Jakob Ketterl
d15d9d8c76
remove implicit optional handling for optional fields
2021-02-23 00:27:29 +01:00
Jakob Ketterl
436010ffe3
implement explicit removal of non-present keys
2021-02-23 00:12:22 +01:00
Jakob Ketterl
679f99d701
change checkbox handling to detect presence
2021-02-23 00:11:51 +01:00
Jakob Ketterl
1eff7a3b69
fix typo
2021-02-22 23:52:57 +01:00
Jakob Ketterl
54a34b2084
implement optional device fields
2021-02-22 23:49:28 +01:00
Jakob Ketterl
9beb3b9168
remove the label attribute from the checkboxes
2021-02-22 00:57:02 +01:00
Jakob Ketterl
770fd749cd
introduce the basic concept of optional keys
2021-02-22 00:35:47 +01:00
Jakob Ketterl
683a711b49
fix bias_tee for hackrf
2021-02-21 18:11:28 +01:00
Jakob Ketterl
bd31fa5149
add the ability to disable devices
2021-02-21 18:11:08 +01:00
Jakob Ketterl
7f3d421b25
introduce profile list
2021-02-20 23:45:06 +01:00
Jakob Ketterl
44250f9719
add some device details on the list page
2021-02-20 22:57:17 +01:00
Jakob Ketterl
c2e8ac516c
introduce enums for state management
2021-02-20 22:54:07 +01:00
Jakob Ketterl
dd5ab32b47
set always-on default to false
2021-02-20 19:43:04 +01:00
Jakob Ketterl
361ed55b93
add more device-specific options
2021-02-20 19:20:31 +01:00
Jakob Ketterl
8b24eff72e
add sdrplay specific options
2021-02-20 19:00:28 +01:00
Jakob Ketterl
18e8ca5e43
add bias_tee and direct_sampling options
2021-02-20 18:48:12 +01:00
Jakob Ketterl
0ab6729fcc
create device descriptions for all
2021-02-20 18:09:24 +01:00
Jakob Ketterl
0e64f15e65
add more device inputs
2021-02-20 17:54:19 +01:00
Jakob Ketterl
058463a9b3
fix display and parsing issues
2021-02-20 00:36:18 +01:00
Jakob Ketterl
bd7e5b7166
implement individual gain stages option
2021-02-20 00:16:32 +01:00
Jakob Ketterl
d0d946e09f
implement gain dialog with AGC option
2021-02-19 21:07:13 +01:00
Jakob Ketterl
86278ff44d
wire data parsing and storage
2021-02-19 18:45:29 +01:00
Jakob Ketterl
039b57d28b
add more inputs, bind to actual data
2021-02-19 18:18:25 +01:00
Jakob Ketterl
27c16c3720
add more inputs
2021-02-19 16:29:30 +01:00
Jakob Ketterl
3aa238727e
start building device forms
2021-02-19 15:29:17 +01:00
Jakob Ketterl
4316832b95
input merging mechanism
2021-02-19 14:53:30 +01:00
Jakob Ketterl
bec61465c9
move device descriptions to owrx.source
2021-02-19 14:44:16 +01:00
Jakob Ketterl
012952f6f3
implement some basic infrastructure to present device forms
2021-02-19 00:46:52 +01:00
Jakob Ketterl
872c7a4bfd
setup device list and routing for device pages
2021-02-19 00:03:25 +01:00
Jakob Ketterl
d65743f2ea
rename template variable
2021-02-18 23:05:43 +01:00
Jakob Ketterl
c5585e290a
undo javascript device configuration
2021-02-18 22:24:31 +01:00
Jakob Ketterl
54fde2c1c0
reuse existing template
2021-02-18 22:12:13 +01:00
Jakob Ketterl
d612792593
update permissions on write
2021-02-18 21:07:45 +01:00
Jakob Ketterl
06d4b24b09
handle config key not set
2021-02-18 15:27:05 +01:00
Jakob Ketterl
b7688c3c97
add infotext for custom html colors
2021-02-16 18:39:42 +01:00
Jakob Ketterl
691d88f841
waterfall config fine-adjustments
...
* hide the waterfall colors input when pre-defined color scheme is
selected
* skip unparseable lines on custom color input
* fallback to black and white if custom color config is unusable
* always use the waterfall classes when sending changes to the client
2021-02-16 18:35:18 +01:00
Jakob Ketterl
9aebeb51f8
remove waterfall_colors unless scheme is custom
2021-02-16 18:12:10 +01:00
Jakob Ketterl
8d2763930b
implement input for custom waterfall colors
2021-02-16 18:07:13 +01:00
Jakob Ketterl
409370aba2
implement custom waterfall option
2021-02-16 17:48:12 +01:00
Jakob Ketterl
9175629838
send waterfall colors to the client
2021-02-16 17:34:04 +01:00
Jakob Ketterl
3c0a26eaa8
prevent file corruption during json.dump
2021-02-16 17:17:09 +01:00
Jakob Ketterl
496e771e17
implement new waterfall color selection
2021-02-16 17:12:57 +01:00
Jakob Ketterl
c8496a2547
remove unused import
2021-02-16 15:59:31 +01:00
Jakob Ketterl
c2617fcfaf
use a converter -> parsing done
2021-02-15 22:22:07 +01:00
Jakob Ketterl
1112334ea8
render inputs, mode dropdown
2021-02-15 22:14:56 +01:00
Jakob Ketterl
578f165bdc
wording change
2021-02-15 20:20:53 +01:00
Jakob Ketterl
a664770881
change link targets to _blank
2021-02-15 20:20:32 +01:00
Jakob Ketterl
c0193e677c
add an input for wsjt_decoding_depths
2021-02-15 20:19:43 +01:00
Jakob Ketterl
a72a11d3c7
fix old unsubscription todo
2021-02-15 17:25:46 +01:00
Jakob Ketterl
48a9c76c18
inline header variables
2021-02-15 17:12:17 +01:00
Jakob Ketterl
7f9c0539bb
break out demodulation and decoding settings
2021-02-15 16:06:14 +01:00
Jakob Ketterl
e61dde7d0e
separate background decoding
2021-02-15 15:56:17 +01:00
Jakob Ketterl
d998ab5c61
break out reporting into its own settings page
2021-02-15 15:49:44 +01:00
Jakob Ketterl
49640b5e33
generalize settings controller
2021-02-15 15:40:37 +01:00
Jakob Ketterl
391069653a
split settings controller module (preparation to split general settings)
2021-02-15 15:29:02 +01:00
Jakob Ketterl
48c594fdae
implement bookmark deletion
2021-02-14 16:51:16 +01:00
Jakob Ketterl
29a161b7b7
add the "add bookmarks" function
2021-02-14 16:21:09 +01:00
Jakob Ketterl
9b1659d3dd
remove index (unused)
2021-02-14 14:48:32 +01:00
Jakob Ketterl
3d97d362b5
implement bookmark storage
2021-02-14 00:41:03 +01:00
Jakob Ketterl
8ea4d11e9c
make the bookmarks table editable
2021-02-13 23:53:16 +01:00
Jakob Ketterl
48f26d00d6
add action column
2021-02-13 18:41:42 +01:00
Jakob Ketterl
3b60e0b737
display existing bookmarks in table
2021-02-13 18:35:15 +01:00
Jakob Ketterl
3e4ba42aab
style settings page; add bookmark editor page
2021-02-13 17:08:56 +01:00
Jakob Ketterl
cda43b5c5c
re-route settings urls
2021-02-13 16:44:14 +01:00
Jakob Ketterl
ae76470612
auto-reload bookmarks from file
2021-02-13 01:29:21 +01:00
Jakob Ketterl
5e51beac46
implement auto-reloading for bookmarks
2021-02-13 01:10:36 +01:00
Jakob Ketterl
8acfb8c1cf
add configuration for max_client limit
2021-02-13 00:52:08 +01:00
Jakob Ketterl
7d88d83c36
handle empty file
2021-02-12 17:00:35 +01:00
Jakob Ketterl
aad757df36
remove experimental csdr settings
2021-02-11 22:51:50 +01:00
Jakob Ketterl
a8c93fd8d1
enable web config
2021-02-11 19:37:45 +01:00
Jakob Ketterl
f23fa59ac3
implement config layering
2021-02-11 19:31:44 +01:00
Jakob Ketterl
e926611307
break config module apart
2021-02-11 13:55:06 +01:00
Jakob Ketterl
0fd172edc3
check file contents; work with file extensions
2021-02-11 00:20:17 +01:00
Jakob Ketterl
64f827d235
loopify
2021-02-10 22:25:43 +01:00
Jakob Ketterl
1e72485425
implement temporary file cleanup
2021-02-10 22:24:43 +01:00
Jakob Ketterl
7097dc1cd8
ability to restore original image
2021-02-10 21:29:46 +01:00
Jakob Ketterl
8cf9b509c1
apply authorization to image upload
2021-02-10 20:32:07 +01:00
Jakob Ketterl
17c20d12e0
refactor authentication / authorization into a mixin
2021-02-10 20:21:45 +01:00
Jakob Ketterl
8422a33081
add information note about caching
2021-02-09 18:06:32 +01:00
Jakob Ketterl
75418baf06
apply cachebuster for form
2021-02-09 18:00:56 +01:00
Jakob Ketterl
9f17c941d1
generalize image upload form element
2021-02-09 17:54:02 +01:00
Jakob Ketterl
779aa33a4a
add and resolve todos
2021-02-09 00:47:09 +01:00
Jakob Ketterl
7aa0f8b35d
improve image handling
2021-02-09 00:38:59 +01:00
Jakob Ketterl
3b670016be
implement uploading of top panorama, too
2021-02-09 00:12:53 +01:00
Jakob Ketterl
ad5daaae95
add exception for uploaded images
2021-02-08 23:44:10 +01:00
Jakob Ketterl
16d0e1a0d7
implement handling of uploaded files on save
2021-02-08 23:36:46 +01:00
Jakob Ketterl
4df5f19bd6
add todos
2021-02-08 23:30:44 +01:00
Jakob Ketterl
a1c024bfe2
implement dynamic file upload
2021-02-08 23:29:24 +01:00
Jakob Ketterl
2d72055070
organize
2021-02-08 20:30:12 +01:00
Jakob Ketterl
331e9627d6
implement forced password change for generated passwords
2021-02-08 18:30:54 +01:00
Jakob Ketterl
ed6594401c
monitor user file modifications & reload if necessary
2021-02-08 17:24:59 +01:00
Jakob Ketterl
d9578cc5f4
thoroughly validate user
2021-02-08 17:09:22 +01:00
Jakob Ketterl
2c6b0e3d30
implement user list, enable, disable
2021-02-08 17:04:55 +01:00
Jakob Ketterl
b0c7abe362
implement form result parsing for q65 matrix
2021-02-08 16:32:00 +01:00
Jakob Ketterl
346f2af2fb
update matrix generation with new abilities
2021-02-08 16:22:23 +01:00
Jakob Ketterl
902fc666c2
stricter q65 mode parsing and availability check
2021-02-08 15:58:37 +01:00
Jakob Ketterl
3a1e5ee73c
avoid using tuples, they don't work in json (future config system)
2021-02-08 15:34:55 +01:00
Jakob Ketterl
a083042002
implement display of Q65 mode matrix
2021-02-08 15:16:04 +01:00
Jakob Ketterl
ce48892173
make dropdowns work with enums directly
2021-02-08 01:16:02 +01:00
Jakob Ketterl
5cfacac6c0
add aprs_igate_dir option
2021-02-08 01:00:00 +01:00
Jakob Ketterl
4758672c94
add aprs_igate_symbol
2021-02-08 00:43:39 +01:00
Jakob Ketterl
23fceb2998
add optional aprs fields and todos
2021-02-07 23:15:57 +01:00
Jakob Ketterl
e5bd78fd0c
add fst4 and fst4w interval settings
2021-02-07 22:49:11 +01:00
Jakob Ketterl
8c4b9dd08a
add settings for frequency_display_resolution and squelch_auto_margin
2021-02-07 22:40:03 +01:00
Jakob Ketterl
ba3a68c3fa
a bit of styling for the settings
2021-02-07 22:09:06 +01:00
Jakob Ketterl
d920540021
fix receiver_keys textarea
2021-02-07 21:45:02 +01:00
Jakob Ketterl
47ecc26f28
add a wfm tau dropdown to the web settings
2021-02-07 21:36:08 +01:00
Jakob Ketterl
689cd49694
drop "experimental pipe settings" (will become unavailable in the
...
future)
2021-02-07 18:23:17 +01:00
Jakob Ketterl
b60a8a1af0
add the ability to put append a unit to inputs
2021-02-07 18:21:57 +01:00
Jakob Ketterl
8de70cd523
add receiver_keys to the settings page
2021-02-07 18:04:46 +01:00
Jakob Ketterl
25db7c716d
change heading
2021-02-07 17:36:44 +01:00
Jakob Ketterl
88020b894e
move aprs_symbols_path to new config
2021-02-07 00:21:57 +01:00
Jakob Ketterl
ee687d4e27
fix copy&paste fail
2021-02-06 23:17:43 +01:00
Jakob Ketterl
617bed91c4
fix config verification
2021-02-06 22:08:27 +01:00
Jakob Ketterl
9357d57a28
move temporary_directyr to core config; implement override logic
2021-02-06 21:55:47 +01:00
Jakob Ketterl
5d291b5b36
add pskreporter settings mappings
2021-02-06 21:01:59 +01:00
Jakob Ketterl
01c58327aa
implement password reset command
2021-02-06 19:12:44 +01:00
Jakob Ketterl
d99669b3aa
add "silent" flag to openwebrx-admin
2021-02-06 18:57:51 +01:00
Jakob Ketterl
e548d6a5de
random salt for passwords
2021-02-06 18:43:37 +01:00
Jakob Ketterl
8806dc538e
implement hashed passwords
2021-02-06 18:38:49 +01:00
Jakob Ketterl
f6f01ebee5
default password implementation
2021-02-06 18:22:13 +01:00
Jakob Ketterl
d72027e630
implement user deletion
2021-02-06 18:15:02 +01:00
Jakob Ketterl
99fe232a21
include command to create a user
2021-02-06 18:04:32 +01:00
Jakob Ketterl
3226c01f60
introduce core config file (settings that cannot be edited from the web)
2021-02-06 16:38:03 +01:00
Jakob Ketterl
8e4716f241
drop empty Q65 decodes
2021-02-05 01:07:09 +01:00
Jakob Ketterl
e8fca853df
unsubscribe on close; self-referencing prevents unsubscription
2021-02-04 18:00:03 +01:00
Jakob Ketterl
d6d6d97a13
add Q65 mode integration
2021-02-03 20:11:07 +01:00
Jakob Ketterl
e66be7c12d
add feature definition for wsjt-x 2.4
2021-02-03 19:33:02 +01:00
Jakob Ketterl
13eaee5ee9
replace eb200 with runds
2021-02-03 03:21:09 +01:00
Jakob Ketterl
5e1c4391c6
include prometheus metrics, refs #200
2021-02-01 18:43:14 +01:00
Jakob Ketterl
998092f377
reroute /metrics to /metrics.json
2021-02-01 18:26:26 +01:00
Jakob Ketterl
3c91f3cc2f
add a timeout to wspr uploads
2021-01-31 20:31:54 +01:00
Jakob Ketterl
ad8ff1c2f7
send "sdr_id" to be able to detect changes
2021-01-30 16:04:13 +01:00
Jakob Ketterl
8372f198db
add the ability to make a layer readonly
2021-01-30 16:03:35 +01:00
Jakob Ketterl
2a5448f5c1
update dsd feature detection to avoid start-up hangs
2021-01-30 15:03:52 +01:00
Jakob Ketterl
9b2947827a
Merge branch 'release-0.20' into develop
2021-01-25 19:40:28 +01:00
Jakob Ketterl
ae0748952f
remove unused import, too
2021-01-25 19:40:06 +01:00
Jakob Ketterl
bee0f67efd
Merge branch 'release-0.20' into develop
2021-01-25 19:37:57 +01:00
Jakob Ketterl
f81cf3570a
don't check the type since older python doesn't have re.Pattern
2021-01-25 19:36:55 +01:00
Jakob Ketterl
b2e8fc5ad5
release version 0.20.2
2021-01-24 23:52:20 +01:00
Jakob Ketterl
4a86af69d1
Fix merging error
2021-01-24 23:20:17 +01:00
Jakob Ketterl
bf31a27dca
Merge branch 'fix_arbitrary_code_execution' into develop
2021-01-24 22:55:11 +01:00
Jakob Ketterl
366f7247f2
code style
2021-01-24 22:54:58 +01:00
Jakob Ketterl
a5bdf6c3ac
Merge branch 'fix_arbitrary_code_execution' into develop
2021-01-24 22:47:08 +01:00
Jakob Ketterl
7e60efeae2
validate all parameters sent to dsp, refs #215
2021-01-24 22:29:23 +01:00
Jakob Ketterl
15940d0a2e
extend StringValidator instead
2021-01-24 22:28:48 +01:00
Jakob Ketterl
d126c3acef
allow regexes only on strings
2021-01-24 22:28:00 +01:00
Jakob Ketterl
a880b1f6f9
add regex validator
2021-01-24 22:03:53 +01:00
Jakob Ketterl
49577953c6
fix events
2021-01-24 21:58:15 +01:00
Jakob Ketterl
4b03ced1f7
add more validators
2021-01-24 21:58:02 +01:00
Jakob Ketterl
66dc4e5772
get validator by string
2021-01-24 21:25:26 +01:00
Jakob Ketterl
ad0a5c27db
introduce PropertyValidator (wrapper)
2021-01-24 21:19:45 +01:00
Jakob Ketterl
40e531c0da
start implementing a validation layer, refs #215
2021-01-24 20:53:51 +01:00
Jakob Ketterl
862a251295
allow only limited parameters to be set on the dsp
2021-01-24 20:10:37 +01:00
Jakob Ketterl
4b94126dc3
use the fft chain directly without csdr dsp classes
2021-01-23 19:27:01 +01:00
Jakob Ketterl
4e429d047d
Merge branch 'develop' into pycsdr
2021-01-23 17:17:44 +01:00
Jakob Ketterl
a0d219d120
protect against parser errors to prevent queue backlogging
2021-01-22 19:48:31 +01:00
Jakob Ketterl
f29f7b20e3
change shutdown handling to be able to join()
2021-01-22 17:34:35 +01:00
Jakob Ketterl
185fdb67cb
handle SIGTERM
2021-01-22 17:33:53 +01:00
Jakob Ketterl
64b7b485b3
run the code formatter over all
2021-01-20 17:01:46 +01:00
Jakob Ketterl
f0dc2f8ebe
format code
2021-01-20 16:46:55 +01:00
Jakob Ketterl
55e1aa5857
use the property stack the way it's intended for better consistency
2021-01-20 16:46:29 +01:00
Jakob Ketterl
fe45d139ad
fix an unset property error
2021-01-20 16:41:53 +01:00
Jakob Ketterl
db83256bcf
Merge branch 'develop' into pycsdr
2021-01-17 20:58:02 +01:00
Jakob Ketterl
3246e5ab3a
move ysf metadata parsing to server; improve map pin behavior
2021-01-17 19:21:13 +01:00
Jakob Ketterl
297d6b540d
Merge branch 'develop' into pycsdr
2021-01-17 18:16:32 +01:00
Jakob Ketterl
a0eeea8fe3
improve queue shutdown to avoid stale files
2021-01-17 17:49:03 +01:00
Jakob Ketterl
41f9407024
re-package code for meta panels into classes
2021-01-16 19:40:22 +01:00
Jakob Ketterl
992a5c33a2
check for keys' existence
2021-01-16 15:45:33 +01:00
Jakob Ketterl
966a404700
don't spot FST4W on pskreporter (same as WSPR?)
2021-01-15 16:27:15 +01:00
Jakob Ketterl
885e361bab
implement reporting of FST4W spots (in theory)
2021-01-15 16:19:45 +01:00
Jakob Ketterl
a65f15869b
add wsprnet metrics
2021-01-15 00:11:20 +01:00
Jakob Ketterl
1b36baad88
extend default WFM bandwidth to 150kHz, allowing up to 200kHz
2021-01-14 23:47:12 +01:00
Jakob Ketterl
747a5ce7ef
fix reporting system shutdown
2021-01-14 22:55:35 +01:00
Jakob Ketterl
e3aa3fa4c6
implement wsprnet reporting, refs #62
2021-01-14 22:54:59 +01:00
Jakob Ketterl
132bd2b445
create reporting engine to distribute spots
2021-01-14 20:52:56 +01:00
Jakob Ketterl
db98590985
implement profile validation
2021-01-13 23:44:00 +01:00
Jakob Ketterl
b27c03c1c4
restore autostart to avoid unused thread
2021-01-09 20:08:40 +01:00
Jakob Ketterl
502546f9d3
improve cpu usage thread instance protection
2021-01-09 20:01:39 +01:00
Jakob Ketterl
113c06fae4
introduce separate wsjt-x version check based on wsjtx_app_version
2021-01-09 19:19:53 +01:00
Jakob Ketterl
73b75edc14
remove duplicate import
2021-01-09 19:10:08 +01:00
Jakob Ketterl
5337c20744
remove duplicate
2021-01-09 19:01:39 +01:00
Jakob Ketterl
2783091cea
unset buffer since it can't be reused
2021-01-04 00:23:29 +01:00
Jakob Ketterl
a2d731503f
update api
2021-01-02 03:12:21 +01:00
Jakob Ketterl
3e69c71ed5
Merge branch 'develop' into pycsdr
2021-01-02 03:11:41 +01:00
Jakob Ketterl
44f4532452
add debug logging
2021-01-02 02:25:07 +01:00
Jakob Ketterl
a1cbc45b88
prevent multiple creation of cpu usage thread
2020-12-31 23:18:01 +01:00
Jakob Ketterl
90f319ebda
split config into global and device config
...
* less config properties sent to the client
2020-12-31 23:03:36 +01:00
Jakob Ketterl
9674af10ce
Merge pull request #202 from ewsandor/develop
...
User Customization of APRS IGate Beacon Details
2020-12-30 21:44:40 +01:00
Jakob Ketterl
5a77b6a8e5
show bandplan bookmarks only when mode is available
2020-12-30 21:37:25 +01:00
Jakob Ketterl
53553fcce2
fix subscription handling
2020-12-30 21:33:02 +01:00
Ed Sandor
1730ef27da
Remove POWER from pbeacon string
2020-12-30 12:21:07 -07:00
Ed Sandor
57a6db5df2
Removing inapplicable fields
2020-12-30 12:16:12 -07:00
Ed Sandor
32fe01f128
Round instead of floor height conversion
2020-12-30 11:03:59 -07:00
Jakob Ketterl
b85d801121
create separate subscription for bookmarks
2020-12-30 18:45:13 +01:00
Ed Sandor
daa499ab93
PR comments edits
2020-12-30 10:33:21 -07:00
Jakob Ketterl
341b94b9ff
prevent KeyError by checking for key existence
2020-12-30 17:46:13 +01:00
Jakob Ketterl
cf0c6e7f9d
adapt to config event api changes
2020-12-30 17:18:46 +01:00
Jakob Ketterl
29703d10b2
server side: send only changed config keys
2020-12-30 17:17:14 +01:00
Jakob Ketterl
2c3146314b
send property changes in bulk to global subscribers
2020-12-30 17:14:06 +01:00
Jakob Ketterl
ca183c7c5a
Merge branch 'develop' into pycsdr
2020-12-27 20:22:42 +01:00
Jakob Ketterl
eb981c04e9
Merge branch 'm17' into develop
2020-12-27 19:51:32 +01:00
Jakob Ketterl
686eeb706b
add external reference control
2020-12-27 13:52:49 +01:00
Jakob Ketterl
fa3b5cd7e6
implement new buffer input / output api
2020-12-25 20:27:30 +01:00
Jakob Ketterl
06f3499b6d
Merge branch 'develop' into m17
2020-12-21 17:04:09 +01:00
Jakob Ketterl
40c07ebb57
move fft calculations to dsp class
2020-12-19 16:41:48 +01:00
Jakob Ketterl
efe80a75f5
put the socketclient on the source so it can be shared
2020-12-19 16:28:18 +01:00
Jakob Ketterl
db3d662dae
fix typo
2020-12-13 16:31:19 +01:00
Ed Sandor
b04dcc18d0
This is Python not C
2020-12-12 11:10:15 -07:00
Ed Sandor
1cc88ff362
if check fix
2020-12-12 11:09:12 -07:00
Ed Sandor
3435052e27
sanitize empty comment
2020-12-12 11:08:47 -07:00
Ed Sandor
4c3d037e58
Cleanup debug logging
2020-12-12 11:07:50 -07:00
Ed Sandor
f83790a5be
debug comment length
2020-12-12 10:15:26 -07:00
Ed Sandor
11bb04419b
fix parenthesis
2020-12-12 10:13:46 -07:00
Ed Sandor
519b02da79
improve quotes check
2020-12-12 10:12:43 -07:00
Ed Sandor
fdbbbcb64c
Sanitize comment closing quote
2020-12-12 10:04:42 -07:00
Ed Sandor
0fb4ae4fc0
sanitize comment for opening quote
2020-12-12 09:59:34 -07:00
Jakob Ketterl
e062412e60
show receiver location pin on the map
2020-12-11 17:47:17 +01:00
Jakob Ketterl
23080dbe22
allow frequency display precision to be set via configuration
2020-12-10 20:58:07 +01:00
Jakob Ketterl
05096c2a16
fully initialize sdr devices
...
* makes always-on work as expected
* prevents race conditions when multiple clients connect at the same
time
2020-12-10 18:28:10 +01:00
Ed Sandor
5559cded85
Add quotes around default pbeacon comment
2020-12-09 23:17:42 -07:00
Ed Sandor
9f45e8880a
formating pbeacon string
2020-12-09 23:09:37 -07:00
Ed Sandor
dc128662da
log pbeacon string
2020-12-09 23:05:04 -07:00
Ed Sandor
dc3fd24903
Correcting key check
2020-12-09 22:59:16 -07:00
Ed Sandor
b2efa81b0d
Formatting additional PBEACON details
2020-12-09 22:54:06 -07:00
Jakob Ketterl
2c04d40c53
allow antenna information to be sent to pskreporter
2020-12-10 01:36:09 +01:00
Jakob Ketterl
fcff9d16ff
filter out problematic spots instead of breaking completely
2020-12-09 23:38:27 +01:00
Jakob Ketterl
eef61f9d1e
break the pskreporter loop if there's nothing to upload
2020-12-09 22:59:45 +01:00
Jakob Ketterl
9e45cfd02a
implement clear function for js8, too - refs #187
2020-12-09 21:19:22 +01:00
Jakob Ketterl
a7f667779a
allow roaming / portable / mobile calls in wsjt-x message
2020-12-09 12:47:08 +01:00
Jakob Ketterl
f71240c9a6
handle exception when output is missing
2020-12-09 12:31:01 +01:00
Jakob Ketterl
f8fc61e9bd
streamline datetime parsing
2020-12-09 12:02:40 +01:00