Allow spotting upstream to cluster. #39

This commit is contained in:
Ian Renton
2026-09-27 11:09:20 +01:00
parent 1a48d178ca
commit 27bd8a6b44
28 changed files with 192 additions and 81 deletions
+10 -8
View File
@@ -3,13 +3,15 @@
<div id="add-spot-intro-box" class="permanently-dismissible-box mt-3">
<div class="alert alert-primary alert-dismissible fade show" role="alert">
<!-- TODO Remove when feature available -->
<i class="fa-solid fa-circle-info"></i> <strong>Adding spots to Spothole</strong><br/>This page is implemented
as a proof of concept for adding spots to the Spothole system. Currently, spots added in this way are only
visible within Spothole and are not sent "upstream" to DX clusters or xOTA spotting sites. The functionality
might be extended to include this in future if there is demand for it. If you'd like this to be added, please
give a thumbs-up on <a href="https://git.ianrenton.com/ian/spothole/issues/39" target="_new" class="alert-link">issue
#39</a> or get in touch via email.
<i class="fa-solid fa-circle-info"></i> <strong>Adding spots to Spothole</strong><br/>
{% if web_ui_options["allow_upstream_spotting"] %}
Spots added here are visible within Spothole. You can also choose to send your spot "upstream" to the DX
cluster, in which case it is posted using the callsign you enter in "Your Call". Sending spots upstream to other
spotting sites such as POTA and SOTA is currently a work in progress.
{% else %}
Spots added here are only visible within Spothole. This server does not allow spots to be sent "upstream" to DX
clusters or other spotting sites such as POTA and SOTA.
{% end %}
<button type="button" id="add-spot-intro-box-dismiss" class="btn-close" data-bs-dismiss="alert"
aria-label="Close"></button>
</div>
@@ -136,7 +138,7 @@
const ALLOW_UPSTREAM_SPOTTING = {% raw safe_json_dumps(web_ui_options["allow_upstream_spotting"]) %};
</script>
<script src="/static/js/add-spot.js?v=1790443101"></script>
<script src="/static/js/add-spot.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-add-spot").addClass("active");
}); <!-- highlight active page in nav --></script>
+1 -1
View File
@@ -87,7 +87,7 @@
</div>
<script src="/static/js/alerts.js?v=1790443102"></script>
<script src="/static/js/alerts.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-alerts").addClass("active");
}); <!-- highlight active page in nav --></script>
+2 -2
View File
@@ -82,8 +82,8 @@
const BANDS = {% raw safe_json_dumps(options["bands"]) %};
</script>
<script src="/static/js/spotsbandsandmap.js?v=1790443101"></script>
<script src="/static/js/bands.js?v=1790443101"></script>
<script src="/static/js/spotsbandsandmap.js?v=1790503760"></script>
<script src="/static/js/bands.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-bands").addClass("active");
}); <!-- highlight active page in nav --></script>
+5 -5
View File
@@ -1,6 +1,6 @@
{% extends "skeleton.html" %}
{% block head_extra %}
<link rel="stylesheet" href="/static/css/style.css?v=1790443101" type="text/css">
<link rel="stylesheet" href="/static/css/style.css?v=1790503760" type="text/css">
<link href="/static/vendor/css/bootstrap-5.3.8.min.css" rel="stylesheet">
<link href="/static/vendor/css/fontawesome-6.7.2.min.css" rel="stylesheet">
<link href="/static/vendor/css/solid-6.7.2.min.css" rel="stylesheet">
@@ -16,10 +16,10 @@
window.fetchEventSource = fetchEventSource;
</script>
<script src="/static/js/utils.js?v=1790443101"></script>
<script src="/static/js/ui-ham.js?v=1790443101"></script>
<script src="/static/js/geo.js?v=1790443101"></script>
<script src="/static/js/common.js?v=1790443101"></script>
<script src="/static/js/utils.js?v=1790503760"></script>
<script src="/static/js/ui-ham.js?v=1790503760"></script>
<script src="/static/js/geo.js?v=1790503760"></script>
<script src="/static/js/common.js?v=1790503760"></script>
{% end %}
{% block body %}
<div class="container">
+1 -1
View File
@@ -284,7 +284,7 @@
</div>
<script src="/static/vendor/js/chart-4.4.9.umd.min.js"></script>
<script src="/static/js/conditions.js?v=1790443101"></script>
<script src="/static/js/conditions.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-conditions").addClass("active");
}); <!-- highlight active page in nav --></script>
+4 -2
View File
@@ -7,9 +7,11 @@
data into a traditional desktop logging program. The data Spothole produces is compatible with DXSpider, and
therefore many loggers should accept it with no problems.</p>
<p>This is a relatively new feature however, so if you run into problems, please do let me know.</p>
<p>The one caveat with the Spothole telnet server is that <em>it does not support any commands</em>, other than <code>exit</code>.
<p>The one caveat with the Spothole telnet server is that <em>it does not support any commands</em>, other than
<code>exit</code> or <code>bye</code>.
You cannot therefore issue commands to retrieve past entries, set up filters, etc. If you need to filter the data,
many desktop logging programs support this client-side, so hopefully this is not too big of an obstacle.
many desktop logging programs support this client-side, so hopefully this is not too big of an obstacle. You also
can't currently send spots to Spothole using the Telnet server.
</p>
<p>To access Spothole via telnet, set up your logger with the server address <code>{{ telnet_server_address }}</code>
and port <code>{{ telnet_server_port }}</code>. You can also access it from a terminal with <code>telnet {{
+5 -2
View File
@@ -127,7 +127,10 @@
<h3><i class="fa-solid fa-comment"></i> Add Spot</h3>
<p>The Add Spot page allows you to add a new spot into the Spothole system directly. Currently, this stays within
Spothole and is not sent "upstream" to DX clusters, POTA, SOTA etc. regardless of any activity you select.</p>
<p>The Add Spot page allows you to add a new spot into the Spothole system directly. If the server allows it, a "Send
spot to..." checkbox will also appear, allowing you to send your spot "upstream" to the DX cluster that Spothole
receives spots from. Spothole will log in to the cluster using the callsign you entered in "Your Call", so if you
are already connected to the same cluster node with that callsign, you may need to use a different SSID. Sending
spots upstream to POTA, SOTA etc. is not yet supported.</p>
{% end %}
+2 -2
View File
@@ -115,8 +115,8 @@
const CARTODB_API_KEY = "{{ web_ui_options.get('cartodb_api_key', '') }}";
</script>
<script src="/static/js/spotsbandsandmap.js?v=1790443102"></script>
<script src="/static/js/map.js?v=1790443102"></script>
<script src="/static/js/spotsbandsandmap.js?v=1790503760"></script>
<script src="/static/js/map.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-map").addClass("active");
}); <!-- highlight active page in nav --></script>
+2 -2
View File
@@ -127,8 +127,8 @@
</div>
<script src="/static/js/spotsbandsandmap.js?v=1790443101"></script>
<script src="/static/js/spots.js?v=1790443101"></script>
<script src="/static/js/spotsbandsandmap.js?v=1790503760"></script>
<script src="/static/js/spots.js?v=1790503760"></script>
<script>$(document).ready(function () {
$("#nav-link-spots").addClass("active");
}); <!-- highlight active page in nav --></script>
+1 -1
View File
@@ -96,7 +96,7 @@
</div>
</div>
<script src="/static/js/status.js?v=1790443101"></script>
<script src="/static/js/status.js?v=1790503760"></script>
<script>
$(document).ready(function () {
$("#nav-link-status").addClass("active");