50_SSChatBot - Integration des Synology Chat Servers

Begonnen von DS_Starter, 25 November 2019, 07:56:56

Vorheriges Thema - Nächstes Thema

rohlande

Zitat von: DS_Starter am 12 Dezember 2021, 12:44:05
Hi Denny,

das Problem ist das Triggern auf "snap" im notify.
Hintergrund: technisch bedingt wird erst der Schnappschuss ausgeführt und danach der dazu gehörende Filename etc. ermittelt.

Du musst also auf "LastSnapFilename" triggern, dann klappt das. Es ist auch so im SSCam Wiki beschrieben. Das wait im DOIF funktioniert deswegen weil du dem Modul Zeit gibst, ist aber technisch nicht korrekt und u.U. unzuverlässig je nach Länge des wait.

Da hast Du natürlich Recht. Das funktioniert auch. Vielen Dank für den Hinweis.. Sind sehr viele readings vorhanden.

Mittlerweile kannst du den Versand mit SSChatBot auch direkt im SSCam-Modul hinterlegen und brauchst kein notify mehr.Siehe hier.

Funktioniert leider nicht bei mir. Keine Ahnung warum. Verbose liefert nicht wirklich Fehler bezüglich ChatBot... Aber auch keine Infos zum Versand. Oder sollte ich das eher am Kamera Device mit verbose suchen? Denn dort ist sind ja auch die Attribute dazu gesetzt.



Grüße,Heiko

Gruss Denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

Zitat
Funktioniert leider nicht bei mir. Keine Ahnung warum. Verbose liefert nicht wirklich Fehler bezüglich ChatBot... Aber auch keine Infos zum Versand. Oder sollte ich das eher am Kamera Device mit verbose suchen? Denn dort ist sind ja auch die Attribute dazu gesetzt.

Ja, du setzt das verbose im Kameradevice hoch und schaust/postest die relevanten Logauszüge.
Wie ist denn das Attr snapChatTxt bei dir gesetzt ?

Zum Vergleich bei mir:

chatbot => SynChatBot, peers => , subject => Bewegungsalarm bei $CAM. Es wurde $CTIME der Schnappschuss $FILE erstellt
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

Hallo Heiko

hier der Auszug aus dem List des Kamera Device:
Attributes:
   DbLogExclude .*
   alias      SSCam.Lutec_Light
   devStateIcon .*isable.*:set_off .*nap:li_wht_on
   htmlattr   width=500 height=325
   httptimeout 20
   icon       it_camera
   pollcaminfoall 210
   pollnologging 1
   recChatTxt DS918_ChatBot, denny , Bewegungsalarm bei $CAM. Es wurde $CTIME die Aufnahme $FILE * erstellt. Jetzt ist es $TIME.
   room       System
   session    SurveillanceStation
   snapGallerySize Full
   verbose    0
   videofolderMap http://192.168.178.44:8081/surveillance
   webCmd     on:off:snap:enable:disable:runView:stopView


vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

rohlande

Hallo Heiko

Funktioniert. Das Attribut war falsch aufgebaut....gesetzt.
Sorry für die Mühe....

Und beim "recChatTxt" werden dann die Video Snaps getriggert?

vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

Zitat
Und beim "recChatTxt" werden dann die Video Snaps getriggert?
Naja fast richtig ... wenn Videos aufgenommen wurden, wird mit diesem Attr der Versand der Filmchen über SSChatBot veranlasst.
D.h. wenn das Video fertig aufgenommen ist.
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

Okay... Thema Video... Das will irgendwie nicht...
Wenn ich soetwas via Chat Bot direkt absetzte
asyncSendItem text="Ein aktuelles Video vom Hof!" fileUrl="http://192.168.178.44:8081/surveillance/SSCam.Lutec_Light/20211212PM/Lutec-Light-20211212-170410-1639325050.mp4
kommt eine Fehlermeldung:
2021-12-12 17:10:29.462 SSChatBot DS918_ChatBot Error: payload has wrong format
2021-12-12 17:10:29.462 SSChatBot DS918_ChatBot Errorcode: 120
2021-12-12 17:10:29.462 SSChatBot DS918_ChatBot Error
2021-12-12 17:10:29.491 SSChatBot DS918_ChatBot Error: payload has wrong format
2021-12-12 17:10:29.491 SSChatBot DS918_ChatBot Errorcode: 120
2021-12-12 17:10:29.491 SSChatBot DS918_ChatBot Error


vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

Hast du in asyncSendItem ganz hinten ein " vergessen oder nur nicht hier reinkopiert ?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

Ups Sorry übersehen...
Aber trotzdem mag er nicht.
Jetzt schmeist er so ein Quatsch:
2021-12-12 17:22:07.568 SSChatBot DS918_ChatBot Error
2021-12-12 17:22:07.632 SSChatBot DS918_ChatBot Error: exceed max file size
2021-12-12 17:22:07.632 SSChatBot DS918_ChatBot Errorcode: 409
2021-12-12 17:22:07.632 SSChatBot DS918_ChatBot Error

Kennst Du eine Begrenzung der FileSize für den Versand?
Wäre mir neu...

vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

Zitat
Kennst Du eine Begrenzung der FileSize für den Versand?
Wäre mir neu...
Ja, die ist 32MB. Siehe die Syno KB:

https://kb.synology.com/de-de/DSM/help/Chat/chat_integration?version=6
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

ja habe es bemerkt. Habe jetzt die Aufnahme Dauer auf 1 min reduziert. Jetzt sind die Files kleiner 32 Mb.
Jetzt funktioniert es auch...

vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

