Script soll status abfragen und darstellen

Haussteuerung mittels mediola

Moderator: Co-Administratoren

Janniman
Beiträge: 212
Registriert: 08.04.2015, 14:29
Wohnort: Seevetal
Hat sich bedankt: 2 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Janniman » 17.01.2016, 20:04

Im Prinzip ist die Installation von CuxD in vier Minuten erledigt. Die meiste Zeit davon braucht die CCU zum Restart... ! :D
Es bietet dir und deiner CCU aber soooooo viel mehr an Sicherheit, tollen Scripts, Auswahlmöglichkeiten, Zeitsteuerung, Messdatenerfassung, erweiterte Steuerung,... IRRE! Der wenige Aufwand lohnt sich sehr.

Was für Hardware bräuchtest Du noch dazu? Das wundert mich.

Jan

Bernd80
Beiträge: 110
Registriert: 13.01.2016, 18:40

Re: Script soll status abfragen und darstellen

Beitrag von Bernd80 » 17.01.2016, 20:11

Einen Cul Stick oder brauche ich diesen nur wenn ich andere Systeme schalten will.
Installiert habe ich cuxd jedoch wird es wahrscheinlich ja noch konfiguriert werden müssen und da bin ich noch auf der Suche nach einer verständlichen Anleitung

Janniman
Beiträge: 212
Registriert: 08.04.2015, 14:29
Wohnort: Seevetal
Hat sich bedankt: 2 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Janniman » 17.01.2016, 20:15

Solange du nur HM-Geräte schaltest brauchst du den nicht. Der CUL-Stick wird nur benötigt, wenn du noch z.B. MAX / FS20 / etc. zusätzlich zu HM steuern willst. Ich habe auch keinen CUL....

Jan

Benutzeravatar
BausatzFan
Beiträge: 106
Registriert: 05.10.2015, 21:36
Wohnort: Bayern

Re: Script soll status abfragen und darstellen

Beitrag von BausatzFan » 19.08.2016, 09:33

update: PROBLEM DURCH NEUSTART GELÖST :shock:
--
Hallo liebe Forengemeinde,

auch ich nutze auch das tolle Skript von Alchy, welches mir die Anzahl der brennenden Lichter in einer SV ausgibt. Seit einiger Zeit jedoch stimmt der Zähler nicht mehr. Wenn alle Lichter aus sind, enthält die SV "Anzahl Lichter" den Wert 1. Brennt ein Licht, den Wert 2, usw.

Bei jedem Programmdurchlauf wird anzahl=0 gesetzt. Irgendwas scheint hier also jedesmal irrtümlich gezählt zu werden, oder?. In meiner Installation befinden sich nur Schalter, keine Dimmer. Alle Schalter sind auch ordnungsgemäß dem Gewerk "Lichter" zugeordnet - habe ich mehrfach überprüft. Hat jemand eine Idee woran das liegen könnte, bzw. wie ich dem Problem auf den Grund gehen könnte?

Code: Alles auswählen

