Hauptmenü

Fhem zu Tasker

Begonnen von bern, 25 Juni 2015, 14:39:05

Vorheriges Thema - Nächstes Thema

CoolTux

Also wenn schaltest Du da keinen Port frei sondern hinter dem Port muss ein entsprechender Dienst laufen.
Kenne Radler und Autoremote aber nicht.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Clockwork

Ja und diesen Dienst muss ich wohl irgendwie freischalten !? Ich finde leider nichts darüber, aber bei allen andere scheint das ja zu laufen !? Vielleicht kann sich da ja mal jemand zu melden.

Schlimbo

Hi Clockwork,
um für Autoremote den WIFI Service zu starten, musst du in Tasker einen neuen Task erstellen:
Plugin -> AutoRemote -->  Wifi --> Wifi Service

Gruß Schlimbo

Clockwork

Besten Dank werde das morgen mal testen  8)

KernSani

Und? Wenn's funktioniert bitte auf [Gelöst] setzen (Subject des ersten Posts ändern)
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Clockwork

Hallo,

Danke Schlimbo für den Ansatz Autoremote zu aktivieren. Es funktioniert nun so wie es soll!

Nun kommt bei Ausführung aus der Bash keine Fehlermeldung mehr:


pi@raspberrypi:~ $   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   326  100   237  100    89    762    286 --:--:-- --:--:-- --:--:--   764


Clockwork

Aufgefallen ist mir jetzt folgendes:

Wenn ich in Tasker den Task mit dem Wifi Service per Hand starte (Play Taste) funktioniert alles wie gewollt. Nach einiger Zeit scheint sich der Service allerdings zu deaktivieren! Wo kann man einstellen das dieser Task bzw. der Wifi Service immer aktiv bleibt?

Schlimbo

Hallo Clockwork,
ich habe mir in Tasker ein Profil angelegt das den Wifi Service startet sobald ich mit meinem Heim-WLAN verbunden bin und den Service wieder stoppt wenn ich das WLAN verlasse.
Wenn der Service von alleine beendet wird könntest du auch mal versuchen die Akku-Leistungsoptimierung für die AutoRemote App zu deaktivieren.
Android Einstellungen --> Akku -->  Akku-Leistungsoptimierung

Wenn jemand das msg Modul zum Senden von AutoRemote Nachrichten verwenden möchte, hier mein Setup:
Ein Dummy "AutoRemote" erstellten:
defmod AutoRemote dummy
attr AutoRemote userattr ipaddr msgCmdPush msgCmdPushHigh msgCmdPushLow msgTitlePush
attr AutoRemote msgCmdPush set %DEVICE% msg %TITLE%=:=%MSG%
attr AutoRemote msgCmdPushHigh set %DEVICE% msg %TITLE%=:=%MSG%
attr AutoRemote msgCmdPushLow set %DEVICE% msg %TITLE%=:=%MSG%
attr AutoRemote msgTitlePush FHEM
attr AutoRemote msgType push
attr AutoRemote readingList msg presence
attr AutoRemote setList msg presence:present,absent


IP des Device auf dem AutoRemote läuft muss im Anschluss noch im Attribut "ipaddr" hinterlegt werden (z.B. attr AutoRemote ipaddr 192.168.1.10)

Zum Senden noch ein Notify anlegen:
defmod AutoRemote.ntfy notify AutoRemote:msg.* {\
$EVENT =~ s/msg: //g;;\
my $ipaddr = AttrVal($NAME, 'ipaddr','');; \
if ($ipaddr eq ''){\
  readingsSingleUpdate($defs{$NAME}, "ipaddr", 'Fehler: Attribut "ipaddr" ist nicht gesetzt', 1);;\
  }\
else{\
  readingsSingleUpdate($defs{$NAME}, "ipaddr", "$ipaddr", 1);;\
  system("curl -silent -X POST -d '{message:\"".$EVENT."\",sender:FHEM,communication_base_params:{type:Message,fallback:false,via:Wifi}}' $ipaddr:1817 --header Content-Type:application/json > /dev/null &")\
}\
}


Jetzt können über msg Nachrichten versendet werden.
z.B.
msg push @AutoRemote <text>

vbs

Ich hatte schon länger für mich mal ein Modul gemacht um Events an Tasker zu schicken. Habe es gerade mal hier gepostet:
https://forum.fhem.de/index.php/topic,72163.0.html

Vielleicht hat ja jemand Verwendung dafür...

Clockwork

Hallo,

danke Schlimbo, habs nochmal getestet, anscheinend habe ich durch mein gefukkel den Diesnst selber beendet  ??? werde es beobachten und evtl. ein Profil in Tasker setzten und den Wifi Dienst einmal am Tag neustarten.

Die Verbindung von FHEM zu Tasker über Autoremote steht nun!

Jetzt habe ich das Problem das ich gerne Textstrings mit "Leerzeichen" nach Tasker schicken möchte. Autoremote akzepiert aber scheinbar keine Leerzeichen. Kann ich den Text in einem anderen Format nach Autoremote schicken? Ich habe auch schon probiert mit %20 als Leerzeichen, ohne Erfolg.

Danke für Eure Hilfe

Schlimbo

Das Problem hatte ich auch anfänglich.

Du verwendest wahrscheinlich den Code aus diesem Beitrag:
Zitat von: LeoSum am 12 März 2016, 19:01:57
Danke, mit leichter Abänderung hat es bei mir nun geklappt!
{system("curl -silent -X POST -d '{message:'<NACHRICHT>',sender:FHEM,communication_base_params:{type:Message,fallback:false,via:Wifi}}' <GERÄT>:1817 --header Content-Type:application/json > /dev/null &")}
Hiermit konnte ich auch keinen Text mit Leerzeichen Senden.

Lösung:
Die Anführungszeichen müssen mit einen Backslash (\) Maskiert werden.

So wie es in dem Ursprünglichen Code auch schon vorhanden war:
Zitat von: Brockmann am 08 März 2016, 09:06:20
{system("curl -silent -X POST -d '{message:\"".<NACHRICHT>."\",sender:FHEM,communication_base_params:{type:Message,fallback:false,via:Wifi}}' <GERÄT>:1817 --header Content-Type:application/json > /dev/null &")}}
Zu beachten ist hier, dass <NACHRICHT> eine Variable ist. Außerdem ist die letzte geschweifte Klammer zu viel.

Wenn der Text nicht in einer Variable steht sieht es dann so aus:
{system("curl -silent -X POST -d '{message:\"<NACHRICHT>\",sender:FHEM,communication_base_params:{type:Message,fallback:false,via:Wifi}}' <GERÄT>:1817 --header Content-Type:application/json > /dev/null &")}

Clockwork

Vielen Dank,

es klappt nun alles super! Ich wäre da nie alleine drauf gekommen das war schon echt frustrierend! Besten Dank!!!

KernSani

Schön dass es klappt :-) Setzt du das Thema dann noch auf [Gelöst]? (Subject des ersten Posts editieren). Danke!
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...