Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Visualisierung
    4. iOS Device mit Jailbreak VIS/ioBroker Integration

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    iOS Device mit Jailbreak VIS/ioBroker Integration

    This topic has been deleted. Only users with topic management privileges can see it.
    • E
      el_malto @smet-o last edited by

      @smet-o sagte in iOS Device mit Jailbreak VIS/ioBroker Integration:

      @manu4771 Ist ja nun doch schon etwas älter, aber die Lösung war für mich folgende:

      const node_ssh = require('node-ssh').NodeSSH;
      const ssh = new node_ssh();
      ssh.connect({
        host: '192.168.xx.xxx,
        username: 'xxxx',
        password: 'xxxxxxx'
      }).then(() => {
        ssh.execCommand("activator send libactivator.lockscreen.dismiss");
      })
      

      Also in den ersten zwei Zeilen einfach ein "const" davor. Vielleicht hilft es ja jemandem weiter.

      Ja das habe ich auch letztens gemerkt. Bei node-ssh hat hat sich was geändert -> https://www.npmjs.com/package/node-ssh
      Nach der Anpassung wie im "Example" hat es wieder funktioniert.

      @smet-o sagte in iOS Device mit Jailbreak VIS/ioBroker Integration:

      Nach einer gewissen Zeit bekomm ich allerdings, wenn ich versuche mit über SSH zu verbinden folgende Meldung:

      kex_exchange_identification: Connection closed by remote host
      

      Neuinstallation von OpenSSH hilft kuzzeitig - dann wieder gleicher Fehler. Hat da jemand Ahnung was man machen könnte?

      Immer? Also auch wenn dein iPad normal entsperrt ist und sich im Wlan befindet?

      Wenn es nur passiert, wenn es gesperrt ist kann es sein, dass das iPad dann die Wlan Verbindung kappt.

      • iNoSleep (optional, um die WLAN Verbindung auch bei gesperrtem Zustand aufreicht zu erhalten. Klappt bei mir auch ohne. Ich kann jederzeit eine SSH verbindung zum iPad aufbauen)
      S 1 Reply Last reply Reply Quote 0
      • S
        smet-o @el_malto last edited by

        @el_malto Jap immer, nur wenn ich OpenSSH neu installiere klappt es ne zeitlang. iNoSleep hab ich schon installiert. Wenn ich -vvv dazu gebe bekomme ich folgendes, wirklich schlau werde ich daraus allerdings nicht:

        OpenSSH_8.1p1, LibreSSL 2.7.3
        debug1: Reading configuration data /etc/ssh/ssh_config
        debug1: /etc/ssh/ssh_config line 47: Applying options for *
        debug2: resolve_canonicalize: hostname 192.168.xxx.xxx is address
        debug2: ssh_connect_direct
        debug1: Connecting to 192.168.xxx.xxx [192.168.xxx.xxx] port 22.
        debug1: Connection established.
        debug1: identity file /Users/namel/.ssh/id_rsa type -1
        debug1: identity file /Users/name/.ssh/id_rsa-cert type -1
        debug1: identity file /Users/name/.ssh/id_dsa type -1
        debug1: identity file /Users/name/.ssh/id_dsa-cert type -1
        debug1: identity file /Users/name/.ssh/id_ecdsa type -1
        debug1: identity file /Users/name/.ssh/id_ecdsa-cert type -1
        debug1: identity file /Users/name/.ssh/id_ed25519 type -1
        debug1: identity file /Users/name/.ssh/id_ed25519-cert type -1
        debug1: identity file /Users/name/.ssh/id_xmss type -1
        debug1: identity file /Users/name/.ssh/id_xmss-cert type -1
        debug1: Local version string SSH-2.0-OpenSSH_8.1
        kex_exchange_identification: Connection closed by remote host
        

        Wenn ich lokal auf dem iPad versuche über ein Terminal zu benutzen bekomme ich:

        ssh exchange identification: Connection closed by remote host
        

        Ich kenn mich nicht wirklich aus damit, aber zur Lösung hat mir das auch noch nicht geholfen...

        E 1 Reply Last reply Reply Quote 0
        • E
          el_malto @smet-o last edited by

          @smet-o wenn das immer passiert dann hat es mit iNoSleep nichts zu tun sondern ist ein anderer Fehler.
          Komisch ist, dass es nach dem installieren funktioniert und danach nicht mehr. Vielleicht crashed OpenSSH oder so. Vielleicht mal CrashReporter oder Cr4shed aus Cydia installieren. Die zeigen dir an wenn Prozesse oder so crashen.
          Ansonsten vielleicht mal Dropbear ausprobieren. Das ist auch ein SSH Server. Weiß allerdings nicht ob der mit iOS 9 kompatibel ist.

          B 1 Reply Last reply Reply Quote 0
          • B
            backfisch88 @el_malto last edited by backfisch88

            Also für alle die noch nach ner Lösung suchen... Ich habe das jetzt aktuell so gemacht:
            Vorraussetzung ist Jailbreak. Habe die o.g. Sachen installiert - aber keine Ahnung ob Nötig

            const node_ssh = require('node-ssh').NodeSSH;
            
            const ssh = new node_ssh();
            
            ssh.connect({
            
              host: '192.168.178.236',
            
              username: 'root',
            
              password: 'alpine'
            
            }).then(() => {
            setInterval(async function () {
            ssh.execCommand("ioreg -l -w0 | grep CurrentCapacity | head -1").then((function(result3) {
            
                    var str = result3.stdout;
                    var res = str.split(' ');
                    var res1 = res[res.length - 1];
                    setState('vis.0.iPad_von_henri.battery.level', parseInt(res1));
                    }
                    ));
                  
            setTimeout(async function () {
            
             ssh.execCommand("ioreg -l -w0 | grep power").then((function(result3) {
            
                    var str = result3.stdout;
                    var str1 = str.match(/power status"=(.*?)"/ig);
                    var str2 = str.search(/power status"=Yes/);
                    if (str2 >=1){
                    setState('vis.0.iPad_von_henri.battery.state', "2");
                    }else{
                    setState('vis.0.iPad_von_henri.battery.state', "1");
                    }
            
                                                    
                    }
                    ));       
                    }, 2000);
                    }, 60000);}
                    )
                    
            
            
            
            

            Damit bekommt Ihr Batteriestatus und Ladestatus in n DP geschrieben

            PS ist quick n dirty... es Funktioniert. Fertig

            A 1 Reply Last reply Reply Quote 1
            • A
              Aragon @backfisch88 last edited by

              @backfisch88 Guten Abend,
              ich habe dieses Script kopiert und angepasst. (Host, username, password und die drei Datenpunkte)
              Es läuft bei mir ca. 2 Tage, danach bekomme ich folgende Fehlermeldung (siehe Bild), kann mit bitte jemand helfen?
              Das iPad Air is gejailbreakt und wird mittels Bewegungsmelder Aufgeweckt, dass funktioniert ganz gut und per DimMe wieder gesperrt.

              Fehlermeldung:
              Bild4.jpg

              Codierknecht 1 Reply Last reply Reply Quote 0
              • Codierknecht
                Codierknecht Developer Most Active @Aragon last edited by

                @aragon
                1.) Sich an einen steinalten Thread dranzuhängen ist nicht wirklich sinnvoll. Inzwischen hat sich die Welt etwas weitergedreht.
                2.) Auch ein ebenso altes Script zu übernehmen kann funktionieren, muss aber nicht.
                3.) Texte bitte in Code-Tags </> einschließen und nicht als Screenshot

                A 2 Replies Last reply Reply Quote 0
                • A
                  Aragon @Codierknecht last edited by Aragon

                  @codierknecht Okay hier als Code-Tag.

                  2022-12-05 08:59:29.285  - error: javascript.0 (21463) script.js.common.Tablet.Tablet_Laden.Tablet_EG_Akkustand: Error: Not connected to server
                  2022-12-05 08:59:29.285  - error: javascript.0 (21463)     at NodeSSH.getConnection (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-ssh/lib/cjs/index.js:119:19)
                  2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at NodeSSH.execCommand (/opt/iobroker/node_modules/iobroker.javascript/node_modules/node-ssh/lib/cjs/index.js:281:33)
                  2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at Object.<anonymous> (script.js.common.Tablet.Tablet_Laden.Tablet_EG_Akkustand:29:5)
                  2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2362:34)
                  2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at listOnTimeout (internal/timers.js:557:17)
                  2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at processTimers (internal/timers.js:500:7)
                  
                  E 1 Reply Last reply Reply Quote 0
                  • A
                    Aragon @Codierknecht last edited by

                    @codierknecht Kann mir Bitte jemand helfen?
                    Hat vielleicht jemand ein funktionierendes Script für mich?
                    Ich nutze die iObroker App um meine Visualisierung, die ich mit iqontrol erstellt habe anzuzeigen.
                    Den Akkustand kann ich darüber leider nicht beziehen, um mein Tablet Smart zu Laden.
                    Mittlerweile läuft das Script 3 Stunden stabil, danach kommen diese Fehlermeldungen und der Akkustand, wird nicht mehr Übertragen.

                    1 Reply Last reply Reply Quote 0
                    • E
                      el_malto @Aragon last edited by el_malto

                      Wenn es ein paar Stunden funktioniert ist das Skript ja noch richtig.
                      Du siehst im Log doch schon woran es liegt.

                      2022-12-05 08:59:29.285  - error: javascript.0 (21463) script.js.common.Tablet.Tablet_Laden.Tablet_EG_Akkustand: Error: Not connected to server
                      

                      und

                      2022-12-05 08:59:29.286  - error: javascript.0 (21463)     at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2362:34)
                      

                      IP Broker kann keine SSH Verbindung mehr zum iPad aufbauen. Sehr wahrscheinlich geht dein iPad in einen Ruhemodus und stellt die W-Lan Verbindung ab. Bei den Apple Geräten hat man leider keine 100%ige Kontrolle wann und wie was abgeschaltet werden soll.
                      Vielleicht könnte man die W-Lan Verbindung mit einen "Dauerping" o.ä. aufrecht erhalten. Müsstest du mal probieren und testen. Oder je nachdem was für eine iOS Version du hast die oben ganannten Tweaks die auch verhindern das sich das Gerät in den Ruhemodus versetzt.
                      Paar mehr Infos von dir wären vielleicht hilfreich.

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        Aragon @el_malto last edited by Aragon

                        @el_malto Habe diese Fehlermeldung erhalten, ich vermute, dass es daran liegen könnte.

                        javascript.0
                        	2022-12-28 20:34:09.497	error	An error happened which is most likely from one of your scripts, but the originating script could not be detected.
                        
                        javascript.0
                        	2022-12-28 20:34:09.517	error	Error: (SSH) Channel open failure: open failed
                        
                        javascript.0
                        	2022-12-28 20:34:09.537	error	Error: (SSH) Channel open failure: open failed at onChannelOpenFailure (/opt/iobroker/node_modules/ssh2/lib/utils.js:16:11) at CHANNEL_OPEN_FAILURE (/opt/iobroker/node_modules/ssh2/lib/client.js:510:11) at 92 (/opt/iobroker/node_modules/ssh2/lib/protocol/handlers.misc.js:810:16) at Protocol.onPayload (/opt/iobroker/node_modules/ssh2/lib/protocol/Protocol.js:2025:10) at ChaChaPolyDecipherBinding.decrypt (/opt/iobroker/node_modules/ssh2/lib/protocol/crypto.js:851:26) at Protocol.parsePacket [as _parse] (/opt/iobroker/node_modules/ssh2/lib/protocol/Protocol.js:1994:25) at Protocol.parse (/opt/iobroker/node_modules/ssh2/lib/protocol/Protocol.js:293:16) at Socket.<anonymous> (/opt/iobroker/node_modules/ssh2/lib/client.js:713:21) at Socket.emit (events.js:400:28) at addChunk (internal/streams/readable.js:293:12) at readableAddChunk (internal/streams/readable.js:267:9) at Socket.Readable.push (internal/streams/readable.js:206:10) at TCP.onStreamRead (internal/stream_base_commons.js:188:23)
                        

                        Vielleicht ist dass Aussagekräftig.
                        Ich verstehe nur, dass es einen fehler beim öffnen der SSH Verbindung gibt.
                        Die Fehlermeldung wurde 10 Mal innerhalb einer Sekunde Protokolliert.

                        Eben kamen diese Fehlermeldungen dazu:

                        javascript.0
                        	2022-12-28 22:27:49.256	error	Error: read EHOSTUNREACH at TCP.onStreamRead (internal/stream_base_commons.js:209:20)
                        javascript.0
                        	2022-12-28 22:27:49.256	error	Error: read EHOSTUNREACH
                        javascript.0
                        	2022-12-28 22:27:49.254	error	An error happened which is most likely from one of your scripts, but the originating script could not be detected.
                        
                        haselchen E 2 Replies Last reply Reply Quote 0
                        • haselchen
                          haselchen Most Active @Aragon last edited by

                          @aragon
                          Hast du das Modul node-ssh überhaupt im JavaScript Adapter eingetragen?

                          A 1 Reply Last reply Reply Quote 0
                          • A
                            Aragon @haselchen last edited by

                            @haselchen Ja habe ich
                            Bild1.jpg

                            1 Reply Last reply Reply Quote 0
                            • E
                              el_malto @Aragon last edited by

                              @aragon kannst du denn wenn der Fehler bei ioBroker auftritt per Putty (Windows) oder Terminal (Mac/Linux) eine SSH Verbindung aufbauen? Wenn das schon nicht geht, liegt es ja wie von mir bereits schon geschrieben am Gerät und es müsste da nach Fehler gesucht werden wie ebenfalls schon geschrieben, dass das Gerät vielleicht in einen Ruhemodus geht und WLan abschaltet.
                              Da das Skript ja erst funktioniert und nach drei Stunden nicht mehr würde ich den Fehler am Gerät vermuten.
                              Hast du schon mal einen Dauerping oder die Tweaks versucht? Du müsstest da schon ein bisschen mithelfen und input liefern was du schon versucht hast. Das keine Verbindung mehr aufgebaut werden kann wissen wir ja schon vom ersten Post 😉

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              639
                              Online

                              31.9k
                              Users

                              80.1k
                              Topics

                              1.3m
                              Posts

                              ios app vis
                              8
                              22
                              4492
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo