Specification revision: 23, 2018-06-29.
Created by: Martin Vraný, Patrik Horčičák, Zdeněk Hejl, Lukáš Liebzeit ©2018 24U Software.
File name: | Gonector.fmplugin |
plugin ID String: | 24GO |
Function names prefix: | Gonector_ |
iOS version: | 11.2.6 and newer |
SN product code and versions: | GON11I |
SNLib version: | SNlib-iOS 1.0 |
Supported Bluetooth 4.0 devices: |
qIDMiniqIDmini with Apple profile (R1170IEAPLP) produced by CAENRFID Custom MyPrinter A Custom MY3 BlueSnap Smart (RS232 to Bluetooth adapter) |
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 PeripheralsTested on: LINEA PRO 7 encrypted |
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 |
"Status" | Returns only one of two states: "Registered" or "Unregistered" |
"Unregister" | Unregister all serial numbers related to the product and return an error code |
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 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 and qIDMiniqIDmini device has to be paired via bluetooth.
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" 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" 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 |
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 |
Note: Disconnecting the device will reset all settings 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 print
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.
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
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" } ] ] |
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 |
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 | 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 | 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 | 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) | 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 | Reads a magnetic stripe. To successfully read the magnetic stripe, a stripe key must be set |
"rfidCard" | LineaInfinea | Reads an RFID card |
"barcode" | LineaInfinea | Reads a barcode |
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.
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 |
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.
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
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 |
-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 |
-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 |