private async Task <bool> InitaliseRooms() { Rooms.Clear(); IMobileServiceTableQuery <RoomItem> roomQuery; roomQuery = RoomTable.RoomSyncTable.Where(p => p.HomeId == SelectedHomeId); await RoomTable.Read(roomQuery); foreach (RoomItem RoomItem in RoomTable.RoomItems) { Room room = RoomConverter.CreateFrom(RoomItem); IMobileServiceTableQuery <DeviceItem> deviceQuery; deviceQuery = DeviceTable.deviceTable.Where(p => p.RoomId == room.Id); await DeviceTable.Read(deviceQuery); foreach (DeviceItem DeviceItem in DeviceTable.deviceItems) { Device device = DeviceConverter.CreateFrom(DeviceItem); try { device = await Lights.GetLightState(device); } catch (Exception e) { device.HasAccess = false; } } Rooms.Add(room); } return(true); }
public async Task <bool> GetDevices(string roomid) { Devices.Clear(); IMobileServiceTableQuery <DeviceItem> deviceQuery; deviceQuery = DeviceTable.deviceTable.Where(p => p.RoomId == roomid); await DeviceTable.Read(deviceQuery); foreach (DeviceItem DeviceItem in DeviceTable.deviceItems) { Device device = DeviceConverter.CreateFrom(DeviceItem); Devices.Add(device); } return(true); }
public static async void AddUser(string userID, string homeId) { IMobileServiceTableQuery <HomeItem> homeQuery; homeQuery = HomeTable.HomeSyncTable.Where(p => p.HomeId == homeId); await HomeTable.Read(homeQuery); foreach (HomeItem HomeItem in HomeTable.HomeItems) { HomeItem.UserId = userID; HomeItem.UserName = "******"; HomeItem.Id = null; await HomeTable.Create(HomeItem); IMobileServiceTableQuery <RoomItem> roomQuery; roomQuery = RoomTable.RoomSyncTable.Where(p => p.HomeId == homeId); await RoomTable.Read(roomQuery); foreach (RoomItem RoomItem in RoomTable.RoomItems) { RoomItem.UserId = userID; string roomId = RoomItem.Id; RoomItem.Id = null; RoomItem.HomeId = HomeTable.HomeItem.Id; await RoomTable.Create(RoomItem); IMobileServiceTableQuery <DeviceItem> deviceQuery; deviceQuery = DeviceTable.deviceTable.Where(p => p.RoomId == roomId); await DeviceTable.Read(deviceQuery); foreach (DeviceItem DeviceItem in DeviceTable.deviceItems) { DeviceItem.UserId = userID; DeviceItem.Id = null; DeviceItem.RoomId = RoomTable.RoomItem.Id; await DeviceTable.Create(DeviceItem); } } } }
private async void GetFavouriteDevices() { FavouriteDevices.Clear(); IMobileServiceTableQuery <DeviceItem> deviceQuery; deviceQuery = DeviceTable.deviceTable.Where(p => p.HomeId == SelectedHome.Id && p.Deleted == false); if (await DeviceTable.Read(deviceQuery)) { foreach (DeviceItem DeviceItem in DeviceTable.deviceItems) { Device device = DeviceConverter.CreateFrom(DeviceItem); try { device = await Lights.GetLightState(device); } catch (Exception e) { device.HasAccess = false; } FavouriteDevices.Add(device); } } }