Wow, was hast du denn für eine Auflösung wenn du für  < 32MB auf 1 Minute gehen musst ?
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

nichts besonders... die 1 liefert bei 5 min Dauerschleife etwa 24MB große Files... die andere bei der gleichen Einstellung ca 73 MB.... wobei die 1 mit einer Auflösung von 2304x1296 im H264 Codec läuft. Die zweite, schlechtere Auflösung kann ich nicht einstellen am Codec und auch die Auflösung nicht.... Das ist so eine Licht Kamera von Steinel, welche eine besondere Firmware bekommen hat, damit der rtsp Stream abrufbar ist.... Die hat scheinbar eine schlechtere Kompressionsrate....

vg denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

rohlande

#192
Hallo Experten

Ich habe ein Problem bei der Erstellung eines DOIF in Kombination mit der Eingabe eines Values im "ChatBot".
Folgender Aufbau:

  • 1. DOIF welches die Grundstruktur inkl. interaktive Button zur Verfügung stellt
  • 2. ein dummy Device, welches mit den Eingaben aus der Interaktion aus einem weiteren DOIF befüllt wird
  • 3. und noch ein zusätzliches DOIF, welches die gewünschte Eingabe welche im dummy zu sehen ist, als [set....] an Fhem übergibt.

Dazu habe ich 2 Probleme:

1. im 2 DOIF welches den dummy befüllt, wird ein 3 CMD nicht ausgeführt. Daher habe ich mir ein weiteres DOIF gebastelt, welches die daten aus dem dummy liest und einen [set...] absetzten soll.....
2. bis zu dem Pkt. das die beiden DOIF zusammen mit dem dummy laufen ist es scheinbar kein Problem.... Aber sobald das 3. DOIF den [set .....] an das jeweilige Device absetzten soll, kommt eine Fehlermeldung....DOIF SEND_SET_cmd error: set "set SW_Bettlicht Dimmer  13.5": Please define "set first
Ich hatte bereits dazu den Fehler eines fehlenden Leerzeichen vor dem Wert in Verdacht.... Aber daran scheint es nicht zu liegen. Denn wenn ich den gleiche Aufruf aus dem EVENT Monitor über nehme und in der Konsole aufrufe funktioniert es.

hier die 3 LIST zu den DOIF und des dummy:
List vom MAIN DOIF:
DOELSEIF

([DS918_ChatBot:recText] eq "hz" or [DS918_ChatBot:recActionsValue] eq "hz" or [DS918_ChatBot:recActionsValue] eq "BTN_BCK_HZ")

(set DS918_ChatBot asyncSendItem  text= *"Status 🌡️ Temp. Heizung!"*)

(set DS918_ChatBot asyncSendItem  text=
*Thermostate Heizung:*\n
TH_Büro: [TH_Buero:temperature] | [TH_Buero:desired-temp] | [MS_Umwelt_Buero:temperature] | [MS_Umwelt_Buero:lastseen] | [MS_Umwelt_Buero:batteryPercent]\n
TH_XXXXXX: [TH_XXXXX:temperature] | [TH_XXXXX:desired-temp] | [MS_Umwelt_Kind1:temperature] | [MS_Umwelt_Kind1:lastseen] | [MS_Umwelt_Kind1:batteryPercent]\n
)

(set DS918_ChatBot asyncSendItem  text=
*"Wie gehts weiter...?"*
attachments="[{"callback_id": "set_temp_th", "text": "Wunschtemperatur einstellen...!",
   "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "🤖️Hauptmenü", "style": "orange"},
              {"type": "button", "name": "BTN_FCT_DEV", "value": "fct_th_dev", "text": "🔜️Temp. einstellen", "style": "orange"}]}]")

DOELSEIF

([DS918_ChatBot:recText] eq "fct_th_dev" or [DS918_ChatBot:recActionsValue] eq "fct_th_dev" )

(set DS918_ChatBot asyncSendItem  text= *"Thermostat auswählen"*)
(setreading Set_tmp_value cmd_value_flg false)
(setreading Set_tmp_value cmd_device_flg false)

(set DS918_ChatBot asyncSendItem  text=
*"Wähle ein Thermostat!"*
attachments="[{"callback_id": "set_device", "text": "Thermostat auswählen",
   "actions":[{"type": "button", "name": "BTN_TH_Buero", "value": "set SW_Bettlicht Dimmer", "text": "🌡️ Büro", "style": "green"},
              {"type": "button", "name": "BTN_TH_XXXXX", "value": "set TH_ XXXXX desired-temp", "text": "🌡️ XXXXXx", "style": "green"},
      {"type": "button", "name": "zurück_th", "value": "BTN_BCK_HZ",   "text": "🔙️", "style": "red"}]}]")

DOELSEIF

([DS918_ChatBot:callback_id] eq "set_device")

