Autor Thema: Alexa Fhem Temperaturabfrage  (Gelesen 323 mal)

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 175
Alexa Fhem Temperaturabfrage
« am: 02 September 2017, 13:11:11 »
Ich möchte mir per Alexa Custom Skill die Zimmertemperatur ausgeben lassen. Aber nur für den Raum in dem der Echo steht. Das Alexaroom Attribut ist für jeden Echo gesetzt.

sub
alexa_temperatur(){

$text = ReadingsVal("Alexa","echoRoom","");
fhem("set teleBot message $text");

if ($text eq "wohnzimmer"){
$text = "Die Temperatur im Wohnzimmer beträgt ".round(ReadingsVal("MAX_136deb","temperature","99"),0). " Grad Celsius.";

}
if ($text eq "schlafzimmer"){
$text = "Die Temperatur im Schlafzimmer beträgt ".round(ReadingsVal("MAX_136586","temperature","99"),0). " Grad Celsius.";

}
if ($text eq "unknown"){
$text = "Die Außentemperatur beträgt ".round(ReadingsVal("Wetter","temperature","99"),0). " Grad Celsius.";

}

return $text


}

Leider wird mir immer die Außentemperatur ausgegeben. Ich verstehe nur leider nicht warum. Kann mal bitte jemand drüber schauen und mir das Brett vorm Kopf entfernen.

Offline Esjay

  • Full Member
  • ***
  • Beiträge: 477
Antw:Alexa Fhem Temperaturabfrage
« Antwort #1 am: 02 September 2017, 13:14:42 »
Ich möchte mir per Alexa Custom Skill die Zimmertemperatur ausgeben lassen. Aber nur für den Raum in dem der Echo steht. Das Alexaroom Attribut ist für jeden Echo gesetzt.

sub
alexa_temperatur(){

$text = ReadingsVal("Alexa","echoRoom","");
fhem("set teleBot message $text");

if ($text eq "wohnzimmer"){
$text = "Die Temperatur im Wohnzimmer beträgt ".round(ReadingsVal("MAX_136deb","temperature","99"),0). " Grad Celsius.";

}
if ($text eq "schlafzimmer"){
$text = "Die Temperatur im Schlafzimmer beträgt ".round(ReadingsVal("MAX_136586","temperature","99"),0). " Grad Celsius.";

}
if ($text eq "unknown"){
$text = "Die Außentemperatur beträgt ".round(ReadingsVal("Wetter","temperature","99"),0). " Grad Celsius.";

}

return $text


}

Leider wird mir immer die Außentemperatur ausgegeben. Ich verstehe nur leider nicht warum. Kann mal bitte jemand drüber schauen und mir das Brett vorm Kopf entfernen.

Du kanmst dir mit der Version 0.3.5 die Temperaturen auch per Smarthome Skill ansagen lassen. genericDeviceType auf thermometer und alexaName vergeben.
Grüße

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 175
Antw:Alexa Fhem Temperaturabfrage
« Antwort #2 am: 02 September 2017, 16:51:44 »
Vielen Dank, werde es ausprobieren. Aber selbst wenn es klappt, ich möchte gerne noch andere Abfragen für jeden Raum unterschiedlich gestalten. Ich verstehe nur nicht warum die Bedingung nicht korrekt funktioniert.

Offline cs-online

  • Full Member
  • ***
  • Beiträge: 351
Antw:Alexa Fhem Temperaturabfrage
« Antwort #3 am: 14 September 2017, 12:10:29 »
hmmm...

Zitat
  Das Alexaroom Attribut ist für jeden Echo gesetzt.


aber: es wird in der Funktion das Attribut "echoRoom" abgefragt, nicht der Alexaroom....
FHEM auf Raspi 2, NanoCul 433 mit V1.65 für IT, NanoCul433 mit a-FW für Eurochrons, HM-CFG-USB-2, HM-WLAN-Gateway,ein paar HM-Aktoren,  2x EBUSD, ESP8266 am Strom-, Gas- , Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20, Lacrosse-Gateway und Sensoren, Alexa-Fhem... nd da geht noch was

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 175
Antw:Alexa Fhem Temperaturabfrage
« Antwort #4 am: 14 September 2017, 16:21:00 »
Sorry, du hast recht! Ich meine das Attribut "echoRoom" ist gesetzt.
Also leider noch keine Lösung, aber du bist ein aufmerksamer Leser  :).

Offline cs-online

  • Full Member
  • ***
  • Beiträge: 351
