JSPM

@mixer/interactive-node

3.0.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 2
  • Score
    100M100P100Q25826F
  • License MIT

A NodeJS and Browser compatible client for mixer.com's interactive 2 Protocol

Package Exports

  • @mixer/interactive-node

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 (@mixer/interactive-node) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

Interactive Node

Build Status

A TypeScript, Node.js and Browser(JavaScript) compatible client for Mixer.com's interactive 2 Protocol.

For an introduction to interactive2 checkout the reference docs on the developers site.

Installation

You can use npm(recommended) or download a zip from the releases page.

Browser

<script src="dist/interactive.js"></script>

Node

npm i --save @mixer/interactive-node

Usage

Authentication

OAuth 2.0 is used for authentication. Valid bearer tokens can be passed in the Client.open method.

For more information about Mixer's OAuth visit the OAuth reference page on our developer site.

Browser

index.html

<doctype html>
<html>
    <head>
        <title>Interactive 2</title>
    </head>
    <body>
        <script src="js/interactive.js"></script>
        <script src="js/app.js"></script>
    </body>
</html>

app.js

const client = new interactive.GameClient();

client.open({
    authToken: '<OAuth Token>',
    versionId: 1234,
});

Node

JavaScript

const interactive = require('@mixer/interactive-node');
const ws = require('ws');

interactive.setWebSocket(ws);

const client = new interactive.GameClient();

client.open({
    authToken: '<OAuth Token>',
    versionId: 1234,
});

TypeScript

import { GameClient, setWebSocket } from '@mixer/interactive-node';
import * as ws from 'ws';

setWebSocket(ws);

const client = new GameClient();

client.open({
    authToken: '<OAuth Token>',
    versionId: 1234,
});

Examples

Checkout our examples to get up to speed quickly!

  • basic - Connects and sets up 5 buttons, when they are clicked the participant is charged 1 spark.
  • dynamicControls - Connects and then creates and destroys 5 buttons with random text.
  • joystick - Connects and creates a joystick, logs participant coordinate values.

Using Node.js? Clone this repository and run npm run build and the examples will be converted to JavaScript for you!

Documentation

Checkout our reference docs here.

Development

To get a development environment setup:

  1. Clone this repository
  2. npm install
  3. npm run build

Contributing

Thanks for your interested in contributing, checkout TODO.md for a list of tasks!

Open a Pull Request we'd love to see your contributions.