(set DS918_ChatBot asyncSendItem  text= *"Gib einen 🌡️ Wert im Bereich zwischen [0 - 28.5] °C!"*)

     
DOELSE


   FUUID      61b39b2b-f33f-cb6b-bff8-0aa731cb165ad382
   MODEL      FHEM
   NAME       DS_FHEM_Bot_doif
   NOTIFYDEV  global,DS918_ChatBot
   NR         101
   NTFY_ORDER 50-DS_FHEM_Bot_doif
   STATE      cmd_13
   TYPE       DOIF
   VERSION    25295 2021-12-04 18:13:39
   READINGS:
     2021-12-15 12:30:44   Device          DS918_ChatBot
     2021-12-15 12:30:44   cmd             13
     2021-12-15 12:30:44   cmd_event       DS918_ChatBot
     2021-12-15 12:30:44   cmd_nr          13
     2021-12-15 12:30:44   e_DS918_ChatBot_recActionsValue
     2021-12-15 12:30:44   e_DS918_ChatBot_recText 13.5
     2021-12-15 12:25:16   mode            enabled
     2021-12-15 12:30:44   state           cmd_13
   Regex:
     accu:
     collect:
     cond:
       DS918_ChatBot:
         0:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         1:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         10:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         11:
           callback_id ^DS918_ChatBot$:^callback_id:
         2:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         3:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         4:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         5:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         6:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         7:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         8:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
         9:
           recActionsValue ^DS918_ChatBot$:^recActionsValue:
           recText    ^DS918_ChatBot$:^recText:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "start" or ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "hm" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "hm"
     1          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "hilfe" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "hilfe"
     10         ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "fct_th_dev" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "fct_th_dev"
     11         ::ReadingValDoIf($hash,'DS918_ChatBot','callback_id') eq "set_device"
     2          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "status" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "status" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "BTN_BCK_SYS"
     3          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "fct_sys" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "fct_sys"
     4          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "energy" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "energy"
     5          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "schalter" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "schalter" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "BTN_BCK_SW"
     6          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "fct_sw" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "fct_sw"
     7          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "cam" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "cam" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "BTN_BCK_CAM"
     8          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "fct_cam" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "fct_cam"
     9          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') eq "hz" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "hz" or ::ReadingValDoIf($hash,'DS918_ChatBot','recActionsValue') eq "BTN_BCK_HZ"
   do:
     0:
       0          set DS918_ChatBot asyncSendItem  text= "Hallo ich bin Dein 🤖️ChatBot! Was kann ich für Dich tun? \n '❓️hilfe' --> Übersicht an Möglichkeiten \n '↪️start' --> Neustart Dialog \n"    attachments="[{"callback_id": "hauptmenue", "text": "Du bfindest Dich im Hauptmenü!",    "actions":[{"type": "button", "name": "BTN_STATUS", "value": "status", "text": "💻️Status Systeme", "style": "blue"},                       {"type": "button", "name": "BTN_ENERGY", "value": "energy", "text": "⚡️Energie Daten", "style": "blue"},                       {"type": "button", "name": "BTN_SWITCH", "value": "schalter", "text": "💡️Schalter", "style": "blue"},                       {"type": "button", "name": "BTN_HZ", "value": "hz", "text": "🌡️Heizung", "style": "blue"},                       {"type": "button", "name": "BTN_CAM", "value": "cam", "text": "🔐️Sicherheit", "style": "red"},                       {"type": "button", "name": "BTN_HLP",    "value": "hilfe",    "text": "❓️Hilfemenü", "style": "orange"}]}]"
     1:
       0          set DS918_ChatBot asyncSendItem  text= "Hilfreiche Informationen zum ChatBot: \n '[/slash] Befehle direkt absetzen wenn Du das Gerät kennst z.B /set SW_Licht_Halle on'\n 'Texte welche der Bot nicht kennt werden nicht beantwortet!' \n 'Texte oder Worte welcher der BOT direkt versteht z.B staus, energy, hm, hilfe, cam, hz, ....' \n 'Button verwenden im jeweiligen Menü.... Du kannst direkt etwas schalten oder abfragen' \n 'Menü auswählen welche Dir angezeigt werden... vordefinierte Button und Aktion' \n" attachments="[{"callback_id": "hilfemenü", "text": "Du befindest Dich im Hilfemenü!",    "actions":[{"type": "button", "name": "BTN_HM", "value": "hm", "text": "🤖️Hauptmenü", "style": "orange"}]}]"
     10:
       0          set DS918_ChatBot asyncSendItem  text= *"Thermostat auswählen"*
       1          setreading Set_tmp_value cmd_value_flg false
       2          setreading Set_tmp_value cmd_device_flg false
       3          set DS918_ChatBot asyncSendItem  text= *"Wähle ein Thermostat!"* attachments="[{"callback_id": "set_device", "text": "Thermostat auswählen",    "actions":[{"type": "button", "name": "BTN_TH_Buero", "value": "set SW_Bettlicht Dimmer", "text": "🌡️ Büro", "style": "green"},               {"type": "button", "name": "BTN_TH_XXXXX", "value": "set TH_XXXXX desired-temp", "text": "🌡️ XXXXX", "style": "green"},       {"type": "button", "name": "zurück_th", "value": "BTN_BCK_HZ",   "text": "🔙️", "style": "red"}]}]"
     11:
       0          set DS918_ChatBot asyncSendItem  text= *"Gib einen 🌡️ Wert im Bereich zwischen [0 - 28.5] °C!"*
     12:
       0         
     2:
       0          set DS918_ChatBot asyncSendItem  text= *"Hier ist die System | Status Übersicht:"*
       1          set DS918_ChatBot asyncSendItem  text= FHEM Docker: [DockerImageInfo:container.hostname]/[DockerImageInfo:image.version]\n FHEM Installer: [fhemInstaller:installedPerl]/[fhemInstaller:state]/[fhemInstaller:perlVersion]\n FHEM NPM: [fhemServerNpm:outdated]/[fhemServerNpm:state]/[fhemServerNpm:nodejsVersion]\n FHEM 💻️: [fhemServerApt:toUpgrade]/[fhemServerApt:state]/[fhemServerApt:updatesAvailable]\n deCONZ 📶️: [deCONZ:state]/[deCONZ:lastError]\n openWB MQTT: [openWB_MQTT_Client:state]\n *DS918 MQTT Broker:* [DS918Broker:state]/[DS918Broker:connection]\n FHEM MQTT Broker: [FHEM_MQTT_SERVER:state]/[FHEM_MQTT_SERVER:nrclients]\n FritzBox 6591 Base: [fritzbox_FB6591:state]/[fritzbox_FB6591:box_ipExtern]/[fritzbox_FB6591:box_rateDown]/[fritzbox_FB6591:box_rateUp]\n *Lametric ⏲️:* [Lametric_Time:state]/[Lametric_Time:wifiIp]\n FirtzBox ☎️: [FB6591_Call:state]\n
       2          set DS918_ChatBot asyncSendItem  text= *"Wie gehts weiter...?"* attachments="[{"callback_id": "status", "text": "💻️System | weitere Funktionen ?",    "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "🤖️Hauptmenü", "style": "orange"},               {"type": "button", "name": "BTN_FCT_SYS", "value": "fct_sys", "text": "🔜️weitere Funktionen", "style": "orange"}]}]"
     3:
       0          set DS918_ChatBot asyncSendItem  text= *"💻️System Funktionen zur Auswahl."*
       1          set DS918_ChatBot asyncSendItem  text= *"Wähle ein Funktion aus!"* attachments="[{"callback_id": "system_funktion", "text": "System Funktionen ?",    "actions":[{"type": "button", "name": "fb6591_update",  "value": "/set fritzbox_FB6591 update",  "text": "Update FB6591", "style": "green"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 wlan2.4 on",  "text": "WLAN_2.4 GHz *ON*", "style": "green"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 wlan5 on",  "text": "WLAN_5 GHz *ON*", "style": "green"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 wlan2.4 off",  "text": "WLAN_2.4 GHz *OFF*", "style": "blue"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 wlan5 off",  "text": "WLAN_5 GHz *OFF*", "style": "blue"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 guestWlan on",  "text": "Gäste Wlan *ON*", "style": "green"},       {"type": "button", "name": "fb6591_wlan",  "value": "/set fritzbox_FB6591 guestWlan off", "text": "Gäste Wlan *off*", "style": "blue"},       {"type": "button", "name": "cul_0",   "value": "/set CUL_0 reopen",   "text": "CUL_0 reset", "style": "green"},       {"type": "button", "name": "cul_0_pair",   "value": "/set CUL_0 hmPairForSec 180",   "text": "CUL_0 HM Pairing", "style": "green"},       {"type": "button", "name": "mqtt_ds918",   "value": "/set DS918Broker connect",   "text": "MQTT Broker Init", "style": "green"},       {"type": "button", "name": "fb_dect",   "value": "/set FB6490 refreshstate",   "text": "FB DECT Init", "style": "green"},       {"type": "button", "name": "sonos",   "value": "/set Sonos RescanNetwork",   "text": "Sonos Init", "style": "green"},                       {"type": "button", "name": "deconz",   "value": "/set deCONZ active",   "text": "deCONZ Init", "style": "green"},                       {"type": "button", "name": "deconz",   "value": "/set deCONZ statusRequest",   "text": "deCONZ Status Req.", "style": "green"},               {"type": "button", "name": "callmonitor", "value": "/set FB6591_Call reopen", "text": "CallMonitor reset", "style": "green"},               {"type": "button", "name": "zurück_sys",   "value": "BTN_BCK_SYS",   "text": "🔙️", "style": "red"}]}]"
     4:
       0          set DS918_ChatBot asyncSendItem  text= *"Hier ist die Übersicht der ⚡️Energie Daten:"*
       1          set DS918_ChatBot asyncSendItem  text= PV-Nord: [MS_Liefern_Nord:PowerFlow_Site_P_PV] W/[MS_Liefern_Nord:state]/[MS_Liefern_Nord:Inverter_Cumulation_DAY_ENERGY_Value] Wh/[MS_Liefern_Nord:Inverter_Common_YEAR_ENERGY_Value] Wh\n PV-Süd: [MS_Liefern_Sued:P_pv_sued]W\n P-EG: [MS_P_EG:wirkleistung_EG]W\n P-OG: [MS_P_OG:wirkleistung_OG]W\n P-Netz: [MS_P_Netz:wirkleistung_Netz]W\n Speicher-SOC: [SOC_Speicher:soc]%\n 
       2          set DS918_ChatBot asyncSendItem  text= *"Wie gehts weiter...?"* attachments="[{"callback_id": "energy", "text": "⚡️Energie | weitere Funktionen ?",    "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "Hauptmenü", "style": "orange"},               {"type": "button", "name": "BTN_BCK", "value": "fct_eng", "text": "🔜️weitere Funktionen",    "style": "orange"}]}]"
     5:
       0          set DS918_ChatBot asyncSendItem  text= *"Status der Schalter!"*
       1          set DS918_ChatBot asyncSendItem  text= *Rolläden EG:*\n  Ost: [MQTT2_shellyswitch25_F34508:pct] | [MQTT2_shellyswitch25_F34508:rollers_1_last_direction]\n Süd1: [MQTT2_shellyswitch25_F345EE:pct] | [MQTT2_shellyswitch25_F345EE:rollers_1_last_direction]\n Süd2: [MQTT2_shellyswitch25_F35475:pct] | [MQTT2_shellyswitch25_F35475:rollers_1_last_direction]\n Süd3: [MQTT2_shellyswitch25_F3FFBC:pct] | [MQTT2_shellyswitch25_F3FFBC:rollers_1_last_direction]\n *Lichtschalter | Schalter:*\n  💡️🧰️: [SW_Licht_Halle:result-power1] | [SW_Licht_Halle:lwt]\n 💡️🔪️: [SW_Kueche_Licht:result-power1] | [SW_Kueche_Licht:lwt]\n 🎄️: [SW_Licht_WZ:result-power] | [SW_Licht_WZ:lwt]\n 🛏️💡️: [SW_Bettlicht:state] | [SW_Bettlicht:lwt]\n 📺️ DG: [SW_Media_DG:result-power] | [SW_Media_DG:lwt]\n 
       2          set DS918_ChatBot asyncSendItem  text= *"Wie gehts weiter...?"* attachments="[{"callback_id": "status", "text": "🔳️Schalterauswahl | weitere Funktionen ?",    "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "🤖️Hauptmenü", "style": "orange"},               {"type": "button", "name": "BTN_FCT_SW", "value": "fct_sw", "text": "🔜️weitere Funktionen", "style": "orange"}]}]"
     6:
       0          set DS918_ChatBot asyncSendItem  text= *"Schalter Auswahl."*
       1          set DS918_ChatBot asyncSendItem  text= *"Wähle ein Funktion aus!"* attachments="[{"callback_id": "system_funktion", "text": "System Funktionen ?",    "actions":[{"type": "button", "name": "RL_Hof",  "value": "/set MQTT2_shellyswitch25_F34508 close",  "text": "RL HOF zu ", "style": "blue"},       {"type": "button", "name": "RL_Hof",  "value": "/set MQTT2_shellyswitch25_F34508  open",  "text": "RL HOF auf", "style": "black"},       {"type": "button", "name": "RL_WZ1",  "value": "/set MQTT2_shellyswitch25_F345EE close",  "text": "RL WZ zu", "style": "blue"},       {"type": "button", "name": "RL_WZ1",  "value": "/set MQTT2_shellyswitch25_F345EE open",  "text": "RL WZ auf", "style": "black"},       {"type": "button", "name": "RL_WZ2",  "value": "/set MQTT2_shellyswitch25_F35475 close",  "text": "RL WZ zu", "style": "blue"},       {"type": "button", "name": "RL_WZ2",  "value": "/set MQTT2_shellyswitch25_F35475 open",  "text": "RL WZ auf", "style": "black"},       {"type": "button", "name": "RL_EZ",  "value": "/set MQTT2_shellyswitch25_F3FFBC close", "text": "RL EZ zu", "style": "blue"},       {"type": "button", "name": "RL_EZ",  "value": "/set MQTT2_shellyswitch25_F3FFBC open",  "text": "RL EZ auf", "style": "black"},       {"type": "button", "name": "SW_Halle",  "value": "/set SW_Licht_Halle on",   "text": "[Licht Halle] AN", "style": "green"},       {"type": "button", "name": "SW_Halle",  "value": "/set SW_Licht_Halle off",   "text": "[Licht Halle] AUS", "style": "orange"},       {"type": "button", "name": "SW_Küche",  "value": "/set SW_Kueche_Licht on",   "text": "[Licht Küche] AN", "style": "green"},       {"type": "button", "name": "SW_Küche",  "value": "/set SW_Kueche_Licht off",   "text": "[Licht Küche] AUS", "style": "orange"},       {"type": "button", "name": "SW_WZ",  "value": "/set SW_Licht_WZ on",   "text": "[Beleuchtung WZ] AN", "style": "green"},       {"type": "button", "name": "SW_WZ",  "value": "/set SW_Licht_WZ off",   "text": "[Beleuchtung WZ] AUS", "style": "orange"},       {"type": "button", "name": "SW_SZ",  "value": "/set SW_Bettlicht on",   "text": "[Bettlich SZ] AN", "style": "green"},       {"type": "button", "name": "SW_SZ",  "value": "/set SW_Bettlicht off",   "text": "[Bettlich SZ] AUS", "style": "orange"},               {"type": "button", "name": "zurück_SW", "value": "BTN_BCK_SW",   "text": "🔙️", "style": "red"}]}]"
     7:
       0          set DS918_ChatBot asyncSendItem  text= *"Status 📷️ Kameras!"*
       1          set DS918_ChatBot asyncSendItem  text= *Kamera Hof:*\n  Lutec: [SSCam.Lutec_Light:state] | [SSCam.Lutec_Light:Availability] | [SSCam.Lutec_Light:LastSnapTime] | [SSCam.Lutec_Light:LastUpdateTime] | [SSCam.Lutec_Light:CamLastRecTime]\n ReoLink: [SSCam.Reolink520A:state] | [SSCam.Reolink520A:Availability] | [SSCam.Reolink520A:LastSnapTime] | [SSCam.Reolink520A:LastUpdateTime] | [SSCam.Reolink520A:CamLastRecTime]\n
       2          set DS918_ChatBot asyncSendItem  text= *"Wie gehts weiter...?"* attachments="[{"callback_id": "status", "text": "📷️Kameras | weitere Funktionen ?",    "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "🤖️Hauptmenü", "style": "orange"},               {"type": "button", "name": "BTN_FCT_CAM", "value": "fct_cam", "text": "🔜️weitere Funktionen", "style": "orange"}]}]"
     8:
       0          set DS918_ChatBot asyncSendItem  text= *"Wähle eine 📷️ Kamera aus!"*
       1          set DS918_ChatBot asyncSendItem  text= *"Wähle ein Funktion aus!"* attachments="[{"callback_id": "system_funktion", "text": "System Funktionen ?",    "actions":[{"type": "button", "name": "ReoLink",  "value": "get_stream_reolink", "text": "🎥️ Hof erstellen...", "style": "green"},       {"type": "button", "name": "Lutec",  "value": "get_stream_lutec", "text": "🎥️ Tür erstellen...", "style": "green"},       {"type": "button", "name": "ReoLink",  "value": "/set SSCam.Reolink520A snap", "text": "📸️ Bild Hof", "style": "orange"},       {"type": "button", "name": "Lutec",  "value": "/set SSCam.Lutec_Light snap", "text": "📸️ Bild Tür", "style": "orange"},       {"type": "button", "name": "zurück_cam", "value": "BTN_BCK_CAM",   "text": "🔙️", "style": "red"}]}]"
     9:
       0          set DS918_ChatBot asyncSendItem  text= *"Status 🌡️ Temp. Heizung!"*
       1          set DS918_ChatBot asyncSendItem  text= *Thermostate Heizung:*\n  TH_Büro: [TH_Buero:temperature] | [TH_Buero:desired-temp] | [MS_Umwelt_Buero:temperature] | [MS_Umwelt_Buero:lastseen] | [MS_Umwelt_Buero:batteryPercent]\n TH_XXXX: [TH_XXXXX:temperature] | [TH_XXXXX:desired-temp] | [MS_Umwelt_Kind1:temperature] | [MS_Umwelt_Kind1:lastseen] | [MS_Umwelt_Kind1:batteryPercent]\n
       2          set DS918_ChatBot asyncSendItem  text= *"Wie gehts weiter...?"* attachments="[{"callback_id": "set_temp_th", "text": "Wunschtemperatur einstellen...!",    "actions":[{"type": "button", "name": "BTN_HM",  "value": "hm",  "text": "🤖️Hauptmenü", "style": "orange"},               {"type": "button", "name": "BTN_FCT_DEV", "value": "fct_th_dev", "text": "🔜️Temp. einstellen", "style": "orange"}]}]"
   helper:
     DEVFILTER  ^global$|^DS918_ChatBot$
     NOTIFYDEV  global|DS918_ChatBot
     event      recActions: ,recCallbackId: ,recActionsValue: ,recChannelId: ,recChannelname: ,recUserId: 6,recUsername: denny,recPostId: 506806142778,recTimestamp: 2021-12-15 12:30:44,recText: 13.5,recTriggerword: ,recCommand: ,sendCommandReturn: ,Errorcode: none,Error: none,active
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   DS918_ChatBot
     timerevent recActions: ,recCallbackId: ,recActionsValue: ,recChannelId: ,recChannelname: ,recUserId: 6,recUsername: denny,recPostId: 506806142778,recTimestamp: 2021-12-15 12:30:44,recText: 13.5,recTriggerword: ,recCommand: ,sendCommandReturn: ,Errorcode: none,Error: none,active
     triggerDev DS918_ChatBot
     bm:
       DOIF_Get:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:41:46
         max        1.28746032714844e-05
         tot        1.28746032714844e-05
         mAr:
           HASH(0x563ce8acc6b0)
           DS_FHEM_Bot_doif
           ?
       DOIF_Notify:
         cnt        142
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:29:07
         max        0.0592741966247559
         tot        0.490550994873047
         mAr:
           HASH(0x563ce8acc6b0)
           HASH(0x563cea238508)
       DOIF_Set:
         cnt        49
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:25:54
         max        0.00105190277099609
         tot        0.00375008583068848
         mAr:
           HASH(0x563ce8acc6b0)
           DS_FHEM_Bot_doif
           ?
     timerevents:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       active
     timereventsState:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       state: active
     triggerEvents:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       active
     triggerEventsState:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       state: active
   internals:
   readings:
     all         DS918_ChatBot:recText DS918_ChatBot:recActionsValue DS918_ChatBot:callback_id
   trigger:
   uiState:
   uiTable:
