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
Add the latest version of twitch-streamer
to your package.json:
npm install twitch-streamer --save
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');
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();
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);
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);
For get your stream information you have to call getStream
twitch.getStream();
For get message chat you have to call first to connectChat
and then call chat
twitch.connectChat();
twitch.chat(callback);
If you need to save credentials, you have to call getCredentials
and you will get an object
{
accessToken,
refreshToken,
userId
}
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)))
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/
http://localhost:8080/
return the url of authorization, copy and paste into the url of the browserhttp://localhost:8080/getStream
return information of your streamhttp://localhost:8080/credentials
get credentialshttp://localhost:8080/reconnect
refresh access token