Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Adapter: ioBroker.unifi

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.0k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.8k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.0k

Adapter: ioBroker.unifi

Adapter: ioBroker.unifi

Scheduled Pinned Locked Moved ioBroker Allgemein
unifi
1.0k Posts 172 Posters 392.5k Views 93 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • 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
    wrote on last edited by
    #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 Reply Last reply
    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
      wrote on last edited by
      #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 Reply Last reply
      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
        wrote on last edited by
        #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 Replies Last reply
        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
          wrote on last edited by
          #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 Reply Last reply
          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
            wrote on last edited by
            #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 Reply Last reply
            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
              wrote on last edited by
              #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 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                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
                  wrote on last edited by
                  #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 Replies Last reply
                  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
                    wrote on last edited by
                    #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 Reply Last reply
                    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
                      wrote on last edited by
                      #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 Reply Last reply
                      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
                        wrote on last edited by
                        #413

                        @thewhobox

                        javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
                        
                        liv-in-skyL 2 Replies Last reply
                        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
                          wrote on last edited by
                          #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 Reply Last reply
                          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
                            wrote on last edited by
                            #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 Replies Last reply
                            0
                            • liv-in-skyL liv-in-sky

                              @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

                              dslraserD Offline
                              dslraserD Offline
                              dslraser
                              Forum Testing Most Active
                              wrote on last edited by
                              #416

                              @liv-in-sky
                              ja, das ist leider so, weil dann komplett neu Provisioniert wird.

                              1 Reply Last reply
                              0
                              • liv-in-skyL liv-in-sky

                                @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

                                dslraserD Offline
                                dslraserD Offline
                                dslraser
                                Forum Testing Most Active
                                wrote on last edited by
                                #417

                                @liv-in-sky sagte in Adapter: ioBroker.unifi:

                                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

                                achso, wenn ich ein WLAN, egal welches an oder ausschalte wird neu provisioniert, aber das nicht ausgeschaltete kommt dann nach dem provisionieren wieder. Nur verlieren alle Geräte kurz die Verbindung...zu mindestens der Rechner an dem ich gerade binn, dauert nur immer einen Moment

                                1 Reply Last reply
                                0
                                • liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  wrote on last edited by
                                  #418

                                  @thewhobox

                                  vielen vielen dank für deine zeit, die du investiert hast - wenn es deine zeit und lust erlaubt wäre noch ein zusätzliche info hilfreich:

                                  wäre es möglich eine liste der angemeldeten geräte zu bekommen

                                  mehr info würde ich garnicht brauchen

                                  wenn das zu unverschämt ist, auch kein thema - bin froh, dass das was wir jetzt haben, funktioniert

                                  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 Reply Last reply
                                  0
                                  • dslraserD Offline
                                    dslraserD Offline
                                    dslraser
                                    Forum Testing Most Active
                                    wrote on last edited by
                                    #419

                                    @thewhobox
                                    Ja, von mir auch ein herzlichen Dank für Deine Mühe.
                                    Dem Wunsch von @liv-in-sky würde ich mich anschließen. Das sind bei mir auch alle Daten die ich bräuchte.
                                    👍👍👍

                                    1 Reply Last reply
                                    0
                                    • liv-in-skyL liv-in-sky

                                      @thewhobox

                                      vielen vielen dank für deine zeit, die du investiert hast - wenn es deine zeit und lust erlaubt wäre noch ein zusätzliche info hilfreich:

                                      wäre es möglich eine liste der angemeldeten geräte zu bekommen

                                      mehr info würde ich garnicht brauchen

                                      wenn das zu unverschämt ist, auch kein thema - bin froh, dass das was wir jetzt haben, funktioniert

                                      thewhoboxT Offline
                                      thewhoboxT Offline
                                      thewhobox
                                      wrote on last edited by
                                      #420

                                      @liv-in-sky Gerne doch.
                                      Ich schau mir nachher mal das verlinkte Skript an ob die das haben. Wenn ja, dann kann ich das mit einbauen.

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

                                      dslraserD 1 Reply Last reply
                                      2
                                      • thewhoboxT thewhobox

                                        @liv-in-sky Gerne doch.
                                        Ich schau mir nachher mal das verlinkte Skript an ob die das haben. Wenn ja, dann kann ich das mit einbauen.

                                        dslraserD Offline
                                        dslraserD Offline
                                        dslraser
                                        Forum Testing Most Active
                                        wrote on last edited by
                                        #421

                                        @thewhobox
                                        @liv-in-sky

                                        ich habe noch eine Frage, für Euch wahrscheinlich simpel. Wie bekomme ich jetzt den Status des WLAN aus dem Log in einen eigenen Datenpunkt ?
                                        Ich habe mir drei Datenpunkte in das Script eingebaut. Schalten funktioniert.👍
                                        Aber wie mache ich das mit dem Status aus dem Log

                                        on({id:'javascript.0.Eigene_Datenpunkte.25Unifi_Wifi.02wifi_an'/*Unifi Wifi an*/, val: true, change: 'any'}, wifi_an);
                                        on({id:'javascript.0.Eigene_Datenpunkte.25Unifi_Wifi.03wifi_aus'/*Unifi Wifi aus*/, val: true, change: 'any'}, wifi_aus);
                                        //Datenpunkt für Wifi Status erstellen
                                        createState("Eigene_Datenpunkte.25Unifi_Wifi.01wifi_Status",'nicht bekannt', {
                                            name: 'Unifi Wifi Status', 
                                            role: 'string',
                                            read:  true, 
                                            write: true,
                                        });
                                        
                                        //Datenpunkt Button für Wifi an erstellen
                                        createState("Eigene_Datenpunkte.25Unifi_Wifi.02wifi_an", {
                                            name: 'Unifi Wifi an', 
                                            role: 'button',
                                            read:  true, 
                                            write: true,
                                            type: "boolean",
                                            "smartName": {
                                            "de": "02Gäste Wlan an",
                                            "smartType": "SWITCH"
                                        }
                                        });
                                        
                                        //Datenpunkt Button für Wifi aus erstellen
                                        createState("Eigene_Datenpunkte.25Unifi_Wifi.03wifi_aus", {
                                            name: 'Unifi Wifi aus', 
                                            role: 'button',
                                            read:  true, 
                                            write: true,
                                            type: "boolean",
                                            "smartName": {
                                            "de": "03Gäste Wlan aus",
                                            "smartType": "SWITCH"
                                        }
                                        });
                                        
                                        const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                                        const unifi_username = "xxx";
                                        const unifi_password = "xxx";
                                        const unifi_controller = "https://192.168.xxx.xxx:xxx";
                                        const wifi_id = "xxxxxxxxxxxx";
                                        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));
                                                dlog(typeof resp);
                                                resp = JSON.parse(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));
                                                }
                                            });
                                        }
                                        
                                        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 wifi_an() {
                                            dlog("starting wifi_an");
                                            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);
                                        }
                                        async function wifi_aus() {
                                            dlog("starting wifi_aus");
                                            await setWifi(false).catch((e) => dlog("reject1: " + e));
                                            dlog("getting status");
                                            let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
                                            console.log("fin")
                                            console.log(wlan);
                                        }
                                         
                                        //wifi_an();
                                        //wifi_aus();
                                        getStatus();
                                        

                                        Hier die Datenpunkte, die Zahlen sind nur drinn, damit es zu meiner "Struktur" passt.

                                        Bildschirmfoto 2019-08-28 um 12.17.22.png

                                        thewhoboxT liv-in-skyL 2 Replies Last reply
                                        0
                                        • dslraserD dslraser

                                          @thewhobox
                                          @liv-in-sky

                                          ich habe noch eine Frage, für Euch wahrscheinlich simpel. Wie bekomme ich jetzt den Status des WLAN aus dem Log in einen eigenen Datenpunkt ?
                                          Ich habe mir drei Datenpunkte in das Script eingebaut. Schalten funktioniert.👍
                                          Aber wie mache ich das mit dem Status aus dem Log

                                          on({id:'javascript.0.Eigene_Datenpunkte.25Unifi_Wifi.02wifi_an'/*Unifi Wifi an*/, val: true, change: 'any'}, wifi_an);
                                          on({id:'javascript.0.Eigene_Datenpunkte.25Unifi_Wifi.03wifi_aus'/*Unifi Wifi aus*/, val: true, change: 'any'}, wifi_aus);
                                          //Datenpunkt für Wifi Status erstellen
                                          createState("Eigene_Datenpunkte.25Unifi_Wifi.01wifi_Status",'nicht bekannt', {
                                              name: 'Unifi Wifi Status', 
                                              role: 'string',
                                              read:  true, 
                                              write: true,
                                          });
                                          
                                          //Datenpunkt Button für Wifi an erstellen
                                          createState("Eigene_Datenpunkte.25Unifi_Wifi.02wifi_an", {
                                              name: 'Unifi Wifi an', 
                                              role: 'button',
                                              read:  true, 
                                              write: true,
                                              type: "boolean",
                                              "smartName": {
                                              "de": "02Gäste Wlan an",
                                              "smartType": "SWITCH"
                                          }
                                          });
                                          
                                          //Datenpunkt Button für Wifi aus erstellen
                                          createState("Eigene_Datenpunkte.25Unifi_Wifi.03wifi_aus", {
                                              name: 'Unifi Wifi aus', 
                                              role: 'button',
                                              read:  true, 
                                              write: true,
                                              type: "boolean",
                                              "smartName": {
                                              "de": "03Gäste Wlan aus",
                                              "smartType": "SWITCH"
                                          }
                                          });
                                          
                                          const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                                          const unifi_username = "xxx";
                                          const unifi_password = "xxx";
                                          const unifi_controller = "https://192.168.xxx.xxx:xxx";
                                          const wifi_id = "xxxxxxxxxxxx";
                                          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));
                                                  dlog(typeof resp);
                                                  resp = JSON.parse(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));
                                                  }
                                              });
                                          }
                                          
                                          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 wifi_an() {
                                              dlog("starting wifi_an");
                                              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);
                                          }
                                          async function wifi_aus() {
                                              dlog("starting wifi_aus");
                                              await setWifi(false).catch((e) => dlog("reject1: " + e));
                                              dlog("getting status");
                                              let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
                                              console.log("fin")
                                              console.log(wlan);
                                          }
                                           
                                          //wifi_an();
                                          //wifi_aus();
                                          getStatus();
                                          

                                          Hier die Datenpunkte, die Zahlen sind nur drinn, damit es zu meiner "Struktur" passt.

                                          Bildschirmfoto 2019-08-28 um 12.17.22.png

                                          thewhoboxT Offline
                                          thewhoboxT Offline
                                          thewhobox
                                          wrote on last edited by
                                          #422

                                          @dslraser Für Status wäre ein Intervall gut:

                                          setInterval(async () => {
                                              let state = await getStatus();
                                              setState("Eigene_Datenpunkte.25Unifi_Wifi.01wifi_Status", state, true);
                                          }, 10000); // Aktualisiert alle 10 Sekunden.
                                          

                                          Und für die Buttons:

                                          on("Eigene_Datenpunkte.25Unifi_Wifi.02wifi_an", (state) => {
                                              setWifi(true);
                                          });
                                          on("Eigene_Datenpunkte.25Unifi_Wifi.02wifi_aus", (state) => {
                                              setWifi(false);
                                          });
                                          

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

                                          1 Reply Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

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

                                          527

                                          Online

                                          32.4k

                                          Users

                                          81.3k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe