Hallo kennt jemand die Android App Alarm Clock MQTT?
Diese sendet bei einen Weckalarm eine MQTT Nachricht.
Leider legt FHEM (MQTT2) bei jeden Wecken ein neues Gerät mit neuen Namen an.
Hier ein list eines neu angelegten Gerätes:
Internals:
CFGFN
CID 1575756300715
DEF 1575756300715
DEVICETOPIC MQTT2_1575756300715
FUUID 5dec220d-f33f-01d6-fb63-6b8f90d89607623d
IODev MQTTS_Server
NAME MQTT2_1575756300715
NR 531421
STATE ???
TYPE MQTT2_DEVICE
.attraggr:
.attrminint:
READINGS:
2019-12-07 23:05:01 start alarming
Attributes:
IODev MQTTS_Server
readingList 1575756300715:alarm_clock_mqtt/start:.* start
room MQTT2_DEVICE
Beim nächsten Wecken wieder ein neues:
Internals:
CFGFN
CID 1575756306585
DEF 1575756306585
DEVICETOPIC MQTT2_1575756306585
FUUID 5dec2212-f33f-01d6-f090-a8fe154beb9ba550
IODev MQTTS_Server
NAME MQTT2_1575756306585
NR 531429
STATE ???
TYPE MQTT2_DEVICE
.attraggr:
.attrminint:
READINGS:
2019-12-07 23:05:06 snooze snooze
Attributes:
IODev MQTTS_Server
readingList 1575756306585:alarm_clock_mqtt/snooze:.* snooze
room MQTT2_DEVICE
Schön wäre natürlich, wenn es immer das gleiche wäre.
Marek
Hallo,
nimm mal die CiD (1575756300715 inkl. Doppelpunkt) aus der readingList.
Also
1575756300715:alarm_clock_mqtt/start:.* start
ändern in
alarm_clock_mqtt/start:.* start
Wird dann immer noch ein neues Device angelegt ?
Gruß
Thomas
Ja, auch dann wird jedes mal ein neues Device angelegt.
Allerdings kommt jetzt auch das Reading im alten Device.
Marek
ZitatJa, auch dann wird jedes mal ein neues Device angelegt.
Ich habe den Ratschlag von TomLee getestet, und ich kann dieses Problem nicht nachstellen: bei mir wird nichts Neues erzeugt.
Im Detail:
fhem> infor timer
$ mosquitto_pub -i 1575756300715 -t alarm_clock_mqtt/start -m now
fhem>
2019-12-08 09:56:52 Global global DEFINED MQTT2_1575756300715
2019-12-08 09:56:52 Global global ATTR MQTT2_1575756300715 readingList 1575756300715:alarm_clock_mqtt/start:.* start
fhem> attr MQTT2_1575756300715 readingList alarm_clock_mqtt/start:.* start
$ mosquitto_pub -i 1575756300799 -t alarm_clock_mqtt/start -m now1
=> in FHEM wird nichts mehr angelegt, nur MQTT2_1575756300715:start auf now1 gesetzt
Na ja, er scheint mehrere Topic-Tree-Elemente zu haben.
@Marekk: Pack die alle mal in ein Device, oder nutze Wildcards (ungetestet):
attr MQTT2_1575756300715 readingList alarm_clock_mqtt/([^:]+):.* $1
Danke, es geht.
Ich habe alle topics ins Readinglist geschrieben.
Nochmals Danke!
READINGS:
2019-12-08 11:55:07 alarm alarm
2019-12-08 12:02:01 alarming alarming
2019-12-08 12:02:05 snooze snooze
2019-12-08 00:53:00 start alarming
Attributes:
IODev MQTTS_Server
readingList alarm_clock_mqtt/start:.* alarming
alarm_clock_mqtt/alarm:.* alarm
alarm_clock_mqtt/snooze:.* snooze
alarm_clock_mqtt/before_alarm:.* before_alarm
alarm_clock_mqtt/timer:.* timer_finish
Marek
:)
Hast du mal einen Link zu der App bzw. zu einer eventuellen Projekt-Seite. Wäre evtl. auch für andere interessant...
(Ich bastel auch gerne ein attrTemplate draus ;) .)
EDIT: ist das das hier: https://play.google.com/store/apps/details?id=se.jplantin.jp.alarmclock
(Gibt's irgendwo Info dazu?)
Genau, dass ist er. Ich war mal im Kontakt mit dem Autor und er hat dann den before_alarm eingefügt um mein Aufwachlicht einzuschalten.
Marek
Vielleicht kann der Autor auch ein festes ClientID einbauen, dann muessten neue FHEM Benutzer nichts an den FHEM-Attributen aendern.
@Marekh
Hast Du eigentlich auch ein "neutrales" MQTT2-Device, in dem Du einen bridgeRegexp definieren/anpassen könntest?
Ich sehe gerade, eine ClientID gibt es.
Marek
Vergib doch mal eine, lösche dein jetziges Device und schaue ob dann nur noch ein Gerät angelegt wird in dem alle Topic-Tree-Elemente automatisch landen.
Wenn ich eine ClientID vergebe und das Gerät lösche, legt er wieder bei jeden Alarm ein Gerät an.
Lege ich die Topics ins Readingslist gehts wieder.
Marek