Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This quick start guide explains how to integrate Gumband into your exhibit with the Gumband SDK, a NodeJS package. The Gumband SDK contains a library of functions and a websocket connection manager to facilitate communication between your exhibit and the Gumband cloud. Optionally, it can also initialize an MQTT message broker to manage communication between your exhibit and Gumband Hardware.

After finishing this installation work on this page, you can jump into individual instructions on how to customize your exhibit, while keeping in mind the three key pillars of Gumband: Health, Content, and MetricsAnalytics.

Table of Contents
stylenone

Installing and Initializing the Gumband SDK

Install the Gumband SDK as a new dependency in your node package: npm i @deeplocal/gumband-node-sdk.

Create a new exhibit in the Gumband UI and copy the exhibit ID and Authentication Token into a new .env file. You will use these two values to authenticate your exhibit with the Gumband Cloud.

Code Block
languagebash
// Filename: .env
EXHIBIT_TOKEN=ae132...di2lk9
EXHIBIT_ID=1

Initialize the Gumband SDK with the basic required parameters:

Code Block
languagejs
constimport { Gumband } =from require("@deeplocal/gumband-node-sdk");
import { MANIFEST } from "./manifest.js";

this.gumbandSDK = new Gumband(
    process.env.EXHIBIT_TOKEN,
    process.env.EXHIBIT_ID,
    `./manifest.json`,MANIFEST
);

where ./manifest.json is the path to a JSON file that defines the manifest. The manifest defines what statuses, controls, and settings will be available to your exhibit; more on statuses, controls, and settings below. A basic manifest.json would look like this:

{
Code Block
languagejs
export const MANIFEST = {
  "manifest": {
 
      "statuses": [],
        "controls": [],
        "settings": []

   }
}

When you run your node application, the Gumband SDK will authenticate itself with the Gumband Cloud and you’ll see it come online:

What Next?