Giter VIP home page Giter VIP logo

ttvdropbot's Introduction

Bear Stone Smart Home
TTVDropBot

Farms automatically Twitch Drops for you!


@Zaarrg/TTVDropBot issues @Zaarrg/TTVDropBot pull requests Zaarrg/TTVDropBot requests


TTVDropBot

๐Ÿค” What is this Twitch Bot all about?

  • Makes your twitch drop experience as easy as possible.
  • No need to watch the stream in a browser, fully uses twitch inner gql.
  • No need to care about who is online and when.
  • Saves your twitch session providing you autologin.
  • Can watch every Twitch Drop / Campaign available.
  • Automatically claims your Drops.
  • Switches automatically to other games or drops if drop is claimed/claimable or offline.

โšก Installation

Windows

  1. Download the windows executable from the release page.
  2. Move the executable to a folder.
  3. Execute the TTVDropBot.exe. The settings and twitch-session will be generated right beside the executable.

Linux

  1. Download the linux executable from the release page.

  2. Move the executable to a folder.

  3. Give the TTVDropBot-linux-x64 file permission to execute via chmod if needed.

    chmod +x ./TTVDropBot-linux-x64
  4. Execute the TTVDropBot-linux-x64. The settings and twitch-session will be generated right beside the executable.

    ./TTVDropBot-linux-x64

Ubuntu

Using Bot with No GUI - Only Command Line
  1. Download the linux executable from the release page.

  2. Drag and Drop a settings.json and twitch-session.json file right beside the executable.

  3. Make sure you have set displayless to true in your settings.json

  4. Execute the TTVDropBot-linux-x64.

    ./TTVDropBot-linux-x64

โš ๏ธ If you want to specifiy wich games to watch use the Prioritylist setting โš ๏ธ

โš ๏ธ If you want to watch Custom Channels drag and drop a customchannels.json to your executable location โš ๏ธ

Npm

  1. Clone the Repository.

    git clone https://github.com/Zaarrg/TTVDropBot
  2. Install NPM packages.

    npm install
  3. Run the bot via npm scripts.

    npm run start:production
    OR
    npm run start:dev

๐Ÿ“š How to use the Bot?

Step by Step Usage: Twitch Drops

1. Step

Select the way you want to Log in into your twitch account.

โš ๏ธ If you cant login directly because of CAPTCHA use the browser method. โš ๏ธ
โš ๏ธ Only Chromium Browsers are supported like Brave and Chrome . โš ๏ธ

Twitch Drops

2. Step

Select Twitch Drops to watch a Twitch Campaign or Custom Channels if you want to add your own channels. Refer to Step by Step Usage: Custom Channels for those.

Twitch Drops

3. Step

Select the campaign you want to start watching. If you want to only watch certain campaign and not all refer to Settings: Priority list

Twitch Drops

4. Step

Select the Drop you want to start watching.

Twitch Drops

5. Step

๐ŸŽ‰ Enjoy! You are successfully watching your drop.

Twitch Drops

Step by Step Usage: Custom Channels

1. Step

Select Custom Channels to start watching them.

Twitch Drops

2. Step

Fill in the needed information to add a Channel. They can always be modified in the customchannel.json

Twitch Drops

3. Step

Select the Channel you want to start. The bot will switch between the Custom Channels, if one goes offline.

Twitch Drops

4. Step

๐ŸŽ‰ Enjoy! You are successfully watching your Custom Channel.

Twitch Drops


๐Ÿ“ Settings

Down below you can find the settings Variables and what they do.

Chromeexe

  • The path of your Browser: Linux: google-chrome | Windows: C:\Program Files\Google\Chrome\Application\chrome.exe

UserDataPath

  • Providing a userdatapath, will give the loginpage the option to use cookies out of your browser. Option not really needed anymore.
  • You can find the UserdataPath under chrome://version then under Profile Path

Debug

  • Will log important values to the console for debugging.

Displayless

  • Give the ability to use the bot fully automated with no user input needed. Especially useful for gui-less systems. See Ubuntu - No Gui

ProgressCheckInterval

  • The time in ms, in what interval the progress should be checked. Recommended is 60000 ms - 60 s anything under could cause twitch blocking your request.

WaitforOnlineChannels

  • If set to false the Bot will no longer wait 5 Minutes for new Channels to come online. It will switch to another game instead.

Prioritylist

  • A list of Games the bot should watch / prioritize. Only Provide games with active Drop Campaigns in this Format: ["Rust","Fortnite", "Elite: Dangerous"]
  • You can get the valid name from: https://www.twitch.tv/directory
  • If provided the bot will only watch the games listed.

AutoClaim

  • Allow the bot to autoClaim or not

LogToFile

  • Log the Console to a file.


๐Ÿ“˜ Adding Custom Channels


Twitch Drops

Name

  • The Name can be any String like Rainbow Six, Best Ch ever etc...

Twitch Url

  • The Url is very important, never use the same Url twice, it has to be a valid Channel link and has always to start with https://www.twitch.tv/. Example for a Valid Url: https://www.twitch.tv/rainbow6tw

How the Channel should be Watched

Watch until the time runs out:

  • Watches the channel until the left time reaches 0 then switches to other custom channel.

Watch indefinitely:

  • Watches the channel until it goes offline, then switches.

Farm Points

  • Pretty simple, should the bot farm Points or not.

Editing already Added Channel's

  • You can always edit Channel's which are already added in the CustomChannels.json.

๐Ÿ“„ Json Files Examples

Example Settings.json

{
"Loginmethod": "normal",
"Chromeexe": "",
"UserDataPath": "",
"debug": true,
"displayless": false,
"ProgressCheckInterval": 15000,
"WaitforOnlineChannels": true,
"Prioritylist": [],
"AutoClaim": true,
"LogToFile": true
}

Example CustomChannels.json

[
  {
    "Name": "tarik",
    "TTVLink": "https://www.twitch.tv/tarik",
    "WatchType": "Watch until time runs out",
    "Time": "50",
    "Points": true,
    "live": null,
    "Pointsamount": ""
  }
]

Example Twitch Session

[
  {
    "name": "auth-token",
    "value": "yourtoken"
  }
]

๐ŸŽ‰ Enjoy the bot and hopefully its helpful!

GitHub's followers GitHub stars GitHub watchers GitHub forks

Have fun and Enjoy! ๐Ÿ˜ƒ


๐Ÿฐ Contact

Quickest Response:
Discord Server: https://discord.gg/rV26FZ2upF

Slow Response:
Discord: - Zarg#8467

Distributed under the MIT License. See LICENSE for more information.โš ๏ธ

Made with a lot of โค๏ธโค๏ธ by @Zarg

ttvdropbot's People

Contributors

zaarrg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.