Scanning Capabilities

To configure your scanner to use a specific capability, a specific configuration is required.

To demonstrate how this works, here’s a JSON example:

{
  "pluginConfig": {
    "id": "MyDialMeterPlugin",
    "meterConfig": {
      "scanMode": "dial_meter"
    },
    "cancelOnResult": true
  }
}

The type of capability is determined by the type of config within the pluginConfig node. In this case, it’s a meterConfig.

Use the "id" property to set a name for your Scan Plugin, which will be returned to you in the Scan Result with the "pluginID" property.

Each type of config produces the respective type of result. So in this case, you can expect to get a pluginResult that contains a meterResult. For example:

{
  "confidence": 56,
  "cropRect": {
    "height": 432,
    "width": 864,
    "x": 208,
    "y": 0
  },
  "meterResult": {
    "value": "39804"
  },
  "pluginID": "MyDialMeterPlugin"
}

Here’s a list of each configuration type matched with the result type:

Config Type Result Type

barcodeConfig

barcodeResult

meterConfig

meterResult

universalIdConfig

universalIdResult

mrzConfig

mrzResult

japaneseLandingPermissionConfig

japaneseLandingPermissionResult

vehicleRegistrationCertificateConfig

vehicleRegistrationCertificateResult

licensePlateConfig

licensePlateResult

tinConfig

tinResult

tireSizeConfig

tireSizeResult

commercialTireIdConfig

commercialTireIdResult

vinConfig

vinResult

containerConfig

containerResult

ocrConfig

ocrResult

The PluginConfig and PluginResult parameters are documented in the following pages.

JSON Schemas are case sensitive

The values defined in the JSON Schema are case sensitive. Make sure to only use values in your Plugin (Configuration/Result) JSON that are also listed in the JSON Schemas. Using incorrect spelling or wrongly uppercased/lowercased values may result in undefined behavior.