Exemple #1
0
        private void DeviceFailure(object sender)
        {
            if (isBusy)
            {
                endEnrollment();
            }

            fingerDisplay = new FingerDisplay(Properties.Resources.no_device);
            Scanner.Children.Clear();
            Scanner.Children.Add(fingerDisplay);
            showMessageBase("Biometric device failed, please reconnect device and restart enrollment");
            //currentDevice = null;
            isOnline = false;
        }
Exemple #2
0
        private void UpdateDeviceList()
        {
            devices = new List <IFingerDevice>();
            foreach (var deviceCtrl in Owner.PluginManager.DeviceControls)
            {
                if (!Owner.appSet.Contains(deviceCtrl.ToString()))
                {
                    continue;
                }
                deviceCtrl.EnumerateDevices();
                devices.AddRange(deviceCtrl.ActiveDevices);
            }
            foreach (var device in devices)
            {
                ProviderBox.Items.Add(device);
            }
            if (devices.Count == 0)
            {
                Info.Content     = "Biometric devices not detected";
                Info.FontSize    = 22;
                Info.FontWeight  = FontWeights.Bold;
                Info.Foreground  = Brushes.Red;
                Info2.Visibility = System.Windows.Visibility.Visible;
                fingerDisplay    = new FingerDisplay(Properties.Resources.no_device);
                Scanner.Children.Clear();
                Scanner.Children.Add(fingerDisplay);
                ProviderBox.IsEnabled        = false;
                EnrollmentProgress.IsEnabled = false;
                Embed.IsEnabled = false;
            }
            else
            {
                switch (_controlType)
                {
                case ControlTypeEnum.FINGERPRINT_CONTROL_TYPE:
                    baseHint = "Please, select finger to enroll or touch the scanner to verify it";    //
                    showMessageBase(baseHint);
                    break;

                case ControlTypeEnum.PALM_CONTROL_TYPE:
                    baseHint = "Please, select palm to enroll or place your hand above the scanner to verify it";    //
                    showMessageBase(baseHint);
                    break;

                default:
                    break;
                }
            }
        }
Exemple #3
0
        void TestPageDeviceSelected(object sender, RoutedEventArgs e)
        {
            RadioButton radioButton = (sender as RadioButton);

            try
            {
                // If Provider has an active device
                if (radioButton.Content is IFingerDevice)
                {
                    currentTestDevice           = (sender as RadioButton);
                    currentTestDevice.IsEnabled = false;
                    IFingerDevice device = (sender as RadioButton).Content as IFingerDevice;

                    TestScannerPage.Children.Clear();
                    checkFinger = new FingerDisplay();
                    TestScannerPage.Children.Add(checkFinger);

                    //checkFinger.SetText("Please, touch the scanner");
                    Ambassador.SetCallback(DispatchMessage);
                    device.Dispatch(COMMAND.LIVECAPTURE_START);
                    imageReseter.Start();
                }
                else
                {
                    Ambassador.ClearCallback();
                    if (checkFinger != null)
                    {
                        TestScannerPage.Children.Clear();
                        checkFinger = null;
                    }
                    checkFinger = new FingerDisplay(Properties.Resources.no_device);
                    TestScannerPage.Children.Add(checkFinger);
                    checkFinger.SetText("Connect device and press refresh");
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex);
            }
        }
Exemple #4
0
        public void DeviceFailure(Object sender)
        {
            // only for our device
            foreach (var radioButton in TestDevicePanel.Children.OfType <RadioButton>().Where(rb => rb.Content == sender))
            {
                radioButton.Content = sender.ToString();

                checkFinger.SetText("");
                textClearTimerStop();
                Ambassador.ClearCallback();
                if (checkFinger != null)
                {
                    TestScannerPage.Children.Clear();
                    checkFinger = null;
                }
                checkFinger = new FingerDisplay(Properties.Resources.no_device);
                TestScannerPage.Children.Add(checkFinger);
                MessageSend(sender, "Connect device and press refresh");

                radioButton.IsEnabled = true;
            }
        }
Exemple #5
0
        private void ProviderBox_SelectionChanged(object sender,SelectionChangedEventArgs e)
        {
            if (currentCredential != null)
            {
                UpdateCredential();
            }
            currentCredential        = null;
            EnrollmentProgress.Value = 0;
            IFingerDevice device = (sender as ComboBox).SelectedItem as IFingerDevice;

            //if (currentDevice != null)
            if (isOnline)
            {
                Ambassador.ClearCallback();
                currentDevice.Dispatch(COMMAND.SINGLECAPTURE_STOP);
            }

            currentDevice = device;
            isOnline      = true;
            if (device.BSPCode == 24)
            {
                _controlType                 = ControlTypeEnum.PALM_CONTROL_TYPE;
                fingerChooser.Visibility     = Visibility.Collapsed;
                palmEnrollControl.Visibility = Visibility.Visible;
            }
            else
            {
                _controlType                 = ControlTypeEnum.FINGERPRINT_CONTROL_TYPE;
                fingerChooser.Visibility     = Visibility.Visible;
                palmEnrollControl.Visibility = Visibility.Collapsed;
            }

            Ambassador.SetCallback(DispatchMessage);
            currentDevice.Dispatch(COMMAND.SINGLECAPTURE_START);



            foreach (var iface in currentDevice.GetType().GetInterfaces())
            {
                foreach (var fingerCred in Owner.Credentials.OfType <FingerCredential>())
                {
                    if (fingerCred.device.Equals(currentDevice.ToString()))
                    {
                        currentCredential = new FingerCredential(fingerCred);
                    }
                }
            }

            if (currentCredential == null)
            {
                currentCredential            = new FingerCredential();
                currentCredential.device     = currentDevice.ToString();
                currentCredential.deviceName = currentDevice.ToString();
                //Owner.Credentials.Add(currentCredential);
            }

            fingerDisplay = new FingerDisplay();
            Scanner.Children.Clear();
            Scanner.Children.Add(fingerDisplay);
            fingerDisplay.ClearImage();
            Cancel.Visibility            = Visibility.Collapsed;
            UpdateBtn.Visibility         = Visibility.Visible;
            ProviderBox.IsEnabled        = true;
            EnrollmentProgress.IsEnabled = false;

            UpdateFingers();
//            showMessageBase("Please, select finger to enroll or touch the scanner to verify it");
            switch (_controlType)
            {
            case ControlTypeEnum.FINGERPRINT_CONTROL_TYPE:
                baseHint = "Please, select finger to enroll or touch the scanner to verify it";    //
                showMessageBase(baseHint);
                break;

            case ControlTypeEnum.PALM_CONTROL_TYPE:
                baseHint = "Please, select palm to enroll or place your hand above the scanner to verify it";    //
                showMessageBase(baseHint);
                break;

            default:
                break;
            }
        }