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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

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

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    12
    1
    131

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

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

Adapter: ioBroker.unifi

Scheduled Pinned Locked Moved ioBroker Allgemein
unifi
1.0k Posts 172 Posters 417.6k Views 93 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • dslraserD dslraser

    @thewhobox
    @liv-in-sky
    so, jetzt bin ich zu Hause. Jetzt kann ich Euch kaum folgen. Soll ich was helfen/testen ?

    liv-in-skyL Offline
    liv-in-skyL Offline
    liv-in-sky
    wrote on last edited by
    #378

    @dslraser
    ich glaub im moment ist pause

    das ist das aktuelle script: achtung in der ersten zeile hat sich auch etwas verändert - vor dem user setting

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

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

      login: got response: {"statusCode":200,"body":"{\

      Könntest du davon mir die komplette Zeile schicken?

      Also momentan funktioniert das speichern des Cookies nicht, deswegen geht getStatus und setWifi nicht.

      liv-in-skyL Offline
      liv-in-skyL Offline
      liv-in-sky
      wrote on last edited by
      #379

      @thewhobox
      würd gern was sinnvolles beitragen, deshalb noch ein amateur versuch etwas beizusteuern

      hab mal die antworten des bash scriptes und deines scriptes verglichen - schaut irgendwie anders aus

      Image 16.png

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

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

        @thewhobox
        würd gern was sinnvolles beitragen, deshalb noch ein amateur versuch etwas beizusteuern

        hab mal die antworten des bash scriptes und deines scriptes verglichen - schaut irgendwie anders aus

        Image 16.png

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

        @liv-in-sky ja das macht jede Bibliothek beim empfangen der Daten anders.

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

        1 Reply Last reply
        0
        • thewhoboxT Offline
          thewhoboxT Offline
          thewhobox
          wrote on last edited by
          #381

          Guten Morgen,

          hier nochmal das ganze Skript:

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

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

          liv-in-skyL 1 Reply Last reply
          0
          • thewhoboxT thewhobox

            Guten Morgen,

            hier nochmal das ganze Skript:

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

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            wrote on last edited by
            #382

            @thewhobox auch einen guten morgen

            und hier das log:

            
            09:21:26.481	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
            09:21:34.242	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
            09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
            09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
            09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
            09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
            09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=rUTs0tMWpm4QcxFH1cvV5VuWIYCV4UhY; Path=/; Secure; HttpOnly","csrf_token=lE7GdlIBf0bhQS4qJcaowM1F4iGmc2lk; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:21:34 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
            09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
            09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
            09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=rUTs0tMWpm4QcxFH1cvV5VuWIYCV4UhY","csrf_token=lE7GdlIBf0bhQS4qJcaowM1F4iGmc2lk"]
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
            09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
            09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
            09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
            09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
            

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

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

              @thewhobox auch einen guten morgen

              und hier das log:

              
              09:21:26.481	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
              09:21:34.242	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
              09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
              09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
              09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
              09:21:34.242	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
              09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=rUTs0tMWpm4QcxFH1cvV5VuWIYCV4UhY; Path=/; Secure; HttpOnly","csrf_token=lE7GdlIBf0bhQS4qJcaowM1F4iGmc2lk; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:21:34 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
              09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
              09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
              09:21:34.536	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=rUTs0tMWpm4QcxFH1cvV5VuWIYCV4UhY","csrf_token=lE7GdlIBf0bhQS4qJcaowM1F4iGmc2lk"]
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
              09:21:34.537	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
              09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
              09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
              09:21:34.549	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
              

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

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

              api.err.IdInvalid

              Da scheint die WLAN ID nicht zu stimmen. Hast du die richtig eingegeben?

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

              liv-in-skyL 2 Replies Last reply
              0
              • thewhoboxT thewhobox

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

                api.err.IdInvalid

                Da scheint die WLAN ID nicht zu stimmen. Hast du die richtig eingegeben?

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                wrote on last edited by
                #384

                @thewhobox oje - überprüfe ich gleich

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

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

                  @thewhobox oje - überprüfe ich gleich

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

                  @liv-in-sky Könnte aber auch ein Fehler im setWifif gewesen sein.
                  Zum testen kurz ersetzen.

                  async function setWifi(enabled) {
                     return new Promise(async (resolve, reject) => {
                         console.log("setWifi: start set wifi");
                         if(!loggedIn) { console.log("need to login"); await login().catch((e) => reject(e)); }
                         console.log("setWifi: now setting wifi");
                         let resp = request.post({
                             url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                             body: JSON.stringify({ _id: "default", enabled }),
                             headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                         }).catch((e) => { console.log("setWifi: rejected: " + e); reject(e) });
                         console.log("setWifi: got response")
                         if(resp != null && resp.statusCode == 200) {
                             console.log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                             console.log(resp);
                             resolve();
                         } else {
                             console.log("setWifi: rejetced")
                             console.log("resp: " + JSON.stringify(resp));
                             reject("msg: " + JSON.parse(resp.body).meta.msg);
                         }
                     });
                  }
                  

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

                  liv-in-skyL 2 Replies Last reply
                  0
                  • thewhoboxT thewhobox

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

                    api.err.IdInvalid

                    Da scheint die WLAN ID nicht zu stimmen. Hast du die richtig eingegeben?

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    wrote on last edited by
                    #386

                    @thewhobox also mit dem linux script ist die id richtig und wird ein und ausgeschalten -- id im linuxscript ist die selbe wie in deinem

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

                    thewhoboxT 1 Reply Last reply
                    0
                    • thewhoboxT thewhobox

                      @liv-in-sky Könnte aber auch ein Fehler im setWifif gewesen sein.
                      Zum testen kurz ersetzen.

                      async function setWifi(enabled) {
                         return new Promise(async (resolve, reject) => {
                             console.log("setWifi: start set wifi");
                             if(!loggedIn) { console.log("need to login"); await login().catch((e) => reject(e)); }
                             console.log("setWifi: now setting wifi");
                             let resp = request.post({
                                 url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                 body: JSON.stringify({ _id: "default", enabled }),
                                 headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                             }).catch((e) => { console.log("setWifi: rejected: " + e); reject(e) });
                             console.log("setWifi: got response")
                             if(resp != null && resp.statusCode == 200) {
                                 console.log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                                 console.log(resp);
                                 resolve();
                             } else {
                                 console.log("setWifi: rejetced")
                                 console.log("resp: " + JSON.stringify(resp));
                                 reject("msg: " + JSON.parse(resp.body).meta.msg);
                             }
                         });
                      }
                      

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      wrote on last edited by
                      #387

                      @thewhobox

                      09:33:56.981	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                      09:33:57.965	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                      09:33:57.965	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                      09:33:57.965	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                      09:33:57.965	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                      09:33:57.965	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                      09:33:58.196	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=yrsA7DInl1z2N6wr4IpLjwaR4fuKq1yc; Path=/; Secure; HttpOnly","csrf_token=X1FfCKVPvRUrXuhNffnO4sf9IbtNq5PH; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:33:58 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
                      09:33:58.196	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=yrsA7DInl1z2N6wr4IpLjwaR4fuKq1yc","csrf_token=X1FfCKVPvRUrXuhNffnO4sf9IbtNq5PH"]
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                      09:33:58.197	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                      09:33:58.210	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                      09:33:58.210	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                      09:33:58.210	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
                      

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

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

                        @thewhobox also mit dem linux script ist die id richtig und wird ein und ausgeschalten -- id im linuxscript ist die selbe wie in deinem

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

                        @liv-in-sky Okay. Dann ersetze mal bitte die Zeile in setWifi:

                        body: JSON.stringify({ enabled }),
                        

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

                        liv-in-skyL 1 Reply Last reply
                        0
                        • thewhoboxT thewhobox

                          @liv-in-sky Könnte aber auch ein Fehler im setWifif gewesen sein.
                          Zum testen kurz ersetzen.

                          async function setWifi(enabled) {
                             return new Promise(async (resolve, reject) => {
                                 console.log("setWifi: start set wifi");
                                 if(!loggedIn) { console.log("need to login"); await login().catch((e) => reject(e)); }
                                 console.log("setWifi: now setting wifi");
                                 let resp = request.post({
                                     url: unifi_controller + "/api/s/default/rest/wlanconf/" + wifi_id,
                                     body: JSON.stringify({ _id: "default", enabled }),
                                     headers: { 'Content-Type': 'application/json', Cookie: cookies.join("; ") }
                                 }).catch((e) => { console.log("setWifi: rejected: " + e); reject(e) });
                                 console.log("setWifi: got response")
                                 if(resp != null && resp.statusCode == 200) {
                                     console.log("setWifi: Wifi wurde erfolgreich " + (enabled ? "eingeschaltet" : "ausgeschaltet"));
                                     console.log(resp);
                                     resolve();
                                 } else {
                                     console.log("setWifi: rejetced")
                                     console.log("resp: " + JSON.stringify(resp));
                                     reject("msg: " + JSON.parse(resp.body).meta.msg);
                                 }
                             });
                          }
                          

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          wrote on last edited by
                          #389

                          @thewhobox

                          hier der test mit linux

                          unifi enable
                          {"meta":{"rc":"ok"},"data":[]}Enabling WiFi.
                          {"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}]}root@iobroker59 09:28:00  /usr/local/bin   >
                          unifi disable
                          {"meta":{"rc":"ok"},"data":[]}Disabling WiFi.
                          {"meta":{"rc":"ok"},"data":[{"_id":"5d6512a897578401d1edd761","enabled":false,"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}]}root@iobroker59 09:29:23  /usr/local/bin   >
                          
                          

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

                          1 Reply Last reply
                          0
                          • thewhoboxT thewhobox

                            @liv-in-sky Okay. Dann ersetze mal bitte die Zeile in setWifi:

                            body: JSON.stringify({ enabled }),
                            
                            liv-in-skyL Offline
                            liv-in-skyL Offline
                            liv-in-sky
                            wrote on last edited by
                            #390

                            @thewhobox sagte in Adapter: ioBroker.unifi:

                            body: JSON.stringify({ enabled }),

                            jetzt weiß ich wieder, warum ich mit json auf kriegsfuß stehe :-(

                            09:36:40.055	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                            09:36:40.065	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:40.065	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:40.069	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:40.080	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                            09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                            09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                            09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                            09:36:40.311	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=4lIovxEqmKXvAF8JehI733XXQ6fSh1Se; Path=/; Secure; HttpOnly","csrf_token=4D3RfUt1GtDD4k6JXdNUcunJw5O0jqvu; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:36:40 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=4lIovxEqmKXvAF8JehI733XXQ6fSh1Se","csrf_token=4D3RfUt1GtDD4k6JXdNUcunJw5O0jqvu"]
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                            09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                            09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                            09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                            09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
                            09:36:42.072	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                            09:36:42.095	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:42.117	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                            09:36:42.117	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                            09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                            09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                            09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=EnoMzZ5FyglDTNPrZYGa2hvP16jewWiU; Path=/; Secure; HttpOnly","csrf_token=fAjfJm99u8hTqyKjEBfv7IRA4lZMILYO; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:36:42 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=EnoMzZ5FyglDTNPrZYGa2hvP16jewWiU","csrf_token=fAjfJm99u8hTqyKjEBfv7IRA4lZMILYO"]
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                            09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                            09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                            09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                            09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
                            

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

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

                              @thewhobox sagte in Adapter: ioBroker.unifi:

                              body: JSON.stringify({ enabled }),

                              jetzt weiß ich wieder, warum ich mit json auf kriegsfuß stehe :-(

                              09:36:40.055	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                              09:36:40.065	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:40.065	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:40.069	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:40.080	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                              09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                              09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                              09:36:40.081	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                              09:36:40.311	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=4lIovxEqmKXvAF8JehI733XXQ6fSh1Se; Path=/; Secure; HttpOnly","csrf_token=4D3RfUt1GtDD4k6JXdNUcunJw5O0jqvu; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:36:40 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=4lIovxEqmKXvAF8JehI733XXQ6fSh1Se","csrf_token=4D3RfUt1GtDD4k6JXdNUcunJw5O0jqvu"]
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                              09:36:40.312	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                              09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                              09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                              09:36:40.322	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
                              09:36:42.072	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                              09:36:42.095	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:42.117	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                              09:36:42.117	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                              09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                              09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                              09:36:42.118	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: got response: {"statusCode":200,"body":"{\"meta\":{\"rc\":\"ok\"},\"data\":[]}","headers":{"vary":"Origin","access-control-allow-credentials":"true","access-control-expose-headers":"Access-Control-Allow-Origin,Access-Control-Allow-Credentials","set-cookie":["unifises=EnoMzZ5FyglDTNPrZYGa2hvP16jewWiU; Path=/; Secure; HttpOnly","csrf_token=fAjfJm99u8hTqyKjEBfv7IRA4lZMILYO; Path=/; Secure"],"x-frame-options":"DENY","content-type":"application/json;charset=UTF-8","content-length":"30","date":"Wed, 28 Aug 2019 07:36:42 GMT","connection":"close"},"request":{"uri":{"protocol":"https:","slashes":true,"auth":null,"host":"192.168.178.157:8443","port":"8443","hostname":"192.168.178.157","hash":null,"search":null,"query":null,"pathname":"/api/login","path":"/api/login","href":"https://192.168.178.157:8443/api/login"},"method":"POST","headers":{"Content-Type":"application/json","content-length":40}}}
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich!
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: set_cookies:
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Cookies: ["unifises=EnoMzZ5FyglDTNPrZYGa2hvP16jewWiU","csrf_token=fAjfJm99u8hTqyKjEBfv7IRA4lZMILYO"]
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: resolved
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                              09:36:42.421	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                              09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejected: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                              09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: reject1: StatusCodeError: 400 - "{\"meta\":{\"rc\":\"error\",\"msg\":\"api.err.IdInvalid\"},\"data\":[]}"
                              09:36:42.429	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: getting status
                              

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

                              @liv-in-sky Okay, zu dem Fehler finde ich leider auch nix im Netz. Hab es jetzt mal so angepasst wie in deinem verlinkten Skript.
                              Was mich wundert, dass nach "getting status" nix mehr kommt...

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

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

                              liv-in-skyL 2 Replies Last reply
                              0
                              • thewhoboxT thewhobox

                                @liv-in-sky Okay, zu dem Fehler finde ich leider auch nix im Netz. Hab es jetzt mal so angepasst wie in deinem verlinkten Skript.
                                Was mich wundert, dass nach "getting status" nix mehr kommt...

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

                                liv-in-skyL Offline
                                liv-in-skyL Offline
                                liv-in-sky
                                wrote on last edited by
                                #392

                                @thewhobox moment noch - jetzt ist was passiert

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

                                1 Reply Last reply
                                0
                                • thewhoboxT thewhobox

                                  @liv-in-sky Okay, zu dem Fehler finde ich leider auch nix im Netz. Hab es jetzt mal so angepasst wie in deinem verlinkten Skript.
                                  Was mich wundert, dass nach "getting status" nix mehr kommt...

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

                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  wrote on last edited by
                                  #393

                                  @thewhobox
                                  1445small--robots-winziger.png
                                  jeah -
                                  scheint zu klappen - kann es ein und ausschalten

                                  09:55:42.324	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                                  09:55:42.331	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:42.337	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:42.341	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:42.352	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                                  09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                                  09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                                  09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                  09:55:42.672	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
                                  09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                                  09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                                  09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                                  09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                                  09:55:44.342	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                                  09:55:44.360	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:44.408	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                  09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                                  09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                                  09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                                  09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                  09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
                                  09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                                  09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                                  09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                                  09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                                  

                                  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 Reply Last reply
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @thewhobox
                                    1445small--robots-winziger.png
                                    jeah -
                                    scheint zu klappen - kann es ein und ausschalten

                                    09:55:42.324	info	js2fs.0 Script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 modified in ioBroker, write to file
                                    09:55:42.331	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:42.337	info	javascript.0 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:42.341	info	javascript.1 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:42.352	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                                    09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                                    09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                                    09:55:42.353	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                    09:55:42.672	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
                                    09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                                    09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                                    09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                                    09:55:42.673	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                                    09:55:44.342	info	js2fs.0 Script file script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2 changed, also update in ioBroker
                                    09:55:44.360	info	javascript.2 Stop script script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:44.408	info	javascript.2 Start javascript script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2
                                    09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: starting test
                                    09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: start set wifi
                                    09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: need to login
                                    09:55:44.408	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: registered 0 subscriptions and 0 schedules
                                    09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: login: Login war erfolgreich! Mit Cookies
                                    09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: now setting wifi
                                    09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: got response
                                    09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: setWifi: rejetced
                                    09:55:44.730	info	javascript.2 script.js.Armin_Schalter.ALLERLEI.UnifiWLAN2: resp: {}
                                    

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

                                    @liv-in-sky
                                    @thewhobox
                                    moin, schon alle wieder fleißig...
                                    Welches ist jetzt das komplette Script ?

                                    liv-in-skyL 1 Reply Last reply
                                    0
                                    • dslraserD dslraser

                                      @liv-in-sky
                                      @thewhobox
                                      moin, schon alle wieder fleißig...
                                      Welches ist jetzt das komplette Script ?

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      wrote on last edited by
                                      #395

                                      @dslraser 3 posts weiter oben

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

                                      1 Reply Last reply
                                      0
                                      • thewhoboxT Offline
                                        thewhoboxT Offline
                                        thewhobox
                                        wrote on last edited by
                                        #396

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

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

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

                                        dslraserD liv-in-skyL 2 Replies Last reply
                                        0
                                        • liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          wrote on last edited by
                                          #397

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

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

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


                                          Support us

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

                                          550

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

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

                                          • Don't have an account? Register

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