Skip to content

Twiscord syncs your Twitch channel's chat with a Discord channel's chat, both ways. This is simple to do unidirectional with webhooks, but for bidirectional this is a challenge.

License

Samathingamajig/Twiscord-lite

Repository files navigation

Twiscord

Twiscord: Sync Twitch and Discord chat with Python

What is Twiscord?

Twiscord syncs your Twitch channel's chat with a Discord channel's chat, both ways. This is simple to do unidirectional with webhooks, but for bidirectional this is a challenge. That's why Samathingamajig created this app, to make this process simple.

What is Twiscord build upon?

Twiscord is directly built upon 3 libraries:

  • Discord.py » For the Discord bot portion
  • Twitchio » For the Twitch bot portion
  • asyncio » Required for running both bots at the same time

How do I install this?

How to install on Windows:

  1. Run this: py -3 -m pip install pipenv to install pipenv. This is how the .env file use utilized.

  2. Go to Settings » System » About (left) » System info (top right) » Advanced system settings (left) » Enviornment Variables ... » Path » Edit » Add this: C:\Users\YOURUSERNAMEGOESHERE\AppData\Roaming\Python\Python38\Scripts (make sure to change the username). This lets pipenv run as a global script.

  3. (Assuming you have installed Git) Run this: git clone https://github.com/Samathingamajig/Twiscord.git in your parent directly to clone this repo into there. (don't create your own folder and cd into it, because clone makes the new folder either way)

  4. Run this: pipenv install in this working directory, this will install all the necessary libraries through pipenv.

  5. Create both Twitch bot and a Discord bot, and add them to your Discord Server and add as a Moderator on your Twitch Channel (guide for this WIP as of 2020/10/20) and follow the instructions in example.env. (make sure you rename that file to just .env)

  6. Any time you want to run the bot, run this in the working directory: pipenv run python .\main.py

How to install on Linux:

¯\_(ツ)_/¯ WIP as of 2020/10/20

How to install on MacOS:

¯\_(ツ)_/¯ WIP as of 2020/10/20

Is this open source / Can I contribute?

Y E S. If you have an idea that will improve this bot, make your changes and submit a pull request. Please keep the style consistant, other than that add whatever you want, as long as you think it will improve everyone's experience with this bot.

What does this cost?

The cost of this app is entirely free, and all of its dependancies are free as well. The Twitch and Discord API's are free as long as you follow their rules (even then, you don't pay, you just get temp-banned or perma-banned). The only thing that could cost money is hosting. I recommend Heroku (not sponsored) as you get 550 free usage hours per month, but 1000 free usage hours per month if you validate your credit card. 550 hours would require you to manually turn on/off your bot through Heroku, but with the 1000 hours you could keep it on 100% for free (as long you don't have other scripts running)

Licenses:

The license for Twiscord is an MIT License, except for code from the libraries, located here. The licenses for the libraries are downloaded through the pipenv install.

Support:

If you need help, either create an Issue (for general problems), or join this Discord Server for your specific problems.

Acknowledgements:

  • Samathingamajig: Twitch / Discord>Samathingamajig#5734 / GitHub » Creator
  • Rainbow_Helix: Twitch » Requested this bot to exist, logo remixing
  • 0vertime: Twitch / Discord>OverTime#7858 / GitHub » Bug testing
  • Discordpy, Twitchio, Asyncio devs » This bot would be much more complicated if these didn't exist.

Legal stuff:

The Discord logo is copyright of Discord Inc. The Twitch logo is copyright of Twitch Interactive Inc. The Twiscord logo was a combined version of these two logos to show that this tool links Twitch and Discord together, remixing by Rainbow_Helix (see Acknowledgements)

About

Twiscord syncs your Twitch channel's chat with a Discord channel's chat, both ways. This is simple to do unidirectional with webhooks, but for bidirectional this is a challenge.

Topics

Resources

License

Stars

Watchers

Forks