Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

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

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Unifi WLAN Script

NEWS

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

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

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

Unifi WLAN Script

Geplant Angeheftet Gesperrt Verschoben JavaScript
380 Beiträge 13 Kommentatoren 57.1k Aufrufe 13 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • liv-in-skyL liv-in-sky

    @dslraser oh mann - warum sollte es einfach sein

    lass das script mal laufen und poste das lange log unter dem script - darin müßte man irgendwie erkennen, in welchen netzwerk der client ist - damit könnte man dann eine aufteilung machen eine liste:

    clientname - macadresse - netzwerkname

    evtl in html formatiert und in einen string geschrieben ?

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

    @liv-in-sky sagte in Unifi WLAN Script:

    lass das script mal laufen und poste das lange log

    Mache ich gern später, jetzt gibt es erst mal Abendessen.

    liv-in-skyL 2 Antworten Letzte Antwort
    0
    • dslraserD dslraser

      @liv-in-sky sagte in Unifi WLAN Script:

      lass das script mal laufen und poste das lange log

      Mache ich gern später, jetzt gibt es erst mal Abendessen.

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

      @dslraser lass dir schmecken

      ersetze später die logzeile in setClients() (in der for schleife) mit

      log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
      

      da sieht man die mac adresse und die wifi id zum hostnamen - wäre das was ?

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

      1 Antwort Letzte Antwort
      0
      • dslraserD dslraser

        @liv-in-sky sagte in Unifi WLAN Script:

        lass das script mal laufen und poste das lange log

        Mache ich gern später, jetzt gibt es erst mal Abendessen.

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

        @dslraser mal als beispiel - html tabelle als string abgespeichert in datenpunkt:

        ACHTUNG meine Datenpunkte sind anders als bei dir - bitte anpassen

        createState("WLANUnifi.Wifi_Clients", {
            name: 'Unifi Wifi Status', 
            role: 'string',
            read:  true, 
            write: true,
        });
        

        Image 10.png

        async function getClients() {
            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/stat/sta/",
                    headers: { Cookie: cookies.join("; ") }
                }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
           
        dlog("got response " + JSON.stringify(resp));
        dlog(typeof resp);
        dlog("--------------------- " + resp);
        resp = JSON.parse(resp);
        //log("--------------------- " + resp);
        
        dlog(resp.meta);
        dlog(resp.meta.rc);
        dlog(resp.data[2].hostname);
        dlog(resp.data.length);
        var clientListe = "<table>";
        for (var i = 0; i < resp.data.length; i++) { 
            dlog(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
             clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
            dlog(clientListe);
        }
        setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));
        });
        
        }
        

        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 1 Antwort Letzte Antwort
        0
        • liv-in-skyL liv-in-sky

          @dslraser mal als beispiel - html tabelle als string abgespeichert in datenpunkt:

          ACHTUNG meine Datenpunkte sind anders als bei dir - bitte anpassen

          createState("WLANUnifi.Wifi_Clients", {
              name: 'Unifi Wifi Status', 
              role: 'string',
              read:  true, 
              write: true,
          });
          

          Image 10.png

          async function getClients() {
              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/stat/sta/",
                      headers: { Cookie: cookies.join("; ") }
                  }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
             
          dlog("got response " + JSON.stringify(resp));
          dlog(typeof resp);
          dlog("--------------------- " + resp);
          resp = JSON.parse(resp);
          //log("--------------------- " + resp);
          
          dlog(resp.meta);
          dlog(resp.meta.rc);
          dlog(resp.data[2].hostname);
          dlog(resp.data.length);
          var clientListe = "<table>";
          for (var i = 0; i < resp.data.length; i++) { 
              dlog(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
               clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
              dlog(clientListe);
          }
          setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));
          });
          
          }
          
          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #19

          @liv-in-sky
          also ich bekomme eine Liste, damit

          //angemeldete Geräte
          async function getClients() {
             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/stat/sta/",
                     headers: { Cookie: cookies.join("; ") }
                 }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
            
          dlog("got response " + JSON.stringify(resp));
          dlog(typeof resp);
          log("--------------------- " + resp);
          resp = JSON.parse(resp);
          //log("--------------------- " + resp);
          
          dlog(resp.meta);
          dlog(resp.meta.rc);
          dlog(resp.data[2].hostname);
          log(resp.data.length);
          var clientListe = "<table>";
          for (var i = 0; i < resp.data.length; i++) { 
             log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
              clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
              log(clientListe);
          setState("Eigene_Datenpunkte.25Unifi_Wifi.02Haupt_Wifi.04Haupt_Wifi_Geraeteliste", clientListe.concat(clientListe+"</table>"));
          }
          });
          }
          

          nun wollte ich diese Liste mit dem gleichen Befehl alle 10 Sekunden aktualisieren, aber dazu bin ich iwi zu blöd...

          liv-in-skyL 2 Antworten Letzte Antwort
          0
          • dslraserD dslraser

            @liv-in-sky
            also ich bekomme eine Liste, damit

            //angemeldete Geräte
            async function getClients() {
               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/stat/sta/",
                       headers: { Cookie: cookies.join("; ") }
                   }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
              
            dlog("got response " + JSON.stringify(resp));
            dlog(typeof resp);
            log("--------------------- " + resp);
            resp = JSON.parse(resp);
            //log("--------------------- " + resp);
            
            dlog(resp.meta);
            dlog(resp.meta.rc);
            dlog(resp.data[2].hostname);
            log(resp.data.length);
            var clientListe = "<table>";
            for (var i = 0; i < resp.data.length; i++) { 
               log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                log(clientListe);
            setState("Eigene_Datenpunkte.25Unifi_Wifi.02Haupt_Wifi.04Haupt_Wifi_Geraeteliste", clientListe.concat(clientListe+"</table>"));
            }
            });
            }
            

            nun wollte ich diese Liste mit dem gleichen Befehl alle 10 Sekunden aktualisieren, aber dazu bin ich iwi zu blöd...

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

            @dslraser ich habe getClient(); in den teil geschrieben, der alle 10 sekunden aktualisiert wird -nur ich mach das alle 20 minuten

            setInterval(async () => {
                getStatus();
                setTimeout(function () {
               getClients();
                    }, 8000);
               /* let state = await getStatus();
                setState("javascript.2.WLANUnifi.Wifi_Status", state, true);
                log(state);*/
            }, 1200000); // Aktualisiert alle 10 Sekunden.
            
            

            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 1 Antwort Letzte Antwort
            1
            • liv-in-skyL liv-in-sky

              @dslraser ich habe getClient(); in den teil geschrieben, der alle 10 sekunden aktualisiert wird -nur ich mach das alle 20 minuten

              setInterval(async () => {
                  getStatus();
                  setTimeout(function () {
                 getClients();
                      }, 8000);
                 /* let state = await getStatus();
                  setState("javascript.2.WLANUnifi.Wifi_Status", state, true);
                  log(state);*/
              }, 1200000); // Aktualisiert alle 10 Sekunden.
              
              
              dslraserD Offline
              dslraserD Offline
              dslraser
              Forum Testing Most Active
              schrieb am zuletzt editiert von
              #21

              @liv-in-sky
              und ich hatte die Funktion nochmals gemacht/kopiert für getClient, das ging dann wahrscheinlich schief🙈

              1 Antwort Letzte Antwort
              0
              • FlexerF Offline
                FlexerF Offline
                Flexer
                schrieb am zuletzt editiert von
                #22

                Wenn ich an die Voucher fürs Gäste Wlan dran kommen könnte wäre das gigantisch!

                Unterm Strich ist alles besser.


                Ja, voll geil hier!

                liv-in-skyL 1 Antwort Letzte Antwort
                0
                • dslraserD dslraser

                  @liv-in-sky
                  also ich bekomme eine Liste, damit

                  //angemeldete Geräte
                  async function getClients() {
                     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/stat/sta/",
                             headers: { Cookie: cookies.join("; ") }
                         }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                    
                  dlog("got response " + JSON.stringify(resp));
                  dlog(typeof resp);
                  log("--------------------- " + resp);
                  resp = JSON.parse(resp);
                  //log("--------------------- " + resp);
                  
                  dlog(resp.meta);
                  dlog(resp.meta.rc);
                  dlog(resp.data[2].hostname);
                  log(resp.data.length);
                  var clientListe = "<table>";
                  for (var i = 0; i < resp.data.length; i++) { 
                     log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                      clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                      log(clientListe);
                  setState("Eigene_Datenpunkte.25Unifi_Wifi.02Haupt_Wifi.04Haupt_Wifi_Geraeteliste", clientListe.concat(clientListe+"</table>"));
                  }
                  });
                  }
                  

                  nun wollte ich diese Liste mit dem gleichen Befehl alle 10 Sekunden aktualisieren, aber dazu bin ich iwi zu blöd...

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

                  @dslraser

                  mein ganzes script - auch mit anzahl der clients - es fehlen die oberen variablen - die mit den passwörtern

                  let cookies = [];
                  let loggedIn = false;
                  let debug = false;
                  
                  
                  //Datenpunkt für Wifi Status erstellen
                  createState("WLANUnifi.Wifi_Status", {
                     name: 'Unifi Wifi Status', 
                     role: 'boolean',
                     read:  true, 
                     write: true,
                  });
                  
                  //Datenpunkt Button für Wifi an erstellen
                  createState("WLANUnifi.Wifi_an", {
                     name: 'Unifi Wifi an', 
                     role: 'switch',
                     read:  true, 
                     write: true,
                     type: "boolean",
                     "smartName": {
                     "de": "02Gäste Wlan an",
                     "smartType": "SWITCH"
                  }
                  });
                  
                  //Datenpunkt Button für Wifi aus erstellen
                  createState("WLANUnifi.Wifi_aus", {
                     name: 'Unifi Wifi aus', 
                     role: 'switch',
                     read:  true, 
                     write: true,
                     type: "boolean",
                     "smartName": {
                     "de": "03Gäste Wlan aus",
                     "smartType": "SWITCH"
                  }
                  });
                  createState("WLANUnifi.Wifi_Clients", {
                     name: 'Unifi Wifi Status', 
                     role: 'string',
                     read:  true, 
                     write: true,
                  });
                  
                  createState('WLANUnifi.Wifi_Clients_Anzahl', 0, { name: 'Wifi_Clients_Anzahl', desc: 'Wifi_Clients_Anzahl', type: 'number', unit: '', min: '0', max: '100', role: '',read: true, write: 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"));
                             setState("javascript.2.WLANUnifi.Wifi_Status", wlanOn);
                             
                             resolve(wlanOn);
                         } else {
                             dlog("nicht ok...")
                             
                             reject(JSON.stringify(resp));
                         }
                     });
                  }
                  
                     async function getClients() {
                     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/stat/sta/",
                             headers: { Cookie: cookies.join("; ") }
                         }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                    
                  dlog("got response " + JSON.stringify(resp));
                  dlog(typeof resp);
                  dlog("--------------------- " + resp);
                  resp = JSON.parse(resp);
                  //log("--------------------- " + resp);
                  
                  dlog(resp.meta);
                  dlog(resp.meta.rc);
                  dlog(resp.data[2].hostname);
                  dlog(resp.data.length);
                  setState("javascript.2.WLANUnifi.Wifi_Clients_Anzahl",resp.data.length);
                  var clientListe = "<table>";
                  for (var i = 0; i < resp.data.length; i++) { 
                     dlog(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                      clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                      dlog(clientListe);
                  }
                  setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));
                  });
                  
                  }
                  
                  
                  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(false).catch((e) => dlog("reject1: " + e));
                    dlog("getting status");
                    let wlan = await getStatus().catch((e) => dlog("reject2: " + e));
                    console.log("fin")
                    console.log(wlan);
                  }
                  
                  setInterval(async () => {
                     getStatus();
                     setTimeout(function () {
                    getClients();
                         }, 8000);
                    /* let state = await getStatus();
                     setState("javascript.2.WLANUnifi.Wifi_Status", state, true);
                     log(state);*/
                  }, 1200000); // Aktualisiert alle 10 Sekunden.
                  
                  
                  on("javascript.2.WLANUnifi.Wifi_an", (state) => {
                     setWifi(true);
                     setTimeout(function () {
                         getStatus();
                         setState("javascript.2.WLANUnifi.Wifi_an", false);
                  }, 10000);
                  });
                  on("javascript.2.WLANUnifi.Wifi_aus", (state) => {
                     setWifi(false);
                     setTimeout(function () {
                        getStatus();   
                        setState("javascript.2.WLANUnifi.Wifi_aus", false);
                  }, 1200000);
                  });
                  
                  //test();
                  

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

                  1 Antwort Letzte Antwort
                  0
                  • FlexerF Flexer

                    Wenn ich an die Voucher fürs Gäste Wlan dran kommen könnte wäre das gigantisch!

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

                    @Flexer
                    @dslraser

                    falls lust mal testen - sollte voucher ausgeben - erster test

                    async function getVouchers() {
                        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/stat/voucher",
                                headers: { Cookie: cookies.join("; ") }
                            }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                       
                    dlog("got response " + JSON.stringify(resp));
                    dlog(typeof resp);
                    log("--------------------- " + resp);
                    resp = JSON.parse(resp);
                    //log("--------------------- " + resp);
                    
                    dlog(resp.meta);
                    dlog(resp.meta.rc);
                    dlog(resp.data[1].code);
                    log(resp.data.length);
                    /*var clientListe = "<table>";
                    for (var i = 0; i < resp.data.length; i++) { 
                        log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                         clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                         log(clientListe);
                    }
                    setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));*/
                    });
                    
                    }
                    

                    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 FlexerF 3 Antworten Letzte Antwort
                    1
                    • liv-in-skyL liv-in-sky

                      @Flexer
                      @dslraser

                      falls lust mal testen - sollte voucher ausgeben - erster test

                      async function getVouchers() {
                          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/stat/voucher",
                                  headers: { Cookie: cookies.join("; ") }
                              }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                         
                      dlog("got response " + JSON.stringify(resp));
                      dlog(typeof resp);
                      log("--------------------- " + resp);
                      resp = JSON.parse(resp);
                      //log("--------------------- " + resp);
                      
                      dlog(resp.meta);
                      dlog(resp.meta.rc);
                      dlog(resp.data[1].code);
                      log(resp.data.length);
                      /*var clientListe = "<table>";
                      for (var i = 0; i < resp.data.length; i++) { 
                          log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                           clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                           log(clientListe);
                      }
                      setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));*/
                      });
                      
                      }
                      
                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von
                      #25

                      @liv-in-sky sagte in Unifi WLAN Script:

                      async function getVouchers() { 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/stat/voucher", headers: { Cookie: cookies.join("; ") } }).catch((e) => { dlog("getStatus reject " + e); reject(e) }); dlog("got response " + JSON.stringify(resp)); dlog(typeof resp); log("--------------------- " + resp); resp = JSON.parse(resp); //log("--------------------- " + resp); dlog(resp.meta); dlog(resp.meta.rc); dlog(resp.data[1].code); log(resp.data.length); /var clientListe = "<table>"; for (var i = 0; i < resp.data.length; i++) { log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac); clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+" </td><td>"+resp.data[i].essid+"    </td><td>"+resp.data[i].mac+"</td></tr>"); log(clientListe); } setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));/ }); }

                      bei mir klappt es, die Liste wird erstellt :+1: . Jetzt muß ich nur noch schauen wie ich die Liste vernünftig in iQontrol angezeigt bekomme.

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

                        @Flexer
                        @dslraser

                        falls lust mal testen - sollte voucher ausgeben - erster test

                        async function getVouchers() {
                            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/stat/voucher",
                                    headers: { Cookie: cookies.join("; ") }
                                }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                           
                        dlog("got response " + JSON.stringify(resp));
                        dlog(typeof resp);
                        log("--------------------- " + resp);
                        resp = JSON.parse(resp);
                        //log("--------------------- " + resp);
                        
                        dlog(resp.meta);
                        dlog(resp.meta.rc);
                        dlog(resp.data[1].code);
                        log(resp.data.length);
                        /*var clientListe = "<table>";
                        for (var i = 0; i < resp.data.length; i++) { 
                            log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                             clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                             log(clientListe);
                        }
                        setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));*/
                        });
                        
                        }
                        
                        dslraserD Offline
                        dslraserD Offline
                        dslraser
                        Forum Testing Most Active
                        schrieb am zuletzt editiert von
                        #26

                        @liv-in-sky
                        warum ist ist bei Dir so einiges auskommentiert ?

                        Bildschirmfoto 2019-08-28 um 21.49.11.png

                        Bildschirmfoto 2019-08-28 um 21.49.24.png

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • dslraserD dslraser

                          @liv-in-sky sagte in Unifi WLAN Script:

                          async function getVouchers() { 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/stat/voucher", headers: { Cookie: cookies.join("; ") } }).catch((e) => { dlog("getStatus reject " + e); reject(e) }); dlog("got response " + JSON.stringify(resp)); dlog(typeof resp); log("--------------------- " + resp); resp = JSON.parse(resp); //log("--------------------- " + resp); dlog(resp.meta); dlog(resp.meta.rc); dlog(resp.data[1].code); log(resp.data.length); /var clientListe = "<table>"; for (var i = 0; i < resp.data.length; i++) { log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac); clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+" </td><td>"+resp.data[i].essid+"    </td><td>"+resp.data[i].mac+"</td></tr>"); log(clientListe); } setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));/ }); }

                          bei mir klappt es, die Liste wird erstellt :+1: . Jetzt muß ich nur noch schauen wie ich die Liste vernünftig in iQontrol angezeigt bekomme.

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

                          @dslraser hört sich vielleicht doof an

                          mach doch in deiner vis einen extra view nur die vouchers - und in iqontrol einen link zu dieser view

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

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

                            @dslraser hört sich vielleicht doof an

                            mach doch in deiner vis einen extra view nur die vouchers - und in iqontrol einen link zu dieser view

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

                            @liv-in-sky sagte in Unifi WLAN Script:

                            in deiner vis

                            ich habe keine VIS :blush:

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

                              @dslraser hört sich vielleicht doof an

                              mach doch in deiner vis einen extra view nur die vouchers - und in iqontrol einen link zu dieser view

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

                              @liv-in-sky
                              wie erstelle ich jetzt daraus eine Liste für den Datenpunkt (Hier ist ja noch mac Adresse usw drin, die ja hier nicht gebraucht wird. )
                              Mit den auskommentierten Sachen habe ich die Vouchers zu mindestens im Log.

                              Hier mal Dein Script, was logischerweise so noch in Zeile 206 einen Fehler produziert

                              //Datenpunkt für Wifi Status erstellen
                              createState("WLANUnifi.Wifi_Status", {
                                name: 'Unifi Wifi Status', 
                                role: 'boolean',
                                read:  true, 
                                write: true,
                              });
                              //Datenpunkt Button für Wifi an erstellen
                              createState("WLANUnifi.Wifi_an", {
                                name: 'Unifi Wifi an', 
                                role: 'switch',
                                read:  true, 
                                write: true,
                              });
                              //Datenpunkt Button für Wifi aus erstellen
                              createState("WLANUnifi.Wifi_aus", {
                                name: 'Unifi Wifi aus', 
                                role: 'switch',
                                read:  true, 
                                write: true,
                                type: "boolean",
                                "smartName": {
                                "de": "03Gäste Wlan aus",
                                "smartType": "SWITCH"
                              }
                              });
                              createState("WLANUnifi.Wifi_Clients", {
                                name: 'Unifi Wifi Status', 
                                role: 'string',
                                read:  true, 
                                write: true,
                              });
                              
                              createState('WLANUnifi.Wifi_Clients_Anzahl', 0, { name: 'Wifi_Clients_Anzahl', desc: 'Wifi_Clients_Anzahl', type: 'number', unit: '', min: '0', max: '100', role: '',read: true, write: 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"));
                                        setState("javascript.2.WLANUnifi.Wifi_Status", wlanOn);
                                        
                                        resolve(wlanOn);
                                    } else {
                                        dlog("nicht ok...")
                                        
                                        reject(JSON.stringify(resp));
                                    }
                                });
                              }
                              
                                async function getClients() {
                                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/stat/sta/",
                                        headers: { Cookie: cookies.join("; ") }
                                    }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                               
                              dlog("got response " + JSON.stringify(resp));
                              dlog(typeof resp);
                              dlog("--------------------- " + resp);
                              resp = JSON.parse(resp);
                              //log("--------------------- " + resp);
                              
                              dlog(resp.meta);
                              dlog(resp.meta.rc);
                              dlog(resp.data[2].hostname);
                              dlog(resp.data.length);
                              setState("javascript.0.WLANUnifi.Wifi_Clients_Anzahl",resp.data.length);
                              var clientListe = "<table>";
                              for (var i = 0; i < resp.data.length; i++) { 
                                dlog(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                                 clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                                 dlog(clientListe);
                              }
                              setState("javascript.0.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));
                              });
                              }
                              
                              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 getVouchers() {
                                 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/stat/voucher",
                                         headers: { Cookie: cookies.join("; ") }
                                     }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                                
                              dlog("got response " + JSON.stringify(resp));
                              dlog(typeof resp);
                              log("--------------------- " + resp);
                              resp = JSON.parse(resp);
                              //log("--------------------- " + resp);
                              
                              dlog(resp.meta);
                              dlog(resp.meta.rc);
                              dlog(resp.data[1].code);
                              log(resp.data.length);
                              var clientListe = "<table>";
                              for (var i = 0; i < resp.data.length; i++) { 
                                 log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                                  clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                                  log(clientListe);
                              }
                              setState("javascript.0.WLANUnifi.Wifi_Vouchers", clientListe.concat(clientListe+"</table>"));
                              });
                              }
                              
                              async function test() {
                               dlog("starting test");
                               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);
                              }
                              
                              setInterval(async () => {
                                getStatus();
                                setTimeout(function () {
                               getClients();
                                    }, 8000);
                               /* let state = await getStatus();
                                setState("javascript.2.WLANUnifi.Wifi_Status", state, true);
                                log(state);*/
                              }, 1200000); // Aktualisiert alle 10 Sekunden.
                              
                              
                              on("javascript.0.WLANUnifi.Wifi_an", (state) => {
                                setWifi(true);
                                setTimeout(function () {
                                    getStatus();
                                    setState("javascript.0.WLANUnifi.Wifi_an", false);
                              }, 10000);
                              });
                              on("javascript.0.WLANUnifi.Wifi_aus", (state) => {
                                setWifi(false);
                                setTimeout(function () {
                                   getStatus();   
                                   setState("javascript.0.WLANUnifi.Wifi_aus", false);
                              }, 1200000);
                              });
                              
                              getVouchers();
                              

                              1 Antwort Letzte Antwort
                              0
                              • D Offline
                                D Offline
                                dos1973
                                schrieb am zuletzt editiert von
                                #30

                                Wow, Klasse Sache was ihr hier macht... werde das sobald zu Hause auch mal versuchen!

                                1 Antwort Letzte Antwort
                                0
                                • dslraserD dslraser

                                  @liv-in-sky sagte in Unifi WLAN Script:

                                  in deiner vis

                                  ich habe keine VIS :blush:

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

                                  @dslraser

                                  ich mach morgen mittag weiter - heut ist feierabend

                                  du hast ja genug cpu und ram resourcen - mach doch eine simple vis mit einer view - dauert nicht lange - ich wollte eh morgen mal noch die voucher sache formatieren - falls du hilfe benötigst mit der vis - einfach sagen

                                  ich habe ein flotdiagramm in iqontrol eingebunden als popup - sieht cool aus

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

                                  1 Antwort Letzte Antwort
                                  1
                                  • dslraserD dslraser

                                    @liv-in-sky
                                    warum ist ist bei Dir so einiges auskommentiert ?

                                    Bildschirmfoto 2019-08-28 um 21.49.11.png

                                    Bildschirmfoto 2019-08-28 um 21.49.24.png

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

                                    @dslraser sagte in Unifi WLAN Script:

                                    @liv-in-sky
                                    warum ist ist bei Dir so einiges auskommentiert ?

                                    Bildschirmfoto 2019-08-28 um 21.49.11.png

                                    Bildschirmfoto 2019-08-28 um 21.49.24.png

                                    der obere teil ist auskomentiert, weil ich die daten noch nicht verarbeite (kommt erst heute mittag) - war froh , dass ich die daten überhaupt bekommen habe :-) während der entwicklung kommentiere ich lieber aus bevor ich etwas lösche, was ich später noch brauchen könnte

                                    der untere teil ist auskommentiert, weil das bei mir irgendwie nicht klappte - und ich den einfachen aufruf der funktion nutze - vielleicht schau ich mir das auch nochmal an, was da schief lief

                                    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 1 Antwort Letzte Antwort
                                    0
                                    • liv-in-skyL liv-in-sky

                                      @dslraser sagte in Unifi WLAN Script:

                                      @liv-in-sky
                                      warum ist ist bei Dir so einiges auskommentiert ?

                                      Bildschirmfoto 2019-08-28 um 21.49.11.png

                                      Bildschirmfoto 2019-08-28 um 21.49.24.png

                                      der obere teil ist auskomentiert, weil ich die daten noch nicht verarbeite (kommt erst heute mittag) - war froh , dass ich die daten überhaupt bekommen habe :-) während der entwicklung kommentiere ich lieber aus bevor ich etwas lösche, was ich später noch brauchen könnte

                                      der untere teil ist auskommentiert, weil das bei mir irgendwie nicht klappte - und ich den einfachen aufruf der funktion nutze - vielleicht schau ich mir das auch nochmal an, was da schief lief

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

                                      @liv-in-sky
                                      ich bin heute frühestens 19.00 Uhr zu Hause, danach (oder zwischendurch wenn Zeit ist) wollte ich auch weiter "testen".
                                      Bis später...

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

                                        @Flexer
                                        @dslraser

                                        falls lust mal testen - sollte voucher ausgeben - erster test

                                        async function getVouchers() {
                                            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/stat/voucher",
                                                    headers: { Cookie: cookies.join("; ") }
                                                }).catch((e) => { dlog("getStatus reject " + e); reject(e) });  
                                           
                                        dlog("got response " + JSON.stringify(resp));
                                        dlog(typeof resp);
                                        log("--------------------- " + resp);
                                        resp = JSON.parse(resp);
                                        //log("--------------------- " + resp);
                                        
                                        dlog(resp.meta);
                                        dlog(resp.meta.rc);
                                        dlog(resp.data[1].code);
                                        log(resp.data.length);
                                        /*var clientListe = "<table>";
                                        for (var i = 0; i < resp.data.length; i++) { 
                                            log(resp.data[i].hostname + " --- " + resp.data[i].essid + " --- " + resp.data[i].mac);
                                             clientListe = clientListe.concat("<tr><td>"+resp.data[i].hostname+"&ensp;</td><td>"+resp.data[i].essid+"&ensp;&ensp;&ensp;&ensp;</td><td>"+resp.data[i].mac+"</td></tr>");
                                             log(clientListe);
                                        }
                                        setState("javascript.2.WLANUnifi.Wifi_Clients", clientListe.concat(clientListe+"</table>"));*/
                                        });
                                        
                                        }
                                        
                                        FlexerF Offline
                                        FlexerF Offline
                                        Flexer
                                        schrieb am zuletzt editiert von
                                        #34

                                        @liv-in-sky Kann man die Voucher in datenpunkte speichern?

                                        Code01
                                        Code02....

                                        Unterm Strich ist alles besser.


                                        Ja, voll geil hier!

                                        liv-in-skyL 1 Antwort Letzte Antwort
                                        0
                                        • FlexerF Flexer

                                          @liv-in-sky Kann man die Voucher in datenpunkte speichern?

                                          Code01
                                          Code02....

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

                                          @Flexer wie genau willst du sie speichern bzw anzeigen ?

                                          • jeden einzeln als datenpunkt - dann wäre es einfacher eine feste anzahl zu definieren
                                            wenn du dynamisch eine anzahl wählst wird nicht nur das programm sondern auch die anzeige etwas komplizierter
                                          • alle in einer art html tabelle - zum auflisten in der vis - wäre am einfachsten

                                          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

                                          FlexerF 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          742

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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