Skip to content
This repository has been archived by the owner on Jul 31, 2020. It is now read-only.
/ interactive-node Public archive

A TypeScript, NodeJS and Browser compatible client for Mixer's interactive 2 Protocol.

License

Notifications You must be signed in to change notification settings

mixer/interactive-node

Repository files navigation

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.

About

A TypeScript, NodeJS and Browser compatible client for Mixer's interactive 2 Protocol.

Resources

License

Stars

Watchers

Forks

Packages

No packages published