Attributes:
   alias      DS_FHEM_Bot_doif
   do         always
   event-on-change-reading .*
   room       Logik

List vom Dummy:
Internals:
   FUUID      61b97e77-f33f-cb6b-6320-c44a417411001805
   NAME       Set_tmp_value
   NR         486
   STATE      ???
   TYPE       dummy
   OLDREADINGS:
   READINGS:
     2021-12-15 12:30:04   cmd_device      set SW_Bettlicht Dimmer
     2021-12-15 12:30:04   cmd_device_flg  true
     2021-12-15 12:30:44   cmd_out         set SW_Bettlicht Dimmer 13.5
     2021-12-15 12:30:44   cmd_value       13.5
     2021-12-15 12:30:44   cmd_value_flg   true
   helper:
     bm:
       dummy_Define:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 07:43:09
         max        1.78813934326172e-05
         tot        1.78813934326172e-05
         mAr:
           HASH(0x563cea7057d0)
           Set_tmp_value dummy
       dummy_Set:
         cnt        1039
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:08:54
         max        0.00182294845581055
         tot        0.0307319164276123
         mAr:
           HASH(0x563cea7057d0)
           Set_tmp_value
           ?
Attributes:
   DbLogExclude .*
   alias      Set_tmp_value
   room       Logik


