+
+ (Cache)
+
+
+
@@ -214,6 +225,119 @@ const RadiusRouterManager = {
Keine Ereignisse verfügbar.
+
+
+
+
+
+
+
+
+
+
+
+
SSID
+
+ {{ wlanKeyData.ssid || '-' }}
+
+
+
+
+
SSID 5GHz
+
+ {{ wlanKeyData.ssid_secondary }}
+
+
+
+
+
Passwort
+
+ {{ wlanKeyData.psk || '-' }}
+
+
+
+
+ Sicherheit
+ {{ wlanKeyData.wpa_type?.toUpperCase() || 'WPA2' }}
+
+
+
+
+
+
+
+
+
+
Router-IP
+
+ {{ wlanKeyData.lan?.ip || '-' }}
+
+
+
+
+ Subnetz
+ {{ wlanKeyData.lan?.subnet || '-' }}
+
+
+
+
+
+
+
+
+
+ Bereich
+
+ {{ wlanKeyData.lan.dhcp_start }} - {{ wlanKeyData.lan.dhcp_end }}
+
+ -
+
+
+ DNS
+ {{ wlanKeyData.lan?.dns_servers || '-' }}
+
+
+
+
+
+
+
+
+
+ Modell
+ {{ wlanKeyData.device_name }}
+
+
+ WLAN-Geräte
+ {{ wlanKeyData.known_devices_count }}
+
+
+
+
+
+ Keine Daten verfügbar.
+
+
`,
data: () => ({
@@ -238,12 +362,18 @@ const RadiusRouterManager = {
showNetworkStructureModal: false,
networkStructureLoading: false,
+ networkStructureCached: false,
rootDevice: null,
showEventLogModal: false,
eventLogLoading: false,
eventLogData: null,
- refreshLoading: false
+ refreshLoading: false,
+
+ showWlanKeyModal: false,
+ wlanKeyLoading: false,
+ wlanKeyData: null,
+ wlanKeyDataCached: false
}),
watch: {
show: {
@@ -439,19 +569,22 @@ const RadiusRouterManager = {
this.remoteAccessLoading = false;
}
},
- async openNetworkStructure() {
+ async openNetworkStructure(forceRefresh = false) {
if (!this.routerDevice || !this.routerDevice.deviceId) return;
this.showNetworkStructureModal = true;
this.networkStructureLoading = true;
this.rootDevice = null;
+ this.networkStructureCached = false;
try {
const { data } = await axios.post(`${window.TT_CONFIG.BASE_PATH}/Radius/genieacsNetworkStructure`, {
- deviceId: this.routerDevice.deviceId
+ deviceId: this.routerDevice.deviceId,
+ forceRefresh: forceRefresh
});
if (data.root) {
this.rootDevice = data.root;
+ this.networkStructureCached = data.cached === true;
}
} catch (error) {
console.error(error);
@@ -482,6 +615,63 @@ const RadiusRouterManager = {
} finally {
this.eventLogLoading = false;
}
+ },
+ async openWlanKeyModal(forceRefresh = false) {
+ if (!this.routerDevice || !this.routerDevice.deviceId) return;
+ this.showWlanKeyModal = true;
+ this.wlanKeyLoading = true;
+ this.wlanKeyData = null;
+ this.wlanKeyDataCached = false;
+
+ try {
+ const { data } = await axios.post(`${window.TT_CONFIG.BASE_PATH}/Radius/genieacsFritzboxWlanKey`, {
+ deviceId: this.routerDevice.deviceId,
+ forceRefresh: forceRefresh
+ });
+
+ if (data.success && data.wlan) {
+ this.wlanKeyData = data.wlan;
+ this.wlanKeyDataCached = data.cached === true;
+ } else {
+ throw new Error(data.message || "Keine WLAN-Daten gefunden");
+ }
+ } catch (error) {
+ console.error(error);
+ window.notify('error', error.response?.data?.message || 'Fehler beim Laden der WLAN-Daten');
+ } finally {
+ this.wlanKeyLoading = false;
+ }
+ },
+ copyAllNetworkConfig() {
+ if (!this.wlanKeyData) return;
+
+ const d = this.wlanKeyData;
+ const lines = [
+ '=== WLAN ===',
+ `SSID: ${d.ssid || '-'}`,
+ d.ssid_secondary && d.ssid_secondary !== d.ssid ? `SSID 5GHz: ${d.ssid_secondary}` : null,
+ `Passwort: ${d.psk || '-'}`,
+ `Sicherheit: ${d.wpa_type?.toUpperCase() || 'WPA2'}`,
+ d.ap_enabled !== undefined ? `WLAN aktiv: ${d.ap_enabled ? 'Ja' : 'Nein'}` : null,
+ '',
+ '=== LAN ===',
+ `Router-IP: ${d.lan?.ip || '-'}`,
+ `Subnetz: ${d.lan?.subnet || '-'}`,
+ '',
+ '=== DHCP ===',
+ `Bereich: ${d.lan?.dhcp_start && d.lan?.dhcp_end ? `${d.lan.dhcp_start} - ${d.lan.dhcp_end}` : '-'}`,
+ `DNS: ${d.lan?.dns_servers || '-'}`,
+ '',
+ '=== Gerät ===',
+ d.device_name ? `Modell: ${d.device_name}` : null,
+ d.known_devices_count !== undefined ? `WLAN-Geräte: ${d.known_devices_count}` : null,
+ ].filter(Boolean).join('\n');
+
+ navigator.clipboard.writeText(lines).then(() => {
+ window.notify('success', 'Netzwerk-Konfiguration kopiert');
+ }).catch(() => {
+ window.notify('error', 'Kopieren fehlgeschlagen');
+ });
}
}
};