> For the complete documentation index, see [llms.txt](https://docs.spectralink.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.spectralink.net/amie-essentials/applications/barcode.md).

# Barcode

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-97becf08dd2713b7f34c93aba7895b26e8161f9b%2Fimage88.png?alt=media)*(For Versity models 9253, 9553, 9653, and 9753 only)*

Versity models 9253, 9553, 9653 and 9753 have built-in barcode readers. (If a Versity phone does not have a Barcode reader, these settings are ignored.)

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-94cab4e860083be711741603923e0d39bd637220%2Fimage89.png?alt=media)

## Barcode Menu

### General

Configure phone behavior upon scanning

### Data Manipulation

Configure AIM codes, strip/add characters

### Custom Intent Settings

### Symbology Settings

#### Supported Symbologies

Aztec

Codabar

Code 11

Code 32

Code 39

Code 93

Code 128

Data Matrix

Data Matrix Inverse

EAN8

EAN13

GS1 Databar 14

GS1-128

Han Xin Code

Interleaved 2 of 5

Inverse 1D

Matrix 2 of 5

Micro PDF417

Micro QR

MSI Plessy

PDF 417

QR

QR Inverse

UPC-A

UPC-E

### Replace Control Characters

### ScanFlex

On this page, you can enable the barcode reader and set the symbologies you will be using. Barcode is enabled by default, along with all symbologies.

### Enable barcode scanner

If not enabled, the rest of the settings are not active.

**Entry criteria**

|               |                          |
| ------------- | ------------------------ |
| **Type**      | Radio buttons            |
| **Default**   | Enabled                  |
| **Unique?**   | No                       |
| **Required?** | Yes for barcode scanning |
| **Level**     | Enterprise or Group      |
| **Notes**     |                          |

### Allow Scan on Screen Lock

To ensure functionality with certain EMMs, this setting enables the user to scan barcodes even when the screen is locked.

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Disabled            |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

{% hint style="info" %}
**Barcode settings**

Barcode settings are fully covered in the *Versity Applications Administration Guide*. Refer to that document for complete information regarding this application.
{% endhint %}

## General

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-5e0a4d0c3f26b2046a62f3d725f721140d30aa15%2Fimage90.png?alt=media)

The first set of options are for global Barcode app settings that apply to every symbology.

### Vibrate On Scan

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Sound On Scan

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Tone To Play On Scan

**Entry criteria**

|               |                       |
| ------------- | --------------------- |
| **Type**      | Dropdown menu         |
| **Default**   | Low pitch single beep |
| **Unique?**   | No                    |
| **Required?** | No                    |
| **Level**     | Enterprise or Group   |
| **Notes**     |                       |

### Illumination Power

The intensity of the scan light.

**Entry criteria**

|               |                                     |
| ------------- | ----------------------------------- |
| **Type**      | Integer. Enter a value 0-10         |
| **Default**   | 5                                   |
| **Unique?**   | Yes                                 |
| **Required?** | Depends on the lighting conditions. |
| **Level**     | Device                              |
| **Notes**     |                                     |

### Allow URL Redirection to Browser

By default the Barcode app redirects QR code data that begins with *http\://* or *https\://* to the phone’s browser. This setting allows administrators to change that behavior, to enable the scanner to work properly with certain third-party apps.

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Decode Session Timeout

How long to allow for the scanner to decode a scanned barcode.

**Entry criteria**

|               |                                                                                         |
| ------------- | --------------------------------------------------------------------------------------- |
| **Type**      | Dropdown menu                                                                           |
| **Default**   | 5.0 seconds                                                                             |
| **Unique?**   | Yes                                                                                     |
| **Required?** | Yes                                                                                     |
| **Level**     | Any, usually Group                                                                      |
| **Notes**     | Minimum value 0.5 seconds; increments in .5 second intervals; maximum value 9.9 seconds |

## Data Manipulation

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-1892232ebf5a10f594f382ec014afa0d195dce6f%2Fimage91.png?alt=media)

### Enable AIM title

