NEWS
Iphone verliert immer das wlan???
-
das hier funktionier bei mir sehr erfolgreich, nach dem die gleichen versuche wie bei dir nie funktioniert haben
als erstes das tool hping3 unter linux installieren
https://itigic.com/de/hping3-create-tcp-ip-packets-and-perform-dos-attacks-on-linux/
nicht wundern mit hping3 kann man beliebige päckchen an beliebige adressen und ports senden und wird oft auch im rahmen des penetration testings verwendetdann das folgende skript irgendwo ablegen, bei mir unter
/opt/iobroker/cmd/iphone.sh#!/bin/bash #Enter your ip of your device here DEVICES="192.168.1.209 192.168.1.225" 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.1.85:8087/set/0_userdata.0.Anwesenheit.$IP?value=1 else echo "Phone $i is not present" curl http://192.168.1.85:8087/set/0_userdata.0.Anwesenheit.$IP?value=0 fi done
dann im skript die ip adressen der iphones/ipads anpassen,
sowie weiter unten die ipadresse des iobrokersdie skriptdatei sollte die folgende Dateiattribute haben:
rwxrwxr-x oder 0755
und dem Besitzer iobroker gehörendas skript läuft auch erstmal ohne iobroker und gibt, wenn von kommandozeile gestartet, entsprechende meldungen aus.
dann, falls nicht vorhanden, den simple api adapter im iobroker installieren
dann im javascript-adapter das folgende skript erstellen:
function wakeIphone() { exec("bash /opt/iobroker/cmd/iphone.sh") } schedule ("*/5 * * * *", function(){ wakeIphone(); });
der scedule ist auf 5 Minuten eingestellt.
Bitte beachten, die ping/hping3 Kombination weckt das handy aus irgendeinem internen energiesparmodus auf. qwnn man das zu oft macht, verbraucht es auch mehr akku. bei 5 Minuten habe ich jetzt keine nennenswerte Veränderungen festgestellt.Im Prinzip funktioniert diese Abfrage genau wie der radaradapter, allerdings mit dem hping3 tool, welches ein päckchen an den port 5353 des iphones sendet. dadurch scheint es aufzuwachen. der port ist der multicast port der auch bonjour verwendet (geräte signalisierung)
-
@oliverio puh hört sich nicht so leicht an. Könntest du mich eventuell unterstützen wenn ich nicht klar komme. Das ist echt wichtig für mich zb über Team viewer oder so?
-
@oliverio so zwei fragen habe ich noch:
das script was ich ablegen soll, was für eine datei soll das sein "text" oder was für ein format?
du sagst "im javascript folgendes skript erstellen" kannst du das genauer erklären???
-
@oliverio sagte in Iphone verliert immer das wlan???:
und dem Besitzer iobroker gehören
habe den rest doch hin bekommen aber wie meinst du das mit dem besitzer???
bekomme es leider nicht zum laufen ping adapter sagt immer noch nach ein paar min das es nicht da ist
error exec is not available. Please enable "Enable Exec" option in instance settings
-
du hast linux?
dann sollten die datei so aussehen
Ich greife per ssh mittels WinSCP auf mein Linux-Nuc zu.Da siehst du Gruppe und Eigentümer ist iobroker
Das ist notwendig, damit iobroker auch die Datei ausführen kann.
Wenn du sie ändern musst, dann kannst du das mit dem Befehl
chown machen
https://wiki.ubuntuusers.de/chown/den folgenden befehl habe ich nicht geprüft, müsste aber ungefähr so funktionieren
sudo chown iobroker:iobroker /opt/iobroker/cmd/iphone.sh
um zu testen ob der befehl auf der shell ebene ohne probleme läuft kannst du folgendes machen.
mitsudo -u iobroker bash
wechselst du den benutzer zu iobroker. müsste am prompt dann vorne auch so dastehen
iobroker@meinrechnername:/aktuellerPfadund dann
/opt/iobroker/cmd/iphone.sh
wenn es nicht funktioniert, dann genau die fehlermeldung nennen.
die oben sagt nur, das iobroker die iphone.sh nicht ausführen konnte, wahrscheinlich weil iobroker sie aus berechtigungsgründen gar nicht gesehen hat. -
bash: /opt/iobroker/cmd/iphone.sh: /bin/bash^M: Defekter Interpreter: Datei oder Verzeichnis nicht gefunden
-
dann bitte die Ausgabe von
dir /opt/iobroker/cmd/ -o
schicken
was für ein system hast du da?
mach malecho $SHELL
-
@oliverio ich kann bei der datei nicht den besitzer änder von 1000 auf 1001
hab linux aufn raspi
-rwxr-xr-x+ 1 pi 691 Dez 1 16:36 iphone.sh
den cmd ordner musste ich auch neu erstellen und hat den besitzer pi
jetzt versuche ich es nach der anleitung aber er will ein iobroker passwort
-
@denjo Hi, btw: hast du die iPhone MAC Adresse geprüft? Es macht absolut keinen Sinn diese daheim lfd. zu ändern. Link: Anwesenheitserkennung TR-064 ab iOS14
-
@jolic ja natürlich
-
@denjo sagte in Iphone verliert immer das wlan???:
@oliverio ich kann bei der datei nicht den besitzer änder von 1000 auf 1001
hab linux aufn raspi
-rwxr-xr-x+ 1 pi 691 Dez 1 16:36 iphone.sh
den cmd ordner musste ich auch neu erstellen und hat den besitzer pi
jetzt versuche ich es nach der anleitung aber er will ein iobroker passwort
nein er will das root passwort, da du es mit sudo startest
wahrscheinlich ist es das passwort zum nutzer "pi"
da pi in der benutzergruppe root sich befindet (sollte zumindest so sein)
wenn du nichts geändert hast, sollte das passwort "raspberry" lauten -
@oliverio habe das mit den Besitzer und gruppe hinbekommen mit sudo su. Trotzdem gleiche Fehlermeldung. Ich werde morgen mal alles posten was ich gemacht habe
-
@oliverio sagte in Iphone verliert immer das wlan???:
@denjo sagte in Iphone verliert immer das wlan???:
@oliverio ich kann bei der datei nicht den besitzer änder von 1000 auf 1001
hab linux aufn raspi
-rwxr-xr-x+ 1 pi 691 Dez 1 16:36 iphone.sh
den cmd ordner musste ich auch neu erstellen und hat den besitzer pi
jetzt versuche ich es nach der anleitung aber er will ein iobroker passwort
nein er will das root passwort, da du es mit sudo startest
wahrscheinlich ist es das passwort zum nutzer "pi"
da pi in der benutzergruppe root sich befindet (sollte zumindest so sein)
wenn du nichts geändert hast, sollte das passwort "raspberry" lautenan deiner ausgabe erkenne ich, das die datei noch dem nutzer pi gehört.
da wird es nicht gehen
führe nochmal den chown befehl aus, den ich oben gepostet habe.
zum passwort habe ich ja gerade was geschrieben -
noch kleine korrektur
den befehl zum testen muss man ebenfalls mit sudo ausführen,
da der arp befehl nur für root istsudo /opt/iobroker/cmd/iphone.sh
aber am besten postest du alle deine ausgaben, welche dir komisch vorkommen
-
@oliverio mir kommen alle komisch vor weil Linux nicht mein perfektes Gebiet ist ja werde ich morgen machen. Habe nachtschicht jetzt. Danke erst mal
-
@denjo @OliverIO
Ihr gestattet...sudo apt install hping3 sudo -u iobroker mkdir /opt/iobroker/cmd sudo -u iobroker touch /opt/iobroker/cmd/iphone.sh sudo -u iobroker nano /opt/iobroker/cmd/iphone.sh
Das skript in nano reinkopieren (geht in meiner shell mit der rechten Maustaste...)
sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh
Et voilà:
echad@chet:/opt/iobroker/cmd $ ls -la /opt/iobroker/cmd/iphone.sh -rwxr-xr--+ 1 iobroker iobroker 678 Dec 2 00:03 /opt/iobroker/cmd/iphone.sh
Funktioniert nur nicht, weil ich das skript nicht weiter angepasst habe:
echad@chet:/opt/iobroker/cmd $ ./iphone.sh PING 192.168.1.209 (192.168.1.209) 56(84) bytes of data. ^C --- 192.168.1.209 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time 0ms Phone 192.168.1.209 is not present
Man macht für den iobroker keine shell auf (oder gar eine root-shell...)
-
@thomas-braun sagte in Iphone verliert immer das wlan???:
@denjo @OliverIO
Ihr gestattet...sudo apt install hping3 sudo -u iobroker mkdir /opt/iobroker/cmd sudo -u iobroker touch /opt/iobroker/cmd/iphone.sh sudo -u iobroker nano /opt/iobroker/cmd/iphone.sh
Das skript in nano reinkopieren (geht in meiner shell mit der rechten Maustaste...)
sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh
Et voilà:
echad@chet:/opt/iobroker/cmd $ ls -la /opt/iobroker/cmd/iphone.sh -rwxr-xr--+ 1 iobroker iobroker 678 Dec 2 00:03 /opt/iobroker/cmd/iphone.sh
Funktioniert nur nicht, weil ich das skript nicht weiter angepasst habe:
echad@chet:/opt/iobroker/cmd $ ./iphone.sh PING 192.168.1.209 (192.168.1.209) 56(84) bytes of data. ^C --- 192.168.1.209 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time 0ms Phone 192.168.1.209 is not present
Man macht für den iobroker keine shell auf (oder gar eine root-shell...)
Funktioniert schon, aber halt kein Handy gerade da unter der IP
was denkst du wo der fehler herkommt? Im speziellen an der Stelle mit dem ^M
bash: /opt/iobroker/cmd/iphone.sh: /bin/bash^M: Defekter Interpreter: Datei oder Verzeichnis nicht gefunden
Ich tippe darauf, das er es aus einer Windows-Textdatei eingefügt hat, und die falschen Zeilenumbrüche drin sind.
Von daher ist das einfügen in Nano der beste Weg -
@oliverio sagte in Iphone verliert immer das wlan???:
Funktioniert schon, aber halt kein Handy gerade da unter der IP
Falsch ausgedrückt von mir. Ich wollte sagen, dass es lediglich deswegen nicht funktioniert, weil ich den Inhalt des Skriptes nicht noch weiter angepasst habe.
Ich tippe darauf, das er es aus einer Windows-Textdatei eingefügt hat, und die falschen Zeilenumbrüche drin sind.
Keine Ahnung, da sind aber so einige komische Dinge zu finden. Auch die unbekannte gid da ist merkwürdig. Wo die her kommt? Keinen Schimmer.
-
@thomas-braun ich habe sie über filezilla eingefügt und vorher sie von txt in sh Datei gebracht.
-
@oliverio "sudo -u iobroker chmod 0754 /opt/iobroker/cmd/iphone.sh" sagtest du nicht 0755???