IDTech Android SDK Guide  1.00.130
API reference for PipReader
com.idtechproducts.device.OnReceiverListener Interface Reference

Classes

enum  EMV_RESULT_CODE_Types
 

Public Member Functions

void swipeMSRData (IDTMSRData card)
 
void lcdDisplay (int mode, String[] lines, int timeout)
 
void lcdDisplay (int mode, String[] lines, int timeout, byte[] languageCode, byte messageId)
 
void emvTransactionData (IDTEMVData emvData)
 
void deviceConnected ()
 
void deviceDisconnected ()
 
void timeout (int errorCode)
 
void autoConfigCompleted (StructConfigParameters profile)
 
void autoConfigProgress (int progressValue)
 
void msgRKICompleted (String MACResult)
 
void ICCNotifyInfo (byte[] dataNotify, String strMessage)
 
void msgBatteryLow ()
 
void LoadXMLConfigFailureInfo (int index, String strMessage)
 
void msgToConnectDevice ()
 
void msgAudioVolumeAjustFailed ()
 
void dataInOutMonitor (byte[] data, boolean isIncoming)
 

Detailed Description

The interface includes the callback functions for card data, PIN data and EMV data. The android activity should implement this interface then implement callback functions.

Member Function Documentation

◆ autoConfigCompleted()

void com.idtechproducts.device.OnReceiverListener.autoConfigCompleted ( StructConfigParameters  profile)

The auto config process finished, and succeeded to get one profile to connect the device.

◆ autoConfigProgress()

void com.idtechproducts.device.OnReceiverListener.autoConfigProgress ( int  progressValue)

The auto config process percent value.

◆ dataInOutMonitor()

void com.idtechproducts.device.OnReceiverListener.dataInOutMonitor ( byte []  data,
boolean  isIncoming 
)

The input/output data notification,

Parameters
datathe input/output data.
isIncomingtrue if is incoming data, false if it is out going data.

◆ deviceConnected()

void com.idtechproducts.device.OnReceiverListener.deviceConnected ( )

Fires when device connects.

◆ deviceDisconnected()

void com.idtechproducts.device.OnReceiverListener.deviceDisconnected ( )

Fires when device disconnects.

◆ emvTransactionData()

void com.idtechproducts.device.OnReceiverListener.emvTransactionData ( IDTEMVData  emvData)

EMV Transaction Data

This protocol will receive results from IDT_Device::startEMVTransaction:otherAmount:timeout:cashback:additionalTags:()

Parameters
emvDataEMV Results Data. Result code, card type, encryption type, masked tags, encrypted tags, unencrypted tags and KSN

◆ ICCNotifyInfo()

void com.idtechproducts.device.OnReceiverListener.ICCNotifyInfo ( byte []  dataNotify,
String  strMessage 
)

The ICC Card seated status notification,

Parameters
dataNotifythe response data.
strMessage,theICC notification message information.

◆ lcdDisplay() [1/2]

void com.idtechproducts.device.OnReceiverListener.lcdDisplay ( int  mode,
String []  lines,
int  timeout 
)

LCD Display Request During an EMV transaction, this delegate will receive data to clear virtual LCD display, display messages, display menu, or display language. Applies to UniPay III

Parameters
modeLCD Display Mode:
  • 0x01: Menu Display. A selection must be made to resume the transaction
  • 0x02: Normal Display get function key. A function must be selected to resume the transaction
  • 0x03: Display without input. Message is displayed without pausing the transaction
  • 0x04: List of languages are presented for selection. A selection must be made to resume the transaction
  • 0x10: Clear Screen. Command to clear the LCD screen
linesLine(s) of data to display
timeoutTimeout value when displaying dialog box

◆ lcdDisplay() [2/2]

void com.idtechproducts.device.OnReceiverListener.lcdDisplay ( int  mode,
String []  lines,
int  timeout,
byte []  languageCode,
byte  messageId 
)

LCD Display Request During an EMV transaction, this delegate will receive data to clear virtual LCD display, display messages, display menu, or display language. Applies to UniPay III

