Skip to content

tnovas/twitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Twitch

Build Status Coverage Status

This module is a implementation of New Twitch API https://dev.twitch.tv/docs/api/reference

You need nodejs version > 6x because this module was made with ES6.

node --version

Installation:

Add the latest version of twitch-streamer to your package.json:

npm install twitch-streamer --save

Usage:

let twitchApi = require('twitch-streamer');

Give the credentials of the youtube to the constructor

Params Description Optional
ClientId The Client Id false
ClientSecret The Client Secret false
RedirectUrl The RedirectUrl with format 'http://yourdomain/youraction' false
Scopes They are 3 scopes: user:edit user:read:email chat_login false
UserLogin The name of your user login false
AccessToken The access token if you have one true
let twitch = new twitchApi('clientId', 'clientSecret', 'http://yourdomain/youraction', 'user:edit+user:read:email+chat_login', 'channelName');

Authorization

To authenticate with OAuth you will call authorizationUrl and will return an URL, you will make a request with a browser and authorizate in OAuth. After that you will be redirect to RedirectUrl and you will get a code on QueryString ?code='hjqweassxzass'

let urlAuthorization = twitch.authorizationUrl();

Get Access Token

For generate an access token and refresh token you have to call connect with the code you got on QueryString

Params Description Optional
Code The code you got in the querystring false
twitch.connect(code);

Refresh Access Token

If you need refresh the access token, you have to call reconnect and send the refreshToken

Params Description Optional
RefreshToken The refresh token you got in credentials false
twitch.reconnect(refreshToken);

Get Stream:

For get your stream information you have to call getStream

twitch.getStream();

Get Chat:

For get message chat you have to call first to connectChat and then call chat

twitch.connectChat();
twitch.chat(callback);

Get Credentials:

If you need to save credentials, you have to call getCredentials and you will get an object

{
  accessToken,
  refreshToken,
  userId
}

Promises

If you add then to call you will take the success of response and if you add catch you will take the error of response.

twitch.getStream()
	.then((res) => console.log(res)))
	.catch((err) => console.log(err)))

Test Integration:

You can test the module with your productive credentials. First change the clientId and clientSecret in tests/integration.js with yours credentials, open a console and run npm start, open browser and type http://localhost:8080/

Urls: