Hallo,
ich möchte einen Wochenplan in einem Modul erstellen.
Dieser wird aber leider nicht richtig angelegt. Es wird keine Aktion erstellt und der Aktionswert ist immer 0 (AUS) ??
hier mein Code (Code Ausschnitt):
<?php
class TestModule extends IPSModule
{
const setting_Zeitplan_AUS = 0;
const setting_Zeitplan_Nacht = 1;
const setting_Zeitplan_Absenkung = 2;
const setting_Zeitplan_Tag = 3;
const setting_Zeitplan_TagP2 = 4;
const setting_Zeitplan_100proz = 5;
const ident_WochenPlanerWert = 'ModusAusZeitplanWinter';
const ident_Zeitplan = 'Zeitplan';
// **********************************************************************************************
public function Create()
{
parent::Create();
if (@$this->GetIDForIdent(self::ident_WochenPlanerWert) == false)
{
// Setting-Variable vom Wochenplan anlegen
$zeitplanParent = $this->RegisterVariableInteger( self::ident_WochenPlanerWert, 'WertAusZeitplan', 'psHeizungZeitplan', 50); // Modus aus Zeitplan
// Wochenplan
$Zeitplan = IPS_CreateEvent(2);
IPS_SetParent($Zeitplan, $zeitplanParent);
IPS_SetPosition($Zeitplan, 20);
IPS_SetEventActive($Zeitplan,true);
// Werte für Wochenplan erstellen
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_AUS, 'Aus', 0x000000, '');
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_Nacht, 'Nacht', 0x0000FF, '');
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_Absenkung, 'Absenkung', 0x00FFFF, '');
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_Tag, 'Tag', 0x00FF00, '');
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_TagP2, 'Tag+2', 0xFFC800, '');
IPS_SetEventScheduleAction($Zeitplan, self::setting_Zeitplan_100proz, '100%', 0xFF0000, '');
// Gruppen erstellen (1x pro Wochentag)
IPS_SetEventScheduleGroup ($Zeitplan, 0,1);
IPS_SetEventScheduleGroup ($Zeitplan, 1,2);
IPS_SetEventScheduleGroup ($Zeitplan, 2,4);
IPS_SetEventScheduleGroup ($Zeitplan, 3,8);
IPS_SetEventScheduleGroup ($Zeitplan, 4,16);
IPS_SetEventScheduleGroup ($Zeitplan, 5,32);
IPS_SetEventScheduleGroup ($Zeitplan, 6,64);
$id = 1;
// Standard Zeitplan erstellen
for ($i = 0; $i <= 3; $i++) // Mo - Do
{
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,0,0,0, self::setting_Zeitplan_Nacht);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,5,0,0, self::setting_Zeitplan_Absenkung);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,15,0,0, self::setting_Zeitplan_Tag);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,22,0,0, self::setting_Zeitplan_Nacht);
}
for ($i = 4; $i <= 4; $i++) // Fr
{
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,0,0,0, self::setting_Zeitplan_Nacht);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,5,0,0, self::setting_Zeitplan_Absenkung);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,11,0,0, self::setting_Zeitplan_Tag);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,22,0,0, self::setting_Zeitplan_Nacht);
}
for ($i = 5; $i <= 6; $i++) // Sa + So
{
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,0,0,0, self::setting_Zeitplan_Nacht);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,5,0,0, self::setting_Zeitplan_Absenkung);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,7,0,0, self::setting_Zeitplan_Tag);
IPS_SetEventScheduleGroupPoint($Zeitplan,$i, $id++ ,22,0,0, self::setting_Zeitplan_Nacht);
}
IPS_SetName($Zeitplan, 'Zeitplan Winter');
IPS_SetIdent($Zeitplan, self::ident_Zeitplan);
}
}
das Ergebnis ist wie folgt: (Screenshots der aktuellen Pro-Console)
bitte um eine Hilfe, wo hier der Fehler liegt.
vielen Dank
liebe Grüße
Wolfgang