//Document Reader Completions public void OnInitCompleted(bool success, DocumentReaderException error) { DocReaderInitEvent readerInitEvent = new DocReaderInitEvent() { IsSuccess = success }; if (success) { Console.WriteLine("Initialized sucessfully"); IList <Scenario> data = new List <Scenario>(); foreach (DocumentReaderScenario scenario in DocumentReader.Instance().AvailableScenarios) { var scenarion = new Scenario() { Name = scenario.Name, Description = scenario.Description }; data.Add(scenarion); } readerInitEvent.Scenarios = data; readerInitEvent.IsRfidAvailable = DocumentReader.Instance().IsRFIDAvailableForUse; } else { Console.WriteLine("Initialization failed:" + error); } ScenariosObtained(this, readerInitEvent); }
public void OnPrepareCompleted(bool status, DocumentReaderException error1) { if (updateDBDialog != null && updateDBDialog.IsShowing) { updateDBDialog.Dismiss(); } initReader(); }
public void OnCompleted(int action, DocumentReaderResults results, DocumentReaderException error) { if (action == DocReaderAction.Complete) { if (loadingDialog != null && loadingDialog.IsShowing) { loadingDialog.Dismiss(); } //Checking, if nfc chip reading should be performed if (!isStartRfid && doRfid && results != null && results.ChipPage != 0) { //setting the chip's access key - mrz on car access number string accessKey = null; if ((accessKey = results.GetTextFieldValueByType(EVisualFieldType.FtMrzStringsIcaoRfid)) != null && !String.IsNullOrEmpty(accessKey)) { accessKey = results.GetTextFieldValueByType(EVisualFieldType.FtMrzStringsIcaoRfid).Replace("^", "").Replace("\n", ""); DocumentReader.Instance().RfidScenario().Mrz = accessKey; DocumentReader.Instance().RfidScenario().PacePasswordType = ERFID_Password_Type.PptMrz; } else if ((accessKey = results.GetTextFieldValueByType(EVisualFieldType.FtMrzStrings)) != null && !String.IsNullOrEmpty(accessKey)) { accessKey = results.GetTextFieldValueByType(EVisualFieldType.FtMrzStrings).Replace("^", "").Replace("\n", ""); DocumentReader.Instance().RfidScenario().Mrz = accessKey; DocumentReader.Instance().RfidScenario().PacePasswordType = ERFID_Password_Type.PptMrz; } else if ((accessKey = results.GetTextFieldValueByType(EVisualFieldType.FtCardAccessNumber)) != null && !String.IsNullOrEmpty(accessKey)) { DocumentReader.Instance().RfidScenario().Password = accessKey; DocumentReader.Instance().RfidScenario().PacePasswordType = ERFID_Password_Type.PptCan; } //starting chip reading DocumentReader.Instance().StartRFIDReader(this, this); isStartRfid = true; } else { DisplayResults(results); isStartRfid = false; } } else { //something happened before all results were ready if (action == DocReaderAction.Cancel) { Toast.MakeText(this, "Scanning was cancelled", ToastLength.Long).Show(); isStartRfid = false; } else if (action == DocReaderAction.Error) { Toast.MakeText(this, "Error:" + error, ToastLength.Long).Show(); isStartRfid = false; } } }
public void OnInitCompleted(bool success, DocumentReaderException error) { if (initDialog != null && initDialog.IsShowing) { initDialog.Dismiss(); } //initialization successful if (success) { showScanner.Click += delegate { СlearResults(); //starting video processing DocumentReader.Instance().StopScanner(this); DocumentReader.Instance().ShowScanner(this, this); }; recognizeImage.Click += delegate { СlearResults(); //checking for image browsing permissions if (ContextCompat.CheckSelfPermission(this, Manifest.Permission.ReadExternalStorage) != Permission.Granted) { ActivityCompat.RequestPermissions(this, new string[] { Manifest.Permission.ReadExternalStorage }, PERMISSIONS_REQUEST_READ_EXTERNAL_STORAGE); } else { //start image browsing CreateImageBrowsingRequest(); } }; if (DocumentReader.Instance().IsRFIDAvailableForUse) { doRfid = sharedPreferences.GetBoolean(DO_RFID, false); doRfidCb.Checked = doRfid; doRfidCb.CheckedChange += delegate { doRfid = doRfidCb.Checked; sharedPreferences.Edit().PutBoolean(DO_RFID, doRfid).Apply(); }; } else { doRfidCb.Visibility = ViewStates.Gone; } //getting current processing scenario and loading available scenarios to ListView var currentScenario = DocumentReader.Instance().ProcessParams().Scenario; var scenarios = new List <String>(); foreach (DocumentReaderScenario scenario in DocumentReader.Instance().AvailableScenarios) { scenarios.Add(scenario.Name); } //setting default scenario if (String.IsNullOrEmpty(currentScenario)) { currentScenario = scenarios[0]; } DocumentReader.Instance().ProcessParams().Scenario = currentScenario; ScenarioAdapter adapter = new ScenarioAdapter(this, Android.Resource.Layout.SimpleListItem1, scenarios); adapter.SelectedPosition = adapter.GetPosition(currentScenario); scenarioLv.Adapter = adapter; scenarioLv.SetSelection(adapter.SelectedPosition); scenarioLv.ItemClick += (object sender, ItemClickEventArgs e) => { DocumentReader.Instance().ProcessParams().Scenario = scenarios[e.Position]; adapter.SelectedPosition = e.Position; adapter.NotifyDataSetChanged(); }; } //Initialization was not successful else { Toast.MakeText(initDialog.Context, "Init failed:" + error, ToastLength.Long).Show(); } }
public void OnCompleted([IntDef(Type = "Com.Regula.Documentreader.Api.Enums.DocReaderAction", Fields = new[] { "Complete", "Process", "Cancel", "Error", "Notification", "ProcessWhiteUvImages", "MorePagesAvailable" })] int action, DocumentReaderResults results, DocumentReaderException error) { DocReaderScannerEvent readerScannerEvent = null; if (action == DocReaderAction.Complete) { if (results == null) { readerScannerEvent = new DocReaderScannerEvent() { IsSuccess = false, Error = "Document Reader results is empty" }; } else { if (IsReadRfid) { ReadRfid(); } else { readerScannerEvent = GenerateDocReaderScannerEvent(results); } } } else if (action == DocReaderAction.Error) { readerScannerEvent = new DocReaderScannerEvent() { IsSuccess = false, Error = error.Message }; } else if (action == DocReaderAction.Cancel) { readerScannerEvent = new DocReaderScannerEvent() { IsSuccess = false, Error = "Cancelled by user" }; } if (readerScannerEvent != null) { ResultsObtained(this, readerScannerEvent); } }