Skip to content

ClaudeBot/hubot-twitch

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

72 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

hubot-twitch

Build Status devDependency Status

A Hubot script for interacting with Twitch.tv API.

See src/twitch.coffee for full documentation.


Attention: Starting from the 8th of August 2016, including the Client-ID in the header of all API requests has become a requirement by Twitch.tv. It was previously an OPTIONAL configuration option. This is no longer the case.

You can obtain the Client-ID from the Connections page in your settings. You can then set this in your Hubot environment using:

export TWITCH_API_KEY="YOUR CLIENT ID HERE"

If you are already doing the above, you will have nothing to worry about.

Installation via NPM

  1. Install the hubot-twitch module as a Hubot dependency by running:

    npm install --save hubot-twitch
    
  2. Enable the module by adding the hubot-twitch entry to your external-scripts.json file:

    [
        "hubot-twitch"
    ]
  3. Run your bot and see below for available config / commands

Configuration

Variable Default Description
TWITCH_API_KEY N/A (Required) To avoid any restrictions when using Twitch API, please register your application and set your application client ID using this config
TWITCH_MAX_RESULTS 5 The maximum number of result(s) to return
TWITCH_STORAGE_KEY _twitch The unique key used for persistence (storing/retrieving users' Twitch-related data from memory)

Commands

Command Listener ID Description
hubot ttv follows twitch.follows Returns the 10 most recent live streams belonging to your followed channels (list populated from your linked Twitch user, see command below)
hubot ttv link user twitch.link Link Twitch user to you
hubot ttv featured twitch.featured Returns the first TWITCH_MAX_RESULTS (or 5) featured live streams
hubot ttv game category twitch.game Returns the first TWITCH_MAX_RESULTS (or 5) live streams in a game category (case-sensitive)
hubot ttv search query twitch.search Returns the first TWITCH_MAX_RESULTS (or 5) live streams matching the search query
hubot ttv stream name twitch.stream Returns information about stream name
hubot ttv top twitch.top Returns the top TWITCH_MAX_RESULTS (or 5) games sorted by the number of current viewers on Twitch, most popular first

Sample Interaction

user1>> hubot ttv follows
hubot>> Dendi is streaming "<:::::[]=¤༼ຈل͜ຈ༽ノ FOR THE WATCH" @ http://www.twitch.tv/dendi
hubot>> Sing_sing is streaming "newbie dota player" @ http://www.twitch.tv/sing_sing
hubot>> user1: 2 of your followed channels are currently streaming.