public static int InitializeData() { Storage.IntializeDefaultScenes(); AddressBuild.InitializeVar(Platform.ReadSetting("bridgeIP"), Platform.ReadSetting("bridgeUserName"), Platform.ReadSetting("bridgeGroup")); activeTab = Platform.ReadSetting("lastActiveTab"); sceneData = JsonParser.Deserialize(Platform.ReadSetting("customSceneJSON")); latestData = JsonParser.Deserialize(Platform.ReadSetting("backupMainJSON")); groupData = JsonParser.Deserialize(Platform.ReadSetting("backupGroupJSON")); backupData = latestData; groupBackupData = groupData; SunriseEquation.SetCoordinates(); SunriseEquation.SunriseSunset(); System.Reflection.Assembly assembly = System.Reflection.Assembly.GetExecutingAssembly(); System.Diagnostics.FileVersionInfo versionInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(assembly.Location); fileVersion[0] = versionInfo.ProductMajorPart; fileVersion[1] = versionInfo.ProductMinorPart; fileVersion[2] = versionInfo.ProductBuildPart; fileVersion[3] = versionInfo.ProductPrivatePart; var result = RefreshData(); var bridgeResult = FindNewBridgeIP(); Effects.AutoEffect(); var bridgeResult2 = StoreBridgeID(); return(0); }
public static void ModeOn(string modeName) { //Turn on the lights if any of them are disabled foreach (string light in Storage.groupData.lights) { if (JsonParser.Read(Storage.latestData, new string[] { "lights", light, "state", "on" }) == false) { PutEvents.ToggleLight(light, true); } } effectMode = modeName; Platform.NotifyCheck(modeName, true); switch (effectMode) { case "test": case "ambient": effectTimer.Interval = 150; bufferData.transitiontime = Platform.ReadSetting("ambientTransition"); break; case "daylight": effectTimer.Interval = 1500; bufferData.transitiontime = 40; if (Platform.ReadSetting("daylightSetting") == 0) //Regional { chosenSunrise = SunriseEquation.JulianToTime(SunriseEquation.sunrise); chosenSunset = SunriseEquation.JulianToTime(SunriseEquation.sunset); } else if (Platform.ReadSetting("daylightSetting") == 1) //Equinox { chosenSunrise = 480; //06:00 chosenSunset = 1080; //18:00 } else if (Platform.ReadSetting("daylightSetting") == 2) //Startup { chosenSunrise = SunriseEquation.JulianToTime(SunriseEquation.startup); chosenSunset = SunriseEquation.JulianToTime(SunriseEquation.startup + 0.5); } break; } if (!effectsOn) { EffectTimerOn(); } }