private void FPE_ReceivedSigCapDataEvent(object signatureData) { string signature = string.Empty; HydraSignatureEnhanced sig = new HydraSignatureEnhanced((byte[])signatureData); signature = Convert.ToBase64String(sig.ToByteArray()); SignatureEventArgs args = new SignatureEventArgs() { SignatureData = signature }; this.SignatureEvent(this, args); }
private void FPE_ReceivedVariableValue(string strVariableName, string strVariableValue) { // NOTE: Can not read or set variables in this event handler. Device API does not support switch (strVariableName) { case "cnum": // This is for Credit Card Number - as we don't need value disregard result. break; case "Track1Data": this.track1 = strVariableValue; break; case "Track2Data": // Get previous event data sent and then clear them out var swipeArgs = new CardSwipeEventArgs { Track1 = this.track1, Track2 = strVariableValue, Track3 = string.Empty }; this.CardSwipeEvent(this, swipeArgs); break; case "RetailCardType": var typeArgs = new ButtonPressEventArgs(); typeArgs.ButtonName = strVariableValue; typeArgs.IsCanceled = false; this.ButtonPressEvent(this, typeArgs); break; case "CashBackAmt": case "AmountOk": var cashBackArgs = new ButtonPressEventArgs(); cashBackArgs.ButtonName = strVariableValue; cashBackArgs.IsCanceled = false; this.ButtonPressEvent(this, cashBackArgs); break; case "AdditionalSecurityInformation": this.additionalSecInfo = strVariableValue; break; case "EncryptedPIN": PinDataEventArgs pinArg = new PinDataEventArgs(); pinArg.IsCanceled = false; pinArg.EncryptedPin = strVariableValue; pinArg.AdditionalSecurity = this.additionalSecInfo; this.PinDataEvent(this, pinArg); this.additionalSecInfo = string.Empty; break; case "PinPadEntry": // PIN entry "Cancel" or "TMO" // PIN entry "Request" is set upon form entry (but no fire event) PinDataEventArgs pinPadArg = new PinDataEventArgs(); pinPadArg.IsCanceled = true; pinPadArg.EncryptedPin = string.Empty; pinPadArg.AdditionalSecurity = string.Empty; this.PinDataEvent(this, pinPadArg); break; case "sig": string signature = string.Empty; HydraSignatureEnhanced sig = new HydraSignatureEnhanced(Convert.FromBase64String(strVariableValue)); signature = Convert.ToBase64String(sig.ToByteArray()); SignatureEventArgs sigArgs = new SignatureEventArgs() { SignatureData = signature }; this.SignatureEvent(this, sigArgs); break; default: NetTracer.Information("L5300Terminal variable {0} not set to {1}", strVariableName, strVariableValue); break; } }