|               |                          |
| ------------- | ------------------------ |
| **Type**      | Dropdown menu            |
| **Default**   | Disable                  |
| **Unique?**   | No                       |
| **Required?** | Yes for barcode scanning |
| **Level**     | Enterprise or Group      |
| **Notes**     |                          |

### Automatic Carriage Return

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Automatic Tab

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Trim Barcode Data

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Strip Characters from Left

**Entry criteria**

|               |                                                                 |
| ------------- | --------------------------------------------------------------- |
| **Type**      | Integer. Enter a value 5-99                                     |
| **Default**   | 50                                                              |
| **Unique?**   | Yes                                                             |
| **Required?** | Yes                                                             |
| **Level**     | Any, usually Group                                              |
| **Notes**     | Measured in tenths of a second: default value 50 = 5.0 seconds. |

### Strip Characters from Right

**Entry criteria**

|               |                                                                 |
| ------------- | --------------------------------------------------------------- |
| **Type**      | Integer. Enter a value 5-99                                     |
| **Default**   | 50                                                              |
| **Unique?**   | Yes                                                             |
| **Required?** | Yes                                                             |
| **Level**     | Any, usually Group                                              |
| **Notes**     | Measured in tenths of a second: default value 50 = 5.0 seconds. |

### Keyboard Injection

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Enabled/True        |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Keyboard Injection Type

An administrator can choose between 2 different types of keyboard injection for barcode scanning: Character entry or Block entry. Block entry often enables faster scanning.

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Dropdown menu       |
| **Default**   | Character entry     |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     | See above           |

### Prepend String

**Entry criteria**

|               |                    |
| ------------- | ------------------ |
| **Type**      | Text entry.        |
| **Default**   | None               |
| **Unique?**   | Yes                |
| **Required?** | No.                |
| **Level**     | Any, usually Group |
| **Notes**     |                    |

### Append String

**Entry criteria**

|               |                    |
| ------------- | ------------------ |
| **Type**      | Text entry.        |
| **Default**   | None               |
| **Unique?**   | Yes                |
| **Required?** | No.                |
| **Level**     | Any, usually Group |
| **Notes**     |                    |

## Custom Intent Settings

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-896517167f81a992cc041fdd01350093863ba330%2Fimage92.png?alt=media)

### Intent Delivery Method

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Dropdown menu       |
| **Default**   | Disable             |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

### Intent Category

**Entry criteria**

|               |                    |
| ------------- | ------------------ |
| **Type**      | Text entry.        |
| **Default**   | None               |
| **Unique?**   | Yes                |
| **Required?** | No.                |
| **Level**     | Any, usually Group |
| **Notes**     |                    |

### Intent Action

**Entry criteria**

|               |                    |
| ------------- | ------------------ |
| **Type**      | Text entry.        |
| **Default**   | None               |
| **Unique?**   | Yes                |
| **Required?** | No.                |
| **Level**     | Any, usually Group |
| **Notes**     |                    |

### Zebra Emulation (For Custom Intents)

**Entry criteria**

|               |                     |
| ------------- | ------------------- |
| **Type**      | Radio buttons       |
| **Default**   | Disabled/False      |
| **Unique?**   | No                  |
| **Required?** | No                  |
| **Level**     | Enterprise or Group |
| **Notes**     |                     |

## Symbology settings

Barcode symbology options can be found in the *Versity* *Applications Administration Guide*, available online at the Spectralink support site. See Appendix A: Spectralink References.

All symbology settings use radio buttons for a true/false option or a dropdown menu for a selectable list.

{% hint style="info" %}
**Deprecated barcode symbologies**

If you are deploying Versity in a mixed environment with other barcode readers, be aware that some previously offered symbologies have been deprecated due to aging technology. These are: Code 49, Grid Matrix, Hong Kong 2 of 5, IATA 2 of 5, NEC 2 of 5, Plessy, Straight 2 0f 5, Telepen.
{% endhint %}

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-204e005c9f5c31a0d7ef8e95ac797360b5329f74%2Fimage93.png?alt=media)

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-a26f699dd96d67d5f68cead5997ebb14bb50b814%2Fimage94.png?alt=media) ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-b795a292c593457293a42cb1c9a4b40a17b04c37%2Fimage95.png?alt=media)

