![]() |
IDTech Windows SDK Guide
3.2.4.393
API reference for Visual Studio .Net
|
Public Member Functions | |
RETURN_CODE | device_controlLED (byte indexLED, byte control, string ident="") |
RETURN_CODE | config_setBaudRate (int baud, string ident="") |
RETURN_CODE | device_retrieveAIDList (ref byte[][] response, string ident="") |
RETURN_CODE | device_sendDataCommand (string cmd, bool calcLRC, ref byte[] response, string ident="") |
RETURN_CODE | device_sendDataCommand_ext (string cmd, bool calcLRC, ref byte[] response, int timeout, bool noResponse, string ident="") |
RETURN_CODE | config_getSerialNumber (ref string response, string ident="") |
RETURN_CODE | device_setBurstMode (byte mode, string ident="") |
RETURN_CODE | device_setMerchantRecord (int index, bool enabled, string merchantID, string merchantURL, string ident="") |
RETURN_CODE | device_setPollMode (byte mode, string ident="") |
RETURN_CODE | device_startRKI (string ident="") |
RETURN_CODE | device_getFirmwareVersion (ref string response, string ident="") |
RETURN_CODE | device_getMerchantRecord (int index, ref byte[] record, string ident="") |
RETURN_CODE | device_getTransactionResults (ref IDTTransactionData results, string ident="") |
RETURN_CODE | device_pingDevice (string ident="") |
RETURN_CODE | device_controlUserInterface (byte[] values, string ident="") |
RETURN_CODE | device_sendVivoCommandP2 (byte command, byte subCommand, byte[] data, ref byte[] response, string ident="") |
RETURN_CODE | device_sendVivoCommandP2_ext (byte command, byte subCommand, byte[] data, ref byte[] response, int timeout, bool noResponse, string ident="") |
RETURN_CODE | ctls_retrieveAIDList (ref byte[][] response, string ident="") |
RETURN_CODE | ctls_getAllConfigurationGroups (ref byte[][] response, string ident="") |
RETURN_CODE | ctls_retrieveApplicationData (byte[] AID, ref byte[] tlv, string ident="") |
RETURN_CODE | ctls_removeApplicationData (byte[] AID, string ident="") |
RETURN_CODE | ctls_setApplicationData (byte[] tlv, string ident="") |
RETURN_CODE | ctls_setDefaultConfiguration (string ident="") |
RETURN_CODE | ctls_setConfigurationGroup (byte[] tlv, string ident="") |
RETURN_CODE | device_sendPAE (string command, ref string response, int timeout, string ident="") |
RETURN_CODE | ctls_retrieveTerminalData (ref byte[] tlv, string ident="") |
RETURN_CODE | ctls_setTerminalData (byte[] tlv, string ident="") |
RETURN_CODE | ctls_trySetTerminalData (byte[] tlv, ref byte[] rejectedTLV, ref byte[] convertedTLV, string ident="") |
RETURN_CODE | ctls_getConfigurationGroup (int group, ref byte[] tlv, string ident="") |
RETURN_CODE | ctls_removeConfigurationGroup (int group, string ident="") |
RETURN_CODE | ctls_setCAPK (byte[] key, string ident="") |
RETURN_CODE | ctls_retrieveCAPK (byte[] capk, ref byte[] key, string ident="") |
RETURN_CODE | ctls_removeCAPK (byte[] capk, string ident="") |
RETURN_CODE | ctls_removeAllCAPK (string ident="") |
RETURN_CODE | ctls_retrieveCAPKList (ref byte[] keys, string ident="") |
RETURN_CODE | ctls_startTransaction (double amount, double amtOther, int exponent, int type, int timeout, byte[] tags, bool isFastEMV=false, string ident="") |
RETURN_CODE | ctls_activateTransaction (int timeout, byte[] tags, bool isFastEMV=false, string ident="") |
RETURN_CODE | device_startTransaction (double amount, double amtOther, int exponent, int type, int timeout, byte[] tags, bool isFastEMV=false, string ident="") |
RETURN_CODE | device_activateTransaction (int timeout, byte[] tags, bool isFastEMV=false, string ident="") |
RETURN_CODE | ctls_cancelTransaction (string ident="") |
RETURN_CODE | msr_startMSRSwipe (int timeout, string ident="") |
RETURN_CODE | msr_cancelMSRSwipe (string ident="") |
RETURN_CODE | device_getRKIStatus (bool isProd, bool isMultiKey, ref string status, ref Dictionary< string, RKI_KEY_TYPE > keys, string ident="") |
RETURN_CODE | device_getAnyRKIStatus (bool isMultiKey, ref string status, ref Dictionary< string, RKI_KEY_TYPE > keys, string ident="") |
RETURN_CODE | device_updateFirmwareFromZip (byte[] zipfile, string ident="", bool isForeground=false) |
RETURN_CODE | device_sendConfigurationFromZip (byte[] zip, string filename, VC_OPERATION_TYPE type, bool matchFW, string ident="", bool isForeground=false) |
RETURN_CODE | device_sendConfiguration (string filename, VC_OPERATION_TYPE type, bool matchFW, string ident="", bool isForeground=false) |
RETURN_CODE | device_readConfigurationToMemory (string memo, Configs.InstallRules rules, List< Configs.DeviceCommand > cmds, string ident="", bool isForeground=false) |
RETURN_CODE | device_getConfigurationFromMemory (ref string json, string ident="") |
RETURN_CODE | device_RemoteKeyInjection (RKI_KEY_TYPE type, string keyName, string ident="", bool performOnForeground=false) |
Static Public Member Functions | |
static bool | useSerialPort (int port) |
static bool | useSerialPort (int port, int baud) |
static bool | useSerialPortLinux (string path) |
static bool | useSerialPortLinux (string path, int baud) |
static int | getCommandTimeout (string ident="") |
static void | setCommandTimeout (int milliseconds, string ident="") |
static void | initSC () |
static void | setCallback (CallBack my_Callback) |
static void | setCallback (IntPtr my_Callback, SynchronizationContext context) |
static String | SDK_Version () |
static RETURN_CODE | device_updateDeviceFirmware (byte[] firmwareData, string ident="") |
static void | lcd_retrieveMessage (DisplayMessages.DISPLAY_MESSAGE_LANGUAGE lang, DisplayMessages.DISPLAY_MESSAGE_IDENTIFIER id, ref string line1, ref string line2) |
Properties | |
static IDT_Vendi | SharedController [get] |
RETURN_CODE IDTechSDK.IDT_Vendi.config_getSerialNumber | ( | ref string | response, |
string | ident = "" |
||
) |
Polls device for Serial Number
response | Returns Serial Number |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.config_setBaudRate | ( | int | baud, |
string | ident = "" |
||
) |
Set Baud Rate
Sets the buad rate for RS-232 communication.
baud |
|
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_activateTransaction | ( | int | timeout, |
byte[] | tags, | ||
bool | isFastEMV = false , |
||
string | ident = "" |
||
) |
Start CTLS Transaction Request
The tags will be returned in the callback routine.
timeout | Timeout value in seconds. |
tags | The tags to be included in the request. Passed as TLV Data. Example, tag 9F02 with amount 0x000000000100 would be 0x9F0206000000000100 |
isFastEMV | If TRUE, it will populate the IDTTransactionData.fastEMV with ASCII data similar to IDTech FastEMV KB output, after performing an auto-authenticate and auto-complete with ResultCode = Could Not Contact Host |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
NOTE ON APPLEPAY VAS: To enable ApplePay VAS, first a merchant record must be defined in one of the six available index positions (1-6) using device_setMerchantRecord, then container tag FFEE06 must be sent as part of the additional tags parameter of ctls_startTransaction. Tag FFEE06 must contain tag 9F26 and 9F22, and can optionanally contain tags 9F2B and DFO1. Example FFEE06189F220201009F2604000000009F2B050100000000DF010101 9F22 = two bytes = ApplePay Terminal Applicaiton Version Number. Hard defined as 0100 for now. (required, string ident = "") 9F26 = four bytes = ApplePay Terminal Capabilities Information (required, string ident = "")
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_cancelTransaction | ( | string | ident = "" | ) |
Cancel EMV Transaction
Cancels the currently executing EMV transaction.
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_getAllConfigurationGroups | ( | ref byte | response[][], |
string | ident = "" |
||
) |
Retrieve All Configuration Groups
Returns all the Configuration Groups installed on the terminal for CTLS
response | array of CTLS groups as TLV bytes |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_getConfigurationGroup | ( | int | group, |
ref byte[] | tlv, | ||
string | ident = "" |
||
) |
Get Configuration Group
Retrieves the Configuration for the specified Group.
group | Configuration Group |
tlv | return data |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_removeAllCAPK | ( | string | ident = "" | ) |
Remove All Certificate Authority Public Key
Removes all the CAPK for CTLS
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_removeApplicationData | ( | byte[] | AID, |
string | ident = "" |
||
) |
Remove Application Data by AID
Removes the Application Data for CTLS as specified by the AID name passed as a parameter
AID | Name of ApplicationID Must be between 5 and 16 bytes |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_removeCAPK | ( | byte[] | capk, |
string | ident = "" |
||
) |
Remove Certificate Authority Public Key
Removes the CAPK as specified by the RID/Index
capk | 6 byte CAPK = 5 bytes RID + 1 byte INDEX |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_removeConfigurationGroup | ( | int | group, |
string | ident = "" |
||
) |
Remove Configuration Group
Removes the Configuration as specified by the Group. Must not by group 0
group | Configuration Group |
RETURN_CODE | Return codes listed as typedef enum in IDTCommon:RETURN_CODE. Values can be parsed with IDT_BTPay::device_getResponseCodeString:( string ident = "") |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_retrieveAIDList | ( | ref byte | response[][], |
string | ident = "" |
||
) |
Retrieve AID list
Returns all the AID names and their assigned groups installed on the terminal for CTLS.
response | array of 2-tag TLV data objects: FFE4 (group name) followed by 9F06 (AID, string ident = "") |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_retrieveApplicationData | ( | byte[] | AID, |
ref byte[] | tlv, | ||
string | ident = "" |
||
) |
Retrieve Application Data by AID
Retrieves the CTLS Application Data as specified by the AID name passed as a parameter.
AID | Name of ApplicationID. Must be between 5 and 16 bytes |
tlv | The TLV elements of the requested AID |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_retrieveCAPK | ( | byte[] | capk, |
ref byte[] | key, | ||
string | ident = "" |
||
) |
Retrieve Certificate Authority Public Key
Retrieves the CAPK for CTLS as specified by the RID/Index passed as a parameter.
capk | 6 bytes CAPK = 5 bytes RID + 1 byte Index |
key | Response returned as a CAKey format: [5 bytes RID][1 byte Index][1 byte Hash Algorithm][1 byte Encryption Algorithm][20 bytes HashValue][4 bytes Public Key Exponent][2 bytes Modulus Length][Variable bytes Modulus] Where:
|
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_retrieveCAPKList | ( | ref byte[] | keys, |
string | ident = "" |
||
) |
Retrieve the Certificate Authority Public Key list
Returns all the CAPK RID and Index installed on the terminal for CTLS.
keys | [key1][key2]...[keyn], each key 6 bytes where key = 5 bytes RID + 1 byte index |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_retrieveTerminalData | ( | ref byte[] | tlv, |
string | ident = "" |
||
) |
Retrieve Terminal Data
Retrieves the Terminal Data for CTLS. This is configuration group 0 (Tag FFEE - > FFEE0100). The terminal data can also be retrieved by ctls_getConfiguraitonGroup(0).
tlv | Response returned as a TLV |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_setApplicationData | ( | byte[] | tlv, |
string | ident = "" |
||
) |
Set Application Data by AID
Sets the Application Data for CTLS as specified by TLV data
tlv | Application data in TLV format The first tag of the TLV data must be the group number (FFE4). The second tag of the TLV data must be the AID (9F06) |
Example valid TLV, for Group #2, AID a0000000035010: "ffe401029f0607a0000000051010ffe10101ffe50110ffe30114ffe20106"
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_setCAPK | ( | byte[] | key, |
string | ident = "" |
||
) |
Set Certificate Authority Public Key
Sets the CAPK for CTLS as specified by the CAKey structure
key | CAKey format: [5 bytes RID][1 byte Index][1 byte Hash Algorithm][1 byte Encryption Algorithm][20 bytes HashValue][4 bytes Public Key Exponent][2 bytes Modulus Length][Variable bytes Modulus] Where:
|
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_setConfigurationGroup | ( | byte[] | tlv, |
string | ident = "" |
||
) |
Set Configuration Group
Sets the Configuration Group for CTLS as specified by the TLV data
tlv | Configuration Group Data in TLV format The first tag of the TLV data must be the group number (FFE4). A second tag must exist |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_setDefaultConfiguration | ( | string | ident = "" | ) |
Set Default Configuration Group
Resets the device to default CTLS configuration group settings
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_setTerminalData | ( | byte[] | tlv, |
string | ident = "" |
||
) |
Set Terminal Data
Sets the Terminal Data for CTLS as specified by the TLV. The first TLV must be Configuration Group Number (Tag FFE4). The terminal global data is group 0, so the first TLV would be FFE40100. Other groups can be defined using this method (1 or greater), and those can be retrieved with emv_getConfigurationGroup(int group), and deleted with emv_removeConfigurationGroup(int group). You cannot delete group 0.
tlv | TerminalData configuration data |
RETURN_CODE | Return codes listed as typedef enum in IDTCommon:RETURN_CODE. Values can be parsed with IDT_BTPay::device_getResponseCodeString:( string ident = "") |
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_startTransaction | ( | double | amount, |
double | amtOther, | ||
int | exponent, | ||
int | type, | ||
int | timeout, | ||
byte[] | tags, | ||
bool | isFastEMV = false , |
||
string | ident = "" |
||
) |
Start CTLS Transaction Request
The tags will be returned in the callback routine.
amount | Transaction amount value (tag value 9F02, string ident = "") |
amtOther | Other amount value, if any (tag value 9F03, string ident = "") |
type | Transaction type (tag value 9C). |
timeout | Timeout value in seconds. |
tags | Any other tags to be included in the request. Passed as TLV Data. Example, tag 9F02 with amount 0x000000000100 would be 0x9F0206000000000100 If tags 9F02 (amount),9F03 (other amount), or 9C (transaction type) are included, they will take priority over these values supplied as individual parameters to this method. |
isFastEMV | If TRUE, it will populate the IDTTransactionData.fastEMV with ASCII data similar to IDTech FastEMV KB output, after performing an auto-authenticate and auto-complete with ResultCode = Could Not Contact Host |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
NOTE ON APPLEPAY VAS: To enable ApplePay VAS, first a merchant record must be defined in one of the six available index positions (1-6) using device_setMerchantRecord, then container tag FFEE06 must be sent as part of the additional tags parameter of ctls_startTransaction. Tag FFEE06 must contain tag 9F26 and 9F22, and can optionanally contain tags 9F2B and DFO1. Example FFEE06189F220201009F2604000000009F2B050100000000DF010101 9F22 = two bytes = ApplePay Terminal Applicaiton Version Number. Hard defined as 0100 for now. (required, string ident = "") 9F26 = four bytes = ApplePay Terminal Capabilities Information (required, string ident = "")
RETURN_CODE IDTechSDK.IDT_Vendi.ctls_trySetTerminalData | ( | byte[] | tlv, |
ref byte[] | rejectedTLV, | ||
ref byte[] | convertedTLV, | ||
string | ident = "" |
||
) |
Try to Set CTLS Terminal Data
Atempts to set the CTLS Terminal Data. Use this functions to attempt to set the terminal data to the device. This function will allow the cross-device tag compatible writing of IDTech Legacy/New tag definitions
tlv | TerminalData TLV Data |
rejectedTLV | Contains the tags (if any) that were rejected by the firmware |
convertedTLV | Contains the tags (if any) that were converted and accepted by the firmware |
ident | Optional identifier |
RETURN_CODE | Return codes listed as typedef enum in IDTCommon:RETURN_CODE. Values can be parsed with IDT_BTPay::device_getResponseCodeString:() |
RETURN_CODE IDTechSDK.IDT_Vendi.device_activateTransaction | ( | int | timeout, |
byte[] | tags, | ||
bool | isFastEMV = false , |
||
string | ident = "" |
||
) |
Start CTLS Transaction Request
The tags will be returned in the callback routine.
timeout | Timeout value in seconds. |
tags | The tags to be included in the request. Passed as TLV Data. Example, tag 9F02 with amount 0x000000000100 would be 0x9F0206000000000100 |
isFastEMV | If TRUE, it will populate the IDTTransactionData.fastEMV with ASCII data similar to IDTech FastEMV KB output, after performing an auto-authenticate and auto-complete with ResultCode = Could Not Contact Host |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
NOTE ON APPLEPAY VAS: To enable ApplePay VAS, first a merchant record must be defined in one of the six available index positions (1-6) using device_setMerchantRecord, then container tag FFEE06 must be sent as part of the additional tags parameter of ctls_startTransaction. Tag FFEE06 must contain tag 9F26 and 9F22, and can optionanally contain tags 9F2B and DFO1. Example FFEE06189F220201009F2604000000009F2B050100000000DF010101 9F22 = two bytes = ApplePay Terminal Applicaiton Version Number. Hard defined as 0100 for now. (required, string ident = "") 9F26 = four bytes = ApplePay Terminal Capabilities Information (required, string ident = "")
RETURN_CODE IDTechSDK.IDT_Vendi.device_controlLED | ( | byte | indexLED, |
byte | control, | ||
string | ident = "" |
||
) |
Control LED
Controls the LED for the reader. This command will only operate in pass-through mode
indexLED | For LED
|
control | LED Status:
|
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_controlUserInterface | ( | byte[] | values, |
string | ident = "" |
||
) |
Control User Interface
Controls the User Interface: Display, Beep, LED
@param values Four bytes to control the user interface Byte[0] = LCD Message Messages 00-07 are normally controlled by the reader. - 00h: Idle Message (Welcome, string ident = "") - 01h: Present card (Please Present Card, string ident = "") - 02h: Time Out or Transaction cancel (No Card, string ident = "") - 03h: Transaction between reader and card is in the middle (Processing...) - 04h: Transaction Pass (Thank You, string ident = "") - 05h: Transaction Fail (Fail, string ident = "") - 06h: Amount (Amount $ 0.00 Tap Card, string ident = "") - 07h: Balance or Offline Available funds (Balance $ 0.00) Messages 08-0B are controlled by the terminal - 08h: Insert or Swipe card (Use Chip & PIN, string ident = "") - 09h: Try Again(Tap Again, string ident = "") - 0Ah: Tells the customer to present only one card (Present 1 card only) - 0Bh: Tells the customer to wait for authentication/authorization (Wait) - FFh: indicates the command is setting the LED/Buzzer only. Byte[1] = Beep Indicator - 00h: No beep - 01h: Single beep - 02h: Double beep - 03h: Three short beeps - 04h: Four short beeps - 05h: One long beep of 200 ms - 06h: One long beep of 400 ms - 07h: One long beep of 600 ms - 08h: One long beep of 800 ms Byte[2] = LED Number - 00h: LED 0 (Power LED) 01h: LED 1 - 02h: LED 2 - 03h: LED 3 - FFh: All LEDs Byte[3] = LED Status - 00h: LED Off - 01h: LED On
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getAnyRKIStatus | ( | bool | isMultiKey, |
ref string | status, | ||
ref Dictionary< string, RKI_KEY_TYPE > | keys, | ||
string | ident = "" |
||
) |
Get RKI Status Polls the RKI servers to validate device RKI eligiblity. Note: if device type is known in advance (production or demo device), it is more efficient to use device_getRKIStatus instead
isMultiKey | True = MultiKey, False = SingleKey |
status | RKI status returned as a string |
keys | Returns all available keys |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getConfigurationFromMemory | ( | ref string | json, |
string | ident = "" |
||
) |
Read Device Configuration From Memory Retrieves the ViVOconfig configuration data from memory after a successful device_readConfigurationToMemory
json | Returns the .json file data that can be saved to disk |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getFirmwareVersion | ( | ref string | response, |
string | ident = "" |
||
) |
Polls device for Firmware Version
response | Response returned of Firmware Version |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getMerchantRecord | ( | int | index, |
ref byte[] | record, | ||
string | ident = "" |
||
) |
Get Merchant Record Gets the merchant record for ApplePay VAS
index | Merchant Record index, valid values 1-6 |
record | Data returned containing 99 bytes: Byte 0 = Merchand Index Byte 1 = Merchant Enabled (1 = enabled, string ident = "") Byte 2 - 33 = Merchant Protocol Hash-256 value Byte 34 = Length of Merchant URL Bytes 35 - 99 = URL |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getRKIStatus | ( | bool | isProd, |
bool | isMultiKey, | ||
ref string | status, | ||
ref Dictionary< string, RKI_KEY_TYPE > | keys, | ||
string | ident = "" |
||
) |
Get RKI Status From Specified Server Polls the RKI server to validate device RKI eligiblity
isProd | TRUE = poll production RKI server, FALSE = poll demo RKI server |
isMultiKey | True = MultiKey, False = SingleKey |
status | RKI status returned as a string |
keys | Returns dictionary of available keys |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_getTransactionResults | ( | ref IDTTransactionData | results, |
string | ident = "" |
||
) |
Get Transaction Results Gets the transaction results when the reader is functioning in "Auto Poll" mode
results | The transaction results |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_pingDevice | ( | string | ident = "" | ) |
Ping Device
Pings the reader. If connected, returns success. Otherwise, returns timeout.
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_readConfigurationToMemory | ( | string | memo, |
Configs.InstallRules | rules, | ||
List< Configs.DeviceCommand > | cmds, | ||
string | ident = "" , |
||
bool | isForeground = false |
||
) |
Read Device Configuration To Memory Executes a ViVOconfig read of device settings and stores the results in memory
Once a ViVOconfig read starts, all messages will be returned to the callback as DeviceState.ViVOconfig. The ViVOconfig operation is complete when the return code from a DeviceState.ViVOconfig message is one of the following values:
RETURN_CODE_SDK_VIVOCONFIG_READ_CONFIG_FAILED = Read process FAILED.
memo | Optional: populates the memo field of the captured .json file |
rules | Optional: populates the .json file with available install rules |
cmds | Optional: populates the .json file with commands to execute |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
isForeground | If TRUE, will block program until update complete. Otherwise, FALSE performs update on background. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_RemoteKeyInjection | ( | RKI_KEY_TYPE | type, |
string | keyName, | ||
string | ident = "" , |
||
bool | performOnForeground = false |
||
) |
Remote Key Injection Performs a remote key injection for the device
type | Remote Key Injection Type |
keyName | Name of key (optional) |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
performOnForeground | TRUE = block during process (default is false) |
RETURN_CODE IDTechSDK.IDT_Vendi.device_retrieveAIDList | ( | ref byte | response[][], |
string | ident = "" |
||
) |
Retrieve AID list
Returns all the AID names and their assigned groups installed on the terminal for CTLS/CONTACT.
response | array of TLV data objects: FFE4 (group name) followed by 9F06 (AID), and DFEE4F (Interface 01 = CTLS, 02 = CONTACT, string ident = "") |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendConfiguration | ( | string | filename, |
VC_OPERATION_TYPE | type, | ||
bool | matchFW, | ||
string | ident = "" , |
||
bool | isForeground = false |
||
) |
Send Configuration Executes a ViVOconfig update or verify to a device
Once a ViVOconfig write or verify starts, all messages will be returned to the callback as DeviceState.ViVOconfig. The ViVOconfig operation is complete when the return code from a DeviceState.ViVOconfig message is one of the following values:
RETURN_CODE_SDK_VIVOCONFIG_WRITE_FAILED = Write process FAILED
filename | The .json configuration file to update the device with NOTE: You can also use this parameter to pass the path of where the .json file is located at on local storage instead |
filename | The name of the .json configuration file |
type | VC_OPERATION_TYPE |
matchFW | TRUE = Device FW must match file FW, FALSE = Don't validate device FW against file |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
isForeground | If TRUE, will block program until update complete. Otherwise, FALSE performs update on background. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendConfigurationFromZip | ( | byte[] | zip, |
string | filename, | ||
VC_OPERATION_TYPE | type, | ||
bool | matchFW, | ||
string | ident = "" , |
||
bool | isForeground = false |
||
) |
Send Configuration From Zip Executes a ViVOconfig update or verify to a device using files from a .zip archive
Once a ViVOconfig write or update starts, all messages will be returned to the callback as DeviceState.ViVOconfig. The ViVOconfig operation is complete when the return code from a DeviceState.ViVOconfig message is one of the following values:
RETURN_CODE_SDK_VIVOCONFIG_WRITE_FAILED = Write process FAILED
zip | .Zip archive containing the .json configuration file and also any associated image assets NOTE: You can also use this parameter to pass the path of where the .zip file is located at on local storage instead |
filename | The name of the .json configuration file |
type | VC_OPERATION_TYPE |
matchFW | TRUE = Device FW must match file FW, FALSE = Don't validate device FW against file |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
isForeground | If TRUE, will block program until update complete. Otherwise, FALSE performs update on background. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendDataCommand | ( | string | cmd, |
bool | calcLRC, | ||
ref byte[] | response, | ||
string | ident = "" |
||
) |
Send a data command to the device
Sends a command to the device.
cmd | String representation of command to execute |
calcLRC | If TRUE , this will wrap command with start/length/lrc/sum/end: '{STX}{Len_Low}{Len_High} data {CheckLRC} {CheckSUM} {ETX}' |
response | Response data |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendDataCommand_ext | ( | string | cmd, |
bool | calcLRC, | ||
ref byte[] | response, | ||
int | timeout, | ||
bool | noResponse, | ||
string | ident = "" |
||
) |
Send a data command to the device - extended
Sends a command to the device.
cmd | String representation of command to execute |
calcLRC | If TRUE , this will wrap command as NGA with start/length/lrc/sum/end: '{STX}{Len_Low}{Len_High} data {CheckLRC} {CheckSUM} {ETX}' |
response | Response data |
timeout | Timeout value waiting for response, in milliseconds (1000 = 1 second, string ident = "") |
noResponse | if TRUE, this will not wait for a response and immediately return SUCCESS |
calcITP | If TRUE , this will wrap command as ITP with start/end/lrc: '{STX} data {ETX}{CheckLRC}' |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendPAE | ( | string | command, |
ref string | response, | ||
int | timeout, | ||
string | ident = "" |
||
) |
Send Payment Application Engine Command
Executes a PAE command
command | ASCII command string, should start with "*PAE" |
response | command response |
timeout | timeout waiting for PAE response |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendVivoCommandP2 | ( | byte | command, |
byte | subCommand, | ||
byte[] | data, | ||
ref byte[] | response, | ||
string | ident = "" |
||
) |
Send Vivo Command Protocol 2
Sends a protocol 2 command to Vivo readers (IDG/NEO, string ident = "")
command | Command |
subCommand | Sub-Command |
data | Data. May be null |
response | Response |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_sendVivoCommandP2_ext | ( | byte | command, |
byte | subCommand, | ||
byte[] | data, | ||
ref byte[] | response, | ||
int | timeout, | ||
bool | noResponse, | ||
string | ident = "" |
||
) |
Send Vivo Command Protocol 2 Extended
Sends a protocol 2 command to Vivo readers (IDG/NEO, string ident = "")
command | Command |
subCommand | Sub-Command |
data | Data. May be null |
response | Response |
timeout | Timeout, in milliseconds (3000 = 3 seconds, string ident = "") |
noResponse | TRUE = don't wait for response, FALSE = wait for response defined by timeout |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_setBurstMode | ( | byte | mode, |
string | ident = "" |
||
) |
Send Burst Mode
Sets the burst mode forthe device.
mode | 0 = OFF, 1 = Always On, 2 = Auto Exit |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_setMerchantRecord | ( | int | index, |
bool | enabled, | ||
string | merchantID, | ||
string | merchantURL, | ||
string | ident = "" |
||
) |
Set Merchant Record Sets the merchant record for ApplePay VAS
index | Merchant Record index, valid values 1-6 |
enabled | Merchant Enabled/Valid flag |
merchantID | Merchant unique identifer registered with Apple. Example com.idtechproducts.applePay |
merchantURL | Merchant URL, when applicable |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_setPollMode | ( | byte | mode, |
string | ident = "" |
||
) |
Send Poll Mode
Sets the poll mode forthe device. Auto Poll keeps reader active, Poll On Demand only polls when requested by terminal
mode | 0 = Auto Poll, 1 = Poll On Demand |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_startRKI | ( | string | ident = "" | ) |
Start Remote Key Injection
Starts a remote key injection request with IDTech RKI servers.
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.device_startTransaction | ( | double | amount, |
double | amtOther, | ||
int | exponent, | ||
int | type, | ||
int | timeout, | ||
byte[] | tags, | ||
bool | isFastEMV = false , |
||
string | ident = "" |
||
) |
Start CTLS Transaction Request
The tags will be returned in the callback routine.
amount | Transaction amount value (tag value 9F02, string ident = "") |
amtOther | Other amount value, if any (tag value 9F03, string ident = "") |
type | Transaction type (tag value 9C). |
timeout | Timeout value in seconds. |
tags | Any other tags to be included in the request. Passed as TLV Data. Example, tag 9F02 with amount 0x000000000100 would be 0x9F0206000000000100 If tags 9F02 (amount),9F03 (other amount), or 9C (transaction type) are included, they will take priority over these values supplied as individual parameters to this method. |
isFastEMV | If TRUE, it will populate the IDTTransactionData.fastEMV with ASCII data similar to IDTech FastEMV KB output, after performing an auto-authenticate and auto-complete with ResultCode = Could Not Contact Host |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
NOTE ON APPLEPAY VAS: To enable ApplePay VAS, first a merchant record must be defined in one of the six available index positions (1-6) using device_setMerchantRecord, then container tag FFEE06 must be sent as part of the additional tags parameter of ctls_startTransaction. Tag FFEE06 must contain tag 9F26 and 9F22, and can optionanally contain tags 9F2B and DFO1. Example FFEE06189F220201009F2604000000009F2B050100000000DF010101 9F22 = two bytes = ApplePay Terminal Applicaiton Version Number. Hard defined as 0100 for now. (required, string ident = "") 9F26 = four bytes = ApplePay Terminal Capabilities Information (required, string ident = "")
|
static |
Update Firmware
Updates the firmware .
firmwareData | Signed binary data of a firmware file provided by IDTech |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
After you pass the firmwareData file, a new thread will start to execute the firmware download. You will receive status of the progress through callbacks to the IDTechSDK.Callback() delegate. The following parameters will be passed back:
Example code starting a firmware update
Example monitoring firmware update status / success
RETURN_CODE IDTechSDK.IDT_Vendi.device_updateFirmwareFromZip | ( | byte[] | zipfile, |
string | ident = "" , |
||
bool | isForeground = false |
||
) |
Update Firmware From Zip
Performs one or more device firmware updates from firmware files passed as a compressed archive with a valid configuration file (.json format)
zipfile | Zip file containing on or more firmware update files and a .json configuration file |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
isForeground | If TRUE, will block program until firmware update complete. Otherwise, FALSE performs FW update on background. |
|
static |
Get Command Timeout
Gets the default timeout (in milliseconds) waiting for a blocking command response
time | Time |
|
static |
Retrieve LCD Message
Returns the string value for a message ID returned for LCD messaging
lang | Language. |
id | Message ID |
line1 | Line 1 string value |
line2 | Line 2 string value |
RETURN_CODE IDTechSDK.IDT_Vendi.msr_cancelMSRSwipe | ( | string | ident = "" | ) |
Disable MSR Swipe Cancels MSR swipe request.
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
RETURN_CODE IDTechSDK.IDT_Vendi.msr_startMSRSwipe | ( | int | timeout, |
string | ident = "" |
||
) |
Enable MSR Swipe
Enables MSR, waiting for swipe to occur. Allows track selection. Returns IDTMSRData instance to deviceDelegate::swipeMSRData:( string ident = "")
timeout | Swipe Timeout Value |
ident | Device ID to send command to. If not specified, current SDK default device will be used. |
|
static |
SDK Version
Returns the current version of SDK
|
static |
Set Callback
Sets the class callback
|
static |
Set Callback
Sets the class callback
my_Callback | The callback function to receive the response message from device. defined as follows. public unsafe delegate void MFCCallBack(Parameters parameters, ident); |
context | The context of the UI thread |
|
static |
Set Command Timeout
Sets the default timeout (in milliseconds) waiting for a blocking command response
milliseconds | Time |
|
static |
Use Serial Port Interface
Instructs SDK to attempt to use the Serial Port for communication with IDT_Vendi using default baud rate
port | Serial Port to use. Example COM1 = 1. |
|
static |
Use Serial Port Interface with baud rate
Instructs SDK to attempt to use the Serial Port for communication with IDT_Vendi
port | Serial Port to use. Example COM1 = 1. |
baud | Baud rate to override default. Example 115200; |
|
static |
Use Serial Port Interface on Linux
Instructs SDK to attempt to use the Serial Port for communication with BTMag using default baud rate on Linux implementations
path | Path to use. Example /dev/ttyUSB* |
|
static |
Use Serial Port Interface on Linux with baud rate
Instructs SDK to attempt to use the Serial Port for communication with BTPay on Linux implementations
path | Path to use. Example /dev/ttyUSB* |
baud | Baud rate to override default. Example 115200; |
|
staticget |