Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Iphone verliert immer das wlan???

    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

    Iphone verliert immer das wlan???

    This topic has been deleted. Only users with topic management privileges can see it.
    • D
      denjo @OliverIO last edited by

      @oliverio "sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh" sagtest du nicht 0755???

      OliverIO 1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO @denjo last edited by

        @denjo
        ja
        0755
        So ist es bei mir

        D 2 Replies Last reply Reply Quote 0
        • D
          denjo @OliverIO last edited by

          @oliverio okay, weil du in deiner neuen Anleitung dieses geschrieben hattest:

          "sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh"

          Werde es gleich nochmal ausprobieren wenn ich Feierabend habe bevor ich ins Bett gehe.

          Besten Dank erst mal

          1 Reply Last reply Reply Quote 0
          • D
            denjo @OliverIO last edited by denjo

            @oliverio so ich habe jetzt alles genau so gemacht die datei hat 755 und besitzer und gruppe sind iobroker die datei sieht so aus

            #!/bin/bash
             #Enter your ip of your device here
            DEVICES="192.168.178.82"
             
            for i in `echo $DEVICES`; do
             
                ping $i -c 1 
                hping3 -2 -c 10 -p 5353 -i u1 $i -q >/dev/null 2>&1
                sleep 1
                # Only arp specific device, grep for a mac-address
                status=`arp -an $i | awk '{print $4}' | grep "..:..:..:..:..:.."`
                #A mac will be 17 characters including the ":"
                IP=${i//./-}
                if [ ${#status} -eq 17 ]; then
                    echo "Phone $i is detected!"
             		curl http://192.168.178.98:8081/set/0_userdata.0.Anwesenheit.$IP?value=1
                else
                    echo "Phone $i is not present"
             		curl http://192.168.178.98:8081/set/0_userdata.0.Anwesenheit.$IP?value=0
                fi
            done
            

            am script habe ich nur die zahl auf 3 min geändert

            function wakeIphone() {
                exec("bash /opt/iobroker/cmd/iphone.sh")
            }
             
            schedule ("*/3 * * * *", function(){
                    wakeIphone();  
            });
             
            

            wenn ich folgendes eingebe kommt das:

            pi@raspberrypi:~ $ echad@chet:/opt/iobroker/cmd $ ls -la /opt/iobroker/cmd/iphone.sh
            -bash: echad@chet:/opt/iobroker/cmd: Datei oder Verzeichnis nicht gefunden
            pi@raspberrypi:~ $
            

            wobei datei und ordner da sind sehe ich ja über filezilla

            und im log vom iobroker kommt wieder mal

            
            javascript.0
            2099	2021-12-02 06:33:00.015	info	script.js.Test.iphone_anwesenheit: exec is not available. Please enable "Enable Exec" option in instance settings
            
            javascript.0
            2099	2021-12-02 06:33:00.014	error	exec is not available. Please enable "Enable Exec" option in instance settings
            

            jetzt habe ich im java adapter die option exec erlauben aktiviert und es kommt im log keine fehler meldung mehr

            Thomas Braun OliverIO 2 Replies Last reply Reply Quote 0
            • Thomas Braun
              Thomas Braun Most Active @denjo last edited by Thomas Braun

              @denjo sagte in Iphone verliert immer das wlan???:

              wobei datei und ordner da sind sehe ich ja über filezilla

              Du hast ja auch mein Login prompt als Befehl eingegeben. Das funktioniert natürlich nicht.

              chmod 0754

              Hatte ich bewusst so gesetzt. Das Skript muss nicht für User außerhalb des iobrokers ausführbar sein.

              D 1 Reply Last reply Reply Quote 0
              • OliverIO
                OliverIO @denjo last edited by OliverIO

                @denjo
                Du hast bei den curl Befehlen den falschen Port eingetragen. Simple api horcht bei mir auf 8087

                OliverIO 1 Reply Last reply Reply Quote 0
                • D
                  denjo @Thomas Braun last edited by

                  @thomas-braun

                  sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh
                  

                  habe das jetzt nochmal ausgeführt nun sind die rechte auf 754
                  und den port habe ich auf 5663 wie im adapter steht geämdert.

                  was soll ich jetzt genau eingeben zum testen?

                  Thomas Braun 1 Reply Last reply Reply Quote 0
                  • Thomas Braun
                    Thomas Braun Most Active @denjo last edited by

                    @denjo sagte in Iphone verliert immer das wlan???:

                    /opt/iobroker/cmd/iphone.sh

                    Du kannst jetzt z. B. in das Verzeichnis wechseln und das skript auf der Konsole ausführen:

                    cd /opt/iobroker/cmd/iphone.sh
                    ./iphone.sh
                    

                    Dann siehst du schon mal ob es drundsätzlich läuft.
                    Das dann ggf. in den ioBroker einweben ist der nächste Step.
                    Kann dir @OliverIO bestimmt noch helfen.

                    D 1 Reply Last reply Reply Quote 0
                    • D
                      denjo @Thomas Braun last edited by

                      @thomas-braun
                      habe jetzt die meldung

                      pi@raspberrypi:/opt/iobroker/cmd $ ./iphone.sh
                      PING 192.168.178.82 (192.168.178.82) 56(84) bytes of data.
                      From 192.168.178.98 icmp_seq=1 Destination Host Unreachable
                      
                      --- 192.168.178.82 ping statistics ---
                      1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
                      
                      Phone 192.168.178.82 is not present
                      curl: (52) Empty reply from server
                      pi@raspberrypi:/opt/iobroker/cmd $
                      
                      

                      das iphone ist gerade nicht da

                      1 Reply Last reply Reply Quote 0
                      • OliverIO
                        OliverIO @OliverIO last edited by OliverIO

                        @denjo sagte in Iphone verliert immer das wlan???:

                        curl: (52) Empty reply from server

                        hast du den simple api adapter installiert?
                        hast du die portnummer angepasst?
                        hast du datenpunkte angelegt, wo der status eingetragen werden soll?
                        hast du die ggfs datenpunktbezeichnungen in den zeilen mit curl angepasst?

                        D 1 Reply Last reply Reply Quote 0
                        • D
                          denjo @OliverIO last edited by

                          @oliverio ja alles gemacht

                          OliverIO 1 Reply Last reply Reply Quote 0
                          • OliverIO
                            OliverIO @denjo last edited by OliverIO

                            @denjo

                            dann dein angepasstes script hier nochmal posten

                            deine Ausgabe sollte ungefähr so aussehen. Hier mit 2 IP-Adressen.
                            eine erreichbar, eine nicht erreichbar

                            PING 192.168.1.209 (192.168.1.209) 56(84) bytes of data.
                            From 192.168.1.85 icmp_seq=1 Destination Host Unreachable
                            
                            --- 192.168.1.209 ping statistics ---
                            1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
                            
                            Phone 192.168.1.209 is not present
                            {"id":"0_userdata.0.Anwesenheit.192-168-1-209","value":0,"val":0}PING 192.168.1.225 (192.168.1.225) 56(84) bytes of data.
                            
                            --- 192.168.1.225 ping statistics ---
                            1 packets transmitted, 0 received, 100% packet loss, time 0ms
                            
                            Phone 192.168.1.225 is detected!
                            
                            D 1 Reply Last reply Reply Quote 0
                            • D
                              denjo @OliverIO last edited by

                              @OliverIO

                              function wakeIphone() {
                                  exec("bash /opt/iobroker/cmd/iphone.sh")
                              }
                               
                              schedule ("*/3 * * * *", function(){
                                      wakeIphone();  
                              });
                               
                              
                              OliverIO 1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO @denjo last edited by

                                @denjo

                                ok und jetzt nochmal iphone.sh
                                nur da musstest du ja etwas anpassen

                                D 1 Reply Last reply Reply Quote 0
                                • D
                                  denjo @OliverIO last edited by denjo

                                  @oliverio

                                  #!/bin/bash
                                   #Enter your ip of your device here
                                  DEVICES="192.168.178.82"
                                   
                                  for i in `echo $DEVICES`; do
                                   
                                      ping $i -c 1 
                                      hping3 -2 -c 10 -p 5353 -i u1 $i -q >/dev/null 2>&1
                                      sleep 1
                                      # Only arp specific device, grep for a mac-address
                                      status=`arp -an $i | awk '{print $4}' | grep "..:..:..:..:..:.."`
                                      #A mac will be 17 characters including the ":"
                                      IP=${i//./-}
                                      if [ ${#status} -eq 17 ]; then
                                          echo "Phone $i is detected!"
                                   		curl http://192.168.178.98:5663/set/0_userdata.0.Anwesenheit.$IP?value=1
                                      else
                                          echo "Phone $i is not present"
                                   		curl http://192.168.178.98:5663/set/0_userdata.0.Anwesenheit.$IP?value=0
                                      fi
                                  done
                                  
                                  

                                  das ist der erstellte datenpunkt

                                  "_id": "0_userdata.0.Anwesenheit",
                                  
                                  pi@raspberrypi:/opt/iobroker/cmd $ pi@raspberrypi:/opt/iobroker/cmd $ ./iphone.sh
                                  
                                  --- 192.168.178.82 ping statistics ---
                                  1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
                                  -bash: pi@raspberrypi:/opt/iobroker/cmd: Datei oder Verzeichnis nicht gefunden
                                  
                                  Phone 192.168.178.82 is not present
                                  curl: (52) Empty reply from server
                                  
                                  
                                  OliverIO 1 Reply Last reply Reply Quote 0
                                  • OliverIO
                                    OliverIO @denjo last edited by OliverIO

                                    @denjo

                                    ok
                                    1.)
                                    du musst auch noch die Datenpunkte für die IP anlegen.
                                    Das macht das Script oder der simple api adapter nicht
                                    also im iobroker Objektbaum den "Ordner" Anwesenheit auswählen,
                                    dann + Knopf drücken
                                    dann
                                    192-168-178-82

                                    mit Typ Zeichenkette anlegen

                                    2.)

                                    Warum steht da in der curl zeile als port 5663?
                                    wie ist die einstellung im iobroker bei deiner instanz für simple api?
                                    bei mir sieht es so aus. also steht bei mir an der stelle der port 8087

                                    dba1deb3-1666-4f4c-9b61-3a83536e94c0-image.png

                                    D 1 Reply Last reply Reply Quote 0
                                    • D
                                      denjo @OliverIO last edited by

                                      @oliverio achso dachte anwesenheit muss ein objekt sein. jetzt habe ich einen ordner und da drin ein objekt "number" mit 192-168-178-82

                                      pi@raspberrypi:/opt/iobroker/cmd $ ./iphone.sh
                                      PING 192.168.178.82 (192.168.178.82) 56(84) bytes of data.
                                      From 192.168.178.98 icmp_seq=1 Destination Host Unreachable
                                      
                                      --- 192.168.178.82 ping statistics ---
                                      1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
                                      
                                      Phone 192.168.178.82 is not present
                                      curl: (52) Empty reply from server
                                      
                                      

                                      ja den port hatte ich irgendwann mal geändert der ist wirklich 5663

                                      OliverIO 1 Reply Last reply Reply Quote 0
                                      • OliverIO
                                        OliverIO @denjo last edited by

                                        @denjo

                                        @denjo sagte in Iphone verliert immer das wlan???:

                                        curl: (52) Empty reply from server

                                        irgendwas stimmt dann an dem link nicht oder am datenpunkt.

                                        warum hast du jetzt number genommen?

                                        @oliverio sagte in Iphone verliert immer das wlan???:

                                        dann
                                        192-168-178-82
                                        mit Typ Zeichenkette anlegen

                                        bitte aufmerksam lesen und genau das machen was da steht, sonst kann sich das hier nochmal hinziehen.

                                        dann bitte in die datenpunkteinstellung gehen und im reiter "raw" den kasten markieren und kopieren.
                                        bei mir sieht es so aus

                                        {
                                          "_id": "0_userdata.0.Anwesenheit.192-168-1-209",
                                          "type": "state",
                                          "common": {
                                            "name": "IPhone",
                                            "role": "",
                                            "type": "string",
                                            "read": true,
                                            "write": true,
                                            "desc": "Manuell erzeugt",
                                            "def": "",
                                            "custom": {
                                              "history.0": {
                                                "enabled": true,
                                                "changesOnly": true,
                                                "debounce": 0,
                                                "maxLength": "10",
                                                "retention": "31536000",
                                                "changesRelogInterval": 0,
                                                "changesMinDelta": 0,
                                                "aliasId": ""
                                              }
                                            }
                                          },
                                          "native": {},
                                          "from": "system.adapter.admin.0",
                                          "user": "system.user.admin",
                                          "ts": 1626116496107,
                                          "acl": {
                                            "object": 1636,
                                            "state": 1636,
                                            "owner": "system.user.admin",
                                            "ownerGroup": "system.group.administrator"
                                          }
                                        }
                                        

                                        Falls der _id und der type und der common.type nicht ähnlich aussieht,
                                        dan lösche den ganzen Ast nochmal,
                                        markiere 0_userdata.0 drücke dann den Plus-Knopf und gebe das folgende ein

                                        Anwesenheit.192-168-178-82
                                        

                                        Es wird dann zwar genauso aussehen, aber die innere Struktur ist dennoch eine andere.

                                        D 1 Reply Last reply Reply Quote 0
                                        • D
                                          denjo @OliverIO last edited by denjo

                                          @oliverio das ist das objekt

                                          {
                                            "common": {
                                              "name": "192-168-178-82",
                                              "desc": "Manuell erzeugt",
                                              "role": "state",
                                              "type": "string",
                                              "read": true,
                                              "write": true,
                                              "def": ""
                                            },
                                            "type": "state",
                                            "from": "system.adapter.admin.0",
                                            "user": "system.user.admin",
                                            "ts": 1638458158185,
                                            "_id": "0_userdata.0.Anwesenheit.192-168-178-82",
                                            "acl": {
                                              "object": 1636,
                                              "state": 1636,
                                              "owner": "system.user.admin",
                                              "ownerGroup": "system.group.administrator"
                                            }
                                          }
                                          

                                          und das kommt jetzt wieder

                                          pi@raspberrypi:/opt/iobroker/cmd $ ./iphone.sh
                                          PING 192.168.178.82 (192.168.178.82) 56(84) bytes of data.
                                          From 192.168.178.98 icmp_seq=1 Destination Host Unreachable
                                          
                                          --- 192.168.178.82 ping statistics ---
                                          1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms
                                          
                                          Phone 192.168.178.82 is not present
                                          curl: (52) Empty reply from server
                                          
                                          

                                          jetzt ist meine freundin wieder da und ich habe die meldung

                                          pi@raspberrypi:/opt/iobroker/cmd $ ./iphone.sh
                                          PING 192.168.178.82 (192.168.178.82) 56(84) bytes of data.
                                          64 bytes from 192.168.178.82: icmp_seq=1 ttl=64 time=5.56 ms
                                          
                                          --- 192.168.178.82 ping statistics ---
                                          1 packets transmitted, 1 received, 0% packet loss, time 0ms
                                          rtt min/avg/max/mdev = 5.560/5.560/5.560/0.000 ms
                                          Phone 192.168.178.82 is detected!
                                          curl: (52) Empty reply from server
                                          
                                          

                                          aber am objekt ändert sich nix

                                          1 Reply Last reply Reply Quote 0
                                          • OliverIO
                                            OliverIO last edited by

                                            @denjo
                                            irgendwas stimmt mit dem simple-api adapter nicht

                                            ich habe gerade mal ausprobiert was passiert wenn der datenpunkt einen falschen namen hat oder wenn der simpleapi adapter nicht läuft

                                            curl: (7) Failed to connect to 192.168.1.85 port 8087: Verbindungsaufbau abgelehnt
                                            
                                            "error: datapoint \"0_userdata.0.Anwesenheitx.192-168-1-225\" not found"
                                            

                                            das sind jetzt die rückmeldungen an der stelle wo bei dir curl: (52) Empty reply from server
                                            dazu finde ich aber hier im forum keine hilfreicdhe antwort

                                            probier mal das folgende direkt auf der kommandozeile

                                            curl http://192.168.1.85:8087/get/0_userdata.0.Anwesenheit.192-168-1-209
                                            

                                            natürlich die ip und port des iobrokers anpassen, sowie den Datenpunktnamen anpassen
                                            Beachte das get anstatt des set

                                            da sollte sowas zurückkommen

                                            {"val":0,"ack":false,"ts":1626116496107,"q":0,"from":"system.adapter.admin.0","user":"system.user.admin","lc":1638449061416,"_id":"0_userdata.0.Anwesenheit.192-168-1-209","type":"state","common":{"name":"IPhone","role":"","type":"string","read":true,"write":true,"desc":"Manuell erzeugt","def":"","custom":{"history.0":{"enabled":true,"changesOnly":true,"debounce":0,"maxLength":"10","retention":"31536000","changesRelogInterval":0,"changesMinDelta":0,"aliasId":""}}},"native":{},"acl":{"object":1636,"state":1636,"owner":"system.user.admin","ownerGroup":"system.group.administrator"}}
                                            

                                            probiere auch mal andere existierende Datenpunkte aus.

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

                                            Support us

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

                                            546
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            ping adapter
                                            10
                                            65
                                            4134
                                            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