! Abfrage mit HssType des Items = besser, da nur Dimmer oder Switch)
object sec = dom.GetObject("Lichter");
string itemId;
integer anzahl =0 ;
foreach(itemId, sec.EnumUsedIDs()) {
var item = dom.GetObject(itemId);
if (item.IsTypeOf(OT_CHANNEL)) {
var device = dom.GetObject(item.Device());
var hssType = item.HssType();
var value = false;
var level = 0.0;
if ( hssType == "SWITCH") { value = item.DPByHssDP("STATE").Value(); }
if ( hssType == "DIMMER") { level = item.DPByHssDP("LEVEL").Value(); }
if (value || (level != 0.0)) { anzahl = anzahl +1; }
}
}
dom.GetObject("Anzahl Lichter").State(anzahl);
WriteLine("Lichter an: " # anzahl);
Ps. Da fällt mir ein, dass ich in letzter Zeit zwei Schaltaktoren über die Taschufunktion ausgetauscht habe. Damit habe ich den Fehler aber nicht in Verbindung gebracht.

Viele Grüße,
Christian
CCU3 - Firmwareversion: 3.41.11; 243 Kanaele in 84 Geraeten und 49 CUxD-Kanaele in 4 CUxD-Geraeten

Methoxy
Beiträge: 24
Registriert: 04.02.2021, 19:11
System: CCU und Access Point
Hat sich bedankt: 19 Mal
Danksagung erhalten: 1 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Methoxy » 15.09.2021, 19:42

Bei mir Funktioniert das auch nicht. Habe zuvor noch nie mit Scripts gearbeitet. Cuxd ist Installiert.
Wenn ich auf Script testen gehe und das von alchy dort einfüge passiert nachdem ich auf Auführen geklickt habe rein gar nichts. Muss ich das noch irgendwie konfigurieren oder so?

Tyfys
Beiträge: 531
Registriert: 17.04.2021, 17:12
System: CCU
Hat sich bedankt: 26 Mal
Danksagung erhalten: 121 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Tyfys » 15.09.2021, 21:00

Hallo

Hast du alle Schalt/Dimm-Aktoren einem Gewerk zugeordnet ?
Dann in dieser Zeile

Code: Alles auswählen

object sec = dom.GetObject("Lichter");
Lichter durch deinen Gewerknamen ersetzen.

Wenn du keine Systemvariable Anzahl Lichter vom Type Zahl angelegt hast, dieses nachholen
oder diese Zeile auskommentieren: (Ausrufezeichen an Zeilenanfang setzen)

Code: Alles auswählen

dom.GetObject("Anzahl Lichter").State(anzahl);
Cuxd wird nicht gebraucht.

Gruß
Harry
Gruß
Harry

Methoxy
Beiträge: 24
Registriert: 04.02.2021, 19:11
System: CCU und Access Point
Hat sich bedankt: 19 Mal
Danksagung erhalten: 1 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Methoxy » 15.09.2021, 21:50

Ja Sämtliche Aktoren sind in dem Gewerk "Licht". Ich habe das was du geschrieben hast beides ausprobiert, obwohl ich die Variable angelegt habe, jedoch passiert einfach gar nichts wenn ich auf Ausführen klicke.

Benutzeravatar
Baxxy
Beiträge: 10648
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 597 Mal
Danksagung erhalten: 2180 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Baxxy » 15.09.2021, 22:33

Methoxy hat geschrieben:
15.09.2021, 21:50
Sämtliche Aktoren
Die da wären? HM / HmIP? Typenbezeichnung?

Das hier mehrfach gezeigte Script funktioniert nur mit HM-Aktoren.

Grüße
Baxxy

Methoxy
Beiträge: 24
Registriert: 04.02.2021, 19:11
System: CCU und Access Point
Hat sich bedankt: 19 Mal
Danksagung erhalten: 1 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Methoxy » 15.09.2021, 22:43

Ah okay da liegt der Hund begraben. Ich arbeite mit HMIP. Danke für die schnelle Hilfe

Benutzeravatar
Baxxy
Beiträge: 10648
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 597 Mal
Danksagung erhalten: 2180 Mal

Re: Script soll status abfragen und darstellen

Beitrag von Baxxy » 15.09.2021, 22:58

Methoxy hat geschrieben:
15.09.2021, 22:43
Danke für die schnelle Hilfe
Na, das war eher ein Hinweis.
Hilfe kann ich nur für IP-Schaltaktoren anbieten...
dazu einfach die Zeile...

Code: Alles auswählen

if ( hssType == "SWITCH") { value = item.DPByHssDP("STATE").Value(); }
ändern in...

Code: Alles auswählen

if ( hssType == "SWITCH_VIRTUAL_RECEIVER") { value = item.DPByHssDP("STATE").Value(); }
Das "zählt" die EIN-geschalteten virtuellen Kanäle.

Willst du nur den Status-Kanal zählen nimmst du...

Code: Alles auswählen

if ( hssType == "SWITCH_TRANSMITTER") { value = item.DPByHssDP("STATE").Value(); }
Bei IP-Dimmern geht's vermutlich ähnlich, habe aber selbst keine zum testen.

Grüße
Baxxy

Antworten

Zurück zu „mediola“