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

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

Community Forum

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

NEWS

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

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

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

Unifi WLAN Script 2 mit Anwesenheitskontrolle

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascriptmonitoring
1.4k Beiträge 46 Kommentatoren 477.3k Aufrufe 51 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • dslraserD dslraser

    @SirDirk
    hast Du schon die WLAN ID/ID's eingetragen ?

    SirDirkS Offline
    SirDirkS Offline
    SirDirk
    schrieb am zuletzt editiert von
    #1020

    @dslraser
    ja, aus der Url (hinter dem EDIT)

    ae57ee8a-92ac-4542-84f8-cc648d3e100a-grafik.png

    5fe9f071-84ac-45f1-80a0-74b3ffeba617-grafik.png

    liv-in-skyL 1 Antwort Letzte Antwort
    0
    • SirDirkS SirDirk

      @liv-in-sky
      der Sitename stimmt überein:

      im Controller:
      6023aedc-9d5f-4bce-a602-c11de79206fa-grafik.png

      im Script:

      a853278c-89b7-4b00-a5ef-8dc5ddda0bca-grafik.png

      hast du evtl. noch eine Idee?

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

      @SirDirk sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

      @liv-in-sky
      der Sitename stimmt überein:

      im Controller:
      6023aedc-9d5f-4bce-a602-c11de79206fa-grafik.png

      im Script:

      a853278c-89b7-4b00-a5ef-8dc5ddda0bca-grafik.png

      hast du evtl. noch eine Idee?

      Bei mir im Controller ist der Site Name auch Default, aber im Script schon immer klein (default) geschrieben.
      Ich weiß aber nicht ob das eine Rolle spielt ?

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

        @SirDirk sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

        @liv-in-sky
        der Sitename stimmt überein:

        im Controller:
        6023aedc-9d5f-4bce-a602-c11de79206fa-grafik.png

        im Script:

        a853278c-89b7-4b00-a5ef-8dc5ddda0bca-grafik.png

        hast du evtl. noch eine Idee?

        Bei mir im Controller ist der Site Name auch Default, aber im Script schon immer klein (default) geschrieben.
        Ich weiß aber nicht ob das eine Rolle spielt ?

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

        @dslraser hab ich auch gerade gesehen - würde es def. klein schreiben

        der pfad im browser ist auch :

        https://192.168.178.157:8443/manage/site/default/settings/site
        

        klein geschrieben -

        hast du ein "extra spezielles" passwort - keine leerzeichen, keine umlaute

        ich denke, er logt sich nicht ein

        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

        SirDirkS 1 Antwort Letzte Antwort
        0
        • SirDirkS SirDirk

          @dslraser
          ja, aus der Url (hinter dem EDIT)

          ae57ee8a-92ac-4542-84f8-cc648d3e100a-grafik.png

          5fe9f071-84ac-45f1-80a0-74b3ffeba617-grafik.png

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

          @SirDirk und die zusätze im javascript adapter setting hast du dazugefügt

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

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

            @dslraser hab ich auch gerade gesehen - würde es def. klein schreiben

            der pfad im browser ist auch :

            https://192.168.178.157:8443/manage/site/default/settings/site
            

            klein geschrieben -

            hast du ein "extra spezielles" passwort - keine leerzeichen, keine umlaute

            ich denke, er logt sich nicht ein

            SirDirkS Offline
            SirDirkS Offline
            SirDirk
            schrieb am zuletzt editiert von SirDirk
            #1024

            @liv-in-sky
            Ich habe ein kompliziertes Passwort aus einem PW-Manager mit Sonderzeichen und Zahlen - aber keine Umlaute - keine Leerzeichen.

            In der JS-Instanz habe ich die folgenden Einträge:

            14ac5649-3f90-4bff-a20d-57f21d40f249-grafik.png

            @dslraser
            nach dem klein-schreiben von default funktioniert nun der Login - es kommt jetzt aber folgende Fehlermeldung:

            099831ea-0029-4bf4-944c-029e3a33ebfd-grafik.png

            Irgendwie komme ich da auf folgende Zeilen, denn es sind keine MephistoFon-Einträge in den Datenpunkten.

            dce2b33d-8d0b-42ff-a2c2-aefe467fc05f-grafik.png

            Danke für die Hilfe beim Login - habt ihr evtl. eine Idee zu der neuen Fehlermeldung?

            die folgenden Log-Einträge sind auch noch vorhanden:

            7754af29-a0a2-45cb-9626-81120153884d-grafik.png

            dslraserD liv-in-skyL 2 Antworten Letzte Antwort
            0
            • SirDirkS SirDirk

              @liv-in-sky
              Ich habe ein kompliziertes Passwort aus einem PW-Manager mit Sonderzeichen und Zahlen - aber keine Umlaute - keine Leerzeichen.

              In der JS-Instanz habe ich die folgenden Einträge:

              14ac5649-3f90-4bff-a20d-57f21d40f249-grafik.png

              @dslraser
              nach dem klein-schreiben von default funktioniert nun der Login - es kommt jetzt aber folgende Fehlermeldung:

              099831ea-0029-4bf4-944c-029e3a33ebfd-grafik.png

              Irgendwie komme ich da auf folgende Zeilen, denn es sind keine MephistoFon-Einträge in den Datenpunkten.

              dce2b33d-8d0b-42ff-a2c2-aefe467fc05f-grafik.png

              Danke für die Hilfe beim Login - habt ihr evtl. eine Idee zu der neuen Fehlermeldung?

              die folgenden Log-Einträge sind auch noch vorhanden:

              7754af29-a0a2-45cb-9626-81120153884d-grafik.png

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

              @SirDirk

              Kannst Du mal diesen Teil ( also ohne Deine Zugangsdaten ab unter Const apName (ohne Deine AP'S) posten

              //Vordefinierte Vouchers für  one-click-create - wird hier etwas geändert BITTE DATENPUNKT (Vouchers_StandardList) LÖSCHEN vor Scriptstart!!!!
              //BITTE alle Werte eingeben - für nichtbenutzte wie up-, download und nmb_begrenzung eine 0 eintragen
              // Pflichteinträge sind dauer, anzahl, multiuse und notiz !!!
              const standardVouchers = {"Vier Tage" : {dauer: 240, anzahl: 1, multiuse: 1, upload: 0, download:0, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 4 Tage"}, 
                                       "Sieben Tage" : {dauer: 10080, anzahl: 1, multiuse: 1, upload: 300, download:300, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 7 Tage"},
                                       "99 Minuten" : {dauer: 99, anzahl: 2, multiuse: 1, upload: 0, download:200, mb_begrenzung: 500, notiz:"Dauer 99 Minuten - Anzahl 2"}}
              
              const blackList = [] //Blacklist - diese clients werden nicht berücksichtigt - aber nur wenn ein alias im controller definiert ist
              const checkConnType=["Heiko-Note10","Kerstin-Note8"];  // Datenpunkte (werden erstellt) für Überwachung von Connection (WLAN only) - aber nur wenn ein alias im controller definiert ist
                                                                // wenn leer - keine überwachung (const checkConnType=[])
              
              //Pause bei Umschalten der WLANnetze, damit Netzanmeldungen der clients wieder normal
              const clientPauseConst = 200000;    //1000 bedeutet 1 Sekunde -  das braucht Zeit !!!
              // Abfragezyklus definieren
              const abfragezyklus =30000; // es ist nicht zu empfehlen unter 20000 (20 sekunden) zu gehen
              const abfageoffset = 40000; // zu schnelle Abmeldungen können hier eingestellt weren - > erhöhen (15000 = 15 sek.)
              //HIER Einstellungen : EIN-AUSSCHALTEN Vouchers, iqontrol-Datei erstellen, anwesenheitskontrolle-clientpflege
              let iqontrol = true;
              let anwesenheit = true; // beim setzen von true auf false die verzeichnisstruktur unter iobroker-objects "von hand" löschen
              let vouchers = true;
              let apInfo = true;
              let problemWLAN=false; //bei problemen mit APs die über WLAN angebuden sind
              let countFalseSetting=2; //2 bedeutet : einmal einen abfragezyklus auslassen bevor auf false gesetzt wird: Formel:  n-1
              let aliasname=true; 
              let disConClientsFirst=true; //zeigt disconnected clients als erstes im table (vis) oder iqontrol an
              let ohneClientAbfrage=false; //schaltet das bearbeiten der clients vollständig ab - auch keine datenpunkte
              let sortedByIP =true; //client anzeige nach IP sortiert
              //FARBEN für IQontrol und VIS
              //die farbe für die tabellen in der vis wird im widget eingestellt
              //color_vis_text_client_in_table
              //color_vis_text_voucher_in_table
              let color_iqontrol_text__client_letzteAenderung_VIS="lightblue";
              let color_iqontrol_text__client_letzteAenderung_VIS_Text="#d0cdcd";
              let color_iqontrol_text_client_in_table= "black";  
              let color_iqontrol_text__client_disconnected="#01A9DB";
              let color_iqontrol_client_gradient1= "lightblue";   
              let color_iqontrol_text_voucher_in_table= "black"; 
              let color_iqontrol_voucher_gradient1= "lightblue"; 
              let color_iqontrol_text__client_letzteAenderung="#848484";
              let color_iqontrol_text__voucher_ueberschrift="blue";
              let schriftart="Helvetica";  //möglich: Helvetica,Serif
              
              //-----------------AB HIER NICHTS MEHR ÄNDERN------------------------------------------------------
              
              const versionNr = "12122019-3.0"
              const dpPrefix = "javascript."+ instance +".";
              // Hier Definition iqontrol-Style für Popup
              const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_voucher_in_table+";text-align:center; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent,"+color_iqontrol_voucher_gradient1+");\">";
              const format2 = "<!DOCTYPE html><html lang=\"de\"><head><title>Clients</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
              const format3 = "<table style=\"color:"+color_iqontrol_text__client_letzteAenderung_VIS_Text+"; font-family:"+schriftart+";\">";
              const format6 ="<tr><td>&ensp;</td><td>&ensp;</td></tr> <tr style=\"color:"+color_iqontrol_text__voucher_ueberschrift+";\">"
              const apHead = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>"
              const apTable = "<table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
              const tableAus = "</table>";
              
              
              
              const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
              
              const pathVoucher = "/htmlvoucher.html"; const pathClient = "/htmlclients.html"; const pathInfo = "/htmlinfo.html"; const pathAlarm = "/htmlalarm.html"; const pathAbmelung = "/htmlLog.html";
              const pathOnlyWLAN = "/htmlwlan.html";const pathOnlyLAN = "/htmllan.html";const pathOnlyDISC = "/htmldisc.html";
              let cookies = [];
              let loggedIn = false;
              let debug = false;
              let mylogs = false;
              let syslogs = false;
              let xxClientxx="Heiko-Note10";"Kerstin-Note8"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
              let xxClientxxIndex=0;
              let clientPause = false;
              let clientPauseVal;
              let wifiDPs = [];
              let wifiDPsHide = [];
              let vouchiesDPs=[];
              let myname = 'hostname';
              let respv; let respc; let respw; let resph; let respgv; let respa; let respal; //geholte Daten
              let countFalse=1; 
              let statusarr=[];
              let writeFileVar =0;
              let listValue=[];            //iqontrol löschen kachel
              let listValue2;              //iqontrol löschen kachel
              let listValue3;              //iqontrol löschen VIS
              let nichtSchalten=true;   
              //let nichtSchalten2=false;    //iqontrol löschen kachel
              let versuch;
              let listeDatenpunkte = [];
              let listeDatenpunkteControl=[];
              let countie;
              let binAmArbeiten=false;
              var midnight=false;
              let apListeTable;
              let apListe;
              let healthListe;
              let healthListeTable;
              let notSeen=[];
              let ipArrFehlt=[];
              var notseenLengthOld;
              var notseenLength;
              let lastChange=[];
              let mybodyVouchers2; // create-one-click-standard-voucher
              let expire_var; // create-one-click-standard-voucher
              let n_var; // create-one-click-standard-voucher
              let quota_var; // create-one-click-standard-voucher
              let note_var; // create-one-click-standard-voucher
              let up_var; // create-one-click-standard-voucher
              let down_var; // create-one-click-standard-voucher
              let MBytes_var; // create-one-click-standard-voucher
              let testerral=false; let testerrc=false; let testerrl=false; let testerrv=false; let testerrs=false; let testerrh=false; let testerrcv=false; let testerrdv=false; let testerrws=false; let testerrap=false; 
              var scriptCounter=0;
              let health = true;  // Angaben zum Systemstatus - die Healtdaten werden nur alle 5 Abfragezyklen geholt
              let alarmSwitch =false;
              let alarmCounter =0;
              let firstTime=0;
              let mybodyVouchers;
              let monthChangeData=false;
              let checkNetwork=false;
              var wifiLength=0;
                   for(let wifi_name in wifis) {      
                 wifiLength++; }
              
              

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

                @SirDirk und die zusätze im javascript adapter setting hast du dazugefügt

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

                @liv-in-sky

                ich finde es ein bisschen "unglücklich" das dieser Punkt

                let xxClientxx="Heiko-Note10";"Kerstin-Note8"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
                

                unter "ab hier nichts mehr ändern" steht. Ich vermute da auch den Fehler von @SirDirk , kann das sein ?
                Weil da eigentlich nichts geändert werden soll, aber die eigenen Geräte da rein müssen.

                SirDirkS 1 Antwort Letzte Antwort
                0
                • dslraserD dslraser

                  @SirDirk

                  Kannst Du mal diesen Teil ( also ohne Deine Zugangsdaten ab unter Const apName (ohne Deine AP'S) posten

                  //Vordefinierte Vouchers für  one-click-create - wird hier etwas geändert BITTE DATENPUNKT (Vouchers_StandardList) LÖSCHEN vor Scriptstart!!!!
                  //BITTE alle Werte eingeben - für nichtbenutzte wie up-, download und nmb_begrenzung eine 0 eintragen
                  // Pflichteinträge sind dauer, anzahl, multiuse und notiz !!!
                  const standardVouchers = {"Vier Tage" : {dauer: 240, anzahl: 1, multiuse: 1, upload: 0, download:0, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 4 Tage"}, 
                                           "Sieben Tage" : {dauer: 10080, anzahl: 1, multiuse: 1, upload: 300, download:300, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 7 Tage"},
                                           "99 Minuten" : {dauer: 99, anzahl: 2, multiuse: 1, upload: 0, download:200, mb_begrenzung: 500, notiz:"Dauer 99 Minuten - Anzahl 2"}}
                  
                  const blackList = [] //Blacklist - diese clients werden nicht berücksichtigt - aber nur wenn ein alias im controller definiert ist
                  const checkConnType=["Heiko-Note10","Kerstin-Note8"];  // Datenpunkte (werden erstellt) für Überwachung von Connection (WLAN only) - aber nur wenn ein alias im controller definiert ist
                                                                    // wenn leer - keine überwachung (const checkConnType=[])
                  
                  //Pause bei Umschalten der WLANnetze, damit Netzanmeldungen der clients wieder normal
                  const clientPauseConst = 200000;    //1000 bedeutet 1 Sekunde -  das braucht Zeit !!!
                  // Abfragezyklus definieren
                  const abfragezyklus =30000; // es ist nicht zu empfehlen unter 20000 (20 sekunden) zu gehen
                  const abfageoffset = 40000; // zu schnelle Abmeldungen können hier eingestellt weren - > erhöhen (15000 = 15 sek.)
                  //HIER Einstellungen : EIN-AUSSCHALTEN Vouchers, iqontrol-Datei erstellen, anwesenheitskontrolle-clientpflege
                  let iqontrol = true;
                  let anwesenheit = true; // beim setzen von true auf false die verzeichnisstruktur unter iobroker-objects "von hand" löschen
                  let vouchers = true;
                  let apInfo = true;
                  let problemWLAN=false; //bei problemen mit APs die über WLAN angebuden sind
                  let countFalseSetting=2; //2 bedeutet : einmal einen abfragezyklus auslassen bevor auf false gesetzt wird: Formel:  n-1
                  let aliasname=true; 
                  let disConClientsFirst=true; //zeigt disconnected clients als erstes im table (vis) oder iqontrol an
                  let ohneClientAbfrage=false; //schaltet das bearbeiten der clients vollständig ab - auch keine datenpunkte
                  let sortedByIP =true; //client anzeige nach IP sortiert
                  //FARBEN für IQontrol und VIS
                  //die farbe für die tabellen in der vis wird im widget eingestellt
                  //color_vis_text_client_in_table
                  //color_vis_text_voucher_in_table
                  let color_iqontrol_text__client_letzteAenderung_VIS="lightblue";
                  let color_iqontrol_text__client_letzteAenderung_VIS_Text="#d0cdcd";
                  let color_iqontrol_text_client_in_table= "black";  
                  let color_iqontrol_text__client_disconnected="#01A9DB";
                  let color_iqontrol_client_gradient1= "lightblue";   
                  let color_iqontrol_text_voucher_in_table= "black"; 
                  let color_iqontrol_voucher_gradient1= "lightblue"; 
                  let color_iqontrol_text__client_letzteAenderung="#848484";
                  let color_iqontrol_text__voucher_ueberschrift="blue";
                  let schriftart="Helvetica";  //möglich: Helvetica,Serif
                  
                  //-----------------AB HIER NICHTS MEHR ÄNDERN------------------------------------------------------
                  
                  const versionNr = "12122019-3.0"
                  const dpPrefix = "javascript."+ instance +".";
                  // Hier Definition iqontrol-Style für Popup
                  const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_voucher_in_table+";text-align:center; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent,"+color_iqontrol_voucher_gradient1+");\">";
                  const format2 = "<!DOCTYPE html><html lang=\"de\"><head><title>Clients</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                  const format3 = "<table style=\"color:"+color_iqontrol_text__client_letzteAenderung_VIS_Text+"; font-family:"+schriftart+";\">";
                  const format6 ="<tr><td>&ensp;</td><td>&ensp;</td></tr> <tr style=\"color:"+color_iqontrol_text__voucher_ueberschrift+";\">"
                  const apHead = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>"
                  const apTable = "<table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                  const tableAus = "</table>";
                  
                  
                  
                  const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                  
                  const pathVoucher = "/htmlvoucher.html"; const pathClient = "/htmlclients.html"; const pathInfo = "/htmlinfo.html"; const pathAlarm = "/htmlalarm.html"; const pathAbmelung = "/htmlLog.html";
                  const pathOnlyWLAN = "/htmlwlan.html";const pathOnlyLAN = "/htmllan.html";const pathOnlyDISC = "/htmldisc.html";
                  let cookies = [];
                  let loggedIn = false;
                  let debug = false;
                  let mylogs = false;
                  let syslogs = false;
                  let xxClientxx="Heiko-Note10";"Kerstin-Note8"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
                  let xxClientxxIndex=0;
                  let clientPause = false;
                  let clientPauseVal;
                  let wifiDPs = [];
                  let wifiDPsHide = [];
                  let vouchiesDPs=[];
                  let myname = 'hostname';
                  let respv; let respc; let respw; let resph; let respgv; let respa; let respal; //geholte Daten
                  let countFalse=1; 
                  let statusarr=[];
                  let writeFileVar =0;
                  let listValue=[];            //iqontrol löschen kachel
                  let listValue2;              //iqontrol löschen kachel
                  let listValue3;              //iqontrol löschen VIS
                  let nichtSchalten=true;   
                  //let nichtSchalten2=false;    //iqontrol löschen kachel
                  let versuch;
                  let listeDatenpunkte = [];
                  let listeDatenpunkteControl=[];
                  let countie;
                  let binAmArbeiten=false;
                  var midnight=false;
                  let apListeTable;
                  let apListe;
                  let healthListe;
                  let healthListeTable;
                  let notSeen=[];
                  let ipArrFehlt=[];
                  var notseenLengthOld;
                  var notseenLength;
                  let lastChange=[];
                  let mybodyVouchers2; // create-one-click-standard-voucher
                  let expire_var; // create-one-click-standard-voucher
                  let n_var; // create-one-click-standard-voucher
                  let quota_var; // create-one-click-standard-voucher
                  let note_var; // create-one-click-standard-voucher
                  let up_var; // create-one-click-standard-voucher
                  let down_var; // create-one-click-standard-voucher
                  let MBytes_var; // create-one-click-standard-voucher
                  let testerral=false; let testerrc=false; let testerrl=false; let testerrv=false; let testerrs=false; let testerrh=false; let testerrcv=false; let testerrdv=false; let testerrws=false; let testerrap=false; 
                  var scriptCounter=0;
                  let health = true;  // Angaben zum Systemstatus - die Healtdaten werden nur alle 5 Abfragezyklen geholt
                  let alarmSwitch =false;
                  let alarmCounter =0;
                  let firstTime=0;
                  let mybodyVouchers;
                  let monthChangeData=false;
                  let checkNetwork=false;
                  var wifiLength=0;
                       for(let wifi_name in wifis) {      
                     wifiLength++; }
                  
                  

                  SirDirkS Offline
                  SirDirkS Offline
                  SirDirk
                  schrieb am zuletzt editiert von
                  #1027

                  @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                  Kannst Du mal diesen Teil ( also ohne Deine Zugangsdaten ab unter Const apName (ohne Deine AP'S) posten

                  Folgt hier:

                  
                  //Vordefinierte Vouchers für  one-click-create - wird hier etwas geändert BITTE DATENPUNKT (Vouchers_StandardList) LÖSCHEN vor Scriptstart!!!!
                  //BITTE alle Werte eingeben - für nichtbenutzte wie up-, download und nmb_begrenzung eine 0 eintragen
                  // Pflichteinträge sind dauer, anzahl, multiuse und notiz !!!
                  const standardVouchers = {"Vier Tage" : {dauer: 240, anzahl: 1, multiuse: 1, upload: 0, download:0, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 4 Tage"}, 
                                            "Sieben Tage" : {dauer: 10080, anzahl: 1, multiuse: 1, upload: 300, download:300, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 7 Tage"},
                                            "99 Minuten" : {dauer: 99, anzahl: 2, multiuse: 1, upload: 0, download:200, mb_begrenzung: 500, notiz:"Dauer 99 Minuten - Anzahl 2"}}
                  
                  const blackList = [] //Blacklist - diese clients werden nicht berücksichtigt - aber nur wenn ein alias im controller definiert ist
                  const checkConnType=["MephistoFon"];  // Datenpunkte (werden erstellt) für Überwachung von Connection (WLAN only) - aber nur wenn ein alias im controller definiert ist
                                                                     // wenn leer - keine überwachung (const checkConnType=[])
                  
                  //Pause bei Umschalten der WLANnetze, damit Netzanmeldungen der clients wieder normal
                  const clientPauseConst = 200000;    //1000 bedeutet 1 Sekunde -  das braucht Zeit !!!
                  
                  // Abfragezyklus definieren
                  const abfragezyklus =20000; // es ist nicht zu empfehlen unter 20000 (20 sekunden) zu gehen
                  const abfageoffset = 45000; // zu schnelle Abmeldungen können hier eingestellt weren - > erhöhen (15000 = 15 sek.)
                  
                  //HIER Einstellungen : EIN-AUSSCHALTEN Vouchers, iqontrol-Datei erstellen, anwesenheitskontrolle-clientpflege
                  let iqontrol = true;
                  let anwesenheit = true; // beim setzen von true auf false die verzeichnisstruktur unter iobroker-objects "von hand" löschen
                  
                  let vouchers = false;
                  let apInfo = true;
                  let problemWLAN=false; //bei problemen mit APs die über WLAN angebuden sind
                  let countFalseSetting=2; //2 bedeutet : einmal einen abfragezyklus auslassen bevor auf false gesetzt wird: Formel:  n-1
                  let aliasname=false; 
                  let disConClientsFirst=true; //zeigt disconnected clients als erstes im table (vis) oder iqontrol an
                  
                  let ohneClientAbfrage=false; //schaltet das bearbeiten der clients vollständig ab - auch keine datenpunkte
                  
                  let sortedByIP =false; //client anzeige nach IP sortiert
                  
                  
                  //FARBEN für IQontrol und VIS
                  //die farbe für die tabellen in der vis wird im widget eingestellt
                  //color_vis_text_client_in_table
                  //color_vis_text_voucher_in_table
                  let color_iqontrol_text__client_letzteAenderung_VIS="lightblue";
                  let color_iqontrol_text__client_letzteAenderung_VIS_Text="#d0cdcd";
                  let color_iqontrol_text_client_in_table= "black";  
                  let color_iqontrol_text__client_disconnected="#01A9DB";
                  
                  let color_iqontrol_client_gradient1= "lightblue";   
                  
                  let color_iqontrol_text_voucher_in_table= "black"; 
                  let color_iqontrol_voucher_gradient1= "lightblue"; 
                  let color_iqontrol_text__client_letzteAenderung="#848484";
                  let color_iqontrol_text__voucher_ueberschrift="lightblue";
                  
                  let schriftart="Helvetica";  //möglich: Helvetica,Serif
                  
                  
                  //-----------------AB HIER NICHTS MEHR ÄNDERN------------------------------------------------------
                  
                  const versionNr = "12122019-3.0"
                  const dpPrefix = "javascript."+ instance +".";
                  // Hier Definition iqontrol-Style für Popup
                  const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_voucher_in_table+";text-align:center; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent,"+color_iqontrol_voucher_gradient1+");\">";
                  const format2 = "<!DOCTYPE html><html lang=\"de\"><head><title>Clients</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                  const format3 = "<table style=\"color:"+color_iqontrol_text__client_letzteAenderung_VIS_Text+"; font-family:"+schriftart+";\">";
                  const format6 ="<tr><td>&ensp;</td><td>&ensp;</td></tr> <tr style=\"color:"+color_iqontrol_text__voucher_ueberschrift+";\">"
                  const apHead = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>"
                  const apTable = "<table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                  const tableAus = "</table>";
                  
                  
                  
                  const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                  
                  const pathVoucher = "/htmlvoucher.html"; const pathClient = "/htmlclients.html"; const pathInfo = "/htmlinfo.html"; const pathAlarm = "/htmlalarm.html"; const pathAbmelung = "/htmlLog.html";
                  const pathOnlyWLAN = "/htmlwlan.html";const pathOnlyLAN = "/htmllan.html";const pathOnlyDISC = "/htmldisc.html";
                  let cookies = [];
                  let loggedIn = false;
                  let debug = false;
                  let mylogs = false;
                  let syslogs = false;
                  let xxClientxx="Heiko-Note10"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
                  let xxClientxxIndex=0;
                  let clientPause = false;
                  let clientPauseVal;
                  let wifiDPs = [];
                  
                  let wifiDPsHide = [];
                  let vouchiesDPs=[];
                  let myname = 'hostname';
                  let respv; let respc; let respw; let resph; let respgv; let respa; let respal; //geholte Daten
                  let countFalse=1; 
                  let statusarr=[];
                  let writeFileVar =0;
                  let listValue=[];            //iqontrol löschen kachel
                  let listValue2;              //iqontrol löschen kachel
                  let listValue3;              //iqontrol löschen VIS
                  let nichtSchalten=true;   
                  //let nichtSchalten2=false;    //iqontrol löschen kachel
                  let versuch;
                  let listeDatenpunkte = [];
                  let listeDatenpunkteControl=[];
                  let countie;
                  let binAmArbeiten=false;
                  var midnight=false;
                  let apListeTable;
                  let apListe;
                  let healthListe;
                  let healthListeTable;
                  let notSeen=[];
                  let ipArrFehlt=[];
                  var notseenLengthOld;
                  var notseenLength;
                  let lastChange=[];
                  let mybodyVouchers2; // create-one-click-standard-voucher
                  let expire_var; // create-one-click-standard-voucher
                  let n_var; // create-one-click-standard-voucher
                  let quota_var; // create-one-click-standard-voucher
                  let note_var; // create-one-click-standard-voucher
                  let up_var; // create-one-click-standard-voucher
                  let down_var; // create-one-click-standard-voucher
                  let MBytes_var; // create-one-click-standard-voucher
                  let testerral=false; let testerrc=false; let testerrl=false; let testerrv=false; let testerrs=false; let testerrh=false; let testerrcv=false; let testerrdv=false; let testerrws=false; let testerrap=false; 
                  var scriptCounter=0;
                  let health = true;  // Angaben zum Systemstatus - die Healtdaten werden nur alle 5 Abfragezyklen geholt
                  let alarmSwitch =false;
                  let alarmCounter =0;
                  let firstTime=0;
                  let mybodyVouchers;
                  let monthChangeData=false;
                  let checkNetwork=false;
                  var wifiLength=0;
                        for(let wifi_name in wifis) {      
                      wifiLength++; }
                  
                  
                   if (aliasname)  myname="name";
                   if (ohneClientAbfrage) anwesenheit=false;
                   writeMyFile("neugestartet ... bitte warten", pathClient);
                   writeMyFile("neugestartet ... bitte warten", pathVoucher);
                   writeMyFile("neugestartet ... bitte warten", pathAlarm);
                   writeMyFile("neugestartet ... bitte warten", pathInfo);
                   writeMyFile("neugestartet ... bitte warten", pathOnlyWLAN);
                   writeMyFile("neugestartet ... bitte warten", pathOnlyLAN);
                   writeMyFile("neugestartet ... bitte warten", pathOnlyDISC);
                   if ( !anwesenheit) {writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathClient);
                                       writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyWLAN);
                                       writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyLAN);
                                       writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyDISC);}
                  
                  
                   if ( !vouchers && !iqontrol) writeMyFile("variable vouchers und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathVoucher);
                  
                  for(let wifi_name in wifis) {
                       wifiDPsHide.push(dpPrefix + "WLANUnifi.WLANSSIDsHide." + wifis[wifi_name].name);
                       createState(dpPrefix + "WLANUnifi.WLANSSIDsHide."+ wifi_name, false, { name: wifis[wifi_name].desc, role: 'switch', read: true, write: true, type: "boolean" });}
                  
                   //Erstelle Datenpunkte für die WLANs automatisch
                   for(let wifi_name in wifis) {
                       wifiDPs.push(dpPrefix + "WLANUnifi." + wifis[wifi_name].name);
                       createState(dpPrefix + "WLANUnifi."+ wifi_name, { name: wifis[wifi_name].desc, role: 'switch', read: true, write: true, type: "boolean" });}
                  
                   createState(dpPrefix + "WLANUnifi.Wifi_Clients", "not available",{ name: 'Clients_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                   createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyLAN", "not available",{ name: 'Clients_LAN_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                   createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyWLAN", "not available",{ name: 'Clients__WLAN_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                   createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyDISC", "not available",{ name: 'Clients__Disconnected_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                   createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_LAN",  { name: 'Wifi_Clients_Anzahl_LAN', desc: 'Wifi_Clients_Anzahl_LAN', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                   createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_WLAN",  { name: 'Wifi_Clients_Anzahl_WLAN', desc: 'Wifi_Clients_Anzahl_WLAN', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                   createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_DISC",  { name: 'Wifi_Clients_Anzahl_DISC', desc: 'Wifi_Clients_Anzahl_DISC', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                   createState(dpPrefix + "WLANUnifi.SiteLED", false, { name: 'SiteLED',  type: 'boolean', role: 'switch', read:  true,  write: true,});
                   createState(dpPrefix + "WLANUnifi.Client_WhiteList", "default", { name: 'Client_WhiteList_Filter_String', desc: 'Alarm_Table', type: 'string', unit: '',  role: '',read: true, write: true }); 
                   createState(dpPrefix + "WLANUnifi.Alarm.Alarm", { name: 'Alarm_Table_not_archieved', desc: 'Alarm_Table', type: 'string', unit: '',  role: '',read: true, write: true }); 
                   createState(dpPrefix + "WLANUnifi.Missing_Name", "not available", { name: 'Missing_Name', desc: 'Missing_Name', type: 'string', unit: '',  role: '',read: true, write: true }); 
                   createState(dpPrefix + "WLANUnifi.Alarm.Alarm_Anzahl", { name: 'Alarm_Anzahl', desc: 'Alarm_Table', type: 'number', unit: '',  role: '',read: true, write: true });
                   createState(dpPrefix + "WLANUnifi.ZyklusZaehler", 1, { name: 'ZyklusZaehler', desc: 'ZyklusZaehler', type: 'number', unit: '',  role: '',read: true, write: true });
                   createState(dpPrefix + "WLANUnifi.xxxScriptVersionxxx", versionNr,{ name: 'ScriptVersion', desc: 'ScriptVersion', type: 'string', unit: '',  role: '',read: true, write: true });
                   if (anwesenheit) createState(dpPrefix + "WLANUnifi.Wifi_Clients_Log", { name: 'Clients_HTML_Table_VIS_Log',  role: 'string', read:  true,  write: true,});
                  
                   var foo = (aliasname) ? true : false;
                   createState(dpPrefix + "WLANUnifi.AliasName", foo,  { name: ' AliasName',  desc:  'schaltet Aliasnamen ein', role: 'switch', type: 'boolean', read:  true,  write: true,
                              }  , function() {setStateDelayed(dpPrefix + "WLANUnifi.AliasName", foo, 200)});
                  
                   //createState(dpPrefix + "WLANUnifi.Aussortiert", { name: 'Aussortiert',  role: 'string', read:  true,  write: true,});
                  
                  
                   if (vouchers) {
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers", { name: 'Vouchers_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_List", { name: 'Vouchers_ID_List',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CodeList", { name: 'Vouchers_Texte_Delete_VIS_Widget',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CodeList2", { name: 'Vouchers_Werte_Delete_VIS_Widget',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_ValueCodeList", { name: 'Vouchers_ValueList_IQontrol', desc:"ValueCodeList", role: "", type:'number', states: "1:please wait ...;2:refresh webpage", def:1, min: 0, max: 20,  read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Create", false,  { name: 'A_New_Voucher_Create',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_DeleteVIS",   { name: 'Vouchers_Schalter_Delete_VIS_Widget',  role: 'switch', type: 'number', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CreateStandard", 1,  { name: 'Vouchers_Schalter_Create_VIS_Widget',  role: 'switch', type: 'number', read:  true,  write: true,});
                    //createState(dpPrefix + "WLANUnifi.Wifi_Create_Standard_Voucher", false,  { name: 'A_Delete_Voucher',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_Delete_Voucher.Delete", false,  { name: 'Voucher_Delete__Botton_VIS',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_Delete_Voucher.Voucher_ID", "must be set",{ name: 'A_Delete_Voucher.Voucher_ID', role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Dauer", "must be set",{ name: ' A_New_Voucher_Dauer',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.MultiUse", "must be set",{ name: ' A_New_Voucher_MultiUse',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Anzahl", "must be set",{ name: ' A_New_Voucher_Anzahl',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Notiz", "",{ name: ' A_New_Voucher_Notiz',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Upload", "",{ name: ' A_New_Voucher_Uplaod',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Download", "",{ name: ' A_New_Voucher_Download',  role: 'string', read:  true,  write: true,});
                    createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Mb_Begrenzung", "", { name: ' A_New_Voucher_Mb_Begrenzung',  role: 'string', read:  true,  write: true,});
                  
                  for (var i = 1; i < 21; i++) { 
                      var x=i.toString();
                      if (i<10) x="0"+x;
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x, { name: 'Unifi Voucher_Code'+x,  role: 'string', read:  true,  write: true, });
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".code"+x, { name: 'Unifi Voucher_Code_code'+x,  role: 'string', read:  true,  write: true, });    
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".erstellt", { name: 'Unifi Voucher_Code_erstellt'+x,  role: 'string', read:  true,  write: true, });
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".dauer", { name: 'Unifi Voucher_Code_duration'+x,  role: 'string', read:  true,  write: true, });
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".abgelaufen", { name: 'Unifi Voucher_Code_expires'+x,  role: 'string', read:  true, write: true, });
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".id", { name: 'Unifi Voucher_Code_id'+x,  role: 'string', read:  true,  write: true, });
                     createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".notiz", { name: 'Unifi Voucher_Code_notiz'+x,  role: 'string', read:  true,  write: true, });
                  }
                      let vouchiesHelper=""  //Werteliste-Datenpunkt für StandardVouchies
                      let vouchiesHelper2="Wähle Standard;"
                      let vouchiesHelper3="1;"
                       countie=0;
                  dslraserD 1 Antwort Letzte Antwort
                  0
                  • dslraserD dslraser

                    @liv-in-sky

                    ich finde es ein bisschen "unglücklich" das dieser Punkt

                    let xxClientxx="Heiko-Note10";"Kerstin-Note8"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
                    

                    unter "ab hier nichts mehr ändern" steht. Ich vermute da auch den Fehler von @SirDirk , kann das sein ?
                    Weil da eigentlich nichts geändert werden soll, aber die eigenen Geräte da rein müssen.

                    SirDirkS Offline
                    SirDirkS Offline
                    SirDirk
                    schrieb am zuletzt editiert von
                    #1028

                    @dslraser

                    unter dem Teil "//-----------------AB HIER NICHTS MEHR ÄNDERN------------------------------------------------------" habe ich nichts geändert.

                    Was muss denn da rein?

                    1 Antwort Letzte Antwort
                    0
                    • SirDirkS SirDirk

                      @dslraser sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                      Kannst Du mal diesen Teil ( also ohne Deine Zugangsdaten ab unter Const apName (ohne Deine AP'S) posten

                      Folgt hier:

                      
                      //Vordefinierte Vouchers für  one-click-create - wird hier etwas geändert BITTE DATENPUNKT (Vouchers_StandardList) LÖSCHEN vor Scriptstart!!!!
                      //BITTE alle Werte eingeben - für nichtbenutzte wie up-, download und nmb_begrenzung eine 0 eintragen
                      // Pflichteinträge sind dauer, anzahl, multiuse und notiz !!!
                      const standardVouchers = {"Vier Tage" : {dauer: 240, anzahl: 1, multiuse: 1, upload: 0, download:0, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 4 Tage"}, 
                                                "Sieben Tage" : {dauer: 10080, anzahl: 1, multiuse: 1, upload: 300, download:300, mb_begrenzung: 500, notiz:"MB Begrenzung 500 - 7 Tage"},
                                                "99 Minuten" : {dauer: 99, anzahl: 2, multiuse: 1, upload: 0, download:200, mb_begrenzung: 500, notiz:"Dauer 99 Minuten - Anzahl 2"}}
                      
                      const blackList = [] //Blacklist - diese clients werden nicht berücksichtigt - aber nur wenn ein alias im controller definiert ist
                      const checkConnType=["MephistoFon"];  // Datenpunkte (werden erstellt) für Überwachung von Connection (WLAN only) - aber nur wenn ein alias im controller definiert ist
                                                                         // wenn leer - keine überwachung (const checkConnType=[])
                      
                      //Pause bei Umschalten der WLANnetze, damit Netzanmeldungen der clients wieder normal
                      const clientPauseConst = 200000;    //1000 bedeutet 1 Sekunde -  das braucht Zeit !!!
                      
                      // Abfragezyklus definieren
                      const abfragezyklus =20000; // es ist nicht zu empfehlen unter 20000 (20 sekunden) zu gehen
                      const abfageoffset = 45000; // zu schnelle Abmeldungen können hier eingestellt weren - > erhöhen (15000 = 15 sek.)
                      
                      //HIER Einstellungen : EIN-AUSSCHALTEN Vouchers, iqontrol-Datei erstellen, anwesenheitskontrolle-clientpflege
                      let iqontrol = true;
                      let anwesenheit = true; // beim setzen von true auf false die verzeichnisstruktur unter iobroker-objects "von hand" löschen
                      
                      let vouchers = false;
                      let apInfo = true;
                      let problemWLAN=false; //bei problemen mit APs die über WLAN angebuden sind
                      let countFalseSetting=2; //2 bedeutet : einmal einen abfragezyklus auslassen bevor auf false gesetzt wird: Formel:  n-1
                      let aliasname=false; 
                      let disConClientsFirst=true; //zeigt disconnected clients als erstes im table (vis) oder iqontrol an
                      
                      let ohneClientAbfrage=false; //schaltet das bearbeiten der clients vollständig ab - auch keine datenpunkte
                      
                      let sortedByIP =false; //client anzeige nach IP sortiert
                      
                      
                      //FARBEN für IQontrol und VIS
                      //die farbe für die tabellen in der vis wird im widget eingestellt
                      //color_vis_text_client_in_table
                      //color_vis_text_voucher_in_table
                      let color_iqontrol_text__client_letzteAenderung_VIS="lightblue";
                      let color_iqontrol_text__client_letzteAenderung_VIS_Text="#d0cdcd";
                      let color_iqontrol_text_client_in_table= "black";  
                      let color_iqontrol_text__client_disconnected="#01A9DB";
                      
                      let color_iqontrol_client_gradient1= "lightblue";   
                      
                      let color_iqontrol_text_voucher_in_table= "black"; 
                      let color_iqontrol_voucher_gradient1= "lightblue"; 
                      let color_iqontrol_text__client_letzteAenderung="#848484";
                      let color_iqontrol_text__voucher_ueberschrift="lightblue";
                      
                      let schriftart="Helvetica";  //möglich: Helvetica,Serif
                      
                      
                      //-----------------AB HIER NICHTS MEHR ÄNDERN------------------------------------------------------
                      
                      const versionNr = "12122019-3.0"
                      const dpPrefix = "javascript."+ instance +".";
                      // Hier Definition iqontrol-Style für Popup
                      const format = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_voucher_in_table+";text-align:center; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent,"+color_iqontrol_voucher_gradient1+");\">";
                      const format2 = "<!DOCTYPE html><html lang=\"de\"><head><title>Clients</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body><table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                      const format3 = "<table style=\"color:"+color_iqontrol_text__client_letzteAenderung_VIS_Text+"; font-family:"+schriftart+";\">";
                      const format6 ="<tr><td>&ensp;</td><td>&ensp;</td></tr> <tr style=\"color:"+color_iqontrol_text__voucher_ueberschrift+";\">"
                      const apHead = "<!DOCTYPE html><html lang=\"de\"><head><title>Voucher</title><meta http-equiv=\"content-type\" content=\"text/html; charset=utf-8\"></head><body>"
                      const apTable = "<table style=\"color:"+color_iqontrol_text_client_in_table+"; font-family:"+schriftart+";background-image: linear-gradient(42deg,transparent," +color_iqontrol_client_gradient1+");\">";
                      const tableAus = "</table>";
                      
                      
                      
                      const request = require('request-promise-native').defaults({ rejectUnauthorized: false });
                      
                      const pathVoucher = "/htmlvoucher.html"; const pathClient = "/htmlclients.html"; const pathInfo = "/htmlinfo.html"; const pathAlarm = "/htmlalarm.html"; const pathAbmelung = "/htmlLog.html";
                      const pathOnlyWLAN = "/htmlwlan.html";const pathOnlyLAN = "/htmllan.html";const pathOnlyDISC = "/htmldisc.html";
                      let cookies = [];
                      let loggedIn = false;
                      let debug = false;
                      let mylogs = false;
                      let syslogs = false;
                      let xxClientxx="Heiko-Note10"; // falls der name leerzeichen beinhaltet müssen diese mit _ ersetzt werden z.b : "liv in sky handy"  zu  "liv_in_sky_handy"
                      let xxClientxxIndex=0;
                      let clientPause = false;
                      let clientPauseVal;
                      let wifiDPs = [];
                      
                      let wifiDPsHide = [];
                      let vouchiesDPs=[];
                      let myname = 'hostname';
                      let respv; let respc; let respw; let resph; let respgv; let respa; let respal; //geholte Daten
                      let countFalse=1; 
                      let statusarr=[];
                      let writeFileVar =0;
                      let listValue=[];            //iqontrol löschen kachel
                      let listValue2;              //iqontrol löschen kachel
                      let listValue3;              //iqontrol löschen VIS
                      let nichtSchalten=true;   
                      //let nichtSchalten2=false;    //iqontrol löschen kachel
                      let versuch;
                      let listeDatenpunkte = [];
                      let listeDatenpunkteControl=[];
                      let countie;
                      let binAmArbeiten=false;
                      var midnight=false;
                      let apListeTable;
                      let apListe;
                      let healthListe;
                      let healthListeTable;
                      let notSeen=[];
                      let ipArrFehlt=[];
                      var notseenLengthOld;
                      var notseenLength;
                      let lastChange=[];
                      let mybodyVouchers2; // create-one-click-standard-voucher
                      let expire_var; // create-one-click-standard-voucher
                      let n_var; // create-one-click-standard-voucher
                      let quota_var; // create-one-click-standard-voucher
                      let note_var; // create-one-click-standard-voucher
                      let up_var; // create-one-click-standard-voucher
                      let down_var; // create-one-click-standard-voucher
                      let MBytes_var; // create-one-click-standard-voucher
                      let testerral=false; let testerrc=false; let testerrl=false; let testerrv=false; let testerrs=false; let testerrh=false; let testerrcv=false; let testerrdv=false; let testerrws=false; let testerrap=false; 
                      var scriptCounter=0;
                      let health = true;  // Angaben zum Systemstatus - die Healtdaten werden nur alle 5 Abfragezyklen geholt
                      let alarmSwitch =false;
                      let alarmCounter =0;
                      let firstTime=0;
                      let mybodyVouchers;
                      let monthChangeData=false;
                      let checkNetwork=false;
                      var wifiLength=0;
                            for(let wifi_name in wifis) {      
                          wifiLength++; }
                      
                      
                       if (aliasname)  myname="name";
                       if (ohneClientAbfrage) anwesenheit=false;
                       writeMyFile("neugestartet ... bitte warten", pathClient);
                       writeMyFile("neugestartet ... bitte warten", pathVoucher);
                       writeMyFile("neugestartet ... bitte warten", pathAlarm);
                       writeMyFile("neugestartet ... bitte warten", pathInfo);
                       writeMyFile("neugestartet ... bitte warten", pathOnlyWLAN);
                       writeMyFile("neugestartet ... bitte warten", pathOnlyLAN);
                       writeMyFile("neugestartet ... bitte warten", pathOnlyDISC);
                       if ( !anwesenheit) {writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathClient);
                                           writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyWLAN);
                                           writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyLAN);
                                           writeMyFile("variable anwesenheit und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathOnlyDISC);}
                      
                      
                       if ( !vouchers && !iqontrol) writeMyFile("variable vouchers und/oder iqontrol ist nicht im unifiscript aktiviert - auf true setzen", pathVoucher);
                      
                      for(let wifi_name in wifis) {
                           wifiDPsHide.push(dpPrefix + "WLANUnifi.WLANSSIDsHide." + wifis[wifi_name].name);
                           createState(dpPrefix + "WLANUnifi.WLANSSIDsHide."+ wifi_name, false, { name: wifis[wifi_name].desc, role: 'switch', read: true, write: true, type: "boolean" });}
                      
                       //Erstelle Datenpunkte für die WLANs automatisch
                       for(let wifi_name in wifis) {
                           wifiDPs.push(dpPrefix + "WLANUnifi." + wifis[wifi_name].name);
                           createState(dpPrefix + "WLANUnifi."+ wifi_name, { name: wifis[wifi_name].desc, role: 'switch', read: true, write: true, type: "boolean" });}
                      
                       createState(dpPrefix + "WLANUnifi.Wifi_Clients", "not available",{ name: 'Clients_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                       createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyLAN", "not available",{ name: 'Clients_LAN_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                       createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyWLAN", "not available",{ name: 'Clients__WLAN_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                       createState(dpPrefix + "WLANUnifi.Wifi_ClientsOnlyDISC", "not available",{ name: 'Clients__Disconnected_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                       createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_LAN",  { name: 'Wifi_Clients_Anzahl_LAN', desc: 'Wifi_Clients_Anzahl_LAN', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                       createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_WLAN",  { name: 'Wifi_Clients_Anzahl_WLAN', desc: 'Wifi_Clients_Anzahl_WLAN', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                       createState(dpPrefix + "WLANUnifi.Wifi_Clients_Anzahl_DISC",  { name: 'Wifi_Clients_Anzahl_DISC', desc: 'Wifi_Clients_Anzahl_DISC', type: 'number',def:0, unit: '', min: '0', max: '100', role: '',read: true, write: false });
                       createState(dpPrefix + "WLANUnifi.SiteLED", false, { name: 'SiteLED',  type: 'boolean', role: 'switch', read:  true,  write: true,});
                       createState(dpPrefix + "WLANUnifi.Client_WhiteList", "default", { name: 'Client_WhiteList_Filter_String', desc: 'Alarm_Table', type: 'string', unit: '',  role: '',read: true, write: true }); 
                       createState(dpPrefix + "WLANUnifi.Alarm.Alarm", { name: 'Alarm_Table_not_archieved', desc: 'Alarm_Table', type: 'string', unit: '',  role: '',read: true, write: true }); 
                       createState(dpPrefix + "WLANUnifi.Missing_Name", "not available", { name: 'Missing_Name', desc: 'Missing_Name', type: 'string', unit: '',  role: '',read: true, write: true }); 
                       createState(dpPrefix + "WLANUnifi.Alarm.Alarm_Anzahl", { name: 'Alarm_Anzahl', desc: 'Alarm_Table', type: 'number', unit: '',  role: '',read: true, write: true });
                       createState(dpPrefix + "WLANUnifi.ZyklusZaehler", 1, { name: 'ZyklusZaehler', desc: 'ZyklusZaehler', type: 'number', unit: '',  role: '',read: true, write: true });
                       createState(dpPrefix + "WLANUnifi.xxxScriptVersionxxx", versionNr,{ name: 'ScriptVersion', desc: 'ScriptVersion', type: 'string', unit: '',  role: '',read: true, write: true });
                       if (anwesenheit) createState(dpPrefix + "WLANUnifi.Wifi_Clients_Log", { name: 'Clients_HTML_Table_VIS_Log',  role: 'string', read:  true,  write: true,});
                      
                       var foo = (aliasname) ? true : false;
                       createState(dpPrefix + "WLANUnifi.AliasName", foo,  { name: ' AliasName',  desc:  'schaltet Aliasnamen ein', role: 'switch', type: 'boolean', read:  true,  write: true,
                                  }  , function() {setStateDelayed(dpPrefix + "WLANUnifi.AliasName", foo, 200)});
                      
                       //createState(dpPrefix + "WLANUnifi.Aussortiert", { name: 'Aussortiert',  role: 'string', read:  true,  write: true,});
                      
                      
                       if (vouchers) {
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers", { name: 'Vouchers_HTML_Table_VIS',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_List", { name: 'Vouchers_ID_List',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CodeList", { name: 'Vouchers_Texte_Delete_VIS_Widget',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CodeList2", { name: 'Vouchers_Werte_Delete_VIS_Widget',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_ValueCodeList", { name: 'Vouchers_ValueList_IQontrol', desc:"ValueCodeList", role: "", type:'number', states: "1:please wait ...;2:refresh webpage", def:1, min: 0, max: 20,  read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Create", false,  { name: 'A_New_Voucher_Create',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_DeleteVIS",   { name: 'Vouchers_Schalter_Delete_VIS_Widget',  role: 'switch', type: 'number', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers_CreateStandard", 1,  { name: 'Vouchers_Schalter_Create_VIS_Widget',  role: 'switch', type: 'number', read:  true,  write: true,});
                        //createState(dpPrefix + "WLANUnifi.Wifi_Create_Standard_Voucher", false,  { name: 'A_Delete_Voucher',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_Delete_Voucher.Delete", false,  { name: 'Voucher_Delete__Botton_VIS',  role: 'switch', type: 'boolean', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_Delete_Voucher.Voucher_ID", "must be set",{ name: 'A_Delete_Voucher.Voucher_ID', role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Dauer", "must be set",{ name: ' A_New_Voucher_Dauer',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.MultiUse", "must be set",{ name: ' A_New_Voucher_MultiUse',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Anzahl", "must be set",{ name: ' A_New_Voucher_Anzahl',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Notiz", "",{ name: ' A_New_Voucher_Notiz',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Upload", "",{ name: ' A_New_Voucher_Uplaod',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Download", "",{ name: ' A_New_Voucher_Download',  role: 'string', read:  true,  write: true,});
                        createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.A_New_Voucher.Mb_Begrenzung", "", { name: ' A_New_Voucher_Mb_Begrenzung',  role: 'string', read:  true,  write: true,});
                      
                      for (var i = 1; i < 21; i++) { 
                          var x=i.toString();
                          if (i<10) x="0"+x;
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x, { name: 'Unifi Voucher_Code'+x,  role: 'string', read:  true,  write: true, });
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".code"+x, { name: 'Unifi Voucher_Code_code'+x,  role: 'string', read:  true,  write: true, });    
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".erstellt", { name: 'Unifi Voucher_Code_erstellt'+x,  role: 'string', read:  true,  write: true, });
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".dauer", { name: 'Unifi Voucher_Code_duration'+x,  role: 'string', read:  true,  write: true, });
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".abgelaufen", { name: 'Unifi Voucher_Code_expires'+x,  role: 'string', read:  true, write: true, });
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".id", { name: 'Unifi Voucher_Code_id'+x,  role: 'string', read:  true,  write: true, });
                         createState(dpPrefix + "WLANUnifi.Wifi_Vouchers-CODES.CODE"+x+".notiz", { name: 'Unifi Voucher_Code_notiz'+x,  role: 'string', read:  true,  write: true, });
                      }
                          let vouchiesHelper=""  //Werteliste-Datenpunkt für StandardVouchies
                          let vouchiesHelper2="Wähle Standard;"
                          let vouchiesHelper3="1;"
                           countie=0;
                      dslraserD Offline
                      dslraserD Offline
                      dslraser
                      Forum Testing Most Active
                      schrieb am zuletzt editiert von dslraser
                      #1029

                      @SirDirk
                      @liv-in-sky

                      schau mal in Zeile 79....(wie vermutet, da steht noch mein Gerät vom testen drinn)

                      Da muß Dein Gerät /Deine Geräte rein die Du überwachen möchtest, das aus Zeile 10 vom Post oben.

                      SirDirkS 1 Antwort Letzte Antwort
                      0
                      • dslraserD dslraser

                        @SirDirk
                        @liv-in-sky

                        schau mal in Zeile 79....(wie vermutet, da steht noch mein Gerät vom testen drinn)

                        Da muß Dein Gerät /Deine Geräte rein die Du überwachen möchtest, das aus Zeile 10 vom Post oben.

                        SirDirkS Offline
                        SirDirkS Offline
                        SirDirk
                        schrieb am zuletzt editiert von
                        #1030

                        @dslraser

                        Also Zeile 96?

                        e9bf440e-aed4-41c0-a84d-3aa6ffcfad55-grafik.png

                        Und was müsste ich für mehrere Geräte eintragen?

                        dslraserD 1 Antwort Letzte Antwort
                        0
                        • SirDirkS SirDirk

                          @dslraser

                          Also Zeile 96?

                          e9bf440e-aed4-41c0-a84d-3aa6ffcfad55-grafik.png

                          Und was müsste ich für mehrere Geräte eintragen?

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

                          @SirDirk
                          schau mal in meinen Spoiler von oben

                          https://forum.iobroker.net/post/340908

                          (Bei mir Zeilen 9 und 67)

                          1 Antwort Letzte Antwort
                          0
                          • SirDirkS SirDirk

                            @liv-in-sky
                            Ich habe ein kompliziertes Passwort aus einem PW-Manager mit Sonderzeichen und Zahlen - aber keine Umlaute - keine Leerzeichen.

                            In der JS-Instanz habe ich die folgenden Einträge:

                            14ac5649-3f90-4bff-a20d-57f21d40f249-grafik.png

                            @dslraser
                            nach dem klein-schreiben von default funktioniert nun der Login - es kommt jetzt aber folgende Fehlermeldung:

                            099831ea-0029-4bf4-944c-029e3a33ebfd-grafik.png

                            Irgendwie komme ich da auf folgende Zeilen, denn es sind keine MephistoFon-Einträge in den Datenpunkten.

                            dce2b33d-8d0b-42ff-a2c2-aefe467fc05f-grafik.png

                            Danke für die Hilfe beim Login - habt ihr evtl. eine Idee zu der neuen Fehlermeldung?

                            die folgenden Log-Einträge sind auch noch vorhanden:

                            7754af29-a0a2-45cb-9626-81120153884d-grafik.png

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

                            @SirDirk bei den ersten lauf kann es schon mal zu warnungen kommen

                            du solltest auf jeden fall mal das script stoppen - dann den javascript adapter auch neustarten und dann wieder das script starten

                            kontrolliere mal :

                            sind die datenpunkte für die anwesenheit alle da und true

                            • ist unter WLANUnifiHelp.Others der datenpunkt mit den wifi-geräten angelegt worden

                            @dslraser
                            xxClientsxx ist nur zum testen da und kommt nicht zum einsatz, wenn syslog=false ist - ist nur für ausnahmefälle und debug - deshalb der richtige platz - dieses debug sagt einem nur was, wenn man weiß, was im script abläuft

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

                              @SirDirk bei den ersten lauf kann es schon mal zu warnungen kommen

                              du solltest auf jeden fall mal das script stoppen - dann den javascript adapter auch neustarten und dann wieder das script starten

                              kontrolliere mal :

                              sind die datenpunkte für die anwesenheit alle da und true

                              • ist unter WLANUnifiHelp.Others der datenpunkt mit den wifi-geräten angelegt worden

                              @dslraser
                              xxClientsxx ist nur zum testen da und kommt nicht zum einsatz, wenn syslog=false ist - ist nur für ausnahmefälle und debug - deshalb der richtige platz - dieses debug sagt einem nur was, wenn man weiß, was im script abläuft

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

                              @liv-in-sky
                              okay

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

                                @SirDirk bei den ersten lauf kann es schon mal zu warnungen kommen

                                du solltest auf jeden fall mal das script stoppen - dann den javascript adapter auch neustarten und dann wieder das script starten

                                kontrolliere mal :

                                sind die datenpunkte für die anwesenheit alle da und true

                                • ist unter WLANUnifiHelp.Others der datenpunkt mit den wifi-geräten angelegt worden

                                @dslraser
                                xxClientsxx ist nur zum testen da und kommt nicht zum einsatz, wenn syslog=false ist - ist nur für ausnahmefälle und debug - deshalb der richtige platz - dieses debug sagt einem nur was, wenn man weiß, was im script abläuft

                                SirDirkS Offline
                                SirDirkS Offline
                                SirDirk
                                schrieb am zuletzt editiert von
                                #1034

                                @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                                nifiHelp.Others der datenpunkt mit den wifi-geräten angelegt word

                                Script habe ich mehrfach gestoppt und auch die Instanz neu gestartet.
                                Datenpunkte für Anwesenheit sind nicht vorhanden.
                                @dslraser
                                Leider habe ich nun nicht verstanden, was ich wo ändern muss.

                                liv-in-skyL dslraserD 2 Antworten Letzte Antwort
                                0
                                • SirDirkS SirDirk

                                  @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                                  nifiHelp.Others der datenpunkt mit den wifi-geräten angelegt word

                                  Script habe ich mehrfach gestoppt und auch die Instanz neu gestartet.
                                  Datenpunkte für Anwesenheit sind nicht vorhanden.
                                  @dslraser
                                  Leider habe ich nun nicht verstanden, was ich wo ändern muss.

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

                                  @SirDirk gibt es die möglichkeit anydesk oder teamviewer - dann schau ich mal rein

                                  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

                                  SirDirkS 1 Antwort Letzte Antwort
                                  0
                                  • SirDirkS SirDirk

                                    @liv-in-sky sagte in Unifi WLAN Script 2 mit Anwesenheitskontrolle:

                                    nifiHelp.Others der datenpunkt mit den wifi-geräten angelegt word

                                    Script habe ich mehrfach gestoppt und auch die Instanz neu gestartet.
                                    Datenpunkte für Anwesenheit sind nicht vorhanden.
                                    @dslraser
                                    Leider habe ich nun nicht verstanden, was ich wo ändern muss.

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

                                    @SirDirk
                                    nee, alles gut. Ich war auf dem falschen Dampfer unterwegs.....(Sorry für die Verwirrung)

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

                                      @SirDirk gibt es die möglichkeit anydesk oder teamviewer - dann schau ich mal rein

                                      SirDirkS Offline
                                      SirDirkS Offline
                                      SirDirk
                                      schrieb am zuletzt editiert von
                                      #1037

                                      @liv-in-sky
                                      Teamviewer wäre kein Problem. Wie kann ich die Daten per PN senden?

                                      liv-in-skyL 1 Antwort Letzte Antwort
                                      0
                                      • SirDirkS SirDirk

                                        @liv-in-sky
                                        Teamviewer wäre kein Problem. Wie kann ich die Daten per PN senden?

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

                                        @SirDirk rechts oben neben der glocke ist der chat

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

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

                                          @dslraser hallo h.

                                          so wie es scheint, es ist tatsächlich wieder ein anderes verhalten - wenn mein handy aus dem netz verschwindet - wird bei mir im controller unter last activity "just now" angezeigt - anscheinend kommen da wieder andere werte- wie sich das mit usg auswirkt weiß ich im moment nicht

                                          würdest du das bitte mal testen und morgen, wenn du wieder im büro bist, kontrollieren

                                          unifi-skipt-ohne-abmelden-test.txt

                                          danke dir

                                          ps: ist garnicht so leicht darzustellen - das handy aus dem netz zu bekommen, obwohl alle ap'S online sind :-(

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

                                          @liv-in-sky
                                          heute morgen hat es funktioniert.(mit VPN und dem geänderten Script)
                                          Screenshot_20191217-090227_Chrome.jpg

                                          liv-in-skyL 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          305

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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