Antw:Alexa Fhem Temperaturabfrage
« Antwort #5 am: 14 September 2017, 18:57:51 »
bei mir ist das auch immer auf "unknown", schau mal, ob im Alexa-Device während des Ausführens der Funktion der EchoRoom wechselt. An der Funktion liegts nämlich nicht, wenn das konstant auf "unknown" bleibt. Einen Reload und ggf. stop und start des Alexa-Dienstes seit der Erstellung der Funktion hast Du durchgeführt ?
FHEM auf Raspi 2, NanoCul 433 mit V1.65 für IT, NanoCul433 mit a-FW für Eurochrons, HM-CFG-USB-2, HM-WLAN-Gateway,ein paar HM-Aktoren,  2x EBUSD, ESP8266 am Strom-, Gas- , Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20, Lacrosse-Gateway und Sensoren, Alexa-Fhem... nd da geht noch was

Offline mrbreil

  • Full Member
  • ***
  • Beiträge: 175
Antw:Alexa Fhem Temperaturabfrage
« Antwort #6 am: 14 September 2017, 19:25:10 »
Danke für deine Mühe.

Das Reading "echoRoom" wechselt und steht nie auf "unknown". Es wurde ja alle "echoId" vergeben, diente nur zur sicherheit.

Offline cs-online

  • Full Member
  • ***
  • Beiträge: 351
Antw:Alexa Fhem Temperaturabfrage
« Antwort #7 am: 14 September 2017, 19:50:22 »
dachte, weil Du schreibst, es wird immer die Aussentemperatur ausgegeben, und das wäre dann ja dieser Part:

if ($text eq "unknown"){
$text = "Die Außentemperatur beträgt ".round(ReadingsVal("Wetter","temperature","99"),0). " Grad Celsius.";

und da läuft der ja nur rein, wenn $text auch wirklich "unknown" drin hat.

Ist der Telebot ein Dummy, wo man sehen kann, was in $text wirklich rein kommt ? Falls ja, was steht denn da dann jeweils drin ? Falls nein, würde ich ein Dummy anlegen und dann da $text reinschreiben lassen.

Ich würde auch mal probieren bei der Variablenanmeldung ein "my" vor das "$text = ReadingsVal("Alexa","echoRoom","");" zu schreiben.
FHEM auf Raspi 2, NanoCul 433 mit V1.65 für IT, NanoCul433 mit a-FW für Eurochrons, HM-CFG-USB-2, HM-WLAN-Gateway,ein paar HM-Aktoren,  2x EBUSD, ESP8266 am Strom-, Gas- , Wasserzähler, in WLAN-Steckdosen und Relaisleisten, Sonoff S20, Lacrosse-Gateway und Sensoren, Alexa-Fhem... nd da geht noch was

Online MadMax-FHEM

  • Hero Member
  • *****
  • Beiträge: 2220
  • Niveau ist keine Creme...
Antw:Alexa Fhem Temperaturabfrage
« Antwort #8 am: 14 September 2017, 22:49:50 »
Danke für deine Mühe.

Das Reading "echoRoom" wechselt und steht nie auf "unknown". Es wurde ja alle "echoId" vergeben, diente nur zur sicherheit.

Hi,

ich hatte jetzt auch mal wieder Zeit ein wenig mit Alexa rumzuspielen...

Ich habe Version 0.3.4 laufen.
Den Smart Home Skill aktiviert (nutze ich zu 80%)
Und 2 Custom Skills (da spiele ich grad noch rum)...

Wo hast du die deviceID her?

Es gibt zwar das Reading echoID aber die verändert sich nicht wenn ich den Echo/Dot wechsle es wechselt, wenn ich zwischen meinen 2 Custom Skills wechsle.
Nehme daher an, dass es anzeigt welcher Custom Skill verwendet/angesprochen wurde...

Vielen Dank, Joachim
FHEM 5.8 Pi 3, HM-CFG-USB, 20x HM, ZWave USB Stick, 4x ZWave, Amazon dashButtons, CO2, ESP-Multisensor, FireTV
FHEM 5.8 PI 2, HM-CFG-USB, 17x HM, ZWave USB Stick, 3x Zwave, CO2, KODI
FHEM 5.8 PI 2 (Test): CUL868, mySensors, Alexa, Google Home, Aurora NanoLeaf, KODI
FHEM 5.8 PI 3 (Test): HM-MOD-PCB

 

decade-submarginal