Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Adapter: ioBroker.unifi

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Adapter: ioBroker.unifi

    This topic has been deleted. Only users with topic management privileges can see it.
    • liv-in-sky
      liv-in-sky @thewhobox last edited by

      @thewhobox war das neuste script

      1 Reply Last reply Reply Quote 0
      • dslraser
        dslraser Forum Testing Most Active @thewhobox last edited by

        @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}]}"
        

        thewhobox 1 Reply Last reply Reply Quote 0
        • thewhobox
          thewhobox @dslraser last edited by

          @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-sky dslraser 3 Replies Last reply Reply Quote 0
          • liv-in-sky
            liv-in-sky @thewhobox last edited by

            @thewhobox
            Image 4.png

            1 Reply Last reply Reply Quote 0
            • liv-in-sky
              liv-in-sky @thewhobox last edited by

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

              so sieht es aus:
              Image 6.png

              1 Reply Last reply Reply Quote 0
              • dslraser
                dslraser Forum Testing Most Active @thewhobox last edited by

                @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
                

                thewhobox 1 Reply Last reply Reply Quote 0
                • thewhobox
                  thewhobox @dslraser last edited by

                  @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-sky 1 Reply Last reply Reply Quote 0
                  • liv-in-sky
                    liv-in-sky @thewhobox last edited by

                    @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
                    

                    thewhobox dslraser 2 Replies Last reply Reply Quote 0
                    • thewhobox
                      thewhobox @liv-in-sky last edited by

                      @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);
                      
                      dslraser 1 Reply Last reply Reply Quote 1
                      • dslraser
                        dslraser Forum Testing Most Active @liv-in-sky last edited by

                        @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 Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @thewhobox last edited by

                          @thewhobox

                          javascript.0 script.js.Heiko.Unifi.unifi_wifi: WLAN ist: an
                          
                          liv-in-sky 2 Replies Last reply Reply Quote 0
                          • liv-in-sky
                            liv-in-sky @dslraser last edited by

                            @dslraser dito

                            1 Reply Last reply Reply Quote 0
                            • liv-in-sky
                              liv-in-sky @dslraser last edited by

                              @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

                              dslraser 2 Replies Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @liv-in-sky last edited by

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

                                1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active @liv-in-sky last edited by

                                  @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 Reply Quote 0
                                  • liv-in-sky
                                    liv-in-sky last edited by

                                    @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

                                    thewhobox 1 Reply Last reply Reply Quote 0
                                    • dslraser
                                      dslraser Forum Testing Most Active last edited by

                                      @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 Reply Quote 0
                                      • thewhobox
                                        thewhobox @liv-in-sky last edited by

                                        @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.

                                        dslraser 1 Reply Last reply Reply Quote 2
                                        • dslraser
                                          dslraser Forum Testing Most Active @thewhobox last edited by

                                          @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

                                          thewhobox liv-in-sky 2 Replies Last reply Reply Quote 0
                                          • thewhobox
                                            thewhobox @dslraser last edited by

                                            @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);
                                            });
                                            
                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

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

                                            898
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            unifi
                                            170
                                            991
                                            281629
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo