1.4.9 • Published 3 years ago

twitchrequest v1.4.9

Weekly downloads
18
License
ISC
Repository
github
Last release
3 years ago

What is Twitch Requests?

Twitch Requests is basically an advanced EventEmitter which adds a 'live' listener and 'unlive' listener. It can be used to detect if a streamer has gone live

Installation

npm install twitchrequest

const { Client } = require('twitchrequest');

const options = {
    // The channels you are listening to (all in lowercase)
    channels: ["destiall"],

    // Your client ID
    client_id: "your client id",

    // Your client secret
    client_secret: "your client secret",

    // The interval it will check (in seconds)
    interval: 3
};
const client = new Client(options);

client.on('live', (data) => {
    console.log(`${data.name} is now live! Streaming ${data.title} on ${data.game}! Started at ${data.date}`);
});

Events

This event is called when a channel included in the options goes live.

client.on('live', (streamData) => {
    // Do stuff
});

This event is called when a channel included in the options stops streaming.

client.on('unlive', (streamData) => {
    // Do stuff
});

This event is called when a user follows a channel EXPERIMENTAL.

client.on('follow', (userData, streamData) => {
    // userData is the user that followed
    // streamData is the StreamData that the user followed to
});

This event is called every interval set in the options.

client.on('debug', (streamData) => {
    // Do stuff
});

If you want subscription events or chat events, use npm i tmi.js instead!

Methods

This method can be used to get a specific StreamData of a channel.

const streamData = await client.getStream('username');
// Do stuff

This method can be used to get a specific UserData of a channel.

const userData = await client.getUser('username');
// Do stuff

This method can be used to add a channel to the list of channels to listen to.

client.addChannel('username');

This method can be used to remove a channel from the list of channels to listen to.

client.removeChannel('username');

This method can be used check if that channel is already in the list of channels to listen to.

client.includesChannel('username');

Types

// Example StreamData
StreamData {
  raw: {
    broadcaster_language: 'en',
    display_name: 'destiall',
    game_id: '509658',
    id: '142326619',
    is_live: true,
    tag_ids: [ '6ea6bca4-4712-4ab9-a906-e3336a9d8039' ],
    thumbnail_url: 'https://static-cdn.jtvnw.net/jtv_user_pictures/d555c2b8-fe43-4863-9e6f-78f5052eef41-profile_image-300x300.png',
    title: 'coding stream',
    started_at: '2020-12-22T08:29:53Z'
  },
  name: 'destiall',
  title: 'coding stream',
  game: 'Just Chatting',
  thumbnail: 'https://static-cdn.jtvnw.net/previews-ttv/live_user_destiall-320x180.jpg',
  profile: 'https://static-cdn.jtvnw.net/jtv_user_pictures/d555c2b8-fe43-4863-9e6f-78f5052eef41-profile_image-300x300.png',
  date: 2020-12-22T08:29:53.000Z,
  viewers: 1
}

// Example UserData
UserData {
  raw: {
    id: '47454325',
    login: 'dextimo',
    display_name: 'Dextimo',
    type: '',
    broadcaster_type: 'affiliate',
    description: "Hi i'm Dextimo, I love pandas, Formula 1 and  occasionally cod zombies.Btw tomatoes are disgusting :)",
    profile_image_url: 'https://static-cdn.jtvnw.net/jtv_user_pictures/8d9dd056-177f-43f2-966d-5c83d09a0e88-profile_image-300x300.png',
    offline_image_url: '',
    view_count: 977,
    created_at: '2013-08-11T20:17:02.073455Z'
  },
  name: 'dextimo',
  description: "Hi i'm Dextimo, I love pandas, Formula 1 and  occasionally cod zombies.Btw tomatoes are disgusting :)",
  id: '47454325',
  profile: 'https://static-cdn.jtvnw.net/jtv_user_pictures/8d9dd056-177f-43f2-966d-5c83d09a0e88-profile_image-300x300.png',
  views: 977,
  type: 'affiliate',
  created: 2013-08-11T20:17:02.073Z
}
1.4.6

3 years ago

1.4.9

3 years ago

1.4.8

3 years ago

1.4.7

3 years ago

1.4.5

3 years ago

1.4.4

3 years ago

1.4.3

3 years ago

1.4.2

3 years ago

1.4.1

3 years ago

1.4.0

3 years ago

1.2.9

3 years ago

1.2.8

3 years ago

1.2.7

3 years ago

1.2.6

3 years ago

1.2.5

3 years ago

1.2.4

3 years ago

1.2.3

3 years ago

1.2.2

3 years ago

1.2.1

3 years ago

1.2.0

3 years ago

1.1.2

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago