Specification revision: 25, 2018-11-02.
Specification revision: 26, 2018-11-06
Specification revision: 27, 2018-11-07
Specification revision: 28, 2018-11-26
Specification revision: 26, 2018-10-26
Specification revision: 29, 2018-12-03
Specification revision: 30, 2018-11-28
Specification revision: 31, 2018-12-03
Specification revision: 32, 2018-12-10
Specification revision: 33, 2018-12-17
Specification revision: 34, 2018-12-18
Specification revision: 35, 2018-12-19
Specification revision: 36, 2019-01-11
Specification revision: 37, 2019-01-24
Specification revision: 38, 2019-01-28
Created by: Martin Vraný, Patrik Horčičák, Zdeněk Hejl, Lukáš Liebzeit, Patrik Horčičák, Martin Vraný and Martin Iliev ©2019 24U Software.
Gonector is a FileMaker plugin. It allows You to develop applications for iOS devices with FileMaker Pro Advanced. These applications are able to control various devices like printers, scales, RFID readers and POS terminals.
File name: | Gonector.fmplugin |
plugin ID String: | 24GO |
Function names prefix: | Gonector_ |
iOS version: | 11.2.6 and newer |
SN product code and versions: | GON12G, GON12U |
SNLib version: | SNLib 5.2 |
Supported Bluetooth 4.0 devices: |
qIDMiniqIDmini with Apple profile (R1170IEAPLP) produced by CAENRFID Custom MyPrinter A Custom MY3 PCL driver for Ingenico Bluetooth devices tested on Link/2500 CSOB version Ingenico Bluetooth devices connected via PCL driver tested with Link/2500 CSOB version BlueSnap Smart (RS232 to Bluetooth adapter) Infinea mPos Flat Infinea mPos Flat |
Supported RS232 via BlueSnap Smart adapter (Bluetooth 4.0) devices: |
Scales with RS232 interface configured via Gonector_Set with selectors "scaleReadCommand" and "scaleWeightPattern"
Tested on:
Traveler TA301 OHAUS scale LESAK J1-RWP scale |
Supported directly connected devices: |
Linea and Infinea product line from Infinite Peripherals
Infinite Peripherals
Infinite Peripherals
Tested on:
LINEA PRO 7 encrypted
LINEA PRO 7 encrypted
LINEA PRO 7 encrypted
Infinea mPos BP500 Infinea mPos BP500 |
Supported iOS devices for native RFID/NFC tag reading: | iPhone 7 and higher with iOS 11 and newer |
Supported NFC cards: | ISO 14443A (Mifare Classic 1k, Mifare Ultralight) ISO 15693 cards |
Product icon: |
Windows | Windows 7 and newer, FileMaker 16.0 and higher |
macOS | macOS Sierra 10.12, FileMaker 16.0 and higher |
Functions return either default testing values or "notImplemented". This has to be set with function Gonector_Set.
The plugin used for desktop integration does not require SNLib verification
Returns version string of the plugin, formatted as requested by the parameter
versionFormat | Defines the format of the returned version. |
"short" | To get just the version number, default value |
"long" | To get the plugin name followed by its version number |
"platform" | To get the platform of the code currently running on |
"autoupdate" | To get autoupdate compatible (comparable) version number |
This function is very important and it has the same output format in all 24U plugins. You should call this function every time you need to check if the plugin is properly installed to the FileMaker Pro®. Even if the plugin is not registered (or badly registered) this function should work. Calling this function in the startup script of your solution is recommended.
Returns requested version format or platform. If this function returns "?", the plugin is not properly installed or FileMaker Pro cannot load and activate it for some reason.
Gonector_Version( "long" )
This will return the plugin name and its version. For example "Gonector 1.1"
Gonector_Version( "platform" )
Returns "Mac OS X", "iOS" or "Windows" depending on the platform the plugin is currently running
Gonector_Version( "autoupdate" )
Returns "01000300" for the plugin version 1.1.3. The last two digits represent the build number. In this case it means build 00 (first build) of version 1.1.0
Provides special functionality to operate with plugin serial numbers
SerialNumber | Register given SerialNumber and return an error code. |
EmailAddress | Tries to activate with given email address and return an error code. Trial version is valid only after you confirm email |
Hash | Activate a serial number with a hash received from 24U. Used for offline activation. |
"Status" | Return the actual registration state of the plugin: Demo, Demo expired, Trial, Trial Expired, Registered or Dead. |
"Unregister" | Unregister all serial numbers related to the product and return an error code. Note: after this trial version days wont come back. |
"ActivationChallenge" | Returns generated challenge string. This string is sent to 24U. |
Use this function to register or unregister plugin or to get information about current registration state
Returns zero. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Register( "GON11I-BXMWC-VNW7W-L8AJS-3KGX3-XYG84" )
This function will register the iOS plugin with serial number GON11I-BXMWC-VNW7W-L8AJS-3KGX3-XYG84.
Gonector_Register( "unregister" )
This function will unregister every serial number related to plugin
Connect to the device specified
deviceName | To connect to native iPhone RFID/NFC Reader use "iPhone" as deviceName
To connect to Linea or Infinea product line use "LineaInfinea" as deviceName
To connect to Infinea mPos use "mPosInfinea" as deviceName deviceName for connectable bluetooth devices can be received through the function Gonector_Get( "devices" ; deviceType) |
This function will try to find device with provided deviceName and connect to it.
In case of CustomPrinter, IngenicoTerminal, Infinea mPos Flat and qIDMiniqIDmini device has to be paired via bluetooth.
To pair IngenicoTerminal with iOS device please consult the documentation received from your local provider.
Function returns 0 if connected. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Connect( "MYPrinterA_1" )
This command connects the plugin to the bluetooth device MYPrinterA_1.
Gonector_Connect( "LineaInfinea" )
This command connects the plugin to the device of Linea or Infinea type.If You have troubles connecting to the device please check the LineaInfinea troubleshooting guide
Gonector_Connect( "iPhone" )
This command connects the plugin to the iPhone.
Disconnect from the device
deviceName | Use the particular name to disconnect solely this device |
This function is used to disconnect from the device.
Function returns 0. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Disconnect( "MYPrinterA_1" )
This command disconnects the device MYPrinterA_1.
Get value specified by the selector parameter
selector | Resource selector |
option | Specifies the request. Use device name as option parameter for all device specific selectors (those not marked as General in table below) |
additionalData | Used to specify additional data |
Selector | Supported devices | Explanation |
"desktopIntegrationSetup" | General | Returns if "default" or "notImplemented" return values are set for the desktop integration |
"desktopIntegrationSetup" | General | Returns if "default" or "notImplemented" return values are set for the desktop integration. Note: not implemented on iOS |
"inlineDocumentation" | General | Returns "on" or "off" based on status of inlineDocumentation in plugin. This can help with development on desktop. |
"inlineDocumentation" | General | Returns "on" or "off" based on status of inlineDocumentation in plugin. This can help with development on desktop. Note: not implemented on iOS |
"urlScheme" | General | Returns the uniqueString of the URL Scheme. For more info see Gonector_SetScriptEvent() |
"lastError" | General | Returns error code from the last plugin call. |
"lastErrorMessage" | General | Returns error text description from the last plugin call |
"firmwareVersion" | All devices | Returns firmware release version of the connected device. Device must be connected |
"softwareVersion" | All devices | Returns software release version of the library. Device must be connected |
"devices" | All bluetooth devices | Use "customPrinter", "blueSnapAdapter", "ingenicoTerminal" or "qIDMiniqIDmini" as option parameter to specify Your request |
"connectedDevices" | All bluetooth devices | Returns all connected (via Gonector_Connect) devices separated by ¶. Use "customPrinter", "blueSnapAdapter", "ingenicoTerminal" or "qIDmini" as option parameter to specify Your request |
"randomKey" | Linea and Infinea | Returns randomly generated ready to use stripeKey for the Linea or Infinea device for the Linea or Infinea device You can use this key with Gonector_Set( "deviceStripeKey" ; stripeKey ) |
"ndefSignature" | Linea and Infinea iPhone | Get a signature of the record if present |
"nfcCardUid" | Linea and Infinea iPhone | Get the UID of the card |
"imageAlignment" | Custom printers | Returns "left", "center" or "right" |
"imageScaling" | Custom printers | Returns case "none", "scaletofit" or "scaletowidth" |
"imageWidth" | Custom printers | Returns the width (in pixels) value from the printer |
"fontType" | Custom printers | Returns "wide" or "narrow" |
"fontWidth" | Custom printers | Returns a value of 0 through 7 |
"fontHeight" | Custom printers | Returns a value of 0 through 7 |
"fontSize" | Custom printers | Returns "fontWidth¶fontHeight" |
"fontAlignment" | Custom printers | Returns "left", "center" or "right" |
"fontBold" | Custom printers | Returns "on" or "off" |
"fontItalic" | Custom printers | Returns "on" or "off" |
"fontUnderline" | Custom printers | Returns "on" or "off" |
"barcodeAlignment" | Custom printers | Returns the alignment of barcodes |
"barcode1dWidth" | Custom printers | Returns the width (in pixels) of 1D barcodes |
"barcode2dWidth" | Custom printers | Returns the width (in pixels) of 2D barcodes |
"barcodeHeight" | Custom printers | Returns the height of barcodes. This value has no effect on 2D codes |
"barcodeHri" | Custom printers | Returns "Human Readable Interpretation" position for 1D codes. Possible values are "none", "top", "bottom" or "topbottom" for both top and bottom |
"scaleReadCommand" | Scales | Returns the string to be used by function Gonector_Read |
"scaleWeightPattern" | Scales | Returns the perl-compatible regular expression used to parse data into the weight type |
"terminalTransactionTimeout" | Ingenico terminals | Returns the transaction timeout in milliseconds |
"terminalInfo" | Ingenico terminals | Returns the terminal info containing its truncated serial number (8 last digits), reference code and protocol in format serialNumber¶reference¶protocol |
"terminalTime" | Ingenico terminals | Returns time of the terminal in following format "YYYY-MM-DD hh:mm:ss TZD" |
"terminalFullSerialNumber" | Ingenico terminals | Returns a string with serial number |
"terminalComponents" | Ingenico terminals | Returns a JSON string such as this: [
[ {
"name": "",
"version": "",
"crc": "",
"type": ""
}, {
"name": "",
"version": "",
"crc": "",
"type": ""
} ]
]
Type can be: Application, Library, Driver or Parameter File |
"terminalTmsInformation" | Ingenico terminals | Returns the parameters of the TMS server on Telium side in the format: host¶port¶identifier. Terminal Management System (T.M.S.) |
"terminalBacklightTimeout" | Ingenico terminals | Returns the backlight timeout in seconds |
"terminalSuspendTimeout" | Ingenico terminals | Returns the suspend timeout in seconds |
"terminalBatteryLevel" | Ingenico terminals | Returns a value of 0-100 |
"terminalIPAddress" | Ingenico terminals | Returns the IP address of the terminal Note: This function will be implemented but not tested |
"terminalEncoding" | Ingenico terminals | Returns the encoding used by the device |
This function is used to get value specified by the selector.
Function returns required parameter. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Get( "inlineDocumentation" )
This command returns "on" or "off".
Gonector_Get( "devices" ; "customPrinter" )
This command returns all customPrinter devices divided by ";".
Gonector_Get( "fontAlignment" ; "MYPrinterA_1" )
This command returns "left" if the device MYPrinterA_1 has default alignment.
Gonector_Get( "randomKey" ; "LineaInfinea" )
This command returns string such as "16465168765168416845198645316551".
Gonector_Get( "barcodeHri" ; "MYPrinterA_1" )
This command returns "bottom" if the device MYPrinterA_1 has HRI set to default.
Set value or parameter
selector | Resource selector |
option | Specifies the request. Use device name as option parameter for all device specific selectors (those not marked as General in table below) |
newValue | This parameter is mostly used as a new value to be set, but it can be used for other things for some Selectors - please read table below |
oldValue | This parameter is used to pass an original value for some Selectors |
Selector | Supported devices | Where is this setting stored | Explanation |
"inlineDocumentation" | General | In the plugin | Allows to turn off or on inline documentation. Possible values are "on" or "off". When this is turned on a simplified syntax will be visible when you write plugin's function in FileMaker calculation area |
"inlineDocumentation" | General | In the plugin | Allows to turn off or on inline documentation. Possible values are "on" or "off". When this is turned on a simplified syntax will be visible when you write plugin's function in FileMaker calculation area. Note: not implemented on iOS |
"desktopIntegrationSetup" | General | In the plugin | Allows to choose between "default" and "notImplemented" as return values for the desktop integration |
"desktopIntegrationSetup" | General | In the plugin | Allows to choose between "default" and "notImplemented" as return values for the desktop integration. Note: not implemented on iOS |
"urlScheme" | General | In the plugin | Used to speed up Gonector_SetScriptEvent callbacks. Empty string will disable faster callbacks. For more info see Gonector_SetScriptEvent() and for required configuration please refer to following guide |
"fontType" | Custom printers | In the plugin | Sets "wide" or "narrow" for type of characters while printing. Pass this value as a newValue parameter. fontType 0 has wider characters and wider character spacing compared to fontType 1 but general shape is the sameDefault value is "wide" |
"fontHeight" | Custom printers | In the plugin | Sets 0 through 7 value for height of characters while printing. Pass this value as a newValue parameter |
"fontWidth" | Custom printers | In the plugin | Sets 0 through 7 value for width of characters while printing. Pass this value as a newValue parameter |
"fontSize" | Custom printers | In the plugin | Sets 0 through 7 value for size of characters while printing. Pass this value as a newValue parameter |
"fontAlignment" | Custom printers | In the plugin | Sets "left", "center" or "right" alignment for printing. Pass this value as a newValue parameter |
"fontBold" | Custom printers | In the plugin | Sets "on" or "off" for printing. Pass this value as a newValue parameter |
"fontItalic" | Custom printers | In the plugin | Sets "on" or "off" for printing. Pass this value as a newValue parameter |
"fontUnderline" | Custom printers | In the plugin | Sets "on" or "off" for printing. Pass this value as a newValue parameter |
"fontReset" | Custom printers | In the plugin | Resets the plugin font settings to the printer's default ("fontType" = "wide", "fontHeight" = 0, "fontWidth" = 0, "fontSize" = 0, "fontAlignment" = "left", "fontBold" = "off", "fontItalic" = "off", "fontUnderline" = "off") |
"imageAlignment" | Custom printers | In the plugin | Sets "left", "center" or "right" alignment for printing. Pass this value as a newValue parameter |
"imageScaling" | Custom printers | In the plugin | Sets case "none", "scaletofit" or "scaletowidth" for printing. Pass this value as a newValue parameter |
"imageWidth" | Custom printers | In the plugin | Sets width (in pixels) value for printing. Pass this value as a newValue parameter |
"imageReset" | Custom printers | In the plugin | Resets the plugin image settings to default ("imageAlignment" = "center", "imageScaling" = "none", "imageWidth" = 100) |
"barcodeAlignment" | Custom printers | In the plugin | Sets "left", "center" or "right" alignment for barcode printing. Pass this value as a newValue parameter |
"barcode1dWidth" | Custom printers | In the plugin | Sets the width (in pixels) of the thinest line for a 1D barcode. Whole numbers only (recommended 2 or 3) |
"barcode2dWidth" | Custom printers | In the plugin | Sets the width (in pixels) for a 2D barcode. Width (in pixels) of the whole code (recommended min. 100, for PDF417 barcode type at least 300) |
"barcodeHeight" | Custom printers | In the plugin | Sets height for 1D barcode. This selector is not supported for 2D codes because those have constant aspect ratio |
"barcodeHri" | Custom printers | In the plugin | Sets a "Human Readable Interpretation" position for 1D codes. Possible values are "none", "top", "bottom" or "topbottom" for both top and bottom |
"barcodeReset" | Custom printers | In the plugin | Resets the plugin barcode settings to default ("barcodeAlignment" = "center", "barcode1dWidth" = 3 (px), "barcode2dWidth" = 100 (px), "barcodeHeight" = 100 (px), "barcodeHri" = "bottom") |
"scaleReadCommand" | Scales | In the plugin | String to send to the scale to request sending current weight data (Gonector_Read). This string will be sent to the scale when you call Gonector_Read( deviceName ) |
"scaleWeightPattern" | Scales | In the plugin | Perl-compatible regular expression to extract weight from the data received from the scale Plug-In seperates regex groups by "¶" See the Examples section below for specific examples |
"baudrate" | Scales | In the device | Sets the baudrate on the BlueSnap Smart adapter. As a part of the initial setup you should set the same baudrate for your Scale and blueSnapAdapterPlease, follow this guide to properly setup you baudrate |
"connectionStripeKey" | Linea and Infinea | In the plugin | Sets a stripe key Default key is "00000000000000000000000000000000" |
"stripeKey" | Linea and Infinea | In the plugin | Sets a stripe key for daily use Default key is "00000000000000000000000000000000" |
"deviceStripeKey" | Linea and Infinea | In the device | Sets a new stripe key Use 4 parameters including the old key Changing the default key is mandatory in compliance with PCI. New key must be stored or remembered. Lost key can't be retrieved. To reset the keys the device must be sent to the manufacturer. Use function Gonector_Get( "randomKey" ; deviceName ) to get a random key |
"newStripeKey" | Linea and Infinea | In the device | Sets a new stripe key once before the first use Use 4 parameters including the old key Changing the default key is mandatory in compliance with PCI. New key must be stored or remembered. Lost key can't be retrieved. To reset the keys the device must be sent to the manufacturer. Use function Gonector_Get( "randomKey" ; deviceName ) to get a random key |
"terminalTransactionTimeout" | Ingenico terminals | In the device | Sets the transaction timeout. Use newValue to set time in milliseconds. Note: changing the transaction timeout is not recommended |
"terminalTime" | Ingenico terminals | In the device | Sets the time in the terminal using the current iOS device time |
"terminalReset" | Ingenico terminals | In the device | Reboots the terminal |
"terminalTmsHost" | Ingenico terminals | In the device | The TMS's server IP address or hostname (hostname can't exceed 257 caracters) |
"terminalTmsPort" | Ingenico terminals | In the device | The TMS's server Port (can't exceed 65535) |
"terminalTmsIdentifier" | Ingenico terminals | In the device | The TMS's server Identifier (9 caracters max) |
"terminalDoUpdate" | Ingenico terminals | In the device | This option updates the terminal |
"terminalBacklightTimeout" | Ingenico terminals | In the device | This section does not apply to iSMP devices as standby parameters are overridden by iOS device behavior. However, if you unplug the iOS device, these parameters will be taken into account |
"terminalSuspendTimeout" | Ingenico terminals | In the device | This section does not apply to iSMP devices as standby parameters are overridden by iOS device behavior. However, if you unplug the iOS device, these parameters will be taken into account |
"terminalEncoding" | Ingenico terminals | In the plugin | This sets the encoding to be used for received data for example for "onTransactionDidEnd" event. Possible values are "utf-8" and "iso-8859-2". Default is "utf-8" |
Note: Disconnecting the device will reset all settings in plugin to default.
By this function values or parameters can be set
Function returns 0 in case of success. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Set( "inlineDocumentation" ; "on" ; "notImplemented" )
This command turns on inline documentation. inline documentation doesn't work on iOS
Gonector_Set( "deviceStripeKey" ; "LineaInfinea" ; "12345678123456781234567812345678" ; "00000000000000000000000000000000" )
This changes the stripe key in the Linea or Infinea device.
Gonector_Set( "connectionStripeKey" ; "LineaInfinea" ; "12345678123456781234567812345678" )
This sets the stripe key in the Linea or Infinea device.
Gonector_Set( "fontAlignment" ; "MYPrinterA_1" ; "center" )
This makes the device MYPrinterA_1 print the next text in the middle of the row.
Gonector_Set( "barcodeAlignment" ; "MYPrinterA_1" ; "center" )
Sets the barcode alignment to the center.
Gonector_Set( "barcode2dWidth" ; "MYPrinterA_1" ; 100 )
Sets the barcode width to 100.
Gonector_Set( "barcodeHeight" ; "MYPrinterA_1" ; 100 )
Sets the 1D barcode height to 100.
Gonector_Set( "barcodeHri" ; "MYPrinterA_1" ; "bottom" )
Sets the human readable interpretation of the barcode to the bottom.
Gonector_Set( "scaleReadCommand" ; "MIN-7943" ; "R" ) & ¶ & Gonector_Set( "scaleWeightPattern" ; "MIN-7943" ; "(ST|US),[^\s-]*([-]?[ ]*[\d\.]+)([\D]+)" )
Sets the basic configuration for the LESAK J1-RWP scale.
Gonector_Set( "scaleReadCommand" ; "MIN-7943" ; "P" ) & ¶ & Gonector_Set( "scaleWeightPattern" ; "MIN-7943" ; "[ ]*([-])?([\d\.]+)[ ]([^ ]+)[ ]?[ ]?([\?| ])?[ ]?([0-9]+\:[0-9]{2}\:[0-9]{2})?" )
Sets the basic configuration for the Traveler TA301 OHAUS scale.
Gonector_Set( "scaleReadCommand" ; "MIN-7943" ; "P" ) & ¶ & Gonector_Set( "scaleWeightPattern" ; "MIN-7943" ; "[ ]*([-]?[\d\.]+)[ ]([^ ]+)[ ]?[ ]?([\?| ])?[ ]?([0-9]+\:[0-9]{2}\:[0-9]{2})?" )
Sets the basic configuration for the Traveler TA301 OHAUS scale.
Sends a text to printSends a text to be printed, works with Custom MyPrinter and Custom MY3.
deviceName | Unique name of the device |
text | Text to print Note: Supported printers only print ASCII character set |
printMode | This parameter is used to change different print modes |
"buffer" | This printMode can be used to print various fonts in one line. The printer will store the text in a buffer. Text is added to the buffer and currently set formatting is remembered along with it. If the text in the buffer contains line ending (¶) or if the text fulfils width of the printable line, it is automatically printed and the remaining part of the text will stay in the buffer. Combining multiple text alignments on one row is not possible. Overwriting of the line alignment for text in buffer is not possible. |
"immediate" | This printMode will automatically add line ending at the end of provided text which means that buffer (first) and the text (second) will be printed immediately. If buffer and text is empty printer will print empty line. This is default printMode. |
This function uses a printer to print text. Various font settings can be changed using Gonector_Set function
Function returns 0 in case of success. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_PrintText( "MYPrinterA_1" ; "Hello!!!" )
This prints "Hello!!!" on the device MYPrinterA_1.
Gonector_PrintText( "MYPrinterA_1" ; "Name: " ; "on""buffer" ) & ¶ &
Gonector_Set( "fontUnderline" ; "MYPrinterA_1" ; "on""buffer" ) & ¶ &
Gonector_PrintText( "MYPrinterA_1" ; "name@example.com" )
This prints "Name: name@example.com" on the device MYPrinterA_1.
Prints png or jpeg image from container. Sends a text to be printed, works with Custom MyPrinter and Custom MY3.
deviceName | Unique name of the device |
imageContainer | The image container in FileMaker |
Note: Custom Printer prints transparent color as black.
This function uses a printer to print an image. Various font settings can be changed using Gonector_Set function
Function returns 0 in case of success. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_PrintImage( "MYPrinterA_1" ; table::container )
This prints an image on the device MYPrinterA_1.
Prints a barcode. Sends a text to be printed, works with Custom MyPrinter and Custom MY3.
deviceName | Unique name of the device |
type | The type of code |
text | The text to be printed as a barcode. See specific barcode types below to see what type of character strings are supported. The text has to be valid for selected code type otherwise the code can be unreadable |
This function uses a printer to print a barcode. Various settings can be changed using Gonector_Set function.
The printer nor plugin are checking the validity of barcodes.
Type of 1D code | Description and limitations |
---|---|
CODABAR | Supported characters are numbers (0-9), 4 letters (A,B,C,D) and few special characters (-$:/.+). The code must be valid including starting and ending letters. The 14 digits barcode is only supported on MY3 A printer |
UPCA | 11 or 12 digits. Supplemental code is not supported. Code must be valid. In case the checkdigit is not known it is better to use only 11 digits |
UPCE | 11 or 12 digits. The UPCA code must must be capable to be compressed into the UPCE code. Supplemental code is not supported. The printer prints a short version of UPCA code by trimming the padding zero's. Part of the UPCA codes are excluded if they overcome the padded amount in more categories. If checkdigit is not known then the printer will calculate the checkdigit automatically |
EAN13 | 13 digits. Supplemental code is not supported. The code must be valid |
EAN8 | 8 digits. The code must be valid |
CODE39 | Upper case letters, numbers, some symbols, (A-Z, 0-9, space, $ % + - . /) |
ITF | Up to 14 digits. The code must be valid |
CODE93 | 43 basic symbols (0–9, A-Z, "-", ".", "$", "/", "+" and "%") |
CODE128 | All ASCII characters. Preferred set is Code B. Code C is automatically switched on from 6 following digits to compress the barcode using high density mode. Any combination of characters is allowed |
CODE32 | 8 or 9 digits. "A" will be prepended automatically. If checkdigit is not known it is better to provide 8 digits only. In case of 7 digits a leading 0 digit must be used |
Type of 2D code | Description and limitations |
---|---|
DATAMATRIX | All ASCII characters. Supports UTF-8 data stream |
PDF417 | All ASCII characters. Recommended minimum barcode2dWidth is 300 (px) |
MICROPDF417 | All ASCII characters. The code must be valid |
AZTEC | All ASCII characters. Supports UTF-8 data stream |
QRCODE | All ASCII characters. Supports UTF-8 data stream. Kanji is not supported |
MICROQRCODE | All ASCII characters. Supports UTF-8 data stream. Kanji is not supported |
Function returns 0 in case of success. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_PrintCode( "MYPrinterA_1" ; "04210000526" ; "UPCA" )
This prints UPCA barcode with HRI of "042100005264" on the device MYPrinterA_1.
Gonector_PrintCode( "MYPrinterA_1" ; "04210000526" ; "UPCE" )
This prints UPCE barcode with HRI of "425261" on the device MYPrinterA_1.
Gonector_PrintCode( "MYPrinterA_1" ; "Code 128" ; "CODE128" )
This prints CODE128 barcode with HRI of "Code 128" on the device MYPrinterA_1.
Gonector_PrintCode( "MYPrinterA_1" ; "123456789" ; "CODE128" )
This prints CODE128 barcode with HRI of "123456789" on the device MYPrinterA_1.
Gonector_PrintCode( "MYPrinterA_1" ; "Hello World" ; "QRCODE" )
This prints QR code with content of "Hello World" on the device MYPrinterA_1.
Tell the plugin to launch the script when specified event occurs
deviceName | Unique name of the device |
event | The event when the script should be triggered |
scriptName | The name of script which should be triggered. The script receives a parameter with data depending on the event |
event | Supported devices | Explanation | Script parameter |
"onTagAttach" | qIDMiniqIDmini | Run the script when a tag approaches qIDMiniqIDmini sensor. Script is not called again if this tag stays in the sensor range, but it can be called multiple times if the tag leaves and enters the sensor range again. | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "000666D0252F", "type": "qIDminiTag", "data": "123456" } ] ] |
"onTagDetach | qIDmini | Run the script when the qIDMiniqIDmini sensor loses the connection with a tag | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "000666D0252F", "type": "qIDminiTag", "data": "123456" } ] ] |
"onTagDetach | qIDmini | Run the script when the qIDMiniqIDmini sensor loses the connection with a tag | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "000666D0252F", "type": "qIDminiTag", "data": "123456" } ] ] |
"onCardRead" | Linea and Infinea | Run the script when a card approaches Linea or Infinea RFID sensor | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” or "base64Data" properties e.g. [ [ { "language": "en", "type": "ndefText", "data": "Hello", "deviceName": "LineaInfinea" }, { "language": "cs", "type": "ndefText", "data": "Vítejte", "deviceName": "LineaInfinea" } ] ] or [ [ { "deviceName": "LineaInfinea", "type": "image/jpeg", "base64Data": "SGVsbG8=" } ] ] |
"onStripeRead" | Linea and Infinea | Run the script when a card approaches Linea or Infinea magnetic card reader.To successfully read the magnetic stripe, the stripe key must be set | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "LineaInfinea", "type": "stripe", "data": "cardholderName¶cardholderFirstName¶cardholderLastName¶accountNumber¶serviceCode¶discretionaryData¶expirationMonth¶expirationYear" } ] ] |
"onBarcodeRead" | Linea and Infinea | Run the script when a barcode is just scanned | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "LineaInfinea", "type": "barcode", "barcodeType": "CODE128", "data": "Hello 1d code" } ] ] |
"onDataReceived" | BlueSnap Smart adapter | Run the script when BlueSnap Smart receives data with CRLF teminator from the RS232 connected device | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "MIN-0982", "type": "rawData", "data": "ERROR 2" } ] ] |
"onWeightReceived" | BlueSnap Smart adapter | Run the script when BlueSnap Smart receives data with CRLF teminator from the RS232 connected device
and successfully evaluates Regex provided via Gonector_Set with selector "scaleWeightPattern" This event has a priority over "onDataReceived" | JSON array containing one or more arrays that contains one or more objects, where each object has at least “deviceName”, “type”, and “data” properties e.g. [ [ { "deviceName": "MIN-0982", "type": "weight", "data": "0.05¶g" } ] ] |
"onTerminalMessage" | Ingenico terminals | Run the script when a terminal sentssends a message | JSON array containing one object that contains "deviceName", "type" and "base64Data" or "base64Data" and "data" properties e.g. [ [ { "deviceName": "Link/2500-163637313071041701279653", "type": "terminalMessage", "base64Data": "", "data": "" } ] ] |
"onTransactionDidEnd" | Ingenico terminals Infinea mPOS | Run the script when a transaction reply arrived from a terminal | JSON array containing one object e.g.
[
[ {
"deviceName": "Link/2500-163637313071041701279653",
"type": "transactionDidEndWithTimeoutFlag",
"replyReceived": true,
"posNumber": 123,
"operationStatus": true,
"Amount": 500,
"Currency": "203",
"data": "Data converted into string if possible",
"base64Data": "Extra data returned"
} ]
] Note: operationStatus is set to true in case the received value is 0. Most banks require to check whether replyReceived and operationStatus are both true |
"onSignaturePrompt" | Ingenico terminals | Run the script when a transaction requires a signature. Use Gonector_UpdateTransactionSubmit( "signature" ; ... ) to submit signature to the terminal | JSON array containing one object that contains "deviceName", "type", "screenWidth", "screenHeight" and "userSignTimeout" properties e.g. [ [ { "deviceName": "Link/2500-163637313071041701279653", "type": "shouldDoSignatureCapture", "screenWidth": 60, "screenHeight": 40, "userSignTimeout": 10 } ] ] Note: This functionality will be implemented but not tested |
"onSignatureTimeout" | Ingenico terminals | Run a script when the signature was not captured on time | JSON array containing one object that contains "deviceName" and "type" properties e.g. [ [ { "deviceName": "Link/2500-163637313071041701279653", "type": "signatureTimeoutExceeded" } ] ] Note: This functionality will be implemented but not tested |
"onPrintReceipt" | Ingenico terminals | Run the script when a transaction was successful | An image with a receipt to print. Use function Gonector_Set( "imageWidth" ; ... ) to set the width of the images to receive. Default width is 640 Note: This functionality will be implemented but not tested |
"onReceiptText" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldPrintText",
"data": "RECEIPT",
"fontName": "",
"fontFamily": "",
"alignment": "left",
"xScaling": 1,
"yScaling": 1,
"underline": false,
"bold": false
}]
] Alignment: "left", "center", "right", "justified" (Fully-justified. The last line in a paragraph is natural-aligned) and "natural" (Indicates the default alignment for script) Note: This functionality will be implemented but not tested |
"onReceiptImage" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldPrintImage",
"imageType": "image/png",
"base64Data": "Base64 encoded image"
}]
] Note: This functionality will be implemented but not tested |
"onReceiptFeedPaper" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldFeedPaperWithLines",
"lines": 2
}]
] Note: This functionality will be implemented but not tested |
"onReceiptCutPaper" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldCutPaper"
}]
] This is the last callback of the receipt Note: This functionality will be implemented but not tested |
"onReceiptStart" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldStartReceipt"
"receiptType": 0
}]
] Note: This functionality will be implemented but not tested |
"onReceiptEnd" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldEndReceipt"
}]
] Note: This functionality will be implemented but not tested |
"onReceiptAddSignature" | Ingenico terminals | Run the script when an order to print a receipt arrived from a terminal | JSON array containing one object e.g.
[
[{
"deviceName": "Link/2500-163637313071041701279653",
"type": "shouldAddSignature"
}]
] Note: This functionality will be implemented but not tested |
"onlineProcessingRequired" | Infinea mPOS | Run script when terminal requests online processing, script will receive data to be sent as parameterRun the script when an order to print a receipt arrived from a terminal | JSON array containing data e.g. "[ [ { "AMOUNT_AUTHORISED_BINARY":"00003039", "AMOUNT_AUTHORISED_NUM":"0000000012345", "APP_CRYPTOGRAM":"D37F0B7FA01FD5F2", "AIP":"3C00", "ATC":"008A", "PAN_SEQUENCE_NUMBER":"01", "ISSUER_APP_DAT":"06010A03A0E800", "TERMINAL_COUNTRY_CODE":"0100", "TVR":"08C0248000", "TRANSACTION_DATE":"181127", "TRANSACTION_TYPE":"00", "UNPREDICTABLE_NUMBER":"6AFAA376", "RISK_AMOUNT":"00003039", "TERMINAL_CAPABILITIES":"", "CRYPT_INFO_DATA":"80", "EXPIRY_DATE":"170228", "TRANSACTION_CURR_CODE":"0840" } ] ]" |
Some scales (such as tested LESAK J1-RWP) have to be manually configured to enable this feature.
Plugin calls the script on the first occasion when the FileMaker enters "idle" state. Increase speed of event callbacks the plugin can also call itself through an URL. To setup this please check following guide.
The plugin has a buffer of one event per category and device. In case the device sends more data then the operation system can handle into the same category the incoming data is deleted. As soon as the queue is emptied by the script performer the next incoming data is stored for an event again.
For every event the deviceName will be sent back as a first script parameter "MIN-7943¶".
Function returns 0 in case of success. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_SetScriptEvent( "000666D0252F" ; "onTagAttach" ; "My FileMaker Script" )
FileMaker script "My FileMaker Script" is called every time a tag approaches RFID sensor.
You can get the ID of the tag by using FileMaker function Get(ScriptParameter) in the script.
Gonector_SetScriptEvent( "LineaInfinea" ; event ; "" )
This removes an event.
Gonector_SetScriptEvent( "LineaInfinea" ; "" ; "" )
This removes all events.
Gonector_SetScriptEvent( "MIN-7943" ; "onDataReceived" ; "myScript" )
This installs an event to call the script myScript with data events.
Gonector_SetScriptEvent( "MIN-7943" ; "onWeightReceived" ; "myScript" )
This installs an event to call the script myScript with weight events.
Reads data from a device.
deviceName | Unique name of the device |
selector | Used to specify the request |
options | Additional selector for some requests |
extra | For Infinea mPos only, enter total amount (in cents e.g.: 5.00 has to be entered as 500) |
Selector | Supported device | Description |
"single" | qIDMiniqIDmini Scale iPhone LineaInfinea (barcodes, RFID cards, magnetic stripes) |
Read dialog will be shown for iPhone and Linea or Infinea device. This dialog closes after one item read. This is the default |
"single" | qIDMiniqIDmini Scale iPhone LineaInfinea mPosInfinea |
Read dialog will be shown for iPhone and Linea or Infinea device. This dialog closes after one item read. This is the defaultNote: Read dialog for iPhone will close after 60 seconds of inactivity and return all read cards |
"multiple" | qIDMiniqIDmini iPhone LineaInfinea (barcodes, RFID cards) |
Read dialog will be shown for iPhone and Linea or Infinea device.This dialog closes when "Done" button is hit |
"multiple" | qIDMiniqIDmini iPhone LineaInfinea mPosInfinea |
Read dialog will be shown for iPhone and Linea or Infinea device.This dialog closes when "Done" button is hitNote: Read dialog for iPhone will close after 60 seconds of inactivity and return all read cards |
"unique" | qIDMiniqIDmini iPhone LineaInfinea (barcodes, RFID cards) |
Read dialog will be shown for iPhone and Linea or Infinea device.This dialog closes when "Done" button is hit. The plugin guarantees that no value will be returned twice |
"unique" | qIDMiniqIDmini iPhone LineaInfinea mPosInfinea |
Read dialog will be shown for iPhone and Linea or Infinea device.This dialog closes when "Done" button is hit. The plugin guarantees that no value will be returned twiceNote: Read dialog for iPhone will close after 60 seconds of inactivity and return all read cards |
"last" | qIDMiniqIDmini Scale iPhone LineaInfinea (barcodes, RFID cards, magnetic stripes) mPosInfinea |
Returns the last value received from the device Data from magnetic stripe is only kept for 10 seconds to match the PCI compliance |
Some scales (such as tested LESAK J1-RWP) have to be manually configured to enable this function.
Options | Supported device | Description |
"stripe" | LineaInfinea mPosInfinea |
Reads a magnetic stripe. To successfully read the magnetic stripe, a stripe key must be set |
"rfidCard" | LineaInfinea mPosInfinea |
Reads an RFID card |
"barcode" | LineaInfinea mPosInfinea |
Reads a barcode |
"smartCard" | mPosInfinea | Reads a smart card. Returns data which has to be sent to payment processor to complete a payment. This option can be used only with selector "single". |
Plugin sends a request to one of the supported devices to respond with data.
Function returns JSON string if everything is OK. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
The JSON string contains an array of items read (cards, tags…). The items are wrapped in arrays which contain one or more objects. Each object represents one chunk of items data (e.g. in case of localised rfid cards one object would be for data in English and another object for data in German). Each object has at least “type” and “data” or “base64Data” properties.
Gonector_Read( "qIDMiniqIDmini R1170" ; "multiple" )
This returns a JSON string such as [ [ {
"type": "qIDMiniqIDminiTag",
"data": "123456"
},
{
"type": "qIDMiniqIDMiniTag",
"data": "654321"
}
] ] or "?" in case of an error.
Gonector_Read( "MIN-7943" )
This returns a JSON string such as [ [ {
"type": "weight",
"data": "0.05¶g"
} ] ] or [ [ {
"type": "rawData",
"data": "ERROR 2"
} ] ] or "?" in case of an error.
Gonector_Read( "LineaInfinea" ; "single" ; "stripe" )
This returns a JSON string such as [ [ {
"type": "stripe",
"data": "cardholderName¶cardholderFirstName¶cardholderLastName¶accountNumber¶serviceCode¶discretionaryData¶expirationMonth¶expirationYear"
} ] ] or "?" in case of an error.
Gonector_Read( "LineaInfinea" ; "last" ; "rfidCard" )
This returns a JSON string such as [ [
{
"language": "en",
"type": "ndefText",
"data": "Hello",
"deviceName": "LineaInfinea"
},
{
"language": "cs",
"type": "ndefText",
"data": "Vítejte",
"deviceName": "LineaInfinea"
}
], [
{
"type": "image/jpeg",
"base64Data": "SGVsbG8="
}
] ] or "?" in case of an error.
Gonector_Read( "LineaInfinea" ; "unique" ; "barcode" )
This returns a JSON string such as [ [ { "deviceName": "deviceName", "type": "barcode", "barcodeType": "CODE128", "data": "Hello 1d code" }, { "deviceName": "deviceName", "type": "barcode", "barcodeType": "QRCODE", "data": "Hello 2d code" } ] ] or "?" in case of an error.
Gonector_Read( "iPhone" )
This returns a JSON string such as [ [ {
"type": "text/plain",
"data": "Hello"
} ] ] or "?" in case of an error.
Gonector_Read("mPosInfinea" ; "single" ; "smartCard" ; "5000")
Attempts to read from card. After entering PIN code (if required) card will return following data:
"[ [ {"AMOUNT_AUTHORISED_BINARY":"00003039", "AMOUNT_AUTHORISED_NUM":"0000000012345",
"APP_CRYPTOGRAM":"D37F0B7FA01FD5F2", "AIP":"3C00", "ATC":"008A", "PAN_SEQUENCE_NUMBER":"01", "ISSUER_APP_DAT":"06010A03A0E800", "TERMINAL_COUNTRY_CODE":"0100", "TVR":"08C0248000",
"TRANSACTION_DATE":"181127", "TRANSACTION_TYPE":"00", "UNPREDICTABLE_NUMBER":"6AFAA376", "RISK_AMOUNT":"00003039", "TERMINAL_CAPABILITIES":"", "CRYPT_INFO_DATA":"80", "EXPIRY_DATE":"170228",
"TRANSACTION_CURR_CODE":"0840" } ] ]"
Writes data to the device.
deviceName | Unique name of the device |
options | Specific options |
value | The value to be written |
cardLocking | Can be "lock" or empty string. In case of "lock" read/write card will be locked and cannot be rewritten in the future. Default value is "". This is a one way process. Locked card cannot be unlocked |
Options | Supported device | Description |
"rawData" | LineaInfinea | Writes raw data onto the card. Write dialog will be shown |
"ndefText" | LineaInfinea | Writes an NDEF message formatted as a Well Known text to the NFC card. Write dialog will be shown |
"ndefUri" | LineaInfinea | Writes an NDEF message formatted as a Well Known URI to the NFC card according to the RTD. Write dialog will be shown |
"ndefMime" | LineaInfinea | Writes an NDEF message formatted as a MIME data to the NFC card. Images and other data based MIME types should be passed as container. Write dialog will be shown |
"terminalMessage" | Ingenico terminals | Writes a message to the terminal. Catch replies with Gonector_SetScriptEvent |
Plugin writes data through the selected device. In case of NDEF format, the card is formatted so that it is iPhone 7+ readable. The card will be completely rewritten.
Function returns 0. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_Write( "LineaInfinea" ; "ndefUri" ; "https://www.24usoftware.com")
This writes an NDEF message as a URI to the present NFC card through the Linea or Infinea device.
Gonector_Write( "LineaInfinea" ; "ndefMime" ; test::container )
This writes an NDEF message as a MIME to the present NFC card through the Linea or Infinea device.
Gonector_Write( "LineaInfinea" ; "ndefText" ; "Hello World" ; "on""lock")
This writes an NDEF message as a Text to the present NFC card through the Linea or Infinea device and lock it.
Gonector_Write( "Link/2500-163637313071041701279653" ; "terminalMessage" ; "CMD=READMAGCARD" )
This writes a message to Ingenico terminal with ČSOB asking to read a loyalty card.
Gonector_Write( "Link/2500-163637313071041701279653" ; "terminalMessage" ; "CMD=TERMCAPABILITIES" )
This message to Ingenico terminal with ČSOB asks for list of capabilities.
Sends raw data to the BlueSnap Smart device
deviceName | Unique name of the device |
value | String of the data to be sent |
This function is used to send raw data to the scale. See the scale's manual to see what kind of messages the scale supports.
Function returns 0. In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_RawCommand( "MIN-7943" ; "R" )
This command sends RawCommand "R" to the BlueSnap Smart device
Processes a payment transaction through smart POS terminal (currently relevant for Ingenico POS terminals only). Note: annulation is considered a transaction as well. Works with Ingenico device only and Infinea mPOS.
Parameter name | Description | Mandatory for Ingenico devices? | Mandatory for Infinea mPOS? |
---|---|---|---|
deviceName | Unique name of the device | yes | yes |
amount | Amount of the transaction . 500 means 5.00 with the CSOB Link/2500 | yes | yes |
posNumber | POS Number | yes | no |
transactionType | Character representing transaction type as expected by the specific terminal firmware. In the case of CSOB/Global Payment firmware available during development the valid values for this parameter were: "0" for debit transaction, "1" for credit transaction, "2" for annulation, "3" for duplicata. Actual values you will have to use may vary depending on your terminal’s firmware | yes | no |
currency | The currency code in ISO4217 format. E.g. "978" for EUR | yes | no |
applicationNumber | The number of the terminal application that should be invoked to handle the transaction. If this parameter is set to 0, the payment application will be implicitly selected | yes | no |
authorization | Numeric flag specifying how restrictive the terminal should be when authorizing the transaction. Actual values vary by firmware version. In the case of CSOB/Global Payment firmware available during development the valid values for this flag were 0 for offline authorization, 1 to prefer online authorization, and 2 to require online authorization | yes | no |
extendedData | Certain banks require extended data to be sent. Pass a TLV encoded container or text string. Use function Gonector_Prepare to prepare string into TLV data if needed | yes | no |
extendedData | Certain banks require extended data to be sent. Pass a TLV encoded container or text string. Use function Gonector_EncodeTLV to encode string into TLV data if needed | yes | no |
privateData | Application specific data to be passed to payment application. Max size 10 bytes | yes | no |
This function is used to process a transaction.
This function returns always a 0. Use Gonector_SetScriptEvent to receive the reply.
Gonector_StartTransactionDoTransaction( "Link/2500-163637313071041701279653" ; "1" ; "500" ; "1" ; "0" ; "203" ; 0 ; 0 ; "INVOICENUM=0" )
This function call issues a command to the terminal to make a payment of 5,00 CZK on the CSOB version of Ingenico Link/2500.
Gonector_StartTransaction( "Infinea mPOS" ; "5.23" )
This function call issues a command to the terminal to make a payment of 5,23 USD on the Infinea mPOS terminal.
Submits a request
Note: This function will be implemented but not tested on Ingenico device. Works with Ingenico device and Infinea mPOS. only.
deviceName | Unique name of the device |
selector | Selects an action type |
value | The value to be submitted |
Options | Supported device | Description |
"signature" | Ingenico terminals | Value must be a container containing an image. Use function Gonector_ResizeImage to resize the image into the height and width received through Gonector_SetScriptEvent |
"ARPCresponse" | Infinea mPOS | String with hexadecimal code representing response from financial institution (e.g. card issuer). |
This function is used to submit a request typically received through Gonector_SetScriptEvent.
Function returns 0 in case of success. In case of error the function returns "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_UpdateTransactionSubmit( "Link/2500-163637313071041701279653" ; "signature" ; test::signature )
This submits a signature from container test::signature.
Gonector_UpdateTransactionSubmit( "mPosInfinea" ; "ARPCresponse" ; "C20101E6048A023030" )
This simulates successful response from financial institution. Use this command only for development purposes!
Resize PNG image Support function - not dependent on any device. Works with Ingenico device only.
imageContainer | FileMaker container with PNG image you want to resize |
width | Width of resized image |
height | Height of resized image |
options | String with parameters separated by "¶". Currently supports "maintainProportions=on", "maintainProportions=off". "maintainProportions=on" is default |
This function is used to resize images. Use this function to resize image to size expected by Gonector_UpdateTransactionSubmit function
Function returns FileMaker container with resized image in case of success. In case of error the function returns "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_ResizeImage( test::signature ; 300 ; 200 )
This will resize image in test::signature container to 300x200 size maintaining its proportions.
Gonector_UpdateTransactionSubmit( "Link/2500-163637313071041701279653" ; "signature" ; Gonector_ResizeImage( test::signature ; test::expectedWidth ; test::expectedHeight ) )
This will resize signature image in test::signature container to expected size and then it will submit it to the terminal.
Support function - not dependent on any device. Works with Ingenico device only.
type | Type of Data. Only one byte type/tag is supported. Constructed TLV is currently not supported |
value | Value of Data |
This function will TLV encode provided data. This function can be used to encode data for Gonector_StartTransactionDoTransaction function
Function returns a FileMaker container with TLV encoded data in case of success. In case of error the function returns "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_EncodeTLV( 12 ; "INVOICENUM=0|ADDTEXT01=HELLO" )
This will encode value "INVOICENUM=0|ADDTEXT01=HELLO" and type "12" into TLV data.
Decode TLV encoded container based on X.690 Support function - not dependent on any device. Works with Ingenico device only.
tlvContainer | FileMaker container with TLV encoded (based on X.690) data to be decoded |
This function will decode TLV data. This function can be used to decode data generated by setScriptEvents "onTransactionEnd" and "onTerminalMessage" from same Terminals
Function returns a JSON with data and type representing the TLV extracted data based on X.690 in case of success. In case of error the function returns "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Gonector_DecodeTLV( Example::tlvContainer )
This will return JSON with decoded TLV data from "Example::tlvContainer" container .
Prepares an item for an action
This function helps to prepare data for specific tasks needed by other functions such as Write("terminalMessage") and Submit("signature")
Note: This function will be implemented but not tested. Works with Ingenico device only.
deviceName | Unique name of the device |
selector | Selects a type of preparation |
item | The item to be prepared |
Options | Supported device | Description |
"imageResize" | Ingenico terminals | Item must be a container containing an image. Pass width as a parameter1 and height as parameter2 |
"tlvEncode" | Ingenico terminals | Takes a type as a parameter1 and returns a JSON with TLV encoded Base64 data based on X.690. Only one byte type/tag is supported. Constructed TLV is not supported |
"tlvDecode" | Ingenico terminals | Takes a container with TLV encoded data and returns a JSON with data and type representing the TLV extracted data based on X.690 |
"receipt" | Ingenico terminals | Pass the input data as an item string and type as a parameter1. Supported types are "CSOB" |
This function is used to prepare data.
Function returns a modified value based on the selector.
In case the result is a string it is passed as "data". In case the result is binary then the actual result is passed as "base64Data". The result format is a JSON string such as this:
[ [ {
"deviceName": "",
"type": "",
"base64Data": "Data returned",
"data": "Data returned"
} ] ]
In case of error the function will return "?". Use Gonector_Get( "lastError" ) to get the specific error code.
Use Gonector_Get( "lastErrorMessage" ) to get the specific error message
0 | No error | All requested actions were successful |
-4 | Feature not implemented | The requested feature is not implemented |
-10 | RawCommand failed | Could not send data to device |
-11 | Scale is not configured | Scale is not configured, please use Gonector_Set with "scaleReadCommand" and "scaleWeightPattern" selectors to configure scale |
-12 | Invalid regex | Provided pattern is not regex |
-13 | Scale is in config mode | Scale is in configuration mode, please finish your configuration before using device. |
-20 | CUTTER ERROR | Printer specific error, please refer to device manual for more informations |
-21 | EEPROM ERROR | Printer specific error, please refer to device manual for more informations |
-22 | FFPRESSED | Printer specific error, please refer to device manual for more informations |
-23 | OVERVOLTAGE | Printer specific error, please refer to device manual for more informations |
-24 | LFPRESSED | Printer specific error, please refer to device manual for more informations |
-25 | NEAR PAPER END | Printer specific error, please refer to device manual for more informations |
-26 | HEAD UP | Printer specific error, please refer to device manual for more informations |
-27 | COVER OPEN | Printer specific error, please refer to device manual for more informations |
-28 | NO PAPER | Printer specific error, please refer to device manual for more informations |
-29 | OVERTEMPERATURE | Printer specific error, please refer to device manual for more informations |
-30 | PAPER JAM | Printer specific error, please refer to device manual for more informations |
-31 | PAPER ROLLING | Printer specific error, please refer to device manual for more informations |
-32 | RAM ERROR | Printer specific error, please refer to device manual for more informations |
-33 | SPOOLING | Printer specific error, please refer to device manual for more informations |
-34 | TICKET OUT | Printer specific error, please refer to device manual for more informations |
-35 | Invalid character in text | Text contains characters outside supported Extended ASCII character set |
-36 | Printer error | Printer indicates that the printing command failed. Use Gonector_Get( "lastErrorMessage" ) to get the specific error message |
-37 | Printer status error | Printer indicates that it is not able to function properly. Use Gonector_Get( "lastErrorMessage" ) to get the specific error message |
-40 | Linea Infinea Error | Indicates an error on the Linea or Infinea device. Use Gonector_Get( "lastErrorMessage" ) to get the specific error message |
-41 | Linea Infinea Error | Requested amount for transaction is too high. |
-50 | Wrong parameters | Plugin was called with wrong parameters |
-51 | Device not connected | The device is not connected |
-52 | Device already connected | The device is already connected |
-53 | Device not supported | Selected device is not supported |
-54 | Operation timeout | Last funcion timeout, please check device and try again later |
-55 | Invalid device type | Provided device type is not supported |
-56 | Invalid device name | Could not find device with provided name, use Gonector_Set with "devices" selector to get available devices |
-57 | Invalid read mode | Provided read mode is not supported |
-58 | Invalid read type | Provided read type is not supported |
-59 | Invalid print type | Provided print mode is not supported |
-60 | Firmware version not available | Could not get firmware version |
-61 | Software version not available | Could not get software version |
-70 | Ingenico device error | Indicates an error on an Ingenico device. Use Gonector_Get( "lastErrorMessage" ) to get the specific error message |
-80 | Unknown error | Use Gonector_Get( "lastErrorMessage" ) to get the specific error message |
24001 | Demo mode expired | If you want to keep using the plugin, you must register it or buy it for particular environment |
24002 | Product expired | Trial period is over. If you want to keep using the product, you must buy it for particular environment |
24003 | SN limit was met | The serial number is already registered on too many computers |
24004 | Product is dead | The product expired and cannot be used any more. Please download the new version from 24U Software |
24005 | Invalid serial number | Serial number you entered is not valid |
24006 | Activation failed | Activation failed probably due to some network error. Please, check your connection to the internet and try again later |
24007 | Deactivation failed | Deactivation failed probably due to some network error. Please, check your connection to the internet and try again later |
24008 | Unknown serial number | The given serial number cannot be used for the current product. It has been stored so that other product can try to use it |
24009 | Blacklisted serial number | The given serial number has been blacklisted and cannot be used anymore. Please, contact 24U Support if you need more information |