dec 5, 2024 In Homey, Shelly, Smarthome, Wiser Enheder kan falde af på ens Homey, det kan der være mange årsager til… dårlig dækning på wifi og zigbee netværk og hvad man nu ellers bruger af tilslutninger.Så kunne det måske være rart at få en besked hvis noget skulle gå offline!!Man kan oprette et script der kikke hele systemet igennem og så sender en besked enten som en meddelelse eller en push besked, eller måske begge dele.Du går i homey script og tilføjer et nyt script og kalder det for “OfflineEnheder” og opretter denne kode:async function checkOfflineDevices() { const devices = await Homey.devices.getDevices(); // Hent alle enheder const offlineDevices = []; // Liste til offline enheder // Gennemgå enhederne og tilføj offline enheder til listen for (const device of Object.values(devices)) { if (device.available === false) { offlineDevices.push(device.name); // Tilføj offline enheder til listen } } let result; if (offlineDevices.length > 0) { result = `Følgende enheder er offline: ${offlineDevices.join(', ')}`; } else { result = 'Alle enheder er online.'; } // Hent alle variabler const variables = await Homey.logic.getVariables(); let offlineDevicesVariable = null; // Gennemgå variablerne og find den med navnet 'Tjek offline enheder' for (const variable of Object.values(variables)) { if (variable.name === 'Tjek offline enheder') { offlineDevicesVariable = variable; break; } } console.log("Offline Devices Variable: ", offlineDevicesVariable); // Log for at tjekke variabelen if (!offlineDevicesVariable) { // Hvis variablen ikke findes, opret den try { const newVariable = await Homey.logic.createVariable({ name: 'Tjek offline enheder', type: 'string', value: result }); console.log('Oprettet variabel:', newVariable); } catch (err) { console.error('Fejl ved oprettelse af variabel:', err.message); } } else { // Hvis variablen findes, opdater dens værdi try { // Brug korrekt opdateringsmetode const updatedVariable = await Homey.logic.updateVariable({ id: offlineDevicesVariable.id, // ID skal sendes her variable: { // Send objektet som variabel value: result // Ny værdi skal sendes her } }); console.log('Opdateret variabel med ID:', offlineDevicesVariable.id, 'til værdi:', result); } catch (err) { console.error('Fejl ved opdatering af variabel:', err.message); } } return result; // Returner resultatet } return checkOfflineDevices(); // Kør scriptet Derefter opretter du en “tekst variabel” under variabler og begge steder navngiver du den “Tjek offline enheder” Så skal vi have lavet et flow der kalder på dette script og udføre denne handling, i push og meddelser du den variabel vi lige har lavet, dette går du ved at trykke på Tag ikonet og finder “Tjek offline enheder” Nu er du klar til at modtage beskeder.