Files
swyx/src/SwyxFFPlugin/README.md
T
Sven 78b17a1350 SwyxTray und Firefox-Plugin in das Repository aufnehmen
Windows-Tray-Anwendung (CLMgr-Anbindung an SwyxIt!) samt WebSocket-Zugang,
Firefox-Erweiterung und Browser-Beispielclient.
2026-08-21 11:33:52 +02:00

2.0 KiB

SwyxFFPlugin

Firefox-Erweiterung zur Tab-Verwaltung fuer SwyxTray. Das Hintergrundskript haelt eine WebSocket-Verbindung zum Plugin-Port von SwyxTray (voreingestellt ws://127.0.0.1:17655/, einstellbar ueber PluginPort in %LOCALAPPDATA%\SwyxTray\websocket.json) und beantwortet drei Auftraege:

Auftrag Antwort
{"type":"tab","id":…,"action":"list"} {"cmd":"tabresult","id":…,"ok":true,"tabs":[{id,title,url,active},…]}
{"type":"tab","id":…,"action":"open","url":…} {"cmd":"tabresult","id":…,"ok":true,"tabId":…}
{"type":"tab","id":…,"action":"close","tabId":…} {"cmd":"tabresult","id":…,"ok":true}

Das Protokoll im Einzelnen steht im Haupt-README unter „Firefox-Plugin (SwyxFFPlugin)".

Auf diesem Kanal fragt SwyxTray, das Plugin antwortet — genutzt vom focus-Kommando des Hauptports und von den Kontextmenuepunkten Lese Tabs, Tab oeffnen und Tab schliessen des Tray-Symbols. Laeuft SwyxTray (noch) nicht, verbindet das Skript sich selbst neu: beginnend mit 1 s Abstand, je Fehlversuch verdoppelt bis hoechstens 30 s.

Installieren (zum Erproben)

  1. In Firefox about:debugging#/runtime/this-firefox oeffnen.
  2. Temporaeres Add-on laden… und die manifest.json dieses Ordners auswaehlen.
  3. Im Protokoll von SwyxTray erscheint WebSocket … verbunden (…, Plugin-Port).

Ein temporaeres Add-on ueberlebt den Firefox-Neustart nicht. Fuer eine dauerhafte Installation muss die Erweiterung signiert werden (etwa unsigniert nur in Firefox Developer Edition/ESR mit xpinstall.signatures.required=false).

Sind in SwyxTray die Handshake-Pruefungen eingeschaltet (zur Zeit sind sie abgeschaltet, siehe Haupt-README), braucht die Adresse in background.js zusaetzlich das Token (ws://127.0.0.1:17655/?token=…), und in AllowedOrigins muss der Origin moz-extension://<UUID> der Erweiterung stehen — die UUID zeigt about:debugging als „Interne UUID".