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.
-
Install the hubot-twitch module as a Hubot dependency by running:
npm install --save hubot-twitch
-
Enable the module by adding the hubot-twitch entry to your
external-scripts.json
file:[ "hubot-twitch" ]
-
Run your bot and see below for available config / commands
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) |
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 |
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.