Parameters
modeLCD Display Mode:
  • 0x01: Menu Display. A selection must be made to resume the transaction
  • 0x02: Normal Display get function key. A function must be selected to resume the transaction
  • 0x03: Display without input. Message is displayed without pausing the transaction
  • 0x04: List of languages are presented for selection. A selection must be made to resume the transaction
  • 0x10: Clear Screen. Command to clear the LCD screen
linesLine(s) of data to display
timeoutTimeout value when displaying dialog box
languageCode2 bytes language code ("EN", "ES", "FR", or "ZH") of the LCD message.
messageId1 byte id (from 1 to 34) for a LCD message string.

◆ LoadXMLConfigFailureInfo()

void com.idtechproducts.device.OnReceiverListener.LoadXMLConfigFailureInfo ( int  index,
String  strMessage 
)

Get the user grant to continue process ,

Parameters
index
1: "This phone model is not supported by the current SDK. Please contact supporter for assistance."; 2: "Wrong XML file name, please set the filename or enable the auto update."; 3: "The XML file does not exist and the auto update disabled."; 4: "Can't download the XML file. Please make sure the network is accessible.";
strMessage,themessage information when loading the XML file.

◆ msgAudioVolumeAjustFailed()

void com.idtechproducts.device.OnReceiverListener.msgAudioVolumeAjustFailed ( )

The message notify the application failed to adjust the audio volume.

Parameters
strMessage,themessage of description about the failure info when to adjust the audio volume.

◆ msgBatteryLow()

void com.idtechproducts.device.OnReceiverListener.msgBatteryLow ( )

Battery low status notification,

◆ msgRKICompleted()

void com.idtechproducts.device.OnReceiverListener.msgRKICompleted ( String  MACResult)

RKI succeeded; MAC result as return value.

◆ msgToConnectDevice()

void com.idtechproducts.device.OnReceiverListener.msgToConnectDevice ( )

The message notify the application to connect the device.

◆ swipeMSRData()

void com.idtechproducts.device.OnReceiverListener.swipeMSRData ( IDTMSRData  card)

Call back function,this function will be called automatically if Card decode has been completed after swiping card.

Parameters
cardthe MSR data.
Card data.It is encrypted data and format is following:
  1. Data Length low byte - 1 byte;<br/r>
  2. Data length high byte - 1 byte;<br/r>
  1. Card Encode Type - 1 byte.0x00/0x80-ISO/ABA format,0x01/0x81-AAMVA format,0x03/0x83-Other and 0x04/0x84-undecoded format.
  2. Track1~3 Status - 1 byte.Bit0,1,2:Track1~3 decode and Bit3,4,5:Track1~3 sampling.
  3. Track1 data length - 1 byte.This length is the plain card data's length.
  4. Track2 data length - 1 byte.
  5. Track3 data length - 1 byte.
  6. Clear/mask data sent status - 1 byte.
    Bit0:1–Track1 clear/mask status present,0–not present.
    Bit1:1–Track2 clear/mask status present,0–not present.
    Bit2:1–Track1 clear/mask status present,0–not present.
    Bit3~Bit7:Reserved.Set to 0.
    9.Encrypted/Hash data sent status - 1 byte.
    Bit0:1–Track1 encrypted data present.
    Bit1:1–Track2 encrypted data present.
    Bit2:1–Track3 encrypted data present.
    Bit3:1–Track1 hash data present.
    Bit4:1–Track2 hash data present.
    Bit5:1–Track3 hash data present.
    Bit0:0.
    Bit7:1–KSN present.
  7. Track1 clear/mask data – Var bytes.
  8. Track2 clear/mask data – Var bytes.
  9. Track3 clear/mask data – Var bytes.
  10. Track1 encrypted data – Var bytes.
  11. Track2 encrypted data – Var bytes.
  12. Track3 encrypted data – Var bytes.
  13. Track1 hash data – 20 bytes if exist.
  14. Track2 hash data – 20 bytes if exist.
  15. Track3 hash data – 20 bytes if exist.
  16. KSN – 10 bytes.

◆ timeout()

void com.idtechproducts.device.OnReceiverListener.timeout ( int  errorCode)

Notify the plug status of phone jack. Timeout when wait for the response.
This happens in the process of get PINpad, swipe MSR, EMV Level 2 transaction


The documentation for this interface was generated from the following file: