public void InitTerminalManager(IConnectionTokenProviderService providerService) { SCPTerminal.SetTokenProvider(new StripeConnectionTokenProvider(providerService)); if (_isInitialized == false) { try { _isInitialized = true; SCPTerminal.Shared.Delegate = new TerminalServiceTerminal(ConnectionNotifyHandler); } catch (Exception ex) { throw new Exception("Location services are required in order to initialize the Terminal.", ex); } } }
public override void DidUpdateDiscoveredReaders(SCPTerminal terminal, SCPReader[] readers) { if (readers.Any()) { var stripeReaders = new List <StripeTerminalReader>(); foreach (var reader in readers) { stripeReaders.Add(new StripeTerminalReader { IsSimulated = reader?.Simulated ?? false, SerialNumber = reader?.SerialNumber, SoftwareVersion = reader?.DeviceSoftwareVersion, BatteryLevel = reader?.BatteryLevel?.FloatValue ?? 0 }); } _discoveredReaders.AddRange(readers); _onReadersDiscoveredAction?.Invoke(stripeReaders); _discoveryCancelable = null; } }
public override void DidReportReaderSoftwareUpdateProgress(SCPTerminal terminal, float progress) { NotifyHandler(progress); }
public override void Terminal(SCPTerminal terminal, SCPReader reader) { NotifyHandler("Disconnected"); }
public override void DidRequestReaderInput(SCPTerminal terminal, SCPReaderInputOptions inputOptions) { var message = SCPTerminal.StringFromReaderInputOptions(inputOptions); NotifyHandler(message); }
public override void DidRequestReaderDisplayMessage(SCPTerminal terminal, SCPReaderDisplayMessage displayMessage) { var message = SCPTerminal.StringFromReaderDisplayMessage(displayMessage); NotifyHandler(message); }