An IRC bot written in python and made for my Twitch channel Twitch.tv/Ridgure.
Key Features • Getting started • Acknowledgements • Connect
Commands:
| General: |
|---|
| !commands |
| !lurk |
| !fc |
| !followdate |
| !oclock |
| !uptime |
| !asylumcraft |
| !bot |
| !support |
| Stating emotion: |
|---|
| !bellyrub |
| !scrowl |
| !smile |
| Minecraft related: |
|---|
| !pack |
| !sevtech |
| !tp |
| !java |
| Runescape related: |
|---|
| !oscommands |
| !osrank |
| !osirank |
| !oshirank |
| !osuirank |
| !osdmrank |
| Socials: | Links to socials: |
|---|---|
| !social | Shows all Ridgure's social media accounts |
| link to Instagram | |
| link to Facebook | |
| link to Twitter | |
| !discord | link to Discord |
| !ctt | Generates a custom Click to Tweet link when sent in the twitch chat |
| Calculator: |
|---|
| !add |
| !multipy |
| !divide |
| Bat cave: |
|---|
| !bat |
| !batnamechange |
| !batgenderchange |
| Elf tree: |
|---|
| !elf |
| !elfnamechange |
| !elfgenderchange |
| Tables: |
|---|
| !raid |
| !shout |
| !breakdance |
| User specific: |
|---|
| !lick - Wolfpupgirl |
| !timemeout - KbigLiar |
| !jc747 - JC747 |
| !octo - Octostarx |
| !ruffle - IvanabCroftin |
Automated functions:
| Done by the bot automatically: |
|---|
| Follower notification |
| Subscriber notification |
| Output last 20 messages in chat to a file |
"Eww cobble" every time cobble is mentioned |
| Times out non vip/moderators if they post links |
| Bans users that use bad language |
Clone
Clone this repository to your local machine using git clone https://github.com/Ridgure/TwitchBot.git
Setup
In order to be able to run the bot add a file config.py in the same folder as the bot and go through the steps below: config.py should look something like this:
Host = "irc.twitch.tv" # The Twitch IRC server Port = 6667 # Always use port 6667! Nickname = "<Name>" # Your Twitch username, lowercase FollowerToken = "<Token>" # Token generated by twitchapps.com/tmi without the oauth: part SubscriberToken = "<Token>" # Self generated token Channel = "#<Channel>" # The channel you want to join ClientID = "<ClientID>" # Your client ID- Create a Twitch account with the name of your bot
- Register your application on the Twitch developer site
- Set the Name to the name of the account you just created
- Set the redirect uri to
http://localhost - Set the application directory to Chat Bot
- Agree to the terms and conditions
- Get a
Client_IDand aClient_Secret
- Generate your token for accessing follower data and chat
- Go to Get token here and click connect with twitch
- Click Authorize
- Your token should look something like this:
oauth:a1b2c3d4e5f6g7h8i9j1k2l3m5n6o7
- Generate your token for accessing subscriber data
- Go to the link underneath
- Remember to swap out
<clientID>with yourclient id! - Click Authenticate
- It will look like you got a blank page but your url should look like the second url
- Your access token is the gibberish where it says Token in the url
https://id.twitch.tv/oauth2/authorize?client_id=<clientID>&redirect_uri=http://localhost&response_type=token&scope=channel_subscriptions+user_read+channel_check_subscription+chat_login http://localhost/#access_token=<Token>&scope=channel_subscriptions+user_read+channel_check_subscription+chat_login&token_type=bearer Prerequisites
You will need to install these things to run the bot
- Python 2.7.x
- Libraries:
Running the bot
Run bot.py by going to its location and running this command:
python bot.pyThis whole project started off with this Instructables article
Other interesting projects to check out:
PythonBot by ZERG3R on Twitch as ZERG3R
Ponderier by DillonEA on Twitch as DillonEA
Xekeism by XekeDeath on Twitch as XekeDeath
Twitch
See the bot in action when I am live on Twitch over at Twitch.tv/Ridgure
Social media
