FHEM Forum

FHEM => Mobile Devices => Thema gestartet von: Amenophis86 am 30 März 2017, 21:57:58

Titel: [Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 30 März 2017, 21:57:58
Auf Nachfrage stelle ich hier eine Anleitung ein, wie man mittels folgender Dinge automatisch eine VPN Verbindung zu seinem Zuhause herstellen kann. Ich habe mir ein Widget gebastelt, welches teste, ob ich in meinem Netzwerk bin. Ist dies nicht der Fall, dann wird erst eine VPN Verbindung hergestellt und daraufhin FHEM geöffnet. Ich habe dies mit folgenden Dingen realisiert:

- Sony Xperia Z5 Compact
- FritzBox
- VpnCilla (Android App)
- Automagic (Android App)

Zum testen müsste bei beiden die kostenlose Version gehen, bin mir aber nicht ganz sicher, da ich für beide gezahlt haben und es sich lohnt. Es kann leider nicht die Standard VPN Verbindung von Android genommen werden. Soweit mir bekannt kann Automagic (und auch Tasker) hier keine automatische Verbindung starten. Daher VpnCilla.

In Kürze:

Details:

Punkt 1 + 2 sind in YouTube Video (https://www.youtube.com/watch?v=D0g3Dh3h2iA) gut erklärt.

Punkt 3:
- Automagic öffnen
- oben rechts drei Punkte klicken und dann "Neuer Flow" auswählen
- Viereck klicken
- + klicken
- "condition" klicken
- "neu" klicken
- "lupe" oben rechts klicken und nach "wlan" suchen
- "Wlan Verbunden" klicken
- Unter "SSID Liste" den Haken bei "Alle" weg und die SSID eintragen (oder Punkte dahinter klicken), bei welcher wir KEINE VPN Verbindung wollen
- Speichern

- + drücken und nach unten ziehen
- "nein" auswählen
- "Action" auswählen
- "Activity starten" auswählen
- Hier folgende Dinge eintragen:
Action: android.intent.action.MAIN
Haken bei "Explizite Komponente" setzen
Package Name: com.gmail.mjm4456.vpncilla (alternativ die App über die drei Punkte auswählen - besonders bei kostenloser Version nötig, da die glaube ich anders heißt)
Klassen Name: com.gmail.mjm4456.vpncilla.VpncList (alternativ die drei Punkte auswählen)
Extras: putString("android.intent.extra.shortcut.NAME","NameEurerVPNVerbindung");
{optional} putString("vpncilla.extra.FORCE","connect");

- Speichern

- + unter dem neuen Kasten klicken
- "Action" auswählen
- Neu klicken und über die Lupe nach Pause suchen
- Bei "Dauer" "5s" eintragen
- Speichern

- + unter dem neuen Kasten klicken
- "Action" auswählen
- Über die Lupe "URL in Browser öffnen" auswählen
- unter URL eure FHEM URL eintragen
- Speichern

- Die Raute mit der WLAN Prüfung anklicken
- das + auf den Kasten ziehen, wo ihr die FHEM URL eingegeben habt
- "Ja" auswählen

- oben rechts auf die drei Punkte
- "Flow umbennen" und eine neuen Namen geben
- Flow Einstellung verlassen (Pfeil oben links)


Punkt 4:
- oben rechts auf die Punkte
- "Eigene Widgets" klicken
- das + oben rechts klicken
- Die Hintergrundeigenschaften können wir vorerst so lassen (wer will kann die Runden Ecken noch deaktivieren)
- Auf "Hintergrund" klicken und "Widget1" auswählen
- Widget Einstellung: Höhe: 150 - Breite: 168 (Daten für das angehängte Bild)
- "Klickbare Actions" auswählen
- Das + drücken
- Auf den Kasten unter "Actions" klicken
- "Klick" auswählen
- im Popup auf "Neu" klicken
- über die Lupe nach Flow suchen
- "Flows ausführen" auswählen
- Unter "Flow Pattern Liste" über die drei Punkte euren Flow von Punkt 3 auswählen
- Speichern

Bild für den Flow einstellen:
- Oben rechts auf das Viereck mit dem + klicken
- "Bild" auswählen
- Wer will kann das angehängte Bild nehmen
- Das Bild in der Vorschau zurecht schieben

Text unter dem Bild einstellen:
- Oben rechts auf das Viereck mit dem + klicken
- "Text" auswählen
Ab hier schafft ihr es alleine den Text einzustellen. Einfach bissi rumspielen

- Zum Abschluss noch das Widget über die drei Punkte oben rechts umbenennen
- Jetzt das Widget auf eurem Startbildschirm platzieren. Dies müsst ihr selbst herausfinden für euer Handy. Als Tipp noch bei Widgets müsst ihr "AM eigene Widgets" auswählen


Für Fragen stehe ich gerne zur Verfügung. Ich hoffe, dass ich nichts vergessen habe. Viel Spaß und Erfolg damit. Man könnte sicher noch eine Prüfung einbauen, ob die VPN Verbindung funktioniert hat, allerdings habe ich noch nicht herausgefunden, wie das geht.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Depechem am 04 April 2017, 09:33:40
So ich bin gerade am testen. Zur Info, VpnCilla und Automagic laufen als Testversionen.

Habe alles so wie in deiner Anleitung übernommen:

wenn ich händisch in die VpnCilla App öffne und meine eingegebene "VPNFritzbox" anklicke wird sofort eine VPN Verbindung erstellt und ich komme wie gewünscht auf meinen Server von außen.
Wenn ich das erstellte Widget(oder nur den Flow in Automagic) anklicke/ausführe wird automatisch die VpnCilla App geöffnet > VPN Verbindung wird aber nicht aktiviert(also kein connect automatisch) > und kurz danach wird der Chrome Browser mit meiner gewünschten IP Adresse geöffnet > kann natürlich nicht aufgerufen werden, das VPN nicht aktiv.

Da kann doch mein Fehler nur irgendwo hier liegen!?:
- + drücken und nach unten ziehen
- "nein" auswählen
- "Action" auswählen
- "Activity starten" auswählen
- Hier folgende Dinge eintragen:
Action: android.intent.action.MAIN
Haken bei "Explizite Komponente" setzen
Package Name: com.gmail.mjm4456.vpncilla (alternativ die App über die drei Punkte auswählen - besonders bei kostenloser Version nötig, da die glaube ich anders heißt)
Klassen Name: com.gmail.mjm4456.vpncilla.VpncList (alternativ die drei Punkte auswählen)
Extras:
Code: [Auswählen]

putString("android.intent.extra.shortcut.Name","NameEurerVPNVerbindung");
{optional} putString("vpncilla.extra.FORCE","connect");


Package Name: com.gmail.mjm4456.vpncilla (alternativ die App über die drei Punkte auswählen - besonders bei kostenloser Version nötig, da die glaube ich anders heißt)
Klassen Name: com.gmail.mjm4456.vpncilla.VpncList (alternativ die drei Punkte auswählen)

hier habe ich es über die 3 Punkte gemacht > heist bei der kostenlosen App aber genau so

putString("android.intent.extra.shortcut.Name","NameEurerVPNVerbindung");
{optional} putString("vpncilla.extra.FORCE","connect");


bei "NameEurerVPNVerbindung" habe ich den Namen der VpnCilla Verbindung eingetragen (also "VPNFritzbox")
sonst habe ich dort nix geändert.

Passt dies so weit? Wo liegt mein Fehler?

Viele Grüße Thomas
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Depechem am 04 April 2017, 10:26:36
ICH HABE DEN FEHLER GEFUNDEN!!  ;)

aus:
android.intent.extra.shortcut.Name
muss:
android.intent.extra.shortcut.NAME werden  ;D


jetzt wäre aber noch interessant wie und wann die VPN Verbindung wieder gekappt wird.
Kann man das irgendwo hinterlegen?
Also entweder eine bestimmte Laufzeit der VPN Verbindung oder wenn eine bestimmt App wieder geschlossen wird!?


Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 04 April 2017, 13:13:46
Zitat von: Depechem am 04 April 2017, 10:26:36
aus:
android.intent.extra.shortcut.Name
muss:
android.intent.extra.shortcut.NAME werden  ;D
Das ist richtig, sry für den Umstand. Werde es oben korrigieren. War zu viel beim Abschreiben.

Zitat
jetzt wäre aber noch interessant wie und wann die VPN Verbindung wieder gekappt wird.
Kann man das irgendwo hinterlegen?
Also entweder eine bestimmte Laufzeit der VPN Verbindung oder wenn eine bestimmt App wieder geschlossen wird!?
Kannst es mit einer bestimmten Laufzeit machen. Ich habe mir ein zweites Widget erstellt, welches mir die VPN Verbindung wieder schließt, dann muss ich nicht jedes Mal in VPNCilla gehen. Du musst nur bei Extras aus connect disconnect machen.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Depechem am 04 April 2017, 13:20:20
Zitat von: Amenophis86 am 04 April 2017, 13:13:46
Das ist richtig, sry für den Umstand. Werde es oben korrigieren. War zu viel beim Abschreiben.
Kannst es mit einer bestimmten Laufzeit machen. Ich habe mir ein zweites Widget erstellt, welches mir die VPN Verbindung wieder schließt, dann muss ich nicht jedes Mal in VPNCilla gehen. Du musst nur bei Extras aus connect disconnect machen.

Danke kannst du mir das bitte genauer erklären? Also wo ich da was genau eintragen muss.
Ich wöllte es so haben, dass ich kein 2. Widget anklicken muss.
Daher entweder nach 3 Minuten VPN Verbindung automatisch wieder geschlossen wird. Oder noch besser, wenn die FullyApp wieder geschlossen ist.
(ich rufe damit nur eine FHEM-Oberfläche auf, um meine Alarmanlage zu aktivieren, bzw. deaktivieren.)

Gruß Thomas
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 04 April 2017, 13:43:52
Schau mal hier (https://automagic4android.com/de/) da findest du ganz viele Informationen zu Automagic und wie du Flows erstellst, änderst etc. Solltest du dann noch Fragen haben, dann helfe ich gerne :)
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Depechem am 04 April 2017, 21:09:40
Zitat von: Amenophis86 am 04 April 2017, 13:43:52
Schau mal hier (https://automagic4android.com/de/) da findest du ganz viele Informationen zu Automagic und wie du Flows erstellst, änderst etc. Solltest du dann noch Fragen haben, dann helfe ich gerne :)

habe es hinbekommen, vielen Dank
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 04 April 2017, 21:17:19
sehr gut. Wenn man es mal verstanden hat ist es auch nicht wirklich schwer und es ist einfach unglaublich viel möglich. Bei root noch so viel mehr. Bin absolut begeistert und kann CoolTux nur dafür danken, dass er AMAD gemacht hat und ich es so kennen gelernt habe.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: en-trust am 10 Oktober 2017, 08:43:11
Ich habe  mit meinem neuen Handy keine vpn Verbindung mehr zum Heimnetzwerk. Ich habe aus der Fritzbox die VPN Einstellungen übernommen (kryptische Serveraddresse xxx.myfritz.net, Benutzer und Passwort bzw. Pre Share Key). Doch ich bekomme keine Verbindung von außerhalb. Muss ich in der Fritzbox vielleicht noch was bzgl. des neuen Handys einrichten ?
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 10 Oktober 2017, 08:57:57
Vielleicht kein IPv4 mehr?
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: en-trust am 10 Oktober 2017, 19:07:54
DHCP Server ist aktiviert und IP Adressen von bis definiert ungleich der Heimnet IP4 Adresse.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 10 Oktober 2017, 20:35:00
Muss ich ehrlich sagen, dass ich nicht weiß woran es liegt. Wird denn ein Fehler ausgeworfen? Hast du mal direkt mit der Internet IP versucht anstelle der myfritz Adresse?
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: en-trust am 11 Oktober 2017, 12:53:20
Kann es vielleicht an Android 7 uns Samsung A5 direkt liegen ?
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 11 Oktober 2017, 13:42:01
Es kann an allem liegen. Daher die Frage nochmal: Hast du mal direkt mit der Internet IP versucht anstelle der myfritz Adresse?

Weiterhin nochmal die Frage: Wird denn ein Fehler ausgeworfen?
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: en-trust am 27 Oktober 2017, 22:52:19
Also es wurde nur das ausgegeben was ich eingangs schrieb.
Ich habe derweil die myFritz App mal versucht und darüber könnte ich mich ins Heimnetz einwählen und den aufrufen. Warum es nicht über den anderen vpn weg ging bleibt ein Rätsel.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 28 Oktober 2017, 08:10:19
Es würde mich wundern, wenn im VPNCilla Log nichts drin steht. Wie gesagt mehr kann ich leider aktuell nicht sagen, wenn alle Daten von dir korrekt eingegeben wurden, kein Fehler angezeigt wird und du sicher auch weiterhin IPv4 hast was auch geht.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: bajogger am 02 Dezember 2017, 11:14:00
Hallo,
Vielleicht habe ich es übersehen. Wie kann man in Fhem automatisch einen Aktor schalten.
Nachdem Fhem automatisch gestartet wurde ein Licht anschalten
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: marvin78 am 02 Dezember 2017, 11:32:09
Was hat die Frage mit diesem Thema zu tun?

Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: bajogger am 02 Dezember 2017, 12:05:28
Natürlich ist gemeint mit Automatic VPN starten, danach FHEM starten und zuletzt im Flow auch einen Actor schalten
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: Amenophis86 am 02 Dezember 2017, 12:11:45
Schau dir AMADNG an und verweise in deinem VPN Flow auf den neuen Flow, welcher deinen Aktor schaltet, wenn du im VPN bist.
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: bajogger am 02 Dezember 2017, 14:14:20
 Konnte  den Befehl auslösen. In Automagic gibt es die Aktion http request.
http://ip/fhem?cmd set WohnLicht on
Hat die gewünschte Aktion ausgelöst.

Jetzt muss ich noch ein Problem lösen. Ich möchte auch von unterwegs diesen Befehl ausführen.
Wegen einer Fritzbox nutze ich die App MyFritz. Diese starte ich mittels Automatic.
Jetzt müsste ich noch der App beibringen das Sie VPN einschaltet
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: bajogger am 06 Dezember 2017, 08:42:23
Mit Apps wie MyFritz habe ich es nicht hinbekommen.
Habe mir Vpnzilla gekauft und so ausgeführt wie hier in der Anleitung beschrieben.
Mache jetzt aus einiger Entfernung mein Garagentor auf.
1. Shortcut auf dem Homescreen meines Android Handy platziert
2. mit VPNzilla VPN starten
3. Befehl Mittels http request zum Öffnen des Garagentors absetzen
4. Sprachausge bestätigt "Tor offen"
5. Vpnzilla beendet die VPN
Meine Garage ist auf sobald ich ankomme

Automagic ist Spitze
Titel: Antw:[Anleitung] Unter Android VPN automatisch starten
Beitrag von: CoolTux am 06 Dezember 2017, 09:03:33
Wenn Ihr AMAD verwendet und Eure IP im VPN die selbe ist wie zu Hause könnt Ihr das ganze sehr flexibel machen. Im Fall eines Toröffners kann dann auch tatsächlich ein ReadingsVal gemacht werden ob das Tor wirklich offen ist und nicht nur der Befehl dazu abgesetzt werden konnte. Ausserdem spart man sich die HTTP Request Aktion.