/// <summary> /// Signs into HPCR using given authenticator using desired authentication mode /// </summary> /// <param name="authenticator"></param> /// <param name="authenticationMode"></param> public override void Launch(IAuthenticator authenticator, AuthenticationMode authenticationMode) { if (authenticationMode.Equals(AuthenticationMode.Eager)) { // Press Sign In button _controlPanel.PressByValue("Sign In"); if (_controlPanel.WaitForScreenId("login", StringMatch.Contains)) { authenticator.Authenticate(); PressHpcrWorkflowButton(_buttonTitle); } else { throw new DeviceWorkflowException("Timed out waiting for Sign In screen."); } } else // AuthenticationMode.Lazy { PressHpcrWorkflowButton(_buttonTitle); authenticator.Authenticate(); _controlPanel.WaitForScreenLabel("vw_sips_apps_state", TimeSpan.FromSeconds(30)); WaitForControl("HP Capture", TimeSpan.FromSeconds(6)); } RecordEvent(DeviceWorkflowMarker.AppShown); }
/// <summary> /// Enters the "To" email address. /// </summary> /// <param name="emailAddresses">The "To" email addresses.</param> public void EnterToAddress(IEnumerable <string> emailAddresses) { foreach (string address in emailAddresses) { string displayName = address.Split('@')[0]; string emailControlName = $"{displayName} {address}".ToLowerInvariant(); try { if (_controlPanel.GetScreenInfo().ScreenLabels.FirstOrDefault() == "Scan_Email_EmailPageGlass") { switch (AddressSource) { case "Default": { _controlPanel.Press("item1"); //To Address Pacekeeper.Pause(); _controlPanel.WaitForScreenLabel("Scan_Email_AddEmail", _waitTimeSpan); _controlPanel.SetValue("lineedit", address); Pacekeeper.Pause(); _controlPanel.Press("_done"); //Done } break; case "Email Addressbook": { _controlPanel.Press("button2"); _controlPanel.WaitForScreenLabel("Scan_Email_AddressBook", _waitTimeSpan); _controlPanel.PressByValue(displayName, StringMatch.StartsWith); //Check box Pacekeeper.Pause(); _controlPanel.Press("fb_done"); //OK } break; case "LDAP Addressbook": { _controlPanel.Press("email_menu_value_to"); //To Address _controlPanel.WaitForScreenLabel(" view_email_Addressbook_Flow_In_STE_list", TimeSpan.FromSeconds(5)); _controlPanel.Press("Addressbook_Flow_In_STE_footer.3"); //Search Address book _controlPanel.WaitForScreenLabel("view_ldap_search", _shortTimeSpan); _controlPanel.SetValue("ldap_search_enter_search_vkbd.4", displayName); Pacekeeper.Pause(); _controlPanel.WaitForScreenLabel("view_ldap_search_result", _longTimeSpan); _controlPanel.PressByValue(emailControlName); //Check box Pacekeeper.Pause(); _controlPanel.WaitForScreenLabel("view_email_Addressbook_Flow_In_STE_list", _waitTimeSpan); _controlPanel.Press("Addressbook_Flow_In_STE_footer.0"); //Done Pacekeeper.Pause(); } break; } } } catch (ElementNotFoundException ex) { throw new DeviceWorkflowException($"Display name is different from To Address {ex.Message}", ex); } } }
private void PressSignInButton() { var signInWidget = _controlPanel.WaitForWidgetByValue("Sign In", _mediumDelay); Thread.Sleep(_pause); if (signInWidget != null) { _controlPanel.PressByValue("Sign In"); } }
/// <summary> /// Adds the specified network folder path as a destination for the scanned file. /// </summary> /// <param name="path">The network folder path.</param> /// <param name="credential">The network credential parameter is being added to provide the network credentials to access folder path </param> /// /// <param name="applyCredentials"><value><c>true</c> if apply credentials on verification is checked;otherwise, <c>false</c>.</value></param> public void AddFolderPath(string path, NetworkCredential credential, bool applyCredentials)////network credential for folder access is supported for Omni device. SiriusUIv3 yet to be supported { try { if (_controlPanel.WaitForScreenLabel("Scan_NetworkFolder_FolderList", TimeSpan.FromSeconds(1))) { _controlPanel.PressByValue(path); Pacekeeper.Pause(); Pacekeeper.Sync(); } } catch (ElementNotFoundException ex) { if (_controlPanel.GetScreenInfo().ScreenLabels.FirstOrDefault() == "Scan_Status_Error") { throw new DeviceWorkflowException("Error entering folder path", ex); } else { throw; } } }
private void PressSafeComSolutionButton(string waitForm) { if (_controlPanel.WaitForScreenLabel("Home", _mediumDelay)) { //Scroll to Apps _controlPanel.ScrollToItemByValue("sfolderview_p", "Apps"); //Press App button _controlPanel.PressByValue("Apps"); _controlPanel.WaitForWidgetByValue(waitForm, _mediumDelay); _controlPanel.ScrollToItemByValue("sfolderview_p", waitForm); Thread.Sleep(_pause); //Press SafeCom _controlPanel.PressByValue(waitForm); Thread.Sleep(_pause); } else { throw new DeviceWorkflowException("Unable to navigate to Home Screen."); } }
private void PressSignInButton() { _controlPanel.PressByValue("Sign In"); }