Skip to content
  • 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
  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

NEWS

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

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

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

Test Adapter iQontrol 2.0.x Vis (Entwicklungs-Thread)

Geplant Angeheftet Gesperrt Verschoben Tester
appdark-modeiqontrolresponsivevisvisualisierungvisualizationwidget
7.6k Beiträge 296 Kommentatoren 7.0m Aufrufe 201 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.
  • da_WoodyD da_Woody

    @rookie50 moin! shit das es bei dir nicht klappt. naja, gerade auf 5.0.11 gezogen, ohne probleme. bis auf das, daß mir gestern abend und heut morgen der komplette Proxmox rechner abgekackt ist... 😞
    nochmal probiert, geht noch immer nicht, aber mit dem script hats funktioniert! 👍 gestern auch versucht das per hand hinzubekommen, ging aber nicht. tögal, werds aber mal @apollon77 flüstern.
    schau dann später ob ich weiterkomme.
    wie verhält sich das ganze, wenn man mehrere alexa gruppen hat? einfach dort einbauen?
    im moment hab ich einmal studio, alexa show und 2 multiroomgruppen: werkstatt (2x Dot) party (2x Dot)

    edith: ich glaub, du wirst deine anleitung überarbeiten müssen... 😕
    https://github.com/ioBroker/ioBroker.admin/issues/761

    R Offline
    R Offline
    Rookie50
    schrieb am zuletzt editiert von
    #5259

    @da_woody
    Hi,

    da werde ich erstmal noch ein bisschen die Entwicklung abwarten, bevor ich die Anleitung umschreibe. Ich hatte es mit Version 5.0.9 so anlegen können.

    Wenn Du mehrere Alexa's hast, kannst Du pro Alexa einen DP anlegen. Halt immer mit einem anderen Namen.

    Gruss
    Rookie

    da_WoodyD 1 Antwort Letzte Antwort
    1
    • R Rookie50

      @da_woody
      Hi,

      da werde ich erstmal noch ein bisschen die Entwicklung abwarten, bevor ich die Anleitung umschreibe. Ich hatte es mit Version 5.0.9 so anlegen können.

      Wenn Du mehrere Alexa's hast, kannst Du pro Alexa einen DP anlegen. Halt immer mit einem anderen Namen.

      Gruss
      Rookie

      da_WoodyD Online
      da_WoodyD Online
      da_Woody
      schrieb am zuletzt editiert von
      #5260

      @rookie50 war nur ein seichter hinweis, daß ich nicht der einige bin. nebenbei sind da jetzt diskussionen aufgetaucht, ob das überhaupt richtig ist. wobei es ja verzeichnisse(unterverzeichnisse immer schon gegeben hat. IMHO scheiterts da wieder mal an der definitionsfrage...
      danke.gif das wollt ich wissen, mit deinem kleinen script kann ich ja 896 anlegen! droelf.gif umgehn kann ich mit sowas ja, nur am selber tippseln scheiterts bei mir. pardon.gif

      gruß vom Woody
      HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

      R 1 Antwort Letzte Antwort
      0
      • da_WoodyD da_Woody

        @rookie50 war nur ein seichter hinweis, daß ich nicht der einige bin. nebenbei sind da jetzt diskussionen aufgetaucht, ob das überhaupt richtig ist. wobei es ja verzeichnisse(unterverzeichnisse immer schon gegeben hat. IMHO scheiterts da wieder mal an der definitionsfrage...
        danke.gif das wollt ich wissen, mit deinem kleinen script kann ich ja 896 anlegen! droelf.gif umgehn kann ich mit sowas ja, nur am selber tippseln scheiterts bei mir. pardon.gif

        R Offline
        R Offline
        Rookie50
        schrieb am zuletzt editiert von Rookie50
        #5261

        @da_woody Alles gut, da hast Du wohl mehr reininterpretiert, als es gemeint war 😉

        Ich habe das mit den Objekten wohl selber auch falsch gemacht. Ich bin selber auch nur User und kein Entwickler.

        Wenn Du jetzt klar kommst, haben wir trotzdem das Ziel erreicht 😁

        da_WoodyD 1 Antwort Letzte Antwort
        0
        • R Rookie50

          @da_woody Alles gut, da hast Du wohl mehr reininterpretiert, als es gemeint war 😉

          Ich habe das mit den Objekten wohl selber auch falsch gemacht. Ich bin selber auch nur User und kein Entwickler.

          Wenn Du jetzt klar kommst, haben wir trotzdem das Ziel erreicht 😁

          da_WoodyD Online
          da_WoodyD Online
          da_Woody
          schrieb am zuletzt editiert von
          #5262

          @rookie50 sagte in Test Adapter iQontrol 1.8.x Vis:

          wohl mehr reininterpretiert

          tjo, für einen ösi sind die teilweise "kruden" gedankengänge deutscher nachbarn leicht misszuinterpretieren...
          proscht.gif
          aber so is es halt, was der eine sagt versteht der andere leicht falsch... 👍

          gruß vom Woody
          HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

          1 Antwort Letzte Antwort
          3
          • s.bormannS s.bormann

            @rookie50 sagte in Test Adapter iQontrol 1.7.x Vis:

            @s-bormann also, ich kann über die Lautsprecher auf Verzeichnisse zugreifen, die unterschiedliche Anzahl von Unterordnern haben. Diese Ordner würde ich in DP als Liste oder json schreiben. Die soll dann angezeigt werden und ich würde gerne einen Eintrag wählen. Um dann neu einzulesen.
            Im Grunde ist es ein ähnliches Problem wie mit der TuneIn Senderliste 😉

            LG Rookie

            Hi,
            prinzipiell ist das machbar, dazu müsste man allerdings ein Widget bauen.
            @siedi ist hier https://github.com/sbormann/ioBroker.iqontrol/issues/152 gerade dabei, so etwas zu entwickeln (das Widget von siedi baut aus einem JSON eine HTML-Tabelle).
            Damit ist man ja schon fast am Ziel. Das ganze müsste jetzt nur noch um einen Button pro Zeile ergänzt werden, der dann den Sender umschaltet. Dazu kann der Button einfach das Kommandeo setState benutzen (siehe hier: https://github.com/sbormann/ioBroker.iqontrol#postmessage-communication ).

            Bist Du so ein bisschen firm in Web-Entwicklung und bekommst das hin?

            Ansonsten schreibe ich es mir auf die Liste und werde mich da mal dran setzen.

            LG

            da_WoodyD Online
            da_WoodyD Online
            da_Woody
            schrieb am zuletzt editiert von
            #5263

            @s-bormann weils mich schon länger stört...
            ist das schwierig, links in der leiste, 1a511070-a73d-4b99-9331-706ae6f9a919-grafik.png statt direkt in die visu, in die config zu kommen? IMHO bringt mir der link in die visu nichts, ich möcht, wenn ich da drinnen bin was konfigurieren...
            überall anders komm ich ja auch dort hin. z.b.:
            9d833591-ef1c-40a9-8e1a-515b6030e525-grafik.png

            gruß vom Woody
            HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

            M 1 Antwort Letzte Antwort
            2
            • da_WoodyD da_Woody

              @s-bormann weils mich schon länger stört...
              ist das schwierig, links in der leiste, 1a511070-a73d-4b99-9331-706ae6f9a919-grafik.png statt direkt in die visu, in die config zu kommen? IMHO bringt mir der link in die visu nichts, ich möcht, wenn ich da drinnen bin was konfigurieren...
              überall anders komm ich ja auch dort hin. z.b.:
              9d833591-ef1c-40a9-8e1a-515b6030e525-grafik.png

              M Offline
              M Offline
              muuulle
              schrieb am zuletzt editiert von
              #5264

              @da_woody said in Test Adapter iQontrol 1.8.x Vis:

              @s-bormann weils mich schon länger stört...
              ist das schwierig, links in der leiste, 1a511070-a73d-4b99-9331-706ae6f9a919-grafik.png statt direkt in die visu, in die config zu kommen? IMHO bringt mir der link in die visu nichts, ich möcht, wenn ich da drinnen bin was konfigurieren...
              überall anders komm ich ja auch dort hin. z.b.:
              9d833591-ef1c-40a9-8e1a-515b6030e525-grafik.png

              +1

              1 Antwort Letzte Antwort
              0
              • dslraserD dslraser

                @newcompuhelp sagte in Test Adapter iQontrol 1.6.x Vis:

                Frage wie finde ich meine Stadt, also für das Wigget?

                Tippe mal in dem Widget Deinen Ort in das Suchen Feld ein und suche. Dann öffnet er eigentlich den Ort.
                Wenn es der passende Ort ist, dann schaust Du Dir einfach mal den Link im Browser an

                EDIT: oder hier

                https://www.wetter-deutschland.com/news/wetter-deutschland-com-KOSTENLOSES-WETTER-WIDGET-FUeR-IHRE-WEBSEITE/33967869

                oder hier noch ein anderes

                https://www.wetter.com/apps_und_mehr/website/homepagewidget/

                dirk1962D Offline
                dirk1962D Offline
                dirk1962
                schrieb am zuletzt editiert von dirk1962
                #5265

                @dslraser
                Bei Wetter.com wird nur ein html-Code erzeugt.
                Wie muss ich den in eine Kachel übertragen?

                Edit: Habs hinbekommen, hat sich erledigt.

                NUC8i5 mit Proxmox; Raspberrymatic in VM, iobroker, Motioneye, infuxDB und Grafana in CT.

                1 Antwort Letzte Antwort
                0
                • s.bormannS Offline
                  s.bormannS Offline
                  s.bormann
                  Most Active
                  schrieb am zuletzt editiert von
                  #5266

                  Mal kurz OT:
                  Habt ihr im neuen React-Admin (Expert-Mode) diese Einträge unter Objekte auch?:
                  5e508e7f-d5fe-431b-aea3-d00d267452a1-image.png

                  sigi234S da_WoodyD 2 Antworten Letzte Antwort
                  0
                  • s.bormannS s.bormann

                    Mal kurz OT:
                    Habt ihr im neuen React-Admin (Expert-Mode) diese Einträge unter Objekte auch?:
                    5e508e7f-d5fe-431b-aea3-d00d267452a1-image.png

                    sigi234S Online
                    sigi234S Online
                    sigi234
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #5267

                    @s-bormann

                    Ja

                    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Immer Daten sichern!

                    1 Antwort Letzte Antwort
                    0
                    • s.bormannS s.bormann

                      Mal kurz OT:
                      Habt ihr im neuen React-Admin (Expert-Mode) diese Einträge unter Objekte auch?:
                      5e508e7f-d5fe-431b-aea3-d00d267452a1-image.png

                      da_WoodyD Online
                      da_WoodyD Online
                      da_Woody
                      schrieb am zuletzt editiert von
                      #5268

                      @s-bormann 77db847f-aab5-47dc-bd24-5cc195042b02-grafik.png

                      gruß vom Woody
                      HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                      1 Antwort Letzte Antwort
                      0
                      • K Offline
                        K Offline
                        kassmann
                        schrieb am zuletzt editiert von kassmann
                        #5269

                        Mal eine Frage in die Runde. Ich wollte gestern und heute in die Einstellungen von iQontrol und bekam da die Fehlermeldung: "Fehler: Kein web-Adapter gefunden!"

                        Der Web Adapter ist aber installiert! Liegt das am Admin oder an iQontrol? 🤔

                        ggf. ein Lösungsansatz vorhanden? 😊

                        58d8e2c3-d123-4251-a39b-29af127da4e8-image.png

                        JLegJ 1 Antwort Letzte Antwort
                        0
                        • K kassmann

                          Mal eine Frage in die Runde. Ich wollte gestern und heute in die Einstellungen von iQontrol und bekam da die Fehlermeldung: "Fehler: Kein web-Adapter gefunden!"

                          Der Web Adapter ist aber installiert! Liegt das am Admin oder an iQontrol? 🤔

                          ggf. ein Lösungsansatz vorhanden? 😊

                          58d8e2c3-d123-4251-a39b-29af127da4e8-image.png

                          JLegJ Offline
                          JLegJ Offline
                          JLeg
                          schrieb am zuletzt editiert von
                          #5270

                          @kassmann sagte in Test Adapter iQontrol 1.8.x Vis:

                          ggf. ein Lösungsansatz vorhanden?

                          habe ich unter Safari auch - FF und Chrome funktionieren...

                          s.bormannS 1 Antwort Letzte Antwort
                          0
                          • JLegJ JLeg

                            @kassmann sagte in Test Adapter iQontrol 1.8.x Vis:

                            ggf. ein Lösungsansatz vorhanden?

                            habe ich unter Safari auch - FF und Chrome funktionieren...

                            s.bormannS Offline
                            s.bormannS Offline
                            s.bormann
                            Most Active
                            schrieb am zuletzt editiert von
                            #5271

                            @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                            Siehe https://github.com/sbormann/ioBroker.iqontrol#troubleshooting
                            Bitte vor allem den 2. Absatz beachten, hier wird beschrieben, wie man ein Log des Fehlers erzeugt und welche Screenshots für die weitere Analyse notwendig sind.

                            @kassmann Ist es bei Dir auch Safari?

                            K JLegJ 3 Antworten Letzte Antwort
                            0
                            • s.bormannS s.bormann

                              @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                              Siehe https://github.com/sbormann/ioBroker.iqontrol#troubleshooting
                              Bitte vor allem den 2. Absatz beachten, hier wird beschrieben, wie man ein Log des Fehlers erzeugt und welche Screenshots für die weitere Analyse notwendig sind.

                              @kassmann Ist es bei Dir auch Safari?

                              K Offline
                              K Offline
                              kassmann
                              schrieb am zuletzt editiert von
                              #5272

                              @kassmann Ist es bei Dir auch Safari?
                              Jup 👍
                              Log reiche ich nach. Danke

                              1 Antwort Letzte Antwort
                              0
                              • s.bormannS s.bormann

                                @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                                Siehe https://github.com/sbormann/ioBroker.iqontrol#troubleshooting
                                Bitte vor allem den 2. Absatz beachten, hier wird beschrieben, wie man ein Log des Fehlers erzeugt und welche Screenshots für die weitere Analyse notwendig sind.

                                @kassmann Ist es bei Dir auch Safari?

                                JLegJ Offline
                                JLegJ Offline
                                JLeg
                                schrieb am zuletzt editiert von
                                #5273

                                @s-bormann sagte in Test Adapter iQontrol 1.8.x Vis:

                                @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                                mein Safari läuft auf'm iPad - da finde ich "F12" für die Konsole nicht... 😉

                                s.bormannS 1 Antwort Letzte Antwort
                                0
                                • JLegJ JLeg

                                  @s-bormann sagte in Test Adapter iQontrol 1.8.x Vis:

                                  @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                                  mein Safari läuft auf'm iPad - da finde ich "F12" für die Konsole nicht... 😉

                                  s.bormannS Offline
                                  s.bormannS Offline
                                  s.bormann
                                  Most Active
                                  schrieb am zuletzt editiert von
                                  #5274

                                  @jleg sagte in Test Adapter iQontrol 1.8.x Vis:

                                  @s-bormann sagte in Test Adapter iQontrol 1.8.x Vis:

                                  @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?
                                  

                                  mein Safari läuft auf'm iPad - da finde ich "F12" für die Konsole nicht... 😉

                                  Schande aber auch 🙂

                                  1 Antwort Letzte Antwort
                                  0
                                  • s.bormannS s.bormann

                                    @jleg @kassmann Könnt ihr mal bitte ein Log aus der Browser-Console mailen?

                                    Siehe https://github.com/sbormann/ioBroker.iqontrol#troubleshooting
                                    Bitte vor allem den 2. Absatz beachten, hier wird beschrieben, wie man ein Log des Fehlers erzeugt und welche Screenshots für die weitere Analyse notwendig sind.

                                    @kassmann Ist es bei Dir auch Safari?

                                    K Offline
                                    K Offline
                                    kassmann
                                    schrieb am zuletzt editiert von
                                    #5275

                                    @s-bormann
                                    Die Safari Konsole überfordert mich 😬

                                    Ich hoffe, ich habe das Richtige erwischt 😁

                                    //Get Link of best fitting web-adapter
                                    console.log("getLink of best fitting web-adapter");
                                    getExtendableInstances(async function (result) {
                                    	if (result) {
                                    		//Detect connection over iobroker.net or iobroker.pro
                                    		var isIobrokerPro = false;
                                    		if (location.hostname.toLowerCase() == "iobroker.net" || location.hostname.toLowerCase() == "iobroker.pro"){ //Connection over iobroker.net or iobroker.pro
                                    			console.log("Connection over iobroker.net or iobroker.pro detected...");
                                    			isIobrokerPro = true;
                                    		}
                                    
                                    		//Find best fitting web-Adapter
                                    		var bestInstance = 0;
                                    		var goalSecure = (location.protocol == 'https:');
                                    		var goalSecureFound = false;
                                    		var goalSocketFound = false;
                                    		var goalForceWebSocketsFound = false;
                                    		for (i=0; i<result.length; i++){
                                    			if (result[i].native.secure == goalSecure){
                                    				if (!goalSecureFound) {
                                    					goalSecureFound = true;
                                    					bestInstance = i;
                                    				}
                                    				if (result[i].native.socketio == ""){
                                    					if (!goalSocketFound) {
                                    						goalSocketFound = true;
                                    						bestInstance = i;
                                    					}
                                    					if (result[i].native.forceWebSockets == false){
                                    						if(!goalForceWebSocketsFound){
                                    							goalForceWebSocketsFound = true;
                                    							bestInstance = i;
                                    						}
                                    					}
                                    				}
                                    			}
                                    		}
                                    		if (!(goalSocketFound && goalForceWebSocketsFound) && !isIobrokerPro){
                                    			console.log("Could not find any web-adapter with integrated socketIO and disabled Force Web-Sockets");
                                    			socketConnectionErrorMessages += "\n" + _("You need to activate integrated socket.IO and disable 'Force Web-Sockets' in web-adapter-settings!");
                                    		}
                                    
                                    		//Create Link from best fitting web-adapter
                                    		if (isIobrokerPro){ //Connection over iobroker.net or iobroker.pro - connect without ports!
                                    			link = location.protocol + "//" + location.hostname + "/iqontrol";
                                    			var connectionLink = location.protocol + "//"  + location.hostname;
                                    			var forceWebSocket = false;
                                    		} else { //Direct connection
                                    			link = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port + "/iqontrol";
                                    			var connectionLink = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port;
                                    			var forceWebSockets = result[bestInstance].native.forceWebSockets;
                                    		}
                                    		console.log("Got Link: " + link);
                                    		$('#mainLink').attr('href', link + "/index.html?namespace=" + adapter + "." + instance);
                                    
                                    		//Add Roles to dialogDeviceEditCommonRole-Selectbox
                                    		$('#dialogDeviceEditCommonRole').empty().append("<option disabled selected value>" + _("Select Role") + "</option>");
                                    		for (var element in iQontrolRoles){ $('#dialogDeviceEditCommonRole').append("<option value='" + element + "' data-icon='" + (iQontrolRoles[element].icon ? link + iQontrolRoles[element].icon : "") + "'>" + _(iQontrolRoles[element].name) + "</option>"); }
                                    		$('#dialogDeviceEditCommonRole').select();
                                    
                                    		//Signal to admin, that no changes yet
                                    		if(!newConfig) onChange(false);
                                    
                                    		//Create /usericons /usersymbols and /userwidgets
                                    		var createSpecialDirs = ["/usericons", "/usersymbols", "/userwidgets"];
                                    		for(i = 0; i < createSpecialDirs.length; i++){
                                    			var dirname = createSpecialDirs[i];
                                    			console.log("Check directory " + userfilesImagePath + dirname);
                                    			var result = await checkDirExistance(userfilesImagePath + dirname);
                                    			console.log(result);
                                    			if(!result) {
                                    				console.log("Creating directory " + userfilesImagePath + dirname);
                                    				await createDirAsync(userfilesImagePath + dirname);
                                    			}
                                    		};
                                    
                                    		//Get images
                                    		console.log("getImages");
                                    		getImages(async function(){
                                    			//Show Settings
                                    			console.log("All settings loaded. Adapter ready.");
                                    			$('.hideOnLoad').show();
                                    			$('.showOnLoad').hide();
                                    			loading = false;
                                    
                                    			//Reinitialize all the Materialize labels on the page if you are dynamically adding inputs:
                                    			if (M) M.updateTextFields();
                                    
                                    			//Get iobrokerObjects
                                    			getIobrokerObjects();
                                    			
                                    			//If react, make some css adjustments
                                    			var toDo = function(){
                                    				if(iobrokerObjects["system.adapter.admin.0"]?.native?.react){
                                    					isReact = true;
                                    					var customCSS = "";
                                    					customCSS += ".table-values tr:nth-child(2n) { background-color: rgba(0,0,0,0.04) !important; }";
                                    					customCSS += ".table-values.highlight > tbody > tr:hover { background-color: rgba(0,0,0,0.08) !important; }";
                                    					customCSS += ".table-values.highlight > tbody > tr:nth-child(2n):hover { background-color: rgba(0,0,0,0.08) !important; }";
                                    					customCSS += ".table-values th { background-color: rgba(0,0,0,0.1) !important; color: #1d1d1d !important; }";
                                    
                                    					customCSS += ".title { background-color: #164477; }";
                                    
                                    					customCSS += ".m .tabs .tab a { color: rgba(0, 0, 0, 0.5); }";
                                    					customCSS += ".m .tabs .tab a:hover { color: rgba(0, 0, 0, 0.86); }";
                                    					customCSS += ".m .tabs .tab a.active { color: #164477; }";
                                    					customCSS += ".m .tabs .active { border-bottom: 2px solid #164477; }";
                                    
                                    					customCSS += ".m nav { background-color: #3399cc; }";
                                    
                                    					customCSS += ".m .btn { background-color: #e0e0e0; color: #000000; }";
                                    					customCSS += ".m .btn:hover { background-color: #d5d5d5; }";
                                    					customCSS += ".m .btn.disabled { background-color: rgba(0, 0, 0, 0.12) !important; color: rgba(0, 0, 0, 0.26) !important; }";
                                    
                                    					customCSS += ".m .btn-floating { background-color: transparent; box-shadow: none; color: #000000; }";
                                    					customCSS += ".m .btn-floating:hover { background-color: rgba(0,0,0,0.08); }";
                                    					customCSS += ".m .btn-floating.selectClear { background-color: #ffffff; }";
                                    					customCSS += ".m .btn-floating.selectClear:hover { background-color: #ebebeb; }";
                                    					customCSS += ".m .btn-floating i { color: #000000; transition: color 0.3s; }";
                                    					customCSS += ".m .btn-floating.red  { background-color: transparent !important; }";
                                    					customCSS += ".m .btn-floating.red:hover { background-color: red !important; }";
                                    					customCSS += ".m .btn-floating.red:hover i { color: #ffffff; }";
                                    											
                                    					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button { background-color: transparent; }";
                                    					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button:hover { background-color: rgba(0,0,0,0.08); }";
                                    					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button i { color: #757575; }";
                                    					customCSS += ".dialog-select-object-ids .objects-list-table { background-color: #ffffff; }";
                                    					customCSS += ".dialog-select-object-ids .objects-list-table thead { display: none; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table tr { border: none !important; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover { background-color: #3399cc; outline: none; color: #ffffff; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover .fancytree-title { color: #ffffff; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active { background-color: #236b8e !important; outline: none !important; color: #ffffff !important; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active .fancytree-title { color: #ffffff; }";
                                    					customCSS += ".dialog-select-object-ids table.objects-list-table td { border: none !important; }";
                                    
                                    					customCSS += ".m .dropdown-content li>span { color: rgba(0, 0, 0, 0.86); }";
                                    					customCSS += ".m .dropdown-content li>a { color: rgba(0, 0, 0, 0.86); }";
                                    					customCSS += ".m [type=checkbox].filled-in:checked+span:not(.lever):after { border: #164477; background-color: #164477; }";
                                    					
                                    					addCustomCSS(customCSS, "reactCSS");
                                    					$('.table-button-add').addClass('grey lighten-2');
                                    					var selectIdImgPath = './fancytree/react/';
                                    					$('#fancytreeCSSLink').attr('href', './fancytree/react/ui.fancytree.min.css');
                                    					var warnIfLE = "5.0.8";
                                    				} else {
                                    					isReact = false;
                                    					var warnIfLE = "5.0.6";
                                    				}
                                    				//Warn if Admin-Version is too low
                                    				if(parseInt((iobrokerObjects && iobrokerObjects["system.adapter.admin"] && iobrokerObjects["system.adapter.admin"].common && iobrokerObjects["system.adapter.admin"].common.version || "0").split('.').join('')) <= warnIfLE.split('.').join('')) alert(_("Some operations are only supported by admin versions > %s. Please update your admin-adapter!", warnIfLE));
                                    			}
                                    			if(iobrokerObjectsReady) {
                                    				toDo();
                                    			} else {
                                    				iobrokerObjectsReadyFunctions.push(toDo);
                                    			}				
                                    		});
                                    	} else {
                                    		alert(_("Error: No web-adapter found!"));
                                    	}
                                    });
                                    
                                    s.bormannS 1 Antwort Letzte Antwort
                                    0
                                    • K kassmann

                                      @s-bormann
                                      Die Safari Konsole überfordert mich 😬

                                      Ich hoffe, ich habe das Richtige erwischt 😁

                                      //Get Link of best fitting web-adapter
                                      console.log("getLink of best fitting web-adapter");
                                      getExtendableInstances(async function (result) {
                                      	if (result) {
                                      		//Detect connection over iobroker.net or iobroker.pro
                                      		var isIobrokerPro = false;
                                      		if (location.hostname.toLowerCase() == "iobroker.net" || location.hostname.toLowerCase() == "iobroker.pro"){ //Connection over iobroker.net or iobroker.pro
                                      			console.log("Connection over iobroker.net or iobroker.pro detected...");
                                      			isIobrokerPro = true;
                                      		}
                                      
                                      		//Find best fitting web-Adapter
                                      		var bestInstance = 0;
                                      		var goalSecure = (location.protocol == 'https:');
                                      		var goalSecureFound = false;
                                      		var goalSocketFound = false;
                                      		var goalForceWebSocketsFound = false;
                                      		for (i=0; i<result.length; i++){
                                      			if (result[i].native.secure == goalSecure){
                                      				if (!goalSecureFound) {
                                      					goalSecureFound = true;
                                      					bestInstance = i;
                                      				}
                                      				if (result[i].native.socketio == ""){
                                      					if (!goalSocketFound) {
                                      						goalSocketFound = true;
                                      						bestInstance = i;
                                      					}
                                      					if (result[i].native.forceWebSockets == false){
                                      						if(!goalForceWebSocketsFound){
                                      							goalForceWebSocketsFound = true;
                                      							bestInstance = i;
                                      						}
                                      					}
                                      				}
                                      			}
                                      		}
                                      		if (!(goalSocketFound && goalForceWebSocketsFound) && !isIobrokerPro){
                                      			console.log("Could not find any web-adapter with integrated socketIO and disabled Force Web-Sockets");
                                      			socketConnectionErrorMessages += "\n" + _("You need to activate integrated socket.IO and disable 'Force Web-Sockets' in web-adapter-settings!");
                                      		}
                                      
                                      		//Create Link from best fitting web-adapter
                                      		if (isIobrokerPro){ //Connection over iobroker.net or iobroker.pro - connect without ports!
                                      			link = location.protocol + "//" + location.hostname + "/iqontrol";
                                      			var connectionLink = location.protocol + "//"  + location.hostname;
                                      			var forceWebSocket = false;
                                      		} else { //Direct connection
                                      			link = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port + "/iqontrol";
                                      			var connectionLink = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port;
                                      			var forceWebSockets = result[bestInstance].native.forceWebSockets;
                                      		}
                                      		console.log("Got Link: " + link);
                                      		$('#mainLink').attr('href', link + "/index.html?namespace=" + adapter + "." + instance);
                                      
                                      		//Add Roles to dialogDeviceEditCommonRole-Selectbox
                                      		$('#dialogDeviceEditCommonRole').empty().append("<option disabled selected value>" + _("Select Role") + "</option>");
                                      		for (var element in iQontrolRoles){ $('#dialogDeviceEditCommonRole').append("<option value='" + element + "' data-icon='" + (iQontrolRoles[element].icon ? link + iQontrolRoles[element].icon : "") + "'>" + _(iQontrolRoles[element].name) + "</option>"); }
                                      		$('#dialogDeviceEditCommonRole').select();
                                      
                                      		//Signal to admin, that no changes yet
                                      		if(!newConfig) onChange(false);
                                      
                                      		//Create /usericons /usersymbols and /userwidgets
                                      		var createSpecialDirs = ["/usericons", "/usersymbols", "/userwidgets"];
                                      		for(i = 0; i < createSpecialDirs.length; i++){
                                      			var dirname = createSpecialDirs[i];
                                      			console.log("Check directory " + userfilesImagePath + dirname);
                                      			var result = await checkDirExistance(userfilesImagePath + dirname);
                                      			console.log(result);
                                      			if(!result) {
                                      				console.log("Creating directory " + userfilesImagePath + dirname);
                                      				await createDirAsync(userfilesImagePath + dirname);
                                      			}
                                      		};
                                      
                                      		//Get images
                                      		console.log("getImages");
                                      		getImages(async function(){
                                      			//Show Settings
                                      			console.log("All settings loaded. Adapter ready.");
                                      			$('.hideOnLoad').show();
                                      			$('.showOnLoad').hide();
                                      			loading = false;
                                      
                                      			//Reinitialize all the Materialize labels on the page if you are dynamically adding inputs:
                                      			if (M) M.updateTextFields();
                                      
                                      			//Get iobrokerObjects
                                      			getIobrokerObjects();
                                      			
                                      			//If react, make some css adjustments
                                      			var toDo = function(){
                                      				if(iobrokerObjects["system.adapter.admin.0"]?.native?.react){
                                      					isReact = true;
                                      					var customCSS = "";
                                      					customCSS += ".table-values tr:nth-child(2n) { background-color: rgba(0,0,0,0.04) !important; }";
                                      					customCSS += ".table-values.highlight > tbody > tr:hover { background-color: rgba(0,0,0,0.08) !important; }";
                                      					customCSS += ".table-values.highlight > tbody > tr:nth-child(2n):hover { background-color: rgba(0,0,0,0.08) !important; }";
                                      					customCSS += ".table-values th { background-color: rgba(0,0,0,0.1) !important; color: #1d1d1d !important; }";
                                      
                                      					customCSS += ".title { background-color: #164477; }";
                                      
                                      					customCSS += ".m .tabs .tab a { color: rgba(0, 0, 0, 0.5); }";
                                      					customCSS += ".m .tabs .tab a:hover { color: rgba(0, 0, 0, 0.86); }";
                                      					customCSS += ".m .tabs .tab a.active { color: #164477; }";
                                      					customCSS += ".m .tabs .active { border-bottom: 2px solid #164477; }";
                                      
                                      					customCSS += ".m nav { background-color: #3399cc; }";
                                      
                                      					customCSS += ".m .btn { background-color: #e0e0e0; color: #000000; }";
                                      					customCSS += ".m .btn:hover { background-color: #d5d5d5; }";
                                      					customCSS += ".m .btn.disabled { background-color: rgba(0, 0, 0, 0.12) !important; color: rgba(0, 0, 0, 0.26) !important; }";
                                      
                                      					customCSS += ".m .btn-floating { background-color: transparent; box-shadow: none; color: #000000; }";
                                      					customCSS += ".m .btn-floating:hover { background-color: rgba(0,0,0,0.08); }";
                                      					customCSS += ".m .btn-floating.selectClear { background-color: #ffffff; }";
                                      					customCSS += ".m .btn-floating.selectClear:hover { background-color: #ebebeb; }";
                                      					customCSS += ".m .btn-floating i { color: #000000; transition: color 0.3s; }";
                                      					customCSS += ".m .btn-floating.red  { background-color: transparent !important; }";
                                      					customCSS += ".m .btn-floating.red:hover { background-color: red !important; }";
                                      					customCSS += ".m .btn-floating.red:hover i { color: #ffffff; }";
                                      											
                                      					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button { background-color: transparent; }";
                                      					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button:hover { background-color: rgba(0,0,0,0.08); }";
                                      					customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button i { color: #757575; }";
                                      					customCSS += ".dialog-select-object-ids .objects-list-table { background-color: #ffffff; }";
                                      					customCSS += ".dialog-select-object-ids .objects-list-table thead { display: none; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table tr { border: none !important; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover { background-color: #3399cc; outline: none; color: #ffffff; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover .fancytree-title { color: #ffffff; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active { background-color: #236b8e !important; outline: none !important; color: #ffffff !important; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active .fancytree-title { color: #ffffff; }";
                                      					customCSS += ".dialog-select-object-ids table.objects-list-table td { border: none !important; }";
                                      
                                      					customCSS += ".m .dropdown-content li>span { color: rgba(0, 0, 0, 0.86); }";
                                      					customCSS += ".m .dropdown-content li>a { color: rgba(0, 0, 0, 0.86); }";
                                      					customCSS += ".m [type=checkbox].filled-in:checked+span:not(.lever):after { border: #164477; background-color: #164477; }";
                                      					
                                      					addCustomCSS(customCSS, "reactCSS");
                                      					$('.table-button-add').addClass('grey lighten-2');
                                      					var selectIdImgPath = './fancytree/react/';
                                      					$('#fancytreeCSSLink').attr('href', './fancytree/react/ui.fancytree.min.css');
                                      					var warnIfLE = "5.0.8";
                                      				} else {
                                      					isReact = false;
                                      					var warnIfLE = "5.0.6";
                                      				}
                                      				//Warn if Admin-Version is too low
                                      				if(parseInt((iobrokerObjects && iobrokerObjects["system.adapter.admin"] && iobrokerObjects["system.adapter.admin"].common && iobrokerObjects["system.adapter.admin"].common.version || "0").split('.').join('')) <= warnIfLE.split('.').join('')) alert(_("Some operations are only supported by admin versions > %s. Please update your admin-adapter!", warnIfLE));
                                      			}
                                      			if(iobrokerObjectsReady) {
                                      				toDo();
                                      			} else {
                                      				iobrokerObjectsReadyFunctions.push(toDo);
                                      			}				
                                      		});
                                      	} else {
                                      		alert(_("Error: No web-adapter found!"));
                                      	}
                                      });
                                      
                                      s.bormannS Offline
                                      s.bormannS Offline
                                      s.bormann
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #5276

                                      @kassmann sagte in Test Adapter iQontrol 1.8.x Vis:

                                      @s-bormann
                                      Die Safari Konsole überfordert mich 😬

                                      Ich hoffe, ich habe das Richtige erwischt 😁

                                      //Get Link of best fitting web-adapter
                                      console.log("getLink of best fitting web-adapter");
                                      getExtendableInstances(async function (result) {
                                      if (result) {
                                      //Detect connection over iobroker.net or iobroker.pro
                                      var isIobrokerPro = false;
                                      if (location.hostname.toLowerCase() == "iobroker.net" || location.hostname.toLowerCase() == "iobroker.pro"){ //Connection over iobroker.net or iobroker.pro
                                      console.log("Connection over iobroker.net or iobroker.pro detected...");
                                      isIobrokerPro = true;
                                      }

                                        	//Find best fitting web-Adapter
                                        	var bestInstance = 0;
                                        	var goalSecure = (location.protocol == 'https:');
                                        	var goalSecureFound = false;
                                        	var goalSocketFound = false;
                                        	var goalForceWebSocketsFound = false;
                                        	for (i=0; i<result.length; i++){
                                        		if (result[i].native.secure == goalSecure){
                                        			if (!goalSecureFound) {
                                        				goalSecureFound = true;
                                        				bestInstance = i;
                                        			}
                                        			if (result[i].native.socketio == ""){
                                        				if (!goalSocketFound) {
                                        					goalSocketFound = true;
                                        					bestInstance = i;
                                        				}
                                        				if (result[i].native.forceWebSockets == false){
                                        					if(!goalForceWebSocketsFound){
                                        						goalForceWebSocketsFound = true;
                                        						bestInstance = i;
                                        					}
                                        				}
                                        			}
                                        		}
                                        	}
                                        	if (!(goalSocketFound && goalForceWebSocketsFound) && !isIobrokerPro){
                                        		console.log("Could not find any web-adapter with integrated socketIO and disabled Force Web-Sockets");
                                        		socketConnectionErrorMessages += "\n" + _("You need to activate integrated socket.IO and disable 'Force Web-Sockets' in web-adapter-settings!");
                                        	}
                                      
                                        	//Create Link from best fitting web-adapter
                                        	if (isIobrokerPro){ //Connection over iobroker.net or iobroker.pro - connect without ports!
                                        		link = location.protocol + "//" + location.hostname + "/iqontrol";
                                        		var connectionLink = location.protocol + "//"  + location.hostname;
                                        		var forceWebSocket = false;
                                        	} else { //Direct connection
                                        		link = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port + "/iqontrol";
                                        		var connectionLink = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port;
                                        		var forceWebSockets = result[bestInstance].native.forceWebSockets;
                                        	}
                                        	console.log("Got Link: " + link);
                                        	$('#mainLink').attr('href', link + "/index.html?namespace=" + adapter + "." + instance);
                                      
                                        	//Add Roles to dialogDeviceEditCommonRole-Selectbox
                                        	$('#dialogDeviceEditCommonRole').empty().append("<option disabled selected value>" + _("Select Role") + "</option>");
                                        	for (var element in iQontrolRoles){ $('#dialogDeviceEditCommonRole').append("<option value='" + element + "' data-icon='" + (iQontrolRoles[element].icon ? link + iQontrolRoles[element].icon : "") + "'>" + _(iQontrolRoles[element].name) + "</option>"); }
                                        	$('#dialogDeviceEditCommonRole').select();
                                      
                                        	//Signal to admin, that no changes yet
                                        	if(!newConfig) onChange(false);
                                      
                                        	//Create /usericons /usersymbols and /userwidgets
                                        	var createSpecialDirs = ["/usericons", "/usersymbols", "/userwidgets"];
                                        	for(i = 0; i < createSpecialDirs.length; i++){
                                        		var dirname = createSpecialDirs[i];
                                        		console.log("Check directory " + userfilesImagePath + dirname);
                                        		var result = await checkDirExistance(userfilesImagePath + dirname);
                                        		console.log(result);
                                        		if(!result) {
                                        			console.log("Creating directory " + userfilesImagePath + dirname);
                                        			await createDirAsync(userfilesImagePath + dirname);
                                        		}
                                        	};
                                      
                                        	//Get images
                                        	console.log("getImages");
                                        	getImages(async function(){
                                        		//Show Settings
                                        		console.log("All settings loaded. Adapter ready.");
                                        		$('.hideOnLoad').show();
                                        		$('.showOnLoad').hide();
                                        		loading = false;
                                      
                                        		//Reinitialize all the Materialize labels on the page if you are dynamically adding inputs:
                                        		if (M) M.updateTextFields();
                                      
                                        		//Get iobrokerObjects
                                        		getIobrokerObjects();
                                        		
                                        		//If react, make some css adjustments
                                        		var toDo = function(){
                                        			if(iobrokerObjects["system.adapter.admin.0"]?.native?.react){
                                        				isReact = true;
                                        				var customCSS = "";
                                        				customCSS += ".table-values tr:nth-child(2n) { background-color: rgba(0,0,0,0.04) !important; }";
                                        				customCSS += ".table-values.highlight > tbody > tr:hover { background-color: rgba(0,0,0,0.08) !important; }";
                                        				customCSS += ".table-values.highlight > tbody > tr:nth-child(2n):hover { background-color: rgba(0,0,0,0.08) !important; }";
                                        				customCSS += ".table-values th { background-color: rgba(0,0,0,0.1) !important; color: #1d1d1d !important; }";
                                      
                                        				customCSS += ".title { background-color: #164477; }";
                                      
                                        				customCSS += ".m .tabs .tab a { color: rgba(0, 0, 0, 0.5); }";
                                        				customCSS += ".m .tabs .tab a:hover { color: rgba(0, 0, 0, 0.86); }";
                                        				customCSS += ".m .tabs .tab a.active { color: #164477; }";
                                        				customCSS += ".m .tabs .active { border-bottom: 2px solid #164477; }";
                                      
                                        				customCSS += ".m nav { background-color: #3399cc; }";
                                      
                                        				customCSS += ".m .btn { background-color: #e0e0e0; color: #000000; }";
                                        				customCSS += ".m .btn:hover { background-color: #d5d5d5; }";
                                        				customCSS += ".m .btn.disabled { background-color: rgba(0, 0, 0, 0.12) !important; color: rgba(0, 0, 0, 0.26) !important; }";
                                      
                                        				customCSS += ".m .btn-floating { background-color: transparent; box-shadow: none; color: #000000; }";
                                        				customCSS += ".m .btn-floating:hover { background-color: rgba(0,0,0,0.08); }";
                                        				customCSS += ".m .btn-floating.selectClear { background-color: #ffffff; }";
                                        				customCSS += ".m .btn-floating.selectClear:hover { background-color: #ebebeb; }";
                                        				customCSS += ".m .btn-floating i { color: #000000; transition: color 0.3s; }";
                                        				customCSS += ".m .btn-floating.red  { background-color: transparent !important; }";
                                        				customCSS += ".m .btn-floating.red:hover { background-color: red !important; }";
                                        				customCSS += ".m .btn-floating.red:hover i { color: #ffffff; }";
                                        										
                                        				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button { background-color: transparent; }";
                                        				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button:hover { background-color: rgba(0,0,0,0.08); }";
                                        				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button i { color: #757575; }";
                                        				customCSS += ".dialog-select-object-ids .objects-list-table { background-color: #ffffff; }";
                                        				customCSS += ".dialog-select-object-ids .objects-list-table thead { display: none; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table tr { border: none !important; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover { background-color: #3399cc; outline: none; color: #ffffff; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover .fancytree-title { color: #ffffff; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active { background-color: #236b8e !important; outline: none !important; color: #ffffff !important; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active .fancytree-title { color: #ffffff; }";
                                        				customCSS += ".dialog-select-object-ids table.objects-list-table td { border: none !important; }";
                                      
                                        				customCSS += ".m .dropdown-content li>span { color: rgba(0, 0, 0, 0.86); }";
                                        				customCSS += ".m .dropdown-content li>a { color: rgba(0, 0, 0, 0.86); }";
                                        				customCSS += ".m [type=checkbox].filled-in:checked+span:not(.lever):after { border: #164477; background-color: #164477; }";
                                        				
                                        				addCustomCSS(customCSS, "reactCSS");
                                        				$('.table-button-add').addClass('grey lighten-2');
                                        				var selectIdImgPath = './fancytree/react/';
                                        				$('#fancytreeCSSLink').attr('href', './fancytree/react/ui.fancytree.min.css');
                                        				var warnIfLE = "5.0.8";
                                        			} else {
                                        				isReact = false;
                                        				var warnIfLE = "5.0.6";
                                        			}
                                        			//Warn if Admin-Version is too low
                                        			if(parseInt((iobrokerObjects && iobrokerObjects["system.adapter.admin"] && iobrokerObjects["system.adapter.admin"].common && iobrokerObjects["system.adapter.admin"].common.version || "0").split('.').join('')) <= warnIfLE.split('.').join('')) alert(_("Some operations are only supported by admin versions > %s. Please update your admin-adapter!", warnIfLE));
                                        		}
                                        		if(iobrokerObjectsReady) {
                                        			toDo();
                                        		} else {
                                        			iobrokerObjectsReadyFunctions.push(toDo);
                                        		}				
                                        	});
                                        } else {
                                        	alert(_("Error: No web-adapter found!"));
                                        }
                                      

                                      });

                                      Hi, leider nur fast 🙂
                                      Ich benötige das, was im Fenster "Console" steht. Im "optimalfall" sollte da ein Fehler stehen mit einer Zeilennummer, z.B.
                                      index_m.js:12345 ERROR: irgendwas stimmt nicht
                                      Das bräuchte ich.

                                      K 1 Antwort Letzte Antwort
                                      0
                                      • s.bormannS s.bormann

                                        @kassmann sagte in Test Adapter iQontrol 1.8.x Vis:

                                        @s-bormann
                                        Die Safari Konsole überfordert mich 😬

                                        Ich hoffe, ich habe das Richtige erwischt 😁

                                        //Get Link of best fitting web-adapter
                                        console.log("getLink of best fitting web-adapter");
                                        getExtendableInstances(async function (result) {
                                        if (result) {
                                        //Detect connection over iobroker.net or iobroker.pro
                                        var isIobrokerPro = false;
                                        if (location.hostname.toLowerCase() == "iobroker.net" || location.hostname.toLowerCase() == "iobroker.pro"){ //Connection over iobroker.net or iobroker.pro
                                        console.log("Connection over iobroker.net or iobroker.pro detected...");
                                        isIobrokerPro = true;
                                        }

                                          	//Find best fitting web-Adapter
                                          	var bestInstance = 0;
                                          	var goalSecure = (location.protocol == 'https:');
                                          	var goalSecureFound = false;
                                          	var goalSocketFound = false;
                                          	var goalForceWebSocketsFound = false;
                                          	for (i=0; i<result.length; i++){
                                          		if (result[i].native.secure == goalSecure){
                                          			if (!goalSecureFound) {
                                          				goalSecureFound = true;
                                          				bestInstance = i;
                                          			}
                                          			if (result[i].native.socketio == ""){
                                          				if (!goalSocketFound) {
                                          					goalSocketFound = true;
                                          					bestInstance = i;
                                          				}
                                          				if (result[i].native.forceWebSockets == false){
                                          					if(!goalForceWebSocketsFound){
                                          						goalForceWebSocketsFound = true;
                                          						bestInstance = i;
                                          					}
                                          				}
                                          			}
                                          		}
                                          	}
                                          	if (!(goalSocketFound && goalForceWebSocketsFound) && !isIobrokerPro){
                                          		console.log("Could not find any web-adapter with integrated socketIO and disabled Force Web-Sockets");
                                          		socketConnectionErrorMessages += "\n" + _("You need to activate integrated socket.IO and disable 'Force Web-Sockets' in web-adapter-settings!");
                                          	}
                                        
                                          	//Create Link from best fitting web-adapter
                                          	if (isIobrokerPro){ //Connection over iobroker.net or iobroker.pro - connect without ports!
                                          		link = location.protocol + "//" + location.hostname + "/iqontrol";
                                          		var connectionLink = location.protocol + "//"  + location.hostname;
                                          		var forceWebSocket = false;
                                          	} else { //Direct connection
                                          		link = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port + "/iqontrol";
                                          		var connectionLink = (result[bestInstance].native.secure ? "https://" : "http://") + location.hostname + ":" + result[bestInstance].native.port;
                                          		var forceWebSockets = result[bestInstance].native.forceWebSockets;
                                          	}
                                          	console.log("Got Link: " + link);
                                          	$('#mainLink').attr('href', link + "/index.html?namespace=" + adapter + "." + instance);
                                        
                                          	//Add Roles to dialogDeviceEditCommonRole-Selectbox
                                          	$('#dialogDeviceEditCommonRole').empty().append("<option disabled selected value>" + _("Select Role") + "</option>");
                                          	for (var element in iQontrolRoles){ $('#dialogDeviceEditCommonRole').append("<option value='" + element + "' data-icon='" + (iQontrolRoles[element].icon ? link + iQontrolRoles[element].icon : "") + "'>" + _(iQontrolRoles[element].name) + "</option>"); }
                                          	$('#dialogDeviceEditCommonRole').select();
                                        
                                          	//Signal to admin, that no changes yet
                                          	if(!newConfig) onChange(false);
                                        
                                          	//Create /usericons /usersymbols and /userwidgets
                                          	var createSpecialDirs = ["/usericons", "/usersymbols", "/userwidgets"];
                                          	for(i = 0; i < createSpecialDirs.length; i++){
                                          		var dirname = createSpecialDirs[i];
                                          		console.log("Check directory " + userfilesImagePath + dirname);
                                          		var result = await checkDirExistance(userfilesImagePath + dirname);
                                          		console.log(result);
                                          		if(!result) {
                                          			console.log("Creating directory " + userfilesImagePath + dirname);
                                          			await createDirAsync(userfilesImagePath + dirname);
                                          		}
                                          	};
                                        
                                          	//Get images
                                          	console.log("getImages");
                                          	getImages(async function(){
                                          		//Show Settings
                                          		console.log("All settings loaded. Adapter ready.");
                                          		$('.hideOnLoad').show();
                                          		$('.showOnLoad').hide();
                                          		loading = false;
                                        
                                          		//Reinitialize all the Materialize labels on the page if you are dynamically adding inputs:
                                          		if (M) M.updateTextFields();
                                        
                                          		//Get iobrokerObjects
                                          		getIobrokerObjects();
                                          		
                                          		//If react, make some css adjustments
                                          		var toDo = function(){
                                          			if(iobrokerObjects["system.adapter.admin.0"]?.native?.react){
                                          				isReact = true;
                                          				var customCSS = "";
                                          				customCSS += ".table-values tr:nth-child(2n) { background-color: rgba(0,0,0,0.04) !important; }";
                                          				customCSS += ".table-values.highlight > tbody > tr:hover { background-color: rgba(0,0,0,0.08) !important; }";
                                          				customCSS += ".table-values.highlight > tbody > tr:nth-child(2n):hover { background-color: rgba(0,0,0,0.08) !important; }";
                                          				customCSS += ".table-values th { background-color: rgba(0,0,0,0.1) !important; color: #1d1d1d !important; }";
                                        
                                          				customCSS += ".title { background-color: #164477; }";
                                        
                                          				customCSS += ".m .tabs .tab a { color: rgba(0, 0, 0, 0.5); }";
                                          				customCSS += ".m .tabs .tab a:hover { color: rgba(0, 0, 0, 0.86); }";
                                          				customCSS += ".m .tabs .tab a.active { color: #164477; }";
                                          				customCSS += ".m .tabs .active { border-bottom: 2px solid #164477; }";
                                        
                                          				customCSS += ".m nav { background-color: #3399cc; }";
                                        
                                          				customCSS += ".m .btn { background-color: #e0e0e0; color: #000000; }";
                                          				customCSS += ".m .btn:hover { background-color: #d5d5d5; }";
                                          				customCSS += ".m .btn.disabled { background-color: rgba(0, 0, 0, 0.12) !important; color: rgba(0, 0, 0, 0.26) !important; }";
                                        
                                          				customCSS += ".m .btn-floating { background-color: transparent; box-shadow: none; color: #000000; }";
                                          				customCSS += ".m .btn-floating:hover { background-color: rgba(0,0,0,0.08); }";
                                          				customCSS += ".m .btn-floating.selectClear { background-color: #ffffff; }";
                                          				customCSS += ".m .btn-floating.selectClear:hover { background-color: #ebebeb; }";
                                          				customCSS += ".m .btn-floating i { color: #000000; transition: color 0.3s; }";
                                          				customCSS += ".m .btn-floating.red  { background-color: transparent !important; }";
                                          				customCSS += ".m .btn-floating.red:hover { background-color: red !important; }";
                                          				customCSS += ".m .btn-floating.red:hover i { color: #ffffff; }";
                                          										
                                          				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button { background-color: transparent; }";
                                          				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button:hover { background-color: rgba(0,0,0,0.08); }";
                                          				customCSS += ".dialog-select-object-ids .material .main-toolbar-table .panel-button i { color: #757575; }";
                                          				customCSS += ".dialog-select-object-ids .objects-list-table { background-color: #ffffff; }";
                                          				customCSS += ".dialog-select-object-ids .objects-list-table thead { display: none; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table tr { border: none !important; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover { background-color: #3399cc; outline: none; color: #ffffff; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table tr:hover .fancytree-title { color: #ffffff; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active { background-color: #236b8e !important; outline: none !important; color: #ffffff !important; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table tr.fancytree-active .fancytree-title { color: #ffffff; }";
                                          				customCSS += ".dialog-select-object-ids table.objects-list-table td { border: none !important; }";
                                        
                                          				customCSS += ".m .dropdown-content li>span { color: rgba(0, 0, 0, 0.86); }";
                                          				customCSS += ".m .dropdown-content li>a { color: rgba(0, 0, 0, 0.86); }";
                                          				customCSS += ".m [type=checkbox].filled-in:checked+span:not(.lever):after { border: #164477; background-color: #164477; }";
                                          				
                                          				addCustomCSS(customCSS, "reactCSS");
                                          				$('.table-button-add').addClass('grey lighten-2');
                                          				var selectIdImgPath = './fancytree/react/';
                                          				$('#fancytreeCSSLink').attr('href', './fancytree/react/ui.fancytree.min.css');
                                          				var warnIfLE = "5.0.8";
                                          			} else {
                                          				isReact = false;
                                          				var warnIfLE = "5.0.6";
                                          			}
                                          			//Warn if Admin-Version is too low
                                          			if(parseInt((iobrokerObjects && iobrokerObjects["system.adapter.admin"] && iobrokerObjects["system.adapter.admin"].common && iobrokerObjects["system.adapter.admin"].common.version || "0").split('.').join('')) <= warnIfLE.split('.').join('')) alert(_("Some operations are only supported by admin versions > %s. Please update your admin-adapter!", warnIfLE));
                                          		}
                                          		if(iobrokerObjectsReady) {
                                          			toDo();
                                          		} else {
                                          			iobrokerObjectsReadyFunctions.push(toDo);
                                          		}				
                                          	});
                                          } else {
                                          	alert(_("Error: No web-adapter found!"));
                                          }
                                        

                                        });

                                        Hi, leider nur fast 🙂
                                        Ich benötige das, was im Fenster "Console" steht. Im "optimalfall" sollte da ein Fehler stehen mit einer Zeilennummer, z.B.
                                        index_m.js:12345 ERROR: irgendwas stimmt nicht
                                        Das bräuchte ich.

                                        K Offline
                                        K Offline
                                        kassmann
                                        schrieb am zuletzt editiert von
                                        #5277

                                        @s-bormann

                                        neuer Versuch 👽

                                        index_m.js:2128

                                        Bildschirmfoto 2021-05-03 um 18.42.08.png

                                        Bildschirmfoto 2021-05-03 um 18.34.32.png

                                        Bildschirmfoto 2021-05-03 um 18.58.17.png

                                        Jetzt besser?

                                        s.bormannS 1 Antwort Letzte Antwort
                                        0
                                        • P Offline
                                          P Offline
                                          Peter213
                                          schrieb am zuletzt editiert von
                                          #5278

                                          Hallo,
                                          ich wollte gerade ein Grafana Dashboard als Link hinterlegen. In der Kachel kommt dann immer "hat eine Verbindung verweigert".
                                          Hat einer eine Idee was ich prüfen kann?
                                          Von allen anderen Geräten ist das Dashboard über den Link erreichbar.

                                          c5ab90ab-948e-4c47-8c6a-e3b7bb7393d5-image.png

                                          c0143958-f726-45d0-94fc-3d41271fd224-image.png

                                          da_WoodyD 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

                                          758

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

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

                                          • Du hast noch kein Konto? Registrieren

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