<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>KNX-User-Forum - SmartHomeNG</title>
		<link>https://knx-user-forum.de/</link>
		<description>offizielles Supportforum für SmartHomeNG</description>
		<language>de</language>
		<lastBuildDate>Sun, 03 May 2026 09:49:11 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>60</ttl>
		<image>
			<url>images/misc/rss.png</url>
			<title>KNX-User-Forum - SmartHomeNG</title>
			<link>https://knx-user-forum.de/</link>
		</image>
		<item>
			<title><![CDATA[gelöst <i class="fa fa-check"></i>Autotimer not working]]></title>
			<link>https://knx-user-forum.de/forum/supportforen/smarthome-py/2089278-autotimer-not-working</link>
			<pubDate>Wed, 22 Apr 2026 16:43:01 GMT</pubDate>
			<description><![CDATA[Hi zusammen, 
ich habe ein Problem in der aktuellen Master Version: Autotimer im zusammenspiel mit Items vom Typ string funktionieren nicht mehr. 
 
So sieht das Item aus: 
 
 
movement: 
        type: str 
        value: 'Na' 
        nw_http_listen: 192.xx.yy.zz:ddd]]></description>
			<content:encoded><![CDATA[Hi zusammen,<br />
ich habe ein Problem in der aktuellen Master Version: Autotimer im zusammenspiel mit Items vom Typ string funktionieren nicht mehr.<br />
<br />
So sieht das Item aus:<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">movement:
        type: str
        value: 'Na'
        nw_http_listen: 192.xx.yy.zz:ddd
        #autotimer: 20 = Pending
        #autotimer: 20  ; str('Pending')
        autotimer: 20  ; 'Pending'</pre>
</div>Das Item hat in früheren Versionen funktioniert. Jetzt funktioniert das Setzen des Strings mit Autotimer nicht mehr.<br />
<br />
Fehlermeldung:<br />
ERROR lib.item.item Item 'test.movement': __run_attribute_eval('Pending'): Problem evaluating ''Pending' - Exception name 'Pending' is not defined<br />
<br />
​Auch alle oben auskommentierten Versionen funktionieren nicht. Kann jemand hier weiterhelfen?<br />
<br />
Danke und Gruß]]></content:encoded>
			<category domain="https://knx-user-forum.de/forum/supportforen/smarthome-py">SmartHomeNG</category>
			<dc:creator>aschwith</dc:creator>
			<guid isPermaLink="true">https://knx-user-forum.de/forum/supportforen/smarthome-py/2089278-autotimer-not-working</guid>
		</item>
		<item>
			<title>core: vererbbare Attribute in structs</title>
			<link>https://knx-user-forum.de/forum/supportforen/smarthome-py/2088729-core-vererbbare-attribute-in-structs</link>
			<pubDate>Sun, 19 Apr 2026 17:00:47 GMT</pubDate>
			<description>Moin, 
 
wir haben schon vor einiger Zeit eine Änderung im Core eingebaut, über die ich noch etwas erzählen möchte. 
 
Häufig kann man structs aus Plugins importieren, und möchte z.B. einzelne oder alle Items mit cache, database, visu_acl oder ähnlichen versehen. 
 
Bisher musste dafür der...</description>
			<content:encoded><![CDATA[Moin,<br />
<br />
wir haben schon vor einiger Zeit eine Änderung im Core eingebaut, über die ich noch etwas erzählen möchte.<br />
<br />
Häufig kann man structs aus Plugins importieren, und möchte z.B. einzelne oder alle Items mit cache, database, visu_acl oder ähnlichen versehen.<br />
<br />
Bisher musste dafür der struct-Baum kopiert und ausdrücklich aufgenommen werden, damit man die Attribute den jeweiligen Items zuweisen kann.<br />
<br />
Seit dieser Änderung lassen sich Attribute an das gesamte Struct &quot;vererben&quot; - die definierten Attribute werden auf alle Items im struct angewendet.<br />
<br />
Wenn ich beispielsweise aus dem zigbee2mqtt-Plugin das struct &quot;socket_generic&quot; einbinden möchte:<br />
<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">socket_generic:
    description: generic zigbee socket
    struct: zigbee2mqtt.lqi

    state:
        type: bool
        z2m_topic: ..:.
        z2m_attr: state
        z2m_bool_values: &#91;'OFF', 'ON'&#93;</pre>
</div>und beide Items im Cache speichern, dann ging das bisher so:<br />
<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">socket1:
    struct: zigbee2mqtt.socket_generic

    cache: init

    state:
        cache: init</pre>
</div>Mit der neuen Erweiterung geht es einfacher:<br />
<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">socket1:
    struct: zigbee2mqtt.socket_generic:
    - cache: init</pre>
</div>Die resultierenden Itembäume sind identisch.<br />
<br />
Die Syntax ist wichtig:<br />
<br />
1. Hinter dem Namen des structs muss ein Doppelpunkt stehen (weil das in yaml als dict interpretiert wird),<br />
2. Vor den Attributen muss ein Minus stehen, damit diese als Elemente des dicts erkannt werden.<br />
<br />
Es lassen sich auch umfangreichere Attribut-Pakete &quot;vererben&quot;:<br />
<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">socket1:
    struct: zigbee2mqtt.socket_generic:
    - cache: init
    - database: yes
    - visu_acl: rw
    - enforce_updates: true</pre>
</div><br />
Was auch geht, was aber das Debuggen ggf. etwas komplizier macht:<br />
<br />

<div class="bbcode_container">
	<div class="bbcode_description">Code:</div>
	
	<pre class="bbcode_code" style="max-height:calc(30 *  + 12px + 20px);">socket1:
    struct: zigbee2mqtt.socket_generic:
    - cache: init
    - subitem:
      - type: bool
      - eval: sh...() != ''
      - eval_trigger: ..</pre>
</div>In diesem Fall würde jedem Item das Attribut &quot;cache: init&quot; zugewiesen werden, und zu jedem Item im struct ein neues Item &quot;subitem&quot; vom Typ bool mit den angegebenen eval-Werten erstellt.<br />
Falls jemand dafür eine sinnvolle Anwendung findet - gut. Ansonsten ist es nur ein Nebeneffekt des Parsers.<br />
<br />
Ich hoffe, dass damit dem einen oder der anderen geholfen werden kann.<br />
<br />
 ]]></content:encoded>
			<category domain="https://knx-user-forum.de/forum/supportforen/smarthome-py">SmartHomeNG</category>
			<dc:creator>Morg</dc:creator>
			<guid isPermaLink="true">https://knx-user-forum.de/forum/supportforen/smarthome-py/2088729-core-vererbbare-attribute-in-structs</guid>
		</item>
	</channel>
</rss>
