scanthng.js
The scanthng.js
SDK is a plugin to be used in combination with evrythng.js
to allow easy access to the Identifier Recognition API. This allows JavaScript applications to use local images or image capture devices to look up Platform resources when presented with a barcode or pre-specified image.
Note
scanthng.js v3.1.0 is compatible with evrythng.js v4.7.2 and below.
scanthng.js v4.0.0 is compatible with evrythng.js v5.1.0 and above.
To learn more about implementing identification of codes associated with Platform Thngs and products, read Real-time Web Product Scanning.
Installation
Installation for this SDK is like the evrythng.js SDK installation, but the library name is scanthng
instead of evrythng
.
Note
Installation of
evrythng.js
orevrythng-extended.js
is required to use this plugin.
Including the library in an application and performing initialization are identical. However, because this is a plugin, be sure to apply it to the base SDK:
evrythng.use(ScanThng);
Function Reference
All the functions available below must be used with an instance of an Application
scope.
See the Identifier Recognition page for full details on params
specified below, which determine the type of scan performed.
.scan(params); // Start image capture with params containing the filter
.scan(base64Data, params); // Scan a pre-shot image converted to a Base64 string
app.scan({
filter: { method: '2d', type: 'qr_code' },
}).then(console.log);
.scanStream(params); // Scan a barcode using a video stream from a device camera.
// Fast 2D QR code scanning
app.scanStream({
filter: { method: '2d', type: 'qr_code' },
// HTML element the video stream is displayed in
containerId: 'stream_container',
}).then(console.log);
// Slower than other barcode scanning, but still using video
app.scanStream({
filter: { method: '2d', type: 'dm' },
containerId: 'stream_container',
}).then(console.log);
.identify(params); // Read Thng/product linked to a predetermined Platform identifier value
app.identify({
filter: { value: 'https://tn.gg/C1SNa4dtKF', type: 'qr_code' }
}).then(console.log);
.redirect(url); // Redirect the browser to a URL, usually provided by an identification.
app.scan({
filter: { method: '2d', type: 'qr_code' }
}).then((res) => {
// Redirect to the specified URL
app.redirect(res[0].results[0].redirections[0]);
});
Additional Options
Additional options are available to enhance the functionality of the scan. These must be included in the params
alongside filter
.
createAnonymousUser
- Set totrue
to create an anonymous Application User to perform the scan.perPage
- Set to the desired maximum number of results per page.imageConversion
- Specify the conversion that takes place before the scan is performed.
Updated almost 2 years ago