public static LightSceneEntity GetConfLightingScene(int?deviceID) { LightSceneEntity lightSceneEntity = new LightSceneEntity(); var bacnetDeviceFromDB = lutronEntities.BACnetDevices .Where(x => x.device_id == deviceID && x.object_instance == (int?)LutronObjectType.Lighting_Scene) .Select(x => x).FirstOrDefault(); IList <BacnetValue> bacnetValueList; BacnetAddress bacnetAddress; bacnetAddress = new BacnetAddress(BacnetAddressTypes.IP, bacnetDeviceFromDB.network_id); bacnetAddress.RoutedSource = new BacnetAddress(BacnetAddressTypes.IP, bacnetDeviceFromDB.routed_source, (ushort)bacnetDeviceFromDB.routed_net); if (bacNetClient == null) { bacNetClient = BackNetClientInit.NewBackNetClient(); } bacNetClient.ReadPropertyRequest(bacnetAddress, new BacnetObjectId(BacnetObjectTypes.OBJECT_MULTI_STATE_VALUE, (uint)LutronObjectType.Lighting_Scene), BacnetPropertyIds.PROP_PRESENT_VALUE, out bacnetValueList); if (bacnetValueList != null && bacnetValueList.Count > 0) { lightSceneEntity.Value = Convert.ToString(bacnetValueList.FirstOrDefault().Value); } lightSceneEntity.DeviceID = (Int32)deviceID; return(lightSceneEntity); }
public static LightSceneEntity SetConfLightScene(LightSceneEntity lightSceneEntity) { var bacnetDeviceFromDB = lutronEntities.BACnetDevices .Where(x => x.device_id == lightSceneEntity.DeviceID && x.object_instance == (int?)LutronObjectType.Lighting_Scene) .Select(x => x).FirstOrDefault(); if (bacnetDeviceFromDB != null && bacnetDeviceFromDB.bacnet_device_id > 0) { BacnetAddress bacnetAddress = new BacnetAddress(BacnetAddressTypes.IP, bacnetDeviceFromDB.network_id); bacnetAddress.RoutedSource = new BacnetAddress(BacnetAddressTypes.IP, bacnetDeviceFromDB.routed_source, (ushort)bacnetDeviceFromDB.routed_net); BacnetValue newLightScene = new BacnetValue(BacnetApplicationTags.BACNET_APPLICATION_TAG_UNSIGNED_INT, Convert.ToUInt32(lightSceneEntity.Value)); BacnetValue[] writeNewLightScene = { newLightScene }; if (bacNetClient == null) { bacNetClient = BackNetClientInit.NewBackNetClient(); } bacNetClient.WritePropertyRequest(bacnetAddress, new BacnetObjectId(BacnetObjectTypes.OBJECT_MULTI_STATE_VALUE, (uint)LutronObjectType.Lighting_Scene), BacnetPropertyIds.PROP_PRESENT_VALUE, writeNewLightScene); } Thread.Sleep(1000); return(BackNetReadAction.GetConfLightingScene(lightSceneEntity.DeviceID)); }
public IHttpActionResult SetLightingLevel(LightLevelEntity lightLevel) { LightSceneEntity lightScenetemp = new LightSceneEntity(); var deviceLightLevel = BackNetWriteAction.SetConfLightLevel(lightLevel); var lightScene = BackNetReadAction.GetConfLightingScene(lightLevel.DeviceID); var deviceDetail = new DeviceDetailEnity { DeviceID = lightScene.DeviceID, LightScene = lightScene.LightScene, LightSceneValue = lightScene.Value, LightLevel = deviceLightLevel.LightLevel, //LightState = lightState.LightState }; return(Ok(deviceDetail)); }
public IHttpActionResult SetLightingScene(LightSceneEntity lightscene) { LightSceneEntity lightScenetemp = new LightSceneEntity(); lightscene.Value = EnumConstants.GetEnumValueFromDescription <LightSceneEnum>(lightscene.LightScene).ToString(); var lightScene = BackNetWriteAction.SetConfLightScene(lightscene); var lightLevel = BackNetReadAction.GetConfLightLevel(lightscene.DeviceID); var deviceDetail = new DeviceDetailEnity { DeviceID = lightScene.DeviceID, LightScene = lightScene.LightScene, LightSceneValue = lightScene.Value, LightLevel = lightLevel.LightLevel, //LightState = lightState.LightState }; return(Ok(deviceDetail)); }
public IHttpActionResult SetConfLightScene(LightSceneEntity lightSceneEntity) { var lightLevel = BackNetWriteAction.SetConfLightScene(lightSceneEntity); return(Ok(lightLevel)); }