JSPM

vuforia-api

0.3.2
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 16
  • Score
    100M100P100Q69397F
  • License MIT

Node.js client for the Vuforia Web Services API (VWS API) and the Vuforia Web Query API (VWQ API)

Package Exports

  • vuforia-api
  • vuforia-api/vuforia.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vuforia-api) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

vuforiajs

Node.js client for the Vuforia Web Services API (VWS API) and the Vuforia Web Query API (VWQ API).

usage

// load module
var vuforia = require('vuforia-api');

// init client with valid credentials
var client = vuforia.client({

    // Server access key (used for Vuforia Web Services API)
    'serverAccessKey': 'your server access key',

    // Server secret key (used for Vuforia Web Services API)
    'serverSecretKey': 'your server secret key',

    // Client access key (used for Vuforia Web Query API)
    'clientAccessKey': 'your client access key',

    // Client secret key (used for Vuforia Web Query API)
    'clientSecretKey': 'your client secret key'
});

// util for base64 encoding and decoding
var util = vuforia.util();

create a new target

var target = {

    // name of the target, unique within a database
    'name': 'my target',
    // width of the target in scene unit
    'width': 32.0,
    // the base64 encoded binary recognition image data
    'image': util.encodeFileBase64(__dirname + '/someImage.png'),
    // indicates whether or not the target is active for query
    'active_flag': true,
    // the base64 encoded application metadata associated with the target
    'application_metadata': util.encodeBase64('some metadata about your image')
};

add target to cloud database

client.addTarget(target, function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
            target_id: '93fd6681f1r74b76bg80tf736a11b6a9',
            result_code: 'TargetCreated',
            transaction_id: 'xf157g63179641c4920728f1650d1626'
        }
        */
    }
});

list all targets within cloud database

client.listTargets(function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
            “result_code”:”Success”,
            “transaction_id”:”550e8400e29440000b41d4a716446655”,
            “results”:[
                ”00550e84e29b41d4a71644665555678”,
                ”578fe7fd60055a5a84c2d215066b7a9d”
            ]
        }
        */
    }
});             

retrieve a target from cloud database

client.retrieveTarget('00550e84e29b41d4a71644665555678', function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
            “result_code”:”Success”,
            “transaction_id”:”e29b41550e8400d4a716446655440000”,
            “target_record”:{
                “target_id”:”550b41d4a7164466554e8400e2949364”,
                “active_flag”:true,
                “name”:”tarmac”,
                “width”:100.0,
                “tracking_rating”:4,
                “reco_rating”:””
            },
            “status”:”Success”
        }
        */
    }
});

update a target

var update = {

    'active_flag' : true,
    'application_metadata' : util.encodeBase64('Some metadata about your image')
};

client.updateTarget('00550e84e29b41d4a71644665555678', update, function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
        	"result_code":"Success",
              "transaction_id":"550e8400e29b41d4a716446655482752"
        }
        */
    }
});

delete a target

client.deleteTarget('00550e84e29b41d4a71644665555678', function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
        	“result_code”:”Success”,
        	“transaction_id”:”550e8400e29b41d4a716446655482752”
        }
        */
    }
});

search cloud database for images that can be considered duplicates

client.checkForDuplicateTargets('00550e84e29b41d4a71644665555678', function (error, result) {

    // images that are the same as the reference one identified by a given target id

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vws API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vws API:
        {
            “similar_targets”:
            [
                ”550e8400e29b41d4a716446655447300”,
                ”578fe7fd60055cbc84c2d215066b7a9d”
            ]
        }
        */
    }
});

Perform an Image Recognition Query

var filename = __dirname + '/test.jpg'; // image file that will be send to the Vuforia Web Query API
var max_num_results = 5; // return only 5 matches

client.cloudRecoQuery(fs.readFileSync(filename, 'binary'), max_num_results, function (error, result) {

    if (error) { // e.g. [Error: AuthenticationFailure]

        console.error(result);

        /*
        example of result from the vwq API:
        {
            result_code: 'AuthenticationFailure',
            transaction_id: '58b51ddc7a2c4ac58d405027acf5f99a'
        }
        */

    } else {

        console.log(result);

        /*
        example of result from the vwq API:
        { 
            result_code: 'Success',
            transaction_id: 'b66bef31ba394c86a7ea2ab7e35c93d1',
            results: 
            [ 
                'eacbb1487c584dbb8741fb5a28b4228f' 
            ] 
        }
        */
    }
});