## Replace Control Characters

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-9b9e68c9590bb956e8e1cfa381e28adcd022aa87%2Fimage96.png?alt=media)

Complete information about control characters can be found in the *Versity* *Applications Administration Guide*, available online at the Spectralink support site. See Appendix A: Spectralink References.

## ScanFlex

The ScanFlex feature allows the Spectralink Barcode service to support custom data manipulation for third-party applications. Up to five ScanFlex profiles can be configured through SAM. Profiles may also be supported through your EMM. The Barcode service requires that the application be in the foreground for custom intents to function.

Using an EMM or SAM as the configuration interface, barcode service application requirements can be consolidated into “Profiles” which are identified by the unique application package name(s) provided by an app’s developer(s). Within each profile the administrator can enable the required symbologies and configure custom data manipulation settings. When the given app is identified in the foreground, the barcode scanner will only scan the symbologies that have been programmed for that identified app.

Custom intents are available for and used by ScanFlex to provide additional specificity. Some common intent delivery methods are:

* Start another Activity
* Start Service
* Start Foreground Service
* Send Broadcast

Custom intents and keyboard emulation will use the manipulated barcode data.

### Create a ScanFlex profile

1. Navigate to the Barcode app and scroll down to the ScanFlex option.
2. ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-3ee05e9ad78e3e90817ed5ca61308f0c96ceb03e%2Fimage97.png?alt=media) Click to create the first App Profile

Click the + button to create the first App Profile

> ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-0dfa61bfdb8b379b376c76720afcbbca0272d6b0%2Fimage98.png?alt=media) à ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-d4635fdbbbf077c529afc33f8f227cf9420bcddd%2Fimage99.png?alt=media)

1. Enter the application or activity name provided by the developer.

   This entry tells ScanFlex where to send the Intent. Either specify the top level package name, or the explicit activity or service. For example com.rhapp.displaydata, or com.rhapp.displaydata.receiver. Do not use an ampersand at the end for a wildcard, instead just specify the package name. Multiple activities can be entered separated by a comma.
2. Click **>** to enter symbologies for this application or activity. The full list of symbologies displays. For our example, we will select Aztec. Configure the symbology as desired.
3. Select and configure additional symbologies if needed.
4. ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-3ee05e9ad78e3e90817ed5ca61308f0c96ceb03e%2Fimage97.png?alt=media) Close the Symbology Settings menu and expand Format Data menu. Click to add the first set of data to this application. Up to five sets can be added for symbologies configured in the previous steps, as needed.
5. Select any symbology or symbologies selected in the symbology settings list that you wish to further configure.

### Basic vs Advanced Data Formatting

Basic data formatting allows for a set of deterministic manipulation options. Advanced data formatting allows for a select set of actions in any order to meet specific configuration requirements. Basic data formatting and Advanced Formatting Data are mutually exclusive so only one data format can be configured at one time.

{% hint style="info" %}
**“Advanced” supersedes “Basic”**

If Advanced Data Formatting is set, it will supersede Basic Data Formatting.
{% endhint %}

#### Format Data (Basic)

See the *Versity Applications Administration Guide* for information about each of the basic settings.

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-7613d8f6eeaa141736ad74b9289d89f68afeb8a7%2Fimage100.png?alt=media) ![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-403c7102c350f7e007187fecb1411be86e6096d6%2Fimage101.png?alt=media)

#### Format Data (Advanced)

![](https://3032864282-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FxfLF6IpyutR429bMnvvf%2Fuploads%2Fgit-blob-0bfa7b226a2c1ebefcbf92cbd10a1be814203ec5%2Fimage102.png?alt=media)

See the *Versity Applications Administration Guide* for information about each of the advanced settings. Some actions may require additional parameters, which will appear when an action requiring them is selected.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.spectralink.net/amie-essentials/applications/barcode.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
