Homematic Script

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

Antworten
vbherodes
Beiträge: 22
Registriert: 20.12.2010, 16:14
Hat sich bedankt: 1 Mal

Homematic Script

Beitrag von vbherodes » 15.08.2011, 22:16

Hallo,

ich versuche mich gerad an Homematic Script, an der überaus dürftigen Dokumenation durch ELV/wer auch immer und damit, dass nichts so läuft, wie man es erwartet.

Ich versuche einen Datenpunkt zu setzen (LEVEL des Jalousieaktors). Leider scheitere ich schon daran.

Ich kann immerhin anhand des Namen des Aktors schon mal das passende Objekt holen:

Code: Alles auswählen

string _lstStrRolladen = "VH-EG-WOH-J1";
string rollo;

foreach (rollo, _lstStrRolladen)
{
        var objRollo = dom.GetObject(rollo);
        WriteLine(objRollo);
}
Wie ich aber ab da letztlich zum Datenpunkt "LEVEL" komme um diesen zu setzen erschließt sich mir bisher nicht.

Sollte jemand ein Codesnippet haben, wäre das sehr hilfreich.

Gibts Ideen?

Mfg
Marc
_______________________________________________
RAsperryMatic, HomeAssistant, HMIP Wired, ein bisschen HMIP-Funk

mastermind611
Beiträge: 124
Registriert: 14.02.2011, 23:09

Re: Homematic Script

Beitrag von mastermind611 » 16.08.2011, 08:55

Hallo,

so mache ich das:

! Wenn kurzer Tastendruck nach oben
var Work = (dom.GetObject("BidCos-Wired.IEQ0055713:3.WORKING").Value());

if( Work.Value() ) { ! laeuft der Store ?
Work = (dom.GetObject("BidCos-Wired.IEQ0055713:3.STOP").State(1));
} else { ! Store steht
var Level = (dom.GetObject("BidCos-Wired.IEQ0055713:3.LEVEL").Value());
Level = Level + 0.02;
Level = (dom.GetObject("BidCos-Wired.IEQ0055713:3.LEVEL").State(Level));
}

Das ist ein kleines Script welches mit der FB verbunden ist.

VG

vbherodes
Beiträge: 22
Registriert: 20.12.2010, 16:14
Hat sich bedankt: 1 Mal

Re: Homematic Script

Beitrag von vbherodes » 16.08.2011, 20:34

Danke mastermind611,

das ist im Grunde auch ähnlich wie das Beispiel in der Doku. Dabei gefällt mir nicht, dass die Seriennummer da haben muss.
Was mir geläufiger ist, ist der Name.

Aber wie komme ich denn an einen bestimmten Channel, wenn ich ein Device-Objekt habe

Da ist ja das objRollo. In anderen Sprachen (C# z.B.) hätte ich das ungefähr so gelöst:

Code: Alles auswählen

objRollo.Channels[3]["LEVEL"].State = newLevel;
Momentan fehlt mir der Schipsel (so etwas wie ein Indexer) um z.B. den ersten Channel zu holen.

Mfg
Marc

P.S.: Ich hab den Eindruck, dass Homematic Script und ich uns erst aneinander gewöhnen müssen.
_______________________________________________
RAsperryMatic, HomeAssistant, HMIP Wired, ein bisschen HMIP-Funk

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“