Usage of iCody’s WebScan

New in iCody 2.0: WebScan – the astonishing possibility to scan within iCody directly into web sites. The WebScan function is the most powerful new feature in iCody since we invented the first wireless barcode scanner for the iPhone in 2010. Using WebScan, you can easily perform Google queries, manage your collections at online providers like Collectorz.com, start pricing queries at your favorite eCommerce site (directly in their website!) and develop own online based enterprise solutions like warehousing.

This article points out in detail how WebScan works. Please note that the iCody callback feature to let iCody work as an external barcode scanner for other apps remains a part of iCody.

iCody-WebScan1-en

To start iCody WebScan tap on the new globe icon that can be found at the bottom left on the iCody main page.

iCody-WebScan2-en

Now, the browser window opens up directly within iCody. The browser is compatible to Safari mobile hence it uses the same iOS routines.

  1. The active field is highlighted in yellow with a red dotted outline or the text cursor can be seen in it. This additional highlighting is necessary since the text cursor is invisible when the text keyboard isn’t shown.
  2. To start scanning simply tap on the well known scan button. Depending on the selected scanner (built-in camera or external accessory) either the scan window shows or the scan start immediately with the laser scanner. Of course an additional scan button of external accessories is supported.
  3. This symbol shows the barcode list. In this list you can send as usual any barcode(-s) by double tapping the entry, using the context menu or switching to the “Edit” mode.
  4. The Settings (see below to learn more about the special WebScan settings).
  5. The browser can be closed by tapping the globe icon.

BTW: The browser “remembers” the last URL and the last search queries – even if iCody was left in the meantime. When you tap in one of these input fields a list with the last entries shows up.

iCody-WebScan3-en

Let’s take a look at the settings of WebScan which can be found in the Settings pane (scroll down to see them):

  1. Define the default starting page here. This page will be loaded when WebScan starts.
  2. “Show web controls”: With this switch you can toggle the visibility of the page controls (the URL and the Google input fields). When switched off, you can only reach the default starting page and any websites which can be reach using the links presented there.
  3. “Focus first field on load” tries to activate the first form field for WebScan after the page is loaded completely.
  4. “Write into active field” is obvious – but why do we need this switch? You have to see this option in conjunction with the switch presented at 6.: It might be that you have designed your own website without any form field at all or with a field which takes the barcodes but use the JavaScript function call to process them.
  5. Depending on the setting of switch #4 the switch “Overwrite field content” is shown. In case it is activated, WebScan overwrites the current field content of the active field.
  6. “Call JavaScript functions” is a very powerful feature: When transmitting the barcode(-s), two predefined JavaScript function calls are processed. The declaration of these functions have to be conform to this prototype:
    icodyDidScanBarcode( value, typeID, typeValue, date );

    and

    icodyDidScanBarcodeWithCoordinates( value, typeID, typeValue, date, latitude, longitude );

    and

    icodyDidScanBarcodeWithCoordinatesAndUDID( value, typeID, typeValue, date, latitude, longitude, udid );

    and

    icodyJSON(json);

    When a barcode is scanned in WebScan, these JavaScript functions (which you have to implement by yourself – one or both!) receive the mentioned values and may process them using e.g. AJAX. In case several barcodes are transmitted, the function call might occur very fast so your function implementation should be well performing.

  7. These two switches control if the delimiter (see below) shall be converted into “submit” or skip to “next field”.