List vom weiteren 2 und 3 DOIF welche den Dummy befüllen und den [set....] absetzten.:
Internals:
   CFGFN     
   DEF        ([DS918_ChatBot:recCallbackId] eq "set_device")

(setreading Set_tmp_value cmd_device {(ReadingsVal("DS918_ChatBot","recActionsValue",""))})
(setreading Set_tmp_value cmd_device_flg true)

DOELSEIF

([DS918_ChatBot:recText] >= 0 and [DS918_ChatBot:recText] <= 28.5)

(setreading Set_tmp_value cmd_value {(ReadingsVal("DS918_ChatBot","recText",""))})
(setreading Set_tmp_value cmd_value_flg true)

DOELSE
   FUUID      61b9aa75-f33f-cb6b-478b-4413aeff375336e1
   MODEL      FHEM
   NAME       DEVICE_set_Temp
   NOTIFYDEV  global,DS918_ChatBot
   NR         2152
   NTFY_ORDER 50-DEVICE_set_Temp
   STATE      cmd_2
   TYPE       DOIF
   VERSION    25295 2021-12-04 18:13:39
   READINGS:
     2021-12-15 12:30:44   Device          DS918_ChatBot
     2021-12-15 12:30:44   cmd             2.2
     2021-12-15 12:30:44   cmd_event       DS918_ChatBot
     2021-12-15 12:30:44   cmd_nr          2
     2021-12-15 12:30:44   cmd_seqnr       2
     2021-12-15 12:30:44   e_DS918_ChatBot_recCallbackId
     2021-12-15 12:30:44   e_DS918_ChatBot_recText 13.5
     2021-12-15 12:07:48   mode            enabled
     2021-12-15 12:30:44   state           cmd_2
   Regex:
     accu:
     collect:
     cond:
       DS918_ChatBot:
         0:
           recCallbackId ^DS918_ChatBot$:^recCallbackId:
         1:
           recText    ^DS918_ChatBot$:^recText:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          ::ReadingValDoIf($hash,'DS918_ChatBot','recCallbackId') eq "set_device"
     1          ::ReadingValDoIf($hash,'DS918_ChatBot','recText') >= 0 and ::ReadingValDoIf($hash,'DS918_ChatBot','recText') <= 28.5
   do:
     0:
       0          setreading Set_tmp_value cmd_device {(ReadingsVal("DS918_ChatBot","recActionsValue",""))}
       1          setreading Set_tmp_value cmd_device_flg true
     1:
       0          setreading Set_tmp_value cmd_value {(ReadingsVal("DS918_ChatBot","recText",""))}
       1          setreading Set_tmp_value cmd_value_flg true
     2:
       0         
   helper:
     DEVFILTER  ^global$|^DS918_ChatBot$
     NOTIFYDEV  global|DS918_ChatBot
     event      recActions: ,recCallbackId: ,recActionsValue: ,recChannelId: ,recChannelname: ,recUserId: 6,recUsername: denny,recPostId: 506806142778,recTimestamp: 2021-12-15 12:30:44,recText: 13.5,recTriggerword: ,recCommand: ,sendCommandReturn: ,Errorcode: none,Error: none,active
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   DS918_ChatBot
     timerevent recActions: ,recCallbackId: ,recActionsValue: ,recChannelId: ,recChannelname: ,recUserId: 6,recUsername: denny,recPostId: 506806142778,recTimestamp: 2021-12-15 12:30:44,recText: 13.5,recTriggerword: ,recCommand: ,sendCommandReturn: ,Errorcode: none,Error: none,active
     triggerDev DS918_ChatBot
     bm:
       DOIF_Get:
         cnt        3
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:22:44
         max        1.71661376953125e-05
         tot        4.00543212890625e-05
         mAr:
           HASH(0x563cea706350)
           DEVICE_set_Temp
           ?
       DOIF_Notify:
         cnt        419
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:10:53
         max        0.0355799198150635
         tot        0.81984543800354
         mAr:
           HASH(0x563cea706350)
           HASH(0x563cea238508)
       DOIF_Set:
         cnt        160
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:28:30
         max        0.000327825546264648
         tot        0.00797080993652344
         mAr:
           HASH(0x563cea706350)
           DEVICE_set_Temp
           ?
     timerevents:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       active
     timereventsState:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       state: active
     triggerEvents:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       active
     triggerEventsState:
       recActions:
       recCallbackId:
       recActionsValue:
       recChannelId:
       recChannelname:
       recUserId: 6
       recUsername: denny
       recPostId: 506806142778
       recTimestamp: 2021-12-15 12:30:44
       recText: 13.5
       recTriggerword:
       recCommand:
       sendCommandReturn:
       Errorcode: none
       Error: none
       state: active
   internals:
   readings:
     all         DS918_ChatBot:recCallbackId DS918_ChatBot:recText
   trigger:
   uiState:
   uiTable:
