private async void AppBarButtonAddPersonGroup_Click(object sender, RoutedEventArgs e) { if (null == personGroupListView.SelectedItem || ((PersonGroups)personGroupListView.SelectedItem).name.Equals("...")) { if (txtPersonGroup.Text.Trim() != "" && txtPersonGroup.Text != "...") { this.IsEnabled = false; personGroupProgressRing.IsActive = true; string response = await PersonGroupCmds.AddPersonGroups(txtPersonGroup.Text.ToLower().Replace(' ', '_'), txtPersonGroup.Text, txtPersonGroupContext.Text); personGroupProgressRing.IsActive = false; this.IsEnabled = true; } else { MessageDialog dialog = new MessageDialog("Add a name to person group", "Add Error"); await dialog.ShowAsync(); } } AppBarButtonPersonGroupRefresh_Click(null, null); }
private async void appBarTrainButton_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e) { ProgressRingSettingsPage.IsActive = true; if (null != globals.gPersonGroupSelected && globals.gPersonGroupSelected.name.Equals("...") == false) { await PersonGroupCmds.TrainPersonGroups(globals.gPersonGroupSelected.personGroupId); } else { MessageDialog dialog = new MessageDialog("Select a PersonGroup to train", "Training Error"); await dialog.ShowAsync(); } ProgressRingSettingsPage.IsActive = false; }
private async void AppBarButtonPersonGroupRefresh_Click(object sender, RoutedEventArgs e) { this.IsEnabled = false; personGroupProgressRing.IsActive = true; appbarEditPersonGroupButton.IsEnabled = false; appbarPersonGroupNextButton.IsEnabled = false; appbarDeletePersonGroupButton.IsEnabled = false; List <PersonGroups> personGroups = await PersonGroupCmds.ListPersonGroups(); personGroupListView.ItemsSource = personGroups; personGroupListView.DisplayMemberPath = "name"; globals.gPersonGroupList = personGroups; personGroupProgressRing.IsActive = false; this.IsEnabled = true; }
private async void appBarStatusButton_Click(object sender, Windows.UI.Xaml.RoutedEventArgs e) { ProgressRingSettingsPage.IsActive = true; if (null != globals.gPersonGroupSelected && globals.gPersonGroupSelected.name.Equals("...") == false) { string response = await PersonGroupCmds.StatusPersonGroups(globals.gPersonGroupSelected.personGroupId); if (!response.Equals("")) { MessageDialog dialog = new MessageDialog(response, "Training Status"); await dialog.ShowAsync(); } } else { MessageDialog dialog = new MessageDialog("Select a PersonGroup to check training status for", "Status Error"); await dialog.ShowAsync(); } ProgressRingSettingsPage.IsActive = false; }
private async void AppBarButtonDeletePerson_Click(object sender, RoutedEventArgs e) { //TODO: Delete all Person - Faces - Blobs - Thumbs if (null != personGroupListView.SelectedItem) { this.IsEnabled = false; personGroupProgressRing.IsActive = true; string response = await PersonGroupCmds.DeletePersonGroups(((PersonGroups)personGroupListView.SelectedItem).personGroupId); personGroupProgressRing.IsActive = false; this.IsEnabled = true; } else { MessageDialog dialog = new MessageDialog("Select a person group to delete!", "Delete Error"); await dialog.ShowAsync(); } AppBarButtonPersonGroupRefresh_Click(null, null); }
private async void AppBarButtonEditPersonGroup_Click(object sender, RoutedEventArgs e) { if (null != personGroupListView.SelectedItem && !((PersonGroups)personGroupListView.SelectedItem).name.Equals("...")) { this.IsEnabled = false; personGroupProgressRing.IsActive = true; string response = await PersonGroupCmds.UpdatePersonGroups(globals.gPersonGroupSelected.personGroupId, txtPersonGroup.Text, txtPersonGroupContext.Text); personGroupProgressRing.IsActive = false; this.IsEnabled = true; } else { MessageDialog dialog = new MessageDialog("Select an existing person group and change name", "Update Error"); await dialog.ShowAsync(); } AppBarButtonPersonGroupRefresh_Click(null, null); }
private async void FaceQuery(StorageFile file) { CloudBlockBlob blob = null; string blobFileName = null; if (null != file) { txtResponse.Text = ""; progressRingMainPage.IsActive = true; BitmapImage bitmapImage = new BitmapImage(); IRandomAccessStream fileStream = await file.OpenAsync(FileAccessMode.Read); bitmapImage.SetSource(fileStream); CapturedPhoto.Source = bitmapImage; CapturedPhoto.Tag = file.Path; blobFileName = System.Guid.NewGuid() + "." + file.Name.Split('.').Last <string>(); await HttpHandler.tempContainer.CreateIfNotExistsAsync(); BlobContainerPermissions permissions = new BlobContainerPermissions(); permissions.PublicAccess = BlobContainerPublicAccessType.Blob; await HttpHandler.tempContainer.SetPermissionsAsync(permissions); blob = HttpHandler.tempContainer.GetBlockBlobReference(blobFileName); await blob.DeleteIfExistsAsync(); await blob.UploadFromFileAsync(file); string uri = "https://api.projectoxford.ai/face/v1.0/detect?returnFaceId=true"; string jsonString = "{\"url\":\"" + HttpHandler.storagePath + "visitors/" + blobFileName + "\"}"; HttpContent content = new StringContent(jsonString, Encoding.UTF8, "application/json"); HttpResponseMessage response = await HttpHandler.client.PostAsync(uri, content); if (response.IsSuccessStatusCode) { string responseBody = await response.Content.ReadAsStringAsync(); if (null == globals.gPersonGroupList) { globals.gPersonGroupList = await PersonGroupCmds.ListPersonGroups(); } List <string> names = await VisitorCmds.CheckVisitorFace(responseBody, globals.gPersonGroupList); if (0 == names.Count) { txtResponse.Text = "Sorry, I don't know."; } else { txtResponse.Text = string.Join(", ", names.ToArray()); } } else { string responseBody = await response.Content.ReadAsStringAsync(); globals.ShowJsonErrorPopup(responseBody); } await blob.DeleteAsync(); progressRingMainPage.IsActive = false; } }