Get a Queue

👍

You're ready for this tutorial if you've got the following:

A FreeClimb account
A registered application
A configured FreeClimb Number
Your tools and language installed


Node.js

Using the FreeClimb SDK, invoke an asynchronous request for a given queueId (queueId not given for this example). Successful invocation returns of the Queue’s metadata.

Create your package.json file and save in the root directory of your project:

{
  "name": "node-get-a-queue-tutorial",
  "version": "1.0.0",
  "dependencies": {
    "@freeclimb/sdk": "^1.0.0",
    "dotenv": "^8.1.0"
  }
}

Install the package by running the following in the command line/terminal:

yarn install

Example code:

require('dotenv').config()
const freeclimbSDK = require('@freeclimb/sdk')
const accountId = process.env.ACCOUNT_ID
const apiKey = process.env.API_KEY
const freeclimb = freeclimbSDK(accountId, apiKey)
// Your account ID & api key can be found under API credentials on the FreeClimb Dashboard

// Retreive a queue by queueId
freeclimb.api.queues.get(queueId).then(queue => {
  // Use the queue object
}).catch(err => {/** Catch Errors */ })
)

Java

After successfully creating the FreeClimbClient, invoke getQueuesRequester to send a synchronous request for a give queueId. Successful invocation returns the Queue’s metadata.

Create your build.gradle file and save it to the root directory in your project:

/*
 * This file was generated by the Gradle 'init' task.
 *
 * This is a general purpose Gradle build.
 * Learn how to create Gradle builds at https://guides.gradle.org/creating-new-gradle-builds
 */

buildscript {
    repositories {
        mavenCentral()
        maven { url 'https://jitpack.io' }
    }
  //Add the dependency
    dependencies {
        classpath "org.springframework.boot:spring-boot-gradle-plugin:2.1.6.RELEASE"
    }
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

bootJar {
    baseName = 'gs-spring-boot'
    version =  '0.1.0'
}

repositories {
    mavenCentral()
    maven { url 'https://jitpack.io' }
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile "org.springframework.boot:spring-boot-starter-web"
    testCompile "junit:junit"
    compile 'com.github.FreeClimbAPI:FreeClimb-Java-SDK:3.0.0'
}

sourceSets {
    main {
        java {
            srcDirs = ['src'] // changed line
        }
    }
}

Build the file by running the following in your terminal/command line:

gradle build

Example code:

import com.vailsys.freeclimb.api.FreeClimbClient;
import com.vailsys.freeclimb.api.FreeClimbException;
import com.vailsys.freeclimb.api.queue.Queue;
public Queue listQueues() {
    try {
        //Create FreeClimbClient object
        // accountId & apiKey can be found under API credentials on the FreeClimb Dashboard
        FreeClimbClient client = new FreeClimbClient(accountId, apiKey);
 
        // Invoke get method to retrieve queue metadata
        Queue queue = client.queues.get(queueId);
        return queue;
    } catch(FreeClimbException ex){
        //Exception throw upon failure
        System.out.println(ex.getMessage());
    }
    return null;
}

C#

After successfully creating the FreeClimbClient, invoke getQueuesRequester to send a synchronous request for a give queueId. Successful invocation returns the Queue’s metadata.

Example code:

// Create FreeClimbClient object
// Your account ID & key can be found under API credentials on the FreeClimb Dashboard
string queueId = "";
// Create FreeClimbClient object
FreeClimbClient client = new FreeClimbClient (getFreeClimbAccountId (),
                                              getFreeClimbApiKey ());

// Invoke get method to retrieve queued metadata
Queue queue = client.getQueuesRequester.get (queueId);
Console.WriteLine(queue.getQueueId);