Attributes:
   DbLogExclude .*
   alias      DEVICE_set_Temp
   event-on-change-reading .*
   room       Logik


DOIF welches den [set....] absetzt und der Fehler gewurfen wird:

Internals:
   CFGFN     
   DEF        (([Set_tmp_value:cmd_device_flg] eq "true") && ([Set_tmp_value:cmd_value_flg] eq "true"))
(set "[Set_tmp_value:cmd_device]  [Set_tmp_value:cmd_value]")
(setreading Set_tmp_value cmd_out [Set_tmp_value:cmd_device] [Set_tmp_value:cmd_value])
DOELSE
   FUUID      61b9c1f7-f33f-cb6b-eee9-756268a2af870a18
   MODEL      FHEM
   NAME       SEND_SET_cmd
   NOTIFYDEV  global,Set_tmp_value
   NR         3895
   NTFY_ORDER 50-SEND_SET_cmd
   STATE      cmd_1
   TYPE       DOIF
   VERSION    25295 2021-12-04 18:13:39
   READINGS:
     2021-12-15 12:30:44   Device          Set_tmp_value
     2021-12-15 12:30:44   cmd             1.2
     2021-12-15 12:30:44   cmd_event       Set_tmp_value
     2021-12-15 12:30:44   cmd_nr          1
     2021-12-15 12:30:44   cmd_seqnr       2
     2021-12-15 12:30:04   e_Set_tmp_value_cmd_device_flg true
     2021-12-15 12:30:44   e_Set_tmp_value_cmd_value_flg true
     2021-12-15 12:29:03   mode            enabled
     2021-12-15 12:30:44   state           cmd_1
   Regex:
     accu:
     collect:
     cond:
       Set_tmp_value:
         0:
           cmd_device_flg ^Set_tmp_value$:^cmd_device_flg:
           cmd_value_flg ^Set_tmp_value$:^cmd_value_flg:
   attr:
     cmdState:
     wait:
     waitdel:
   condition:
     0          (::ReadingValDoIf($hash,'Set_tmp_value','cmd_device_flg') eq "true") && (::ReadingValDoIf($hash,'Set_tmp_value','cmd_value_flg') eq "true")
   do:
     0:
       0          set "[Set_tmp_value:cmd_device]  [Set_tmp_value:cmd_value]"
       1          setreading Set_tmp_value cmd_out [Set_tmp_value:cmd_device] [Set_tmp_value:cmd_value]
     1:
       0         
   helper:
     DEVFILTER  ^global$|^Set_tmp_value$
     NOTIFYDEV  global|Set_tmp_value
     event      cmd_value_flg: true
     globalinit 1
     last_timer 0
     sleeptimer -1
     timerdev   Set_tmp_value
     timerevent cmd_value_flg: true
     triggerDev Set_tmp_value
     bm:
       DOIF_Get:
         cnt        1
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:48:57
         max        1.50203704833984e-05
         tot        1.50203704833984e-05
         mAr:
           HASH(0x563ceaf981b8)
           SEND_SET_cmd
           ?
       DOIF_Notify:
         cnt        27
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:29:07
         max        0.0159430503845215
         tot        0.0777652263641357
         mAr:
           HASH(0x563ceaf981b8)
           HASH(0x563cea7057d0)
       DOIF_Set:
         cnt        39
         dmx        -1000
         dtot       0
         dtotcnt    0
         mTS        15.12. 12:29:14
         max        0.000146150588989258
         tot        0.00172543525695801
         mAr:
           HASH(0x563ceaf981b8)
           SEND_SET_cmd
           ?
     timerevents:
       cmd_value_flg: true
       cmd_out: set SW_Bettlicht Dimmer 13.5
     timereventsState:
       cmd_value_flg: true
       cmd_out: set SW_Bettlicht Dimmer 13.5
     triggerEvents:
       cmd_value_flg: true
       cmd_out: set SW_Bettlicht Dimmer 13.5
     triggerEventsState:
       cmd_value_flg: true
       cmd_out: set SW_Bettlicht Dimmer 13.5
   internals:
   readings:
     all         Set_tmp_value:cmd_device_flg Set_tmp_value:cmd_value_flg
   trigger:
   uiState:
   uiTable:
