GithubHelp home page GithubHelp logo

fowlerp-qlik / enigma.js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from qlik-oss/enigma.js

0.0 1.0 0.0 422 KB

JavaScript library for consuming Qlik's QIX Engine.

License: MIT License

JavaScript 99.00% HTML 0.60% Shell 0.40%

enigma.js's Introduction

CircleCI Greenkeeper badge

enigma.js is a library that communicates with Qlik QIX Engine. You can use it to build your own analytics tools or Node.js services that for example performs CRUD (create, read, update and delete) operations on Qlik documents.



Getting started

Prerequisites

Before continuing, make sure that you have these tools installed:

  • Node.js >= 4.0
  • Git bash if on Windows

And know of at least some these web technologies:

  • JavaScript
  • Promises
  • Websockets

Usage

First off, install enigma.js and a WebSocket library:

npm -S i enigma.js ws

Next, create a new file called my-file.js and put the following code into it:

const enigma = require('enigma.js');
const WebSocket = require('ws');
const schema = require('enigma.js/schemas/12.20.0.json');

// create a new session:
const session = enigma.create({
  schema,
  url: 'ws://localhost:9076/app',
  createSocket: url => new WebSocket(url),
});

// bind traffic events to log what is sent and received on the socket:
session.on('traffic:sent', data => console.log('sent:', data));
session.on('traffic:received', data => console.log('received:', data));

// open the socket and eventually receive the QIX global API, and then close
// the session:
session.open()
  .then((/*global*/) => console.log('We are connected!'))
  .then(() => session.close())
  .then(() => console.log('Session closed'))
  .catch(err => console.log('Something went wrong :(', err));

And then run it:

node my-file.js

You may need to adjust the code so the URL points towards your running QIX Engine.

enigma.js's People

Contributors

peol avatar marcusoffesson avatar axelssonhakan avatar ahmednuaman avatar gabbaxx avatar greenkeeper[bot] avatar chrismanley avatar fkabinoff avatar carlioth avatar stefanwalther avatar websy85 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.