# RFID Connect

Connects to a RFID device.

Action available for the following operating systems:

![](https://3821468174-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LrTlA1suFa5N48x_83N%2F-MNOpLbccICBMi9MPXpB%2F-MNOpQuqJu2vUVfUohgv%2FAndroid2.PNG?alt=media\&token=062b7437-0855-40aa-9c76-4ae834f5e35d)

### Parameters

* **DeviceType** - The type of RFID device to use. it can be one of:
  * **Internal API** - Uses the device manufacturers API to connect to an internal or external scanner.
  * **External API** - Uses an external Java library provided by you to interact with the barcode scanner&#x20;
* **Jar File** *\<string> -* Defines the full path and name of the JAR or APK file that contains your barcode interface implementation.
* **Class Name** *\<string> -* Fully classified class name that contains the function to execute.\
  See Notes for more details.
* **User Parameters** *\<string> -* String expression with any value that we will pass in the call to the **Method Name**.

{% hint style="info" %}
**Internal API**s supported in Android.

* Cipherlab
* Unitech
* Honeywell (currently only IH25)
* M3
* Bluebird
* Chainway
* Urovo
  {% endhint %}

{% hint style="info" %}
**External API** option allows you to implement an interface with a RFID scanner SDK and use standard Kalipso **RFID...** actions to interact with it.

* You can find the android java library containing the interfaces in Designer folder under "Plugins\Android\libs"
* You should create a class that implements the **KExternalScannerAPI** interface. Then you pass in the path to the JAR/APK file you created and you must pass the name of the class that implements this interface. Kalipso will create an instance of this class, and any call to Kalipso **RFID...** actions will be translated into a call to the corresponding Interface method.
* The **KExternalEventsInterface** that you will receive in the Connect() call allow you to send barcode scan events and other additional events to Kalipso to **App Notifed** events in Kalipso forms and to register callbacks for some events to be sent to you from Kalipso. See **RunJar.**
* All RFID actions have a **User Parameter** available that you can use for your own specific implementations.
  {% endhint %}

{% hint style="info" %}
For Bluebird Bluetooth devices, during testing, it seems that after turning off the rfid device, after turning back on it only accepts a new connection after enabling discovery mode on the device.

This is not documented on the SDK documentation, it is only an observed behavior during testing.
{% endhint %}

{% hint style="info" %}
For Unitech, in **User Parameters** you can specify the device type.

Currently you can specify RP902,  HT730 or RG768. If empty, for:

**Bluetooth** RP902 is assumed

**Internal** HT730 is assumed, unless running on a PA768 in which case RG768 is assumed.

HT730 and RG768 require the Unitech DMService to be installed on the device.
{% endhint %}