Attributes:
   DbLogExclude .*
   alias      SEND_SET_cmd
   event-on-change-reading .*
   room       Logik


Vielleicht ist ja auch die Architektur einfacher zu gestalten aber ich wundere mich trotzdem über den Fehler des DOIF in Kombination mit dem Bot.

Der eigentliche Wunsch des Ganzen wäre dabei: Wenn z.B Device wie Thermostate via Value Eingabe im ChatBot gesteuert werden könnten.
Ich habe dazu im Moment keine Andere Idee umd die Daten via ChatBot ans Fhem zu übergeben.

Vg Denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger

DS_Starter

#193
Hallo Denny,

ich muß voraus schicken, dass ich von DOIF keinerlei Ahnung habe weil dieses Tool bisher noch nie von mir benötigt wurde.
Erledige alles per at/notify.

Aber meiner Meinung nach ist das Problem in der Fehlermeldung bereits enthalten.
Es wird set "set ...


set "set SW_Bettlicht Dimmer  13.5": Please define "set first


aufgerufen was mit Sicherheit falsch ist, es muß sicherlich


set "SW_Bettlicht Dimmer  13.5"


heißen.
Es kommt wohl aus dieser Definition:

Zitat
(set DS918_ChatBot asyncSendItem  text=
*"Wähle ein Thermostat!"*
   attachments="[{"callback_id": "set_device", "text": "Thermostat auswählen",
      "actions":[{"type": "button", "name": "BTN_TH_Buero",   "value": "set SW_Bettlicht Dimmer",      "text": "🌡️ Büro",   "style": "green"},
                 {"type": "button", "name": "BTN_TH_XXXXX",    "value": "set TH_ XXXXX desired-temp",      "text": "🌡️ XXXXXx",   "style": "green"},
            {"type": "button", "name": "zurück_th",       "value": "BTN_BCK_HZ",              "text": "🔙️",      "style": "red"}]}]")

Schau doch mal wo mit DOIF evtl. ein "set" hinzugezaubert wird. Evtl. im DOIF Forum mal nachfragen.

Grüße,
Heiko
ESXi@NUC+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter

rohlande

Hallo Heiko

Danke für den Hinweis.. Das kann natürlich sein, das hier bei der EINGABE ins System via ChatBot der [set] hier schon den DOIF oder das FHEM beeinflusst.
Leider finde ich keine Lösung, wie ich in einem DOIF oder notify aus den beiden Readings des dummy Device, den eigentlichen (set ........] String zusammenbauen kann.
Daher habe ich versucht den (set) schon bei der Eingabe via interaktiven Button ans System mit zu übergeben.

Vg Denny
HostSystem: Synology DS918 | FHEM im Docker Version: 6.0-s22528_v2.2.4 (dedizierte IP Adresse) | MQTT_Broker auf DS918 NAS | MQTT_FHEM | TASMOTA_DEVICE | SSChatBot | SSCam | LaMetric | FBAHAHTTP | CUL | SONOS | HUEBridge (deCONZ) Zigbee | FB_CALLMONITOR | InfluxDBLogger