Barcode Processor
The barcode processor is a module that will analyze any scanned barcode, parse it and trigger certain actions with regards to the barcode prefix and internal state.
barcodeProcessor.properties
Any entry in barcodeProcessor.properties has the prefix BarcodeProcessorConfig.barcodes. The number that follows groups the properties for a particular processor rule. A rule consists of the following top level properties:
| Property | Data Type, Range | Description |
|---|---|---|
| BarcodeProcessorConfig.barcodes.<number> | A barcode processor rule. | |
| id | Integer | Unique ID for the rule. |
| name | String | Short name describing the intention of the rule. |
| type | UPCA | EAN8 | EAN13 | EAN128 | RSS14 | CODE128 | TWO_OF_FIVE | AZTEC | Barcode type triggering this rule. |
| length | Integer | Length of the barcode. |
Templates
Properties with the prefix BarcodeProcessorConfig.barcodes.<number>.templates are used to identify the barcode in more detail.
| Property | Data Type, Range | Description |
|---|---|---|
| BarcodeProcessorConfig.barcodes.<number>.templates.<number> | ||
| id | Integer | Unique ID for the template. |
| name | String | '...name=prefix' identifies the following value as a barcode prefix definition. |
| value | Integer | Specific barcode prefix to trigger this rule. |
POS States
Barcodes might trigger different actions depending on the current app state. Some special barcodes might also not trigger any action at all, if the app is not in the right state. The allowed states are defined by properties with the prefix BarcodeProcessorConfig.barcodes.<number>.posStates
| Property | Data Type, Range | Description |
|---|---|---|
| BarcodeProcessorConfig.barcodes.<number>.posStates.<number> | ||
| id | Integer | Unique ID for the posState entry. |
| processName | String | Name of the specific process. |
Actions
The action to be triggered are defined in BarcodeProcessorConfig.barcodes.<number>.actions.<number>
| Property | Data Type, Range | Description |
|---|---|---|
| BarcodeProcessorConfig.barcodes.<number>.actions.<number> | ||
| id | Integer | Unique ID for the action. |
| configId | String | A configuration object as defined in the POS config model. Not used in Self Scanning. |
| BarcodeProcessorConfig.barcodes.<number>.actions.<number>.processReactions.<number> | The reaction/function that should be started. | |
| processName | String | The name of the start process. It must match one of the states defined in BarcodeProcessorConfig.barcodes.<number>.posStates.* |
| reactionName | String | Name of the function to be started. |
| BarcodeProcessorConfig.barcodes.<number>.actions.<number>.configParameters.<number> | Function parameters that are extracted from the barcode together with the rules on how to extract them. | |
| configParameters.<number>.name | String | Name of a function parameter that the extracted value should be mapped to. |
| configParameters.<number>.patternStart | Integer | Defines the start index within the barcode. Note: The first number in the barcode is at position 0. |
| configParameters.<number>.patternEnd | Integer | Defines the end index within the barcode. Note: The first number in the barcode is at position 0. |
| configParameters.<number>.trimZeroesLeft | Boolean | Leading zeroes of the extracted values are cut off, if set to true. |
| configParameters.<number>.trimZeroesRight | Boolean | Trailing zeroes of the extracted values are cut off, if set to true. |
| configParameters.<number>.decPointPosition | Integer | The extracted value is interpreted as a fixed point number with the defined number of decimal places. |