Telegram - versenden von Temparaturdaten

Begonnen von littleswabi, 05 Oktober 2017, 18:51:46

Vorheriges Thema - Nächstes Thema

littleswabi

Hallo zusammen  :)

von Zeit zu Zeit beschäftige ich mich mit meiner kleinen "Heimautomatisierung".... :) macht immer wieder aufs neue Spaß.

Vor kurzem habe ich Telegram für mich entdeckt und auch schon einige Sachen umgesetzt.

z.B. das versenden von Nachrichten an Fhem und schalten von Steckdosen und Licht über Favoriten und so sachen halt...

jetzt würde ich gerne wenn ich an den Bot den Befehl "Status" sende die aktuelle Außentemperatur und andere abgefragt werden.


Das schalten von Steckdosen habe ich über DOIF gemacht und das funktioniert wunderbar.

Hatte ich auch erst mit dem versenden der Temparatur vor allerdings hatte ich gelesen, dass man bei DOIF kein readingsVal einbinden kann.

Wie kann ich das realisieren?

Vielen Dank :)

Ma_Bo

#1
Mit DOIF geht das.
Im Ausführungsteil

(set TelegramBot message Temperatur Außen [Device:Reading])

Du musst TelegramBot gegen den Namen deines Bot tauschen und Device:Reading gegen dein Device und Reading tauschen.

Grüße Marcel


Tapatalk iPhone, daher kurz gehalten.
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

littleswabi


littleswabi

noch eine Frage:

ich habe einen Home Bot über diesen kann ich über Favoriten - in meinem Fall "Licht"- eine Auswahl bekommen was ich gerne Schalten möchte
Nun wollte ich an den selben Bot "Status" senden und einige informationen auslesen.

über cmdFavorites habe ich /Licht als Favorite angelegt. Kann ich hier noch einen zweiten anlegen? Wenn ja wie?

Danke

kroman

https://fhem.de/commandref.html#TelegramBot

Zitat
favorites <list of commands>
Specify a list of favorite commands for Fhem (without cmdKeyword). Multiple favorites are separated by a single semicolon. A double semicolon can be used to specify multiple commands for a single favorite

viegener

@kroman: Schöner hätte ich es nicht sagen können - oops hab ich ja ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

igami

Für mehrstufige Dialoge möchte ich mal auf dieses Modul verweisen: msgDialog: Instant Messaging als FHEM Interface.
Am Wochenende werde ich es vermutlich offiziell einchecken.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED


littleswabi

Zitatfavorites <list of commands>
Specify a list of favorite commands for Fhem (without cmdKeyword). Multiple commands are separated by semicolon (;). This also means that only simple commands (without embedded semicolon) can be defined

Wenn ich in Fhem auf
ZitatDevice specific help
gehe steht der obere Text da.

littleswabi

Ich habe noch eine Farge an @Ma_Bo zu dem DOIF :)

meine DEF ist folgendermaßen

([myHomeTemp:msgText] eq "Wetter") (set myHomeTemp send die Außentemperatur beträgt [Temp_Outside:temperature] Grad und die Luftfeuchtigeit beträgt [Temp_Outside:humidity] %)

Wenn ich von Telegram ein "Wetter" sende passiert folgendes:

[code2017-10-06 20:32:22.060 DOIF di_outsidetemp cmd_nr: 1
2017-10-06 20:32:22.060 DOIF di_outsidetemp cmd: 1
2017-10-06 20:32:22.060 DOIF di_outsidetemp cmd_event: myHomeTemp
2017-10-06 20:32:22.060 DOIF di_outsidetemp cmd_1
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgId: 169
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgPeer: meinName
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgPeerId: 279979850
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgChat: meinName
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgChatId: 279979850
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgText: Wetter
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgReplyMsgId:
2017-10-06 20:32:22.066 TelegramBot myHomeTemp msgFileId:
2017-10-06 20:32:22.478 TelegramBot myHomeTemp sentMsgResult: SUCCESS
2017-10-06 20:32:22.478 TelegramBot myHomeTemp sentMsgId: 170
2017-10-06 20:32:22.478 TelegramBot myHomeTemp sentMsgPeerId: 279979850][/code]

Der State in den Readings ist cmd_1. Wenn ich jetzt ein weiteres mal Wetter sende passiert folgendes:

nichts  :)

Erst wenn ich set di_outsidetemp cdm_2 bekomme ich wieder eine Antwort.

Wie kann ich das ändern?

Danke schonmal  :)

igami

guck dir Mal das Attribut  "do" an, vorzugsweise mit dem Wert "always"
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

Ma_Bo

igami hat die Antwort ja schon geschrieben... zu empfehlen ist auch das attr checkReadingEvent auf 1 zu stellen...

Lies dir bitte auch mal die commandref zu DOIF durch, dort sind sehr viele Beispiele und das ganze ist sehr gut erklärt...

Grüße Marcel


Tapatalk iPhone, daher kurz gehalten.
NUC mit FHEM, HM Heizungsthermostate, HM Wandthermostate, Intertechno Funksteckdosen, 10" Tablet als Wanddisplay, KeyMatic, Fensterkontakte, Fensterkontakte umgebaut als Wassermelder und Briefkastenmelder, Aussenthermostat, Anwesenheitssteuerung über Fritz Box, Google Home usw. usw.

littleswabi