Skip to content

Blockly

6.6k Topics 79.8k Posts

Hilfe für Skripterstellung mit Blockly

NEWS

  • influx werte (16) - min max finden und diff berechnen?

    4
    0 Votes
    4 Posts
    149 Views
    HumidorH
    @paul53 habs nachgebaut, fkt. natürlich einwandfrei, besten Dank das wird mein fall back, sollte ich es in grafana nicht schaffen. Danke!
  • PV Überschuss zum betreiben von 1 Heizstab

    144
    -1 Votes
    144 Posts
    25k Views
    D
    @andreas-9 Hi, das Plus wie hier dargestellt ist mit externen Eingängen. Rechte Maustaste klicken und externe Eingänge auswählen, dann sieht das so aus... [image: 1709845635163-3778054f-8ac2-4102-bf64-6f377304ab30-image.png]
  • [gelöst:] Blöcke in Blockly auskommentieren

    14
    0 Votes
    14 Posts
    2k Views
    HomoranH
    @gonzokalle sagte in [gelöst:] Blöcke in Blockly auskommentieren: Die sind jetzt nicht bunt, weil sie deaktiviert sind? ja! Da wird nur der debug-Block mit der rechten Maustaste angeklickt und dann auf (de)aktivieren geklickt
  • JSON aus Liste erstellen

    4
    3
    0 Votes
    4 Posts
    441 Views
    W
    @haus-automatisierung Funktioniert jetzt (ohne Änderungen am Script) [image: 1709831678963-screenshot-2024-03-07-181313.png] Hab jetzt im json-DP ein [] als "Startwert" eingetragen und jetzt funktionierts Das kommt davon, wenn man mitten in der Nacht sowas zusammenbasteln will. Edit: Klappt jetzt bestens [ { "name": "Wolfi", "main_auth": true, "room1": { "id": "99", "room_auth": false, "weekday": { "wd1": true, "wd2": true, "wd3": false, "wd4": false, "wd5": true, "wd6": false, "wd7": true } }, "room2": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room3": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room4": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room5": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } } }, { "name": "Wolfi2", "main_auth": true, "room1": { "id": "99", "room_auth": false, "weekday": { "wd1": true, "wd2": true, "wd3": false, "wd4": false, "wd5": true, "wd6": false, "wd7": true } }, "room2": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room3": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room4": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room5": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } } }, { "name": "Wolfi4", "main_auth": true, "room1": { "id": "99", "room_auth": false, "weekday": { "wd1": true, "wd2": true, "wd3": false, "wd4": false, "wd5": true, "wd6": false, "wd7": true } }, "room2": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room3": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room4": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } }, "room5": { "id": 0, "room_auth": false, "weekday": { "wd1": false, "wd2": false, "wd3": false, "wd4": false, "wd5": false, "wd6": false, "wd7": false } } } ]
  • DoorBird App in Fully Kiosk starten

    8
    0 Votes
    8 Posts
    2k Views
    NegaleinN
    @merlin123 sagte in DoorBird App in Fully Kiosk starten: Ich versuch das auch, bei mir startet die Doorb Hallo Bin auch gerade dabei das umzusetzen. Lt. deinem Blockly ist der Bildschirm bei dir aus. Du schaltest ihn ein, startest Doorbird und nach 1 Minute schaltest du den Bildschirm wieder aus. Bei mir ist der Bildschirm immer an. Ich möchte nur, dass sich die Doorbird App öffnet und nach 2 Min. wieder in den Hintergrund legt. Wie muss ich das im Blockly angeben?
  • [Gelöst] NUT bzw. upsd über Blockly neu starten

    14
    0 Votes
    14 Posts
    973 Views
    Thomas BraunT
    @wildbill Ist schon länger her. Ist wohl auch nur ein Alias: echad@chet:~ $ systemctl status upsd.service ● nut-server.service - Network UPS Tools - power devices information server Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; prese> Active: active (running) since Sun 2024-02-18 23:25:29 CET; 2 weeks 2 days> Main PID: 805 (upsd) Tasks: 1 (limit: 8752) CPU: 2min 9.101s CGroup: /system.slice/nut-server.service └─805 /lib/nut/upsd -F Feb 18 23:25:30 chet nut-server[805]: Connected to UPS [ups]: usbhid-ups-ups Feb 18 23:25:30 chet nut-server[805]: Found 1 UPS defined in ups.conf Feb 18 23:25:30 chet upsd[805]: Connected to UPS [ups]: usbhid-ups-ups Feb 18 23:25:30 chet upsd[805]: Found 1 UPS defined in ups.conf Feb 18 23:25:30 chet nut-server[805]: Running as foreground process, not saving>Feb 18 23:25:30 chet nut-server[805]: upsnotify: failed to notify about state 2>Feb 18 23:25:30 chet upsd[805]: Running as foreground process, not saving a PID>Feb 18 23:25:30 chet upsd[805]: upsnotify: failed to notify about state 2: no n>Feb 18 23:25:30 chet nut-server[805]: User upsmon@127.0.0.1 logged into UPS [up>Feb 18 23:25:30 chet upsd[805]: User upsmon@127.0.0.1 logged into UPS [ups] echad@chet:~ $ systemctl status nut-server.service ● nut-server.service - Network UPS Tools - power devices information server Loaded: loaded (/usr/lib/systemd/system/nut-server.service; enabled; prese> Active: active (running) since Sun 2024-02-18 23:25:29 CET; 2 weeks 2 days> Main PID: 805 (upsd) Tasks: 1 (limit: 8752) CPU: 2min 9.105s CGroup: /system.slice/nut-server.service └─805 /lib/nut/upsd -F Feb 18 23:25:30 chet nut-server[805]: Connected to UPS [ups]: usbhid-ups-ups Feb 18 23:25:30 chet nut-server[805]: Found 1 UPS defined in ups.conf Feb 18 23:25:30 chet upsd[805]: Connected to UPS [ups]: usbhid-ups-ups Feb 18 23:25:30 chet upsd[805]: Found 1 UPS defined in ups.conf Feb 18 23:25:30 chet nut-server[805]: Running as foreground process, not saving>Feb 18 23:25:30 chet nut-server[805]: upsnotify: failed to notify about state 2>Feb 18 23:25:30 chet upsd[805]: Running as foreground process, not saving a PID>Feb 18 23:25:30 chet upsd[805]: upsnotify: failed to notify about state 2: no n>Feb 18 23:25:30 chet nut-server[805]: User upsmon@127.0.0.1 logged into UPS [up>Feb 18 23:25:30 chet upsd[805]: User upsmon@127.0.0.1 logged into UPS [ups] echad@chet:~ $
  • MQTT Bild als .jpg Datei spiechern

    1
    0 Votes
    1 Posts
    129 Views
    No one has replied
  • Datenpunkt nicht vorhanden

    4
    0 Votes
    4 Posts
    321 Views
    paul53P
    @toki1973 sagte: nur nicht im Script adapter Browser-Refresh im Skripte-Tab.
  • PV Vario Heizer 0,5 - 3,5kW Blocky Script

    33
    1
    0 Votes
    33 Posts
    3k Views
    paul53P
    @petrelke sagte: da dieStufen nach unten sofort geschaltet haben. Das Schalten muss unabhängig von der Richtung erfolgen - auch ohne zusätzliche Verzögerung.
  • Fortlaufender Zähler

    35
    1
    0 Votes
    35 Posts
    964 Views
    M
    @homoran Hab jetzt mal für den gestrigen Tag meine im ioBroker berechneten Werte mit jenen aus der SolarEdge App bzw. mit jenen aus dem SolarEdge-Webportal verglichen. Auffällig ist, das App und Webportal schon mal gar nicht die gleichen Werte anzeigen. Komisch sollte doch der gleiche Datenstand sein. Mein über iob errechneter Eigenverbrauch ist etwas zu niedrig. Wenn ich die Werte aber nachrechne komme ich auf 24,14 kWh Eigenverbrauch. Das wäre dann wieder OK. Muss ich mir anschauen wo ich da den Fehler hab. [image: 1709624051079-ed70e8bc-db3a-4389-a313-e5fe1dfd6606-image.png]
  • [gelöst] Differenz zwischen zwei Uhrzeiten (ohne Datum)

    4
    0 Votes
    4 Posts
    247 Views
    M
    Funktioniert. DANKE euch !
  • Simulation eines Tastendrucks [gelöst]

    14
    1
    0 Votes
    14 Posts
    971 Views
    Andre LiebgottA
    Es funktioniert jetzt!!!! Vielen, vielen Dank. Ich wünsche einen schönen Abend [image: 1709585088191-rolladensteuerung_blocky1.jpg]
  • kleines [HowTo] um installierte Adapter auszulesen

    8
    2
    3 Votes
    8 Posts
    784 Views
    David G.D
    @djmarc75 sagte in kleines [HowTo] um installierte Adapter auszulesen: @paul53 sagte in kleines [HowTo] um installierte Adapter auszulesen: ob das Skript die Installation und das Entfernen eines Adapters mitbekommt Die Installation und Deinstallation eines Adapters wird perfekt erkannt. Nur wenn man den Adapter nicht deinstalliert sondern nur die Instanz dann nicht, aber das ist ja auch so gewollt, damit man sieht was man da so noch rumschleppt. So habe ich es auch in Erinnerung. Vom System her ist meine Tabelle (aus meiner Signatur) ja ähnlich aufgebaut. Nur eben html anstatt json.
  • [gelöst] Objektdaten von Ordner auslesen

    10
    1
    0 Votes
    10 Posts
    868 Views
    DJMarc75D
    @paul53 perfekt !
  • If State exists

    15
    3
    0 Votes
    15 Posts
    349 Views
    paul53P
    @david-g sagte: dachte da wäre noch mehr unlogisch/nicht gut nach diesem Satz. Die Variable enthält bei vorhandenem DP eine Zahl zwischen 0 und 100. Damit wäre die -1 wieder logisch und man müsste auf >= 0 prüfen.
  • Awtrix Light Blockly temporäre Nachrichten

    6
    0 Votes
    6 Posts
    718 Views
    painkillerdeP
    @gluecksmann Also hier das neue Script [image: 1709547488879-2e4183d8-fe01-401a-8022-a3d56ed8a58a-image.png] Habe im Awtrix ne ExpertenApp angelegt und befülle die mit obigen Script. Wenn der Kalender (iCal Adapter) morgen einen Event hat (true) übernimmt er das in die Experten App bei "sichtbar". Damit wird ein- oder ausgeblendet. Dann noch Icon (hab ein zweites Script für Wertstoff) und angepasster Text. Die blauen Blöcke schreiben alle ins Awtrix Light - App - Objekt. Hoffe das hilft dir etwas.
  • (Gelöst) Hofbelicht (2x shelly1mini 3gen) mit zigbee taster

    13
    0 Votes
    13 Posts
    786 Views
    Walter.O.W
    @walter-o sagte in 2 x Hofbeleuchtung (shelly) mit zigbee taster: @paul53 sagte in 2 x Hofbeleuchtung (shelly) mit zigbee taster: @walter-o sagte: Blockly text Posten Spoiler <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="~iQx0Q}a|y}zR{LN]U*i">type</variable> <variable id="uF4nf.fyz-tn|HE{_El0">ein</variable> </variables> <block type="on" id="}?yc?LfV9qf7iF-VTdr9" x="37" y="87"> <field name="OID">Object ID</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="lyFXDOZ*39-CK665*j$5"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]U*i">type</field> <value name="VALUE"> <block type="get_attr" id="X@WYi;9RrE:4WeF~!oU!"> <value name="PATH"> <shadow type="text" id="H*COjn{DgxKCn:;-X$2T"> <field name="TEXT">type</field> </shadow> </value> <value name="OBJECT"> <block type="on_source" id="4:dglq^{-Qj6M!!)[ZxO"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="controls_if" id="6MMia/szEeSu7%2T#Z!~"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="9EtiaTfg^Tg|E,P~Jab~"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="$-wW^5*K=A:+y6^:h{xe"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]U*i">type</field> </block> </value> <value name="B"> <block type="text" id="8N%)wwitEh$=,$iRT/M("> <field name="TEXT">commandOn</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="Pp0srM6fczBddUo9x|x|"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> <value name="VALUE"> <block type="logic_boolean" id=".?N4$X3:Gbc7_|=}xAq0"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="8mhcb~FktOrFF8Xh^i|g"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="1(R/0By93-5}|5kYroHl"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]U*i">type</field> </block> </value> <value name="B"> <block type="text" id="}7Yrpq%g?d;m?g/V6D1T"> <field name="TEXT">commandOff</field> </block> </value> </block> </value> <statement name="DO1"> <block type="variables_set" id="Jutld7$/y]Lj1rT?Gp*:"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> <value name="VALUE"> <block type="logic_boolean" id="c_zo]Zu@,+UuaGV5,xy`"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="0X^qG|=i/!y@2wgj/ZgT"> <value name="IF0"> <block type="logic_compare" id="l!Jh.`-Y/$UL3t1G/3z9"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id=".b?)t:QsS|hq;k59VA1d"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> <value name="B"> <block type="get_value" id="x#t`;?;T3Vr*pZr_!!JC"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Blockly.Switch1</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="~2!4@$uBDI{h/:M,-M*;"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Blockly.Switch1</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="|)UHos+ocyoX[oU(GhCp"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="id=Zre!Zru,Xc]zE)GkP"> <value name="IF0"> <block type="logic_compare" id="1,7D~P.SX.1oj]=:02iF"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="Uy5VO#`q.uQt~*L39_,3"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> <value name="B"> <block type="get_value" id="h:HAg+hpe!4$UCU=#]Np"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Blockly.Switch2</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="[m~eT|zpZ=f02Xay:Gc*"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Blockly.Switch2</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="EUgxb?L2b_]OTS{wiKP="> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml> Danke dir, dasFunktioniert schon mal Wurde so Umgesetzt: Spoiler <xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="~iQx0Q}a|y}zR{LN]Ui">type</variable> <variable id="uF4nf.fyz-tn|HE{_El0">ein</variable> </variables> <block type="create" id="zxZD[0i1%Tngm]26W3N" disabled="true" x="838" y="37"> <field name="NAME">0_userdata.0.Haus.Garten.SwitchTreppe</field> </block> <block type="on" id="}?yc?LfV9qf7iF-VTdr9" x="37" y="87"> <field name="OID">zigbee.0.2c1165fffe517347.msg_from_zigbee</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="lyFXDOZ39-CK665j$5"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]Ui">type</field> <value name="VALUE"> <block type="get_attr" id="X@WYi;9RrE:4WeF~!oU!"> <value name="PATH"> <shadow type="text" id="HCOjn{DgxKCn:;-X$2T"> <field name="TEXT">type</field> </shadow> </value> <value name="OBJECT"> <block type="on_source" id="4:dglq^{-Qj6M!!)[ZxO"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="controls_if" id="6MMia/szEeSu7%2T#Z!~"> <mutation elseif="1"></mutation> <value name="IF0"> <block type="logic_compare" id="9EtiaTfg^Tg|E,P~Jab~"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="$-wW^5K=A:+y6^:h{xe"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]Ui">type</field> </block> </value> <value name="B"> <block type="text" id="8N%)wwitEh$=,$iRT/M("> <field name="TEXT">commandOn</field> </block> </value> </block> </value> <statement name="DO0"> <block type="variables_set" id="Pp0srM6fczBddUo9x|x|"> <field name="VAR" id="uF4nf.fyz-tn|HE{El0">ein</field> <value name="VALUE"> <block type="logic_boolean" id=".?N4$X3:Gbc7|=}xAq0"> <field name="BOOL">TRUE</field> </block> </value> </block> </statement> <value name="IF1"> <block type="logic_compare" id="8mhcb~FktOrFF8Xh^i|g"> <field name="OP">EQ</field> <value name="A"> <block type="variables_get" id="1(R/0By93-5}|5kYroHl"> <field name="VAR" id="~iQx0Q}a|y}zR{LN]Ui">type</field> </block> </value> <value name="B"> <block type="text" id="}7Yrpq%g?d;m?g/V6D1T"> <field name="TEXT">commandOff</field> </block> </value> </block> </value> <statement name="DO1"> <block type="variables_set" id="Jutld7$/y]Lj1rT?Gp:"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> <value name="VALUE"> <block type="logic_boolean" id="c_zo]Zu@,+UuaGV5,xy"> <field name="BOOL">FALSE</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="0X^qG|=i/!y@2wgj/ZgT"> <value name="IF0"> <block type="logic_compare" id="l!Jh.-Y/$UL3t1G/3z9"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id=".b?)t:QsS|hq;k59VA1d"> <field name="VAR" id="uF4nf.fyz-tn|HE{El0">ein</field> </block> </value> <value name="B"> <block type="get_value" id="x#t;?;T3Vr*pZr_!!JC"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Haus.Garten.SwitchTreppe</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="~2!4@$uBDI{h/:M,-M*;"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Haus.Garten.SwitchTreppe</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="|)UHos+ocyoX[oU(GhCp"> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> </block> </statement> <next> <block type="controls_if" id="id=Zre!Zru,Xc]zE)GkP"> <value name="IF0"> <block type="logic_compare" id="1,7D~P.SX.1oj]=:02iF"> <field name="OP">NEQ</field> <value name="A"> <block type="variables_get" id="Uy5VO#q.uQt~*L39,3"> <field name="VAR" id="uF4nf.fyz-tn|HE{El0">ein</field> </block> </value> <value name="B"> <block type="get_value" id="h:HAg+hpe!4$UCU=#]Np"> <field name="ATTR">val</field> <field name="OID">0_userdata.0.Haus.Garten.SwitchTeich</field> </block> </value> </block> </value> <statement name="DO0"> <block type="control" id="[m~eT|zpZ=f02Xay:Gc*"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.Haus.Garten.SwitchTeich</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="variables_get" id="EUgxb?L2b]OTS{wiKP="> <field name="VAR" id="uF4nf.fyz-tn|HE{_El0">ein</field> </block> </value> </block> </statement> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </xml>
  • Mein erstes Blockly | Schaltung für Zirkulationspumpe

    34
    0 Votes
    34 Posts
    4k Views
    paul53P
    @scrub sagte: nur noch unter 40 ° Da freuen sich die Legionellen und vermehren sich fleißig. @scrub sagte in Mein erstes Blockly | Schaltung für Zirkulationspumpe: das Legionellenproblem hat nichts mit der Zirkulation zu tun, oder? Aufgrund fehlender Zirkulation nimmt das Wasser in der WW-Leitung Temperaturen an, bei denen sich die Legionellen vermehren.
  • Blockly Liste suche Auftreten von..

    5
    0 Votes
    5 Posts
    472 Views
    paul53P
    @mcbeath sagte: Gibt es keine Möglichkeit nur nach einem Teil zu suchen? Der Blockly-Selektor erzeugt bereits die ID-Liste. Man muss in der jeweiligen ID eine Text-Suche machen. [image: 1709469587787-blockly_temp.jpg]
  • Variable für shelly nutzen

    5
    0 Votes
    5 Posts
    899 Views
    G
    Danke, die Funktion kanne ich noch nicht, funktioniert.

487

Online

32.8k

Users

82.8k

Topics

1.3m

Posts