Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Adapter: ioBroker.unifi

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    838

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    18
    1
    6.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.6k

Adapter: ioBroker.unifi

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
unifi
1.0k Beiträge 172 Kommentatoren 424.4k Aufrufe 93 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • thewhoboxT Offline
    thewhoboxT Offline
    thewhobox
    schrieb am zuletzt editiert von
    #396

    So hier nochmal mit Console Ausgaben nur wenn debug true ist.
    @dslraser bringt er bei dir auch was nach "getting status"?

    const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
    const unifi_username = "user";
    const unifi_password = "pass";
    const unifi_controller = "https://192.168.x.xx:xxxx";
    const wifi_id = "dsa4fsda6g46fdsg984";
    let cookies = [];
    let loggedIn = false;
    let debug = false;
    
    function log(message) {
       if(debug)
           console.log(message);
    }
    
    async function login() {
       return new Promise(async (resolve, reject) => {
           let resp = await request.post({
               resolveWithFullResponse: true,
               url: unifi_controller + "/api/login",
               body: JSON.stringify({ username: unifi_username, password: unifi_password }),
               headers: { 'Content-Type': 'application/json' }
           }).catch((e) => { log("login: reject"), reject(e) });
           
           if(resp != null) {
               log("login: Login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
               if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                   let set_cookies = resp.headers["set-cookie"];
                   for(i = 0; i < set_cookies.length; i++) {
                       let cookie = set_cookies[i];
                       cookie = cookie.split(";")[0];
                       cookies.push(cookie);
                   }
               } else {
                   log("login: no cookies to set!")
               }
               loggedIn = true;
               resolve();
           } else {
               log("login: rejected")
               reject("resp = null");
           }
       });
    }
    
    async function getStatus() {
       return new Promise(async (resolve, reject) => {
           log("nur mal so");
           if(!loggedIn) await login().catch((e) => reject(e));
           let resp = await request.get({
               url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
               headers: { Cookie: cookies.join("; ") }
           }).catch((e) => { log("getStatus reject " + e); reject(e) });
       
           log("got response " + JSON.stringify(resp));
           if(resp != null && resp.statusCode == 200) {
               log("Status erfolgreich geholt!");
               log(resp);
               let status = JSON.parse(resp);
               let wlanOn = status.data[0].enabled;
               log("WLAN ist: " + (wlanOn ? "an" : "aus"));
               resolve(wlanOn);
           } else {
               reject(JSON.parse(resp.body).meta.msg);
           }
       });
    }
    
    async function logout() {
       return new Promise(async (resolve, reject) => {
           let resp = await request.get({
               url: unifi_controller + "/logout",
               headers: { Cookie: cookies.join("; ") }
           }).catch((e) => reject(e));
           if(resp != null) {
               log("Du bist nun ausgeloggt.");
               log(resp);
               resolve();
           } else {
               reject("resp = null");
           }
       });
    }
    
    async function setWifi(enabled) {
       return new Promise(async (resolve, reject) => {
           log("setWifi: start set wifi");
           if(!loggedIn) { log("need to login"); await login().catch((e) => reject(e)); }
           log("setWifi: now setting wifi");
           let resp = request.post({
               url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
               body: JSON.stringify({ enabled }),
               headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
           }).catch((e) => { log("setWifi: rejected: " + e); reject(e) });
           log("setWifi: got response")
           if(resp != null) {
               log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
               log(resp);
               resolve();
           } else {
               log("setWifi: rejetced")
               log("resp: " + JSON.stringify(resp));
               reject("msg: " + JSON.parse(resp.body).meta.msg);
           }
       });
    }
    
    async function test() {
       log("starting test");
       await setWifi(true).catch((e) => log("reject1: " + e));
       log("getting status");
       let wlan = await getStatus().catch((e) => log("reject2: " + e));
       console.log("fin")
       console.log(wlan);
    }
    
    test()
    

    Meine Adapter: emby | discovery
    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    dslraserD liv-in-skyL 2 Antworten Letzte Antwort
    0
    • liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      schrieb am zuletzt editiert von
      #397

      was aber nervt - nicht script - es werden immer alle netzwerke aus und eingeschaltet - ist beim linux script auch - das scheint etwas mit unifi selbst zu tun zu haben

      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

      1 Antwort Letzte Antwort
      0
      • thewhoboxT thewhobox

        So hier nochmal mit Console Ausgaben nur wenn debug true ist.
        @dslraser bringt er bei dir auch was nach "getting status"?

        const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
        const unifi_username = "user";
        const unifi_password = "pass";
        const unifi_controller = "https://192.168.x.xx:xxxx";
        const wifi_id = "dsa4fsda6g46fdsg984";
        let cookies = [];
        let loggedIn = false;
        let debug = false;
        
        function log(message) {
           if(debug)
               console.log(message);
        }
        
        async function login() {
           return new Promise(async (resolve, reject) => {
               let resp = await request.post({
                   resolveWithFullResponse: true,
                   url: unifi_controller + "/api/login",
                   body: JSON.stringify({ username: unifi_username, password: unifi_password }),
                   headers: { 'Content-Type': 'application/json' }
               }).catch((e) => { log("login: reject"), reject(e) });
               
               if(resp != null) {
                   log("login: Login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
                   if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                       let set_cookies = resp.headers["set-cookie"];
                       for(i = 0; i < set_cookies.length; i++) {
                           let cookie = set_cookies[i];
                           cookie = cookie.split(";")[0];
                           cookies.push(cookie);
                       }
                   } else {
                       log("login: no cookies to set!")
                   }
                   loggedIn = true;
                   resolve();
               } else {
                   log("login: rejected")
                   reject("resp = null");
               }
           });
        }
        
        async function getStatus() {
           return new Promise(async (resolve, reject) => {
               log("nur mal so");
               if(!loggedIn) await login().catch((e) => reject(e));
               let resp = await request.get({
                   url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                   headers: { Cookie: cookies.join("; ") }
               }).catch((e) => { log("getStatus reject " + e); reject(e) });
           
               log("got response " + JSON.stringify(resp));
               if(resp != null && resp.statusCode == 200) {
                   log("Status erfolgreich geholt!");
                   log(resp);
                   let status = JSON.parse(resp);
                   let wlanOn = status.data[0].enabled;
                   log("WLAN ist: " + (wlanOn ? "an" : "aus"));
                   resolve(wlanOn);
               } else {
                   reject(JSON.parse(resp.body).meta.msg);
               }
           });
        }
        
        async function logout() {
           return new Promise(async (resolve, reject) => {
               let resp = await request.get({
                   url: unifi_controller + "/logout",
                   headers: { Cookie: cookies.join("; ") }
               }).catch((e) => reject(e));
               if(resp != null) {
                   log("Du bist nun ausgeloggt.");
                   log(resp);
                   resolve();
               } else {
                   reject("resp = null");
               }
           });
        }
        
        async function setWifi(enabled) {
           return new Promise(async (resolve, reject) => {
               log("setWifi: start set wifi");
               if(!loggedIn) { log("need to login"); await login().catch((e) => reject(e)); }
               log("setWifi: now setting wifi");
               let resp = request.post({
                   url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
                   body: JSON.stringify({ enabled }),
                   headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
               }).catch((e) => { log("setWifi: rejected: " + e); reject(e) });
               log("setWifi: got response")
               if(resp != null) {
                   log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                   log(resp);
                   resolve();
               } else {
                   log("setWifi: rejetced")
                   log("resp: " + JSON.stringify(resp));
                   reject("msg: " + JSON.parse(resp.body).meta.msg);
               }
           });
        }
        
        async function test() {
           log("starting test");
           await setWifi(true).catch((e) => log("reject1: " + e));
           log("getting status");
           let wlan = await getStatus().catch((e) => log("reject2: " + e));
           console.log("fin")
           console.log(wlan);
        }
        
        test()
        

        dslraserD Offline
        dslraserD Offline
        dslraser
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #398

        @thewhobox

        ich bin irgendwo nicht mit gekommen...?

        das passiert beim letzten Script

        javascript.0	2019-08-28 10:07:00.672	error	at ContextifyScript.Script.runInContext (vm.js:59:29)
        javascript.0	2019-08-28 10:07:00.672	error	at script.js.Heiko.Unifi.unifi_wifi:1:1
        javascript.0	2019-08-28 10:07:00.672	error	SyntaxError: Identifier 'log' has already been declared
        javascript.0	2019-08-28 10:07:00.672	error	^
        javascript.0	2019-08-28 10:07:00.672	error	const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
        javascript.0	2019-08-28 10:07:00.672	error	script.js.Heiko.Unifi.unifi_wifi: script.js.Heiko.Unifi.unifi_wifi:1
        
        thewhoboxT 1 Antwort Letzte Antwort
        0
        • thewhoboxT thewhobox

          So hier nochmal mit Console Ausgaben nur wenn debug true ist.
          @dslraser bringt er bei dir auch was nach "getting status"?

          const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
          const unifi_username = "user";
          const unifi_password = "pass";
          const unifi_controller = "https://192.168.x.xx:xxxx";
          const wifi_id = "dsa4fsda6g46fdsg984";
          let cookies = [];
          let loggedIn = false;
          let debug = false;
          
          function log(message) {
             if(debug)
                 console.log(message);
          }
          
          async function login() {
             return new Promise(async (resolve, reject) => {
                 let resp = await request.post({
                     resolveWithFullResponse: true,
                     url: unifi_controller + "/api/login",
                     body: JSON.stringify({ username: unifi_username, password: unifi_password }),
                     headers: { 'Content-Type': 'application/json' }
                 }).catch((e) => { log("login: reject"), reject(e) });
                 
                 if(resp != null) {
                     log("login: Login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
                     if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                         let set_cookies = resp.headers["set-cookie"];
                         for(i = 0; i < set_cookies.length; i++) {
                             let cookie = set_cookies[i];
                             cookie = cookie.split(";")[0];
                             cookies.push(cookie);
                         }
                     } else {
                         log("login: no cookies to set!")
                     }
                     loggedIn = true;
                     resolve();
                 } else {
                     log("login: rejected")
                     reject("resp = null");
                 }
             });
          }
          
          async function getStatus() {
             return new Promise(async (resolve, reject) => {
                 log("nur mal so");
                 if(!loggedIn) await login().catch((e) => reject(e));
                 let resp = await request.get({
                     url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                     headers: { Cookie: cookies.join("; ") }
                 }).catch((e) => { log("getStatus reject " + e); reject(e) });
             
                 log("got response " + JSON.stringify(resp));
                 if(resp != null && resp.statusCode == 200) {
                     log("Status erfolgreich geholt!");
                     log(resp);
                     let status = JSON.parse(resp);
                     let wlanOn = status.data[0].enabled;
                     log("WLAN ist: " + (wlanOn ? "an" : "aus"));
                     resolve(wlanOn);
                 } else {
                     reject(JSON.parse(resp.body).meta.msg);
                 }
             });
          }
          
          async function logout() {
             return new Promise(async (resolve, reject) => {
                 let resp = await request.get({
                     url: unifi_controller + "/logout",
                     headers: { Cookie: cookies.join("; ") }
                 }).catch((e) => reject(e));
                 if(resp != null) {
                     log("Du bist nun ausgeloggt.");
                     log(resp);
                     resolve();
                 } else {
                     reject("resp = null");
                 }
             });
          }
          
          async function setWifi(enabled) {
             return new Promise(async (resolve, reject) => {
                 log("setWifi: start set wifi");
                 if(!loggedIn) { log("need to login"); await login().catch((e) => reject(e)); }
                 log("setWifi: now setting wifi");
                 let resp = request.post({
                     url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
                     body: JSON.stringify({ enabled }),
                     headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                 }).catch((e) => { log("setWifi: rejected: " + e); reject(e) });
                 log("setWifi: got response")
                 if(resp != null) {
                     log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                     log(resp);
                     resolve();
                 } else {
                     log("setWifi: rejetced")
                     log("resp: " + JSON.stringify(resp));
                     reject("msg: " + JSON.parse(resp.body).meta.msg);
                 }
             });
          }
          
          async function test() {
             log("starting test");
             await setWifi(true).catch((e) => log("reject1: " + e));
             log("getting status");
             let wlan = await getStatus().catch((e) => log("reject2: " + e));
             console.log("fin")
             console.log(wlan);
          }
          
          test()
          

          liv-in-skyL Offline
          liv-in-skyL Offline
          liv-in-sky
          schrieb am zuletzt editiert von
          #399

          @thewhobox

          muss leider nochmal fragen - wenn ich nur getStatus() anstatt test() aufrufe, sollte das funktionieren - es kommt kein WLAN ist an oder aus

          10:05:22.860	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
          10:05:22.864	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:22.865	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:22.874	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:22.886	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:22.886	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
          10:05:22.886	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
          10:05:22.886	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
          10:05:22.886	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
          10:05:23.174	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
          10:05:23.174	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
          10:05:23.174	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
          10:05:23.174	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: Wifi wurde erfolgreich eingeschaltet
          10:05:23.175	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: {}
          10:05:23.175	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
          10:05:23.175	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
          10:05:23.183	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
          10:05:24.876	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
          10:05:24.895	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:24.919	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
          10:05:24.919	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
          10:05:24.919	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
          10:05:24.919	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
          10:05:24.919	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
          10:05:25.205	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
          10:05:25.205	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
          10:05:25.205	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
          10:05:25.205	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: Wifi wurde erfolgreich eingeschaltet
          10:05:25.206	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: {}
          10:05:25.206	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
          10:05:25.206	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
          10:05:25.214	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
          

          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

          1 Antwort Letzte Antwort
          0
          • dslraserD dslraser

            @thewhobox

            ich bin irgendwo nicht mit gekommen...?

            das passiert beim letzten Script

            javascript.0	2019-08-28 10:07:00.672	error	at ContextifyScript.Script.runInContext (vm.js:59:29)
            javascript.0	2019-08-28 10:07:00.672	error	at script.js.Heiko.Unifi.unifi_wifi:1:1
            javascript.0	2019-08-28 10:07:00.672	error	SyntaxError: Identifier 'log' has already been declared
            javascript.0	2019-08-28 10:07:00.672	error	^
            javascript.0	2019-08-28 10:07:00.672	error	const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
            javascript.0	2019-08-28 10:07:00.672	error	script.js.Heiko.Unifi.unifi_wifi: script.js.Heiko.Unifi.unifi_wifi:1
            
            thewhoboxT Offline
            thewhoboxT Offline
            thewhobox
            schrieb am zuletzt editiert von
            #400

            @dslraser Nein war mein Fehler gerade, jetzt nochmal:
            @liv-in-sky laut Log hast du aber test aufgerufen? Hätte aber trotzdem nicht funktioniert, sollte jetzt aber gefixt sein.

            const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
            const unifi_username = "user";
            const unifi_password = "pass";
            const unifi_controller = "https://192.168.x.xx:xxxx";
            const wifi_id = "dsa4fsda6g46fdsg984";
            let cookies = [];
            let loggedIn = false;
            let debug = true;
            
            function dlog(message) {
               if(debug)
                   console.log(message);
            }
            
            async function login() {
               return new Promise(async (resolve, reject) => {
                   let resp = await request.post({
                       resolveWithFullResponse: true,
                       url: unifi_controller + "/api/login",
                       body: JSON.stringify({ username: unifi_username, password: unifi_password }),
                       headers: { 'Content-Type': 'application/json' }
                   }).catch((e) => { dlog("login: reject"), reject(e) });
                   
                   if(resp != null) {
                       dlog("login: login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
                       if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                           let set_cookies = resp.headers["set-cookie"];
                           for(i = 0; i < set_cookies.length; i++) {
                               let cookie = set_cookies[i];
                               cookie = cookie.split(";")[0];
                               cookies.push(cookie);
                           }
                       } else {
                           dlog("login: no cookies to set!")
                       }
                       loggedIn = true;
                       resolve();
                   } else {
                       dlog("login: rejected")
                       reject("resp = null");
                   }
               });
            }
            
            async function getStatus() {
               return new Promise(async (resolve, reject) => {
                   dlog("nur mal so");
                   if(!loggedIn) await login().catch((e) => reject(e));
                   let resp = await request.get({
                       url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                       headers: { Cookie: cookies.join("; ") }
                   }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
               
                   dlog("got response " + JSON.stringify(resp));
                   if(resp != null && resp.meta.rc == "ok") {
                       dlog("Status erfolgreich geholt!");
                       dlog(resp);
                       let wlanOn = resp.data[0].enabled;
                       dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                       resolve(wlanOn);
                   } else {
                       reject(JSON.stringify(resp));
                   }
            
                   let wlanOn = resp.data[0].enabled;
                   dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
               });
            }
            
            async function dlogout() {
               return new Promise(async (resolve, reject) => {
                   let resp = await request.get({
                       url: unifi_controller + "/dlogout",
                       headers: { Cookie: cookies.join("; ") }
                   }).catch((e) => reject(e));
                   if(resp != null) {
                       dlog("Du bist nun ausgedloggt.");
                       dlog(resp);
                       resolve();
                   } else {
                       reject("resp = null");
                   }
               });
            }
            
            async function setWifi(enabled) {
               return new Promise(async (resolve, reject) => {
                   dlog("setWifi: start set wifi");
                   if(!loggedIn) { dlog("need to login"); await login().catch((e) => reject(e)); }
                   dlog("setWifi: now setting wifi");
                   let resp = request.post({
                       url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
                       body: JSON.stringify({ enabled }),
                       headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                   }).catch((e) => { dlog("setWifi: rejected: " + e); reject(e) });
                   dlog("setWifi: got response")
                   if(resp != null) {
                       dlog("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                       dlog(resp);
                       resolve();
                   } else {
                       dlog("setWifi: rejetced")
                       dlog("resp: " + JSON.stringify(resp));
                       reject("msg: " + JSON.parse(resp.body).meta.msg);
                   }
               });
            }
            
            async function test() {
               dlog("starting test");
               await setWifi(true).catch((e) => dlog("reject1: " + e));
               dlog("getting status");
               let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
               console.log("fin")
               console.log(wlan);
            }
            
            test()
            

            Meine Adapter: emby | discovery
            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            liv-in-skyL dslraserD 2 Antworten Letzte Antwort
            0
            • thewhoboxT thewhobox

              @dslraser Nein war mein Fehler gerade, jetzt nochmal:
              @liv-in-sky laut Log hast du aber test aufgerufen? Hätte aber trotzdem nicht funktioniert, sollte jetzt aber gefixt sein.

              const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
              const unifi_username = "user";
              const unifi_password = "pass";
              const unifi_controller = "https://192.168.x.xx:xxxx";
              const wifi_id = "dsa4fsda6g46fdsg984";
              let cookies = [];
              let loggedIn = false;
              let debug = true;
              
              function dlog(message) {
                 if(debug)
                     console.log(message);
              }
              
              async function login() {
                 return new Promise(async (resolve, reject) => {
                     let resp = await request.post({
                         resolveWithFullResponse: true,
                         url: unifi_controller + "/api/login",
                         body: JSON.stringify({ username: unifi_username, password: unifi_password }),
                         headers: { 'Content-Type': 'application/json' }
                     }).catch((e) => { dlog("login: reject"), reject(e) });
                     
                     if(resp != null) {
                         dlog("login: login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
                         if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                             let set_cookies = resp.headers["set-cookie"];
                             for(i = 0; i < set_cookies.length; i++) {
                                 let cookie = set_cookies[i];
                                 cookie = cookie.split(";")[0];
                                 cookies.push(cookie);
                             }
                         } else {
                             dlog("login: no cookies to set!")
                         }
                         loggedIn = true;
                         resolve();
                     } else {
                         dlog("login: rejected")
                         reject("resp = null");
                     }
                 });
              }
              
              async function getStatus() {
                 return new Promise(async (resolve, reject) => {
                     dlog("nur mal so");
                     if(!loggedIn) await login().catch((e) => reject(e));
                     let resp = await request.get({
                         url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                         headers: { Cookie: cookies.join("; ") }
                     }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                 
                     dlog("got response " + JSON.stringify(resp));
                     if(resp != null && resp.meta.rc == "ok") {
                         dlog("Status erfolgreich geholt!");
                         dlog(resp);
                         let wlanOn = resp.data[0].enabled;
                         dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                         resolve(wlanOn);
                     } else {
                         reject(JSON.stringify(resp));
                     }
              
                     let wlanOn = resp.data[0].enabled;
                     dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                 });
              }
              
              async function dlogout() {
                 return new Promise(async (resolve, reject) => {
                     let resp = await request.get({
                         url: unifi_controller + "/dlogout",
                         headers: { Cookie: cookies.join("; ") }
                     }).catch((e) => reject(e));
                     if(resp != null) {
                         dlog("Du bist nun ausgedloggt.");
                         dlog(resp);
                         resolve();
                     } else {
                         reject("resp = null");
                     }
                 });
              }
              
              async function setWifi(enabled) {
                 return new Promise(async (resolve, reject) => {
                     dlog("setWifi: start set wifi");
                     if(!loggedIn) { dlog("need to login"); await login().catch((e) => reject(e)); }
                     dlog("setWifi: now setting wifi");
                     let resp = request.post({
                         url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
                         body: JSON.stringify({ enabled }),
                         headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                     }).catch((e) => { dlog("setWifi: rejected: " + e); reject(e) });
                     dlog("setWifi: got response")
                     if(resp != null) {
                         dlog("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                         dlog(resp);
                         resolve();
                     } else {
                         dlog("setWifi: rejetced")
                         dlog("resp: " + JSON.stringify(resp));
                         reject("msg: " + JSON.parse(resp.body).meta.msg);
                     }
                 });
              }
              
              async function test() {
                 dlog("starting test");
                 await setWifi(true).catch((e) => dlog("reject1: " + e));
                 dlog("getting status");
                 let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
                 console.log("fin")
                 console.log(wlan);
              }
              
              test()
              

              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #401

              @thewhobox sorry falsches log

              Image 3.png

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              thewhoboxT 1 Antwort Letzte Antwort
              0
              • liv-in-skyL liv-in-sky

                @thewhobox sorry falsches log

                Image 3.png

                thewhoboxT Offline
                thewhoboxT Offline
                thewhobox
                schrieb am zuletzt editiert von
                #402

                @liv-in-sky Ah okay. Wie gesagt, das hätte auch nicht klappen können^^
                Versuch es mal mit dem neuen Skript von eins oben drüber.

                Meine Adapter: emby | discovery
                Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                liv-in-skyL 1 Antwort Letzte Antwort
                0
                • thewhoboxT thewhobox

                  @liv-in-sky Ah okay. Wie gesagt, das hätte auch nicht klappen können^^
                  Versuch es mal mit dem neuen Skript von eins oben drüber.

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von
                  #403

                  @thewhobox war das neuste script

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  1 Antwort Letzte Antwort
                  0
                  • thewhoboxT thewhobox

                    @dslraser Nein war mein Fehler gerade, jetzt nochmal:
                    @liv-in-sky laut Log hast du aber test aufgerufen? Hätte aber trotzdem nicht funktioniert, sollte jetzt aber gefixt sein.

                    const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                    const unifi_username = "user";
                    const unifi_password = "pass";
                    const unifi_controller = "https://192.168.x.xx:xxxx";
                    const wifi_id = "dsa4fsda6g46fdsg984";
                    let cookies = [];
                    let loggedIn = false;
                    let debug = true;
                    
                    function dlog(message) {
                       if(debug)
                           console.log(message);
                    }
                    
                    async function login() {
                       return new Promise(async (resolve, reject) => {
                           let resp = await request.post({
                               resolveWithFullResponse: true,
                               url: unifi_controller + "/api/login",
                               body: JSON.stringify({ username: unifi_username, password: unifi_password }),
                               headers: { 'Content-Type': 'application/json' }
                           }).catch((e) => { dlog("login: reject"), reject(e) });
                           
                           if(resp != null) {
                               dlog("login: login war erfolgreich! " + ((resp.headers && resp.headers.hasOwnProperty("set-cookie")) ? "Mit Cookies":"Ohne Cookies"));
                               if(resp.headers && resp.headers.hasOwnProperty("set-cookie")) {
                                   let set_cookies = resp.headers["set-cookie"];
                                   for(i = 0; i < set_cookies.length; i++) {
                                       let cookie = set_cookies[i];
                                       cookie = cookie.split(";")[0];
                                       cookies.push(cookie);
                                   }
                               } else {
                                   dlog("login: no cookies to set!")
                               }
                               loggedIn = true;
                               resolve();
                           } else {
                               dlog("login: rejected")
                               reject("resp = null");
                           }
                       });
                    }
                    
                    async function getStatus() {
                       return new Promise(async (resolve, reject) => {
                           dlog("nur mal so");
                           if(!loggedIn) await login().catch((e) => reject(e));
                           let resp = await request.get({
                               url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                               headers: { Cookie: cookies.join("; ") }
                           }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                       
                           dlog("got response " + JSON.stringify(resp));
                           if(resp != null && resp.meta.rc == "ok") {
                               dlog("Status erfolgreich geholt!");
                               dlog(resp);
                               let wlanOn = resp.data[0].enabled;
                               dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                               resolve(wlanOn);
                           } else {
                               reject(JSON.stringify(resp));
                           }
                    
                           let wlanOn = resp.data[0].enabled;
                           dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                       });
                    }
                    
                    async function dlogout() {
                       return new Promise(async (resolve, reject) => {
                           let resp = await request.get({
                               url: unifi_controller + "/dlogout",
                               headers: { Cookie: cookies.join("; ") }
                           }).catch((e) => reject(e));
                           if(resp != null) {
                               dlog("Du bist nun ausgedloggt.");
                               dlog(resp);
                               resolve();
                           } else {
                               reject("resp = null");
                           }
                       });
                    }
                    
                    async function setWifi(enabled) {
                       return new Promise(async (resolve, reject) => {
                           dlog("setWifi: start set wifi");
                           if(!loggedIn) { dlog("need to login"); await login().catch((e) => reject(e)); }
                           dlog("setWifi: now setting wifi");
                           let resp = request.post({
                               url: unifi_controller + "/api/s/default/upd/wlanconf/" + wifi_id,
                               body: JSON.stringify({ enabled }),
                               headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                           }).catch((e) => { dlog("setWifi: rejected: " + e); reject(e) });
                           dlog("setWifi: got response")
                           if(resp != null) {
                               dlog("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                               dlog(resp);
                               resolve();
                           } else {
                               dlog("setWifi: rejetced")
                               dlog("resp: " + JSON.stringify(resp));
                               reject("msg: " + JSON.parse(resp.body).meta.msg);
                           }
                       });
                    }
                    
                    async function test() {
                       dlog("starting test");
                       await setWifi(true).catch((e) => dlog("reject1: " + e));
                       dlog("getting status");
                       let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
                       console.log("fin")
                       console.log(wlan);
                    }
                    
                    test()
                    

                    dslraserD Offline
                    dslraserD Offline
                    dslraser
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #404

                    @thewhobox

                    in dem Log steht nun auch der Netzwerkname und auch das Passwort

                    28.8.2019, 10:18:18.764	[info ]: javascript.0 Stop script script.js.Heiko.Unifi.unifi_wifi
                    28.8.2019, 10:18:18.784	[info ]: javascript.0 Start javascript script.js.Heiko.Unifi.unifi_wifi
                    28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: starting test
                    28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: start set wifi
                    28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: need to login
                    28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: registered 0 subscriptions and 0 schedules
                    28.8.2019, 10:18:19.083	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: now setting wifi
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: got response
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: Wifi wurde erfolgreich eingeschaltet
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: {}
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: getting status
                    28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                    28.8.2019, 10:18:19.123	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                    

                    thewhoboxT 1 Antwort Letzte Antwort
                    0
                    • dslraserD dslraser

                      @thewhobox

                      in dem Log steht nun auch der Netzwerkname und auch das Passwort

                      28.8.2019, 10:18:18.764	[info ]: javascript.0 Stop script script.js.Heiko.Unifi.unifi_wifi
                      28.8.2019, 10:18:18.784	[info ]: javascript.0 Start javascript script.js.Heiko.Unifi.unifi_wifi
                      28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: starting test
                      28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: start set wifi
                      28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: need to login
                      28.8.2019, 10:18:18.785	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: registered 0 subscriptions and 0 schedules
                      28.8.2019, 10:18:19.083	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: now setting wifi
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: got response
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: Wifi wurde erfolgreich eingeschaltet
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: {}
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: getting status
                      28.8.2019, 10:18:19.084	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                      28.8.2019, 10:18:19.123	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                      

                      thewhoboxT Offline
                      thewhoboxT Offline
                      thewhobox
                      schrieb am zuletzt editiert von
                      #405

                      @liv-in-sky Hmm okay, da fehlt mir das get resonse wie bei @dslraser
                      Ersetz mal die getStatus funktion

                      async function getStatus() {
                          return new Promise(async (resolve, reject) => {
                              dlog("nur mal so");
                              if(!loggedIn) await login().catch((e) => reject(e));
                              let resp = await request.get({
                                  url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                  headers: { Cookie: cookies.join("; ") }
                              }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                          
                              dlog("got response " + JSON.stringify(resp));
                              if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                  dlog("Status erfolgreich geholt!");
                                  dlog(resp);
                                  let wlanOn = resp.data[0].enabled;
                                  dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                  resolve(wlanOn);
                              } else {
                                  dlog("nicht ok...")
                                  reject(JSON.stringify(resp));
                              }
                      
                              let wlanOn = resp.data[0].enabled;
                              dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                          });
                      }
                      

                      Meine Adapter: emby | discovery
                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      liv-in-skyL dslraserD 3 Antworten Letzte Antwort
                      0
                      • thewhoboxT thewhobox

                        @liv-in-sky Hmm okay, da fehlt mir das get resonse wie bei @dslraser
                        Ersetz mal die getStatus funktion

                        async function getStatus() {
                            return new Promise(async (resolve, reject) => {
                                dlog("nur mal so");
                                if(!loggedIn) await login().catch((e) => reject(e));
                                let resp = await request.get({
                                    url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                    headers: { Cookie: cookies.join("; ") }
                                }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                            
                                dlog("got response " + JSON.stringify(resp));
                                if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                    dlog("Status erfolgreich geholt!");
                                    dlog(resp);
                                    let wlanOn = resp.data[0].enabled;
                                    dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                    resolve(wlanOn);
                                } else {
                                    dlog("nicht ok...")
                                    reject(JSON.stringify(resp));
                                }
                        
                                let wlanOn = resp.data[0].enabled;
                                dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                            });
                        }
                        

                        liv-in-skyL Offline
                        liv-in-skyL Offline
                        liv-in-sky
                        schrieb am zuletzt editiert von
                        #406

                        @thewhobox
                        Image 4.png

                        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                        1 Antwort Letzte Antwort
                        0
                        • thewhoboxT thewhobox

                          @liv-in-sky Hmm okay, da fehlt mir das get resonse wie bei @dslraser
                          Ersetz mal die getStatus funktion

                          async function getStatus() {
                              return new Promise(async (resolve, reject) => {
                                  dlog("nur mal so");
                                  if(!loggedIn) await login().catch((e) => reject(e));
                                  let resp = await request.get({
                                      url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                      headers: { Cookie: cookies.join("; ") }
                                  }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                              
                                  dlog("got response " + JSON.stringify(resp));
                                  if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                      dlog("Status erfolgreich geholt!");
                                      dlog(resp);
                                      let wlanOn = resp.data[0].enabled;
                                      dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                      resolve(wlanOn);
                                  } else {
                                      dlog("nicht ok...")
                                      reject(JSON.stringify(resp));
                                  }
                          
                                  let wlanOn = resp.data[0].enabled;
                                  dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                              });
                          }
                          

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #407

                          @thewhobox sorry - hab beim kopieren das let cokkies... übersehen

                          so sieht es aus:
                          Image 6.png

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Antwort Letzte Antwort
                          0
                          • thewhoboxT thewhobox

                            @liv-in-sky Hmm okay, da fehlt mir das get resonse wie bei @dslraser
                            Ersetz mal die getStatus funktion

                            async function getStatus() {
                                return new Promise(async (resolve, reject) => {
                                    dlog("nur mal so");
                                    if(!loggedIn) await login().catch((e) => reject(e));
                                    let resp = await request.get({
                                        url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                        headers: { Cookie: cookies.join("; ") }
                                    }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                                
                                    dlog("got response " + JSON.stringify(resp));
                                    if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                        dlog("Status erfolgreich geholt!");
                                        dlog(resp);
                                        let wlanOn = resp.data[0].enabled;
                                        dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                        resolve(wlanOn);
                                    } else {
                                        dlog("nicht ok...")
                                        reject(JSON.stringify(resp));
                                    }
                            
                                    let wlanOn = resp.data[0].enabled;
                                    dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                });
                            }
                            

                            dslraserD Offline
                            dslraserD Offline
                            dslraser
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #408

                            @thewhobox

                            28.8.2019, 10:32:04.140	[info ]: javascript.0 Stop script script.js.Heiko.Unifi.unifi_wifi
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 Start javascript script.js.Heiko.Unifi.unifi_wifi
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: starting test
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: start set wifi
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: need to login
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                            28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: registered 0 subscriptions and 0 schedules
                            28.8.2019, 10:32:04.530	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                            28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                            28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: now setting wifi
                            28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: got response
                            28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: Wifi wurde erfolgreich eingeschaltet
                            28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: {}
                            28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: getting status
                            28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                            28.8.2019, 10:32:04.582	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                            28.8.2019, 10:32:04.582	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nicht ok...
                            28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                            28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nicht ok...
                            28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: reject2: "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                            28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: fin
                            28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: undefined
                            

                            thewhoboxT 1 Antwort Letzte Antwort
                            0
                            • dslraserD dslraser

                              @thewhobox

                              28.8.2019, 10:32:04.140	[info ]: javascript.0 Stop script script.js.Heiko.Unifi.unifi_wifi
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 Start javascript script.js.Heiko.Unifi.unifi_wifi
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: starting test
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: start set wifi
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: need to login
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                              28.8.2019, 10:32:04.168	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: registered 0 subscriptions and 0 schedules
                              28.8.2019, 10:32:04.530	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                              28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: login: login war erfolgreich! Mit Cookies
                              28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: now setting wifi
                              28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: got response
                              28.8.2019, 10:32:04.552	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: setWifi: Wifi wurde erfolgreich eingeschaltet
                              28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: {}
                              28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: getting status
                              28.8.2019, 10:32:04.553	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nur mal so
                              28.8.2019, 10:32:04.582	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                              28.8.2019, 10:32:04.582	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nicht ok...
                              28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                              28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: nicht ok...
                              28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: reject2: "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d3c5be0bc96040011365fe5\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5d3b2323bc9604001132d2c5\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"xxx Gäste\",\"is_guest\":true,\"x_passphrase\":\"xxx\",\"wlangroup_id\":\"5d3b2323bc9604001132d2c6\",\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5d3b231abc9604001132d2b8\",\"x_iapp_key\":\"0613db2263d118bc9e21936a202a964e\",\"fast_roaming_enabled\":false,\"no2ghz_oui\":true}]}"
                              28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: fin
                              28.8.2019, 10:32:04.599	[info ]: javascript.0 script.js.Heiko.Unifi.unifi_wifi: undefined
                              

                              thewhoboxT Offline
                              thewhoboxT Offline
                              thewhobox
                              schrieb am zuletzt editiert von
                              #409

                              @liv-in-sky Das sieht schon besser aus :)
                              Jetzt muss ich noch die abfrage richtig machen, dass er weiß, dass es geklappt hat.

                              async function getStatus() {
                                  return new Promise(async (resolve, reject) => {
                                      dlog("nur mal so");
                                      if(!loggedIn) await login().catch((e) => reject(e));
                                      let resp = await request.get({
                                          url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                          headers: { Cookie: cookies.join("; ") }
                                      }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                                  
                                      dlog("got response " + JSON.stringify(resp));
                                      dlog(resp.meta);
                                      dlog(resp.meta.rc);
                                      
                                      let wlanOn = resp.data[0].enabled;
                                      dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                      if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                          dlog("Status erfolgreich geholt!");
                                          dlog(resp);
                                          let wlanOn = resp.data[0].enabled;
                                          dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                          resolve(wlanOn);
                                      } else {
                                          dlog("nicht ok...")
                                          
                                          reject(JSON.stringify(resp));
                                      }
                                  });
                              }
                              

                              Meine Adapter: emby | discovery
                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              liv-in-skyL 1 Antwort Letzte Antwort
                              0
                              • thewhoboxT thewhobox

                                @liv-in-sky Das sieht schon besser aus :)
                                Jetzt muss ich noch die abfrage richtig machen, dass er weiß, dass es geklappt hat.

                                async function getStatus() {
                                    return new Promise(async (resolve, reject) => {
                                        dlog("nur mal so");
                                        if(!loggedIn) await login().catch((e) => reject(e));
                                        let resp = await request.get({
                                            url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                            headers: { Cookie: cookies.join("; ") }
                                        }).catch((e) => { dlog("getStatus reject " + e); reject(e) });
                                    
                                        dlog("got response " + JSON.stringify(resp));
                                        dlog(resp.meta);
                                        dlog(resp.meta.rc);
                                        
                                        let wlanOn = resp.data[0].enabled;
                                        dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                        if(resp != null && resp.meta && resp.meta.rc == "ok") {
                                            dlog("Status erfolgreich geholt!");
                                            dlog(resp);
                                            let wlanOn = resp.data[0].enabled;
                                            dlog("WLAN ist: " + (wlanOn ? "an" : "aus"));
                                            resolve(wlanOn);
                                        } else {
                                            dlog("nicht ok...")
                                            
                                            reject(JSON.stringify(resp));
                                        }
                                    });
                                }
                                

                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                schrieb am zuletzt editiert von
                                #410

                                @thewhobox

                                10:37:35.317	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                                10:37:35.319	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:35.318	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:35.324	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:35.335	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                10:37:35.608	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                10:37:37.334	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                                10:37:37.373	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:37.391	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                10:37:37.646	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                

                                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                thewhoboxT dslraserD 2 Antworten Letzte Antwort
                                0
                                • liv-in-skyL liv-in-sky

                                  @thewhobox

                                  10:37:35.317	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                                  10:37:35.319	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:35.318	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:35.324	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:35.335	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                  10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                  10:37:35.608	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                  10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                  10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                  10:37:37.334	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                                  10:37:37.373	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:37.391	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                  10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                  10:37:37.646	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                  10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                  10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                  

                                  thewhoboxT Offline
                                  thewhoboxT Offline
                                  thewhobox
                                  schrieb am zuletzt editiert von
                                  #411

                                  @liv-in-sky Boah ich hasse es, dass da keine Fehlermeldungen kommen.....
                                  Glaub aber hab den Fehler gefunden. Kurz die Zeilen ergenzen.

                                  dlog("got response " + JSON.stringify(resp));
                                  dlog(typeof resp);
                                  resp = JSON.parse(resp);
                                  dlog(resp.meta);
                                  dlog(resp.meta.rc);
                                  

                                  Meine Adapter: emby | discovery
                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  dslraserD 1 Antwort Letzte Antwort
                                  1
                                  • liv-in-skyL liv-in-sky

                                    @thewhobox

                                    10:37:35.317	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                                    10:37:35.319	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:35.318	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:35.324	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:35.335	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                    10:37:35.335	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                    10:37:35.608	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                    10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                    10:37:35.616	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                    10:37:37.334	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                                    10:37:37.373	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:37.391	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: nur mal so
                                    10:37:37.391	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                    10:37:37.646	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: login war erfolgreich! Mit Cookies
                                    10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: got response "{\"meta\":{\"rc\":\"ok\"},\"data\":[{\"_id\":\"5d6512a897578401d1edd761\",\"enabled\":true,\"security\":\"open\",\"wep_idx\":1,\"wpa_mode\":\"wpa2\",\"wpa_enc\":\"ccmp\",\"usergroup_id\":\"5cadc7f73b6a3967dd7e5376\",\"dtim_mode\":\"default\",\"dtim_ng\":1,\"dtim_na\":1,\"minrate_ng_enabled\":false,\"minrate_ng_advertising_rates\":false,\"minrate_ng_data_rate_kbps\":1000,\"minrate_ng_cck_rates_enabled\":true,\"minrate_na_enabled\":false,\"minrate_na_advertising_rates\":false,\"minrate_na_data_rate_kbps\":6000,\"mac_filter_enabled\":false,\"mac_filter_policy\":\"allow\",\"mac_filter_list\":[],\"bc_filter_enabled\":false,\"bc_filter_list\":[],\"group_rekey\":3600,\"name\":\"DragonRootGuest\",\"wlangroup_id\":\"5cadc7f73b6a3967dd7e5377\",\"fast_roaming_enabled\":false,\"schedule\":[],\"minrate_ng_mgmt_rate_kbps\":1000,\"minrate_na_mgmt_rate_kbps\":6000,\"minrate_ng_beacon_rate_kbps\":1000,\"minrate_na_beacon_rate_kbps\":6000,\"site_id\":\"5cadc7f53b6a3967dd7e5369\",\"x_iapp_key\":\"cf930ad9a6750bd1d7c2f8676f775668\",\"name_combine_enabled\":true}]}"
                                    10:37:37.656	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: undefined
                                    

                                    dslraserD Offline
                                    dslraserD Offline
                                    dslraser
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #412

                                    @liv-in-sky

                                    ich spare mir jetzt die gleichen Logs, sieht bei mir genau so aus. Nur wenn ich andere Ergebnisse bekomme sage ich Bescheid

                                    1 Antwort Letzte Antwort
                                    0
                                    • thewhoboxT thewhobox

                                      @liv-in-sky Boah ich hasse es, dass da keine Fehlermeldungen kommen.....
                                      Glaub aber hab den Fehler gefunden. Kurz die Zeilen ergenzen.

                                      dlog("got response " + JSON.stringify(resp));
                                      dlog(typeof resp);
                                      resp = JSON.parse(resp);
                                      dlog(resp.meta);
                                      dlog(resp.meta.rc);
                                      
                                      dslraserD Offline
                                      dslraserD Offline
                                      dslraser
                                      Forum Testing Most Active
                                      schrieb am zuletzt editiert von
                                      #413

                                      @thewhobox

                                      javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
                                      
                                      liv-in-skyL 2 Antworten Letzte Antwort
                                      0
                                      • dslraserD dslraser

                                        @thewhobox

                                        javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
                                        
                                        liv-in-skyL Offline
                                        liv-in-skyL Offline
                                        liv-in-sky
                                        schrieb am zuletzt editiert von
                                        #414

                                        @dslraser dito

                                        nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                        1 Antwort Letzte Antwort
                                        0
                                        • dslraserD dslraser

                                          @thewhobox

                                          javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
                                          
                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von
                                          #415

                                          @dslraser

                                          schalten sich bei dir auch alle netzwerke ab und an - nicht nur das gäste netzwerk - es scheint. als ob unifi einen restart macht nach dem setting

                                          schalte ich mit script gästenetzwerk ein - werden beide netze restartet und das gästenetzwerk ist an - hauptnetz ist an
                                          schalte ich mit script gästenetzwerk aus- werden beide netze restartet und das gästenetzwerk ist aus - hauptnetz ist an

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                          dslraserD 2 Antworten Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          462

                                          Online

                                          32.8k

                                          Benutzer

                                          82.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe