Files
ARCG-Remote-Station-Software/docs/plugins/rms-wavelog-cat.md
ARCG Admin (Claude) 0488f6e25d feat(wavelog): push station frequency/mode to Wavelog per operator
Add a CAT integration so the station's current frequency and mode are
reported to each operator's personal Wavelog logbook via Wavelog's radio
API (POST <baseUrl>/index.php/api/radio).

- New plugin rms.wavelog.cat (capability logging.cat.publish): posts
  {key, radio, frequency, mode}. Base URL / radio name come from plugin
  settings or env (WAVELOG_BASE_URL, WAVELOG_RADIO_NAME); no secrets in repo.
- Core hook in the OpenWebRX band-select flow pushes centerFreqHz + startMod
  for the active operator, best-effort (never breaks the band change).
- Per-user Wavelog API key stored on the user record; PUT /v1/me/wavelog-key
  to set it, returned by GET /v1/me and the OpenWebRX session issue response.
- UI: Wavelog API key field in the OpenWebRX panel (visible when generating
  the session link), with i18n (de/en).
- Docs, .env.example entries, and a unit test for the mode mapping.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-22 20:47:58 +02:00

1.3 KiB
Raw Blame History

rms.wavelog.cat

  • Zweck: Aktuelle Stationsfrequenz/-mode an ein Wavelog-Logbuch melden (CAT Radio API). Pushed POST <baseUrl>/index.php/api/radio mit dem per-Operator Wavelog-API-Key, sodass die Frequenz im persoenlichen Wavelog-Konto des aktiven Operators landet (cat.user_id = Key-Besitzer).
  • Capabilities: logging.cat.publish.
  • Aktionen: publish mit Input { frequencyHz, mode, apiKey, baseUrl?, radioName? }.
  • Wichtige Settings/ENV:
    • baseUrl / WAVELOG_BASE_URL – URL der Wavelog-Instanz (ohne Slash am Ende). Leer = deaktiviert.
    • radioName / WAVELOG_RADIO_NAME – Anzeigename in Wavelog (Default RMS Remote).
    • timeoutMs / WAVELOG_TIMEOUT_MS – HTTP-Timeout (Default 8000).
  • Ausloeser: Der Core ruft die Capability beim Bandwechsel (/v1/openwebrx/bands/select) auf und uebergibt centerFreqHz + startMod sowie den Wavelog-Key des aktiven Operators. Best-effort: Fehler brechen den Bandwechsel nie ab.
  • Key-Ablage: pro Benutzer in users.json (wavelogApiKey), setzbar via PUT /v1/me/wavelog-key und sichtbar im OpenWebRX-Panel. Kein Key im Repo – der Key ist Laufzeit-/Benutzerdatum.
  • Mode-Mapping: usb|lsb|ssb → SSB, cw|cwr → CW, fm|nfm|wfm → FM, am|sam → AM, sonst Rohwert in Grossbuchstaben (Wavelog mappt gaengige Rig-Aliase selbst).