Giter VIP home page Giter VIP logo

ttv-chat-light's Introduction

ttv-chat-light

All Contributors

Twitch TV chat reader to change the color of overlays loaded from streamelements and/or colors of internet connected lights via Azure Bot Service and Language Understanding AI (LUIS)

Join Clarkio live on Wednesdays at 10 AM ET and Fridays at 12:30 PM ET for the coding streams. https://twitch.tv/clarkio

Getting Started

  1. Clone with: git clone [email protected]:clarkio/ttv-chat-light.git

  2. Goto project: cd ttv-chat-light

  3. Install node dependencies: npm install

  4. If on:

    • Debian/Ubuntu run: sudo apt install mpg123
    • Windows install: cmdmp3
    • MacOS you should have afplay already available
  5. Login on https://twitch.tv

  6. Go to https://twitchapps.com/tmi/

    1. Click "Connect with Twitch"
    2. Click "Authorize"
    3. Copy the token value (starts with "oauth:")
  7. Rename the file .env-example to .env

  8. Update TTV_CLIENT_TOKEN with the token value you copied before in step 4.c

  9. Update TTV_CLIENT_USERNAME to your client username (defaults to "clarkio")

  10. For each overlay in streamelements (a.k.a. scenes) copy the URL to the scene and add it to the .env file as a new environment variable for each one.

    Example: mainScene=https://streamelements.com/overlay/abc/123

  11. Get Streamelements JWT from your account and update STREAMELEMENTS_JWT in your .env file.

Run the Application

Please make sure you've completed all steps in the "Getting Started" section before attempting to run the app.

From Docker

  • (@roberttables) Set OBS_SOCKETS_SERVER=host.docker.internal:
    • (@parithon) Note This dns name (host.docker.internal) only appears to work on Docker Desktop for Mac/Windows and not production environments nor other linux environments (Ubuntu)
    • (@roberttables) In that case then you can use the override through docker0 bridge which exists in linux environments

Windows

MacOS

Linux

From the Command Line (CLI)

  1. Change to the directory of the project ttv-chat-light if you have not already done so.

  2. Run npm start

  3. Open your browser and go to http://localhost:1337/scenes?sceneName=<your-scene-name-from-.env>

    Example: http://localhost:1337/scenes?sceneName=mainScene

From VS Code

  1. Go to the debugger view and confirm the debugger is set to "Server Start"

  2. Press the "Start Debugging" button (the green play button)

  3. Open your browser and go to http://localhost:1337/scenes?sceneName=<your-scene-name-from-.env>

    Example: http://localhost:1337/scenes?sceneName=mainScene

Trying Things Out

Please make sure you've completed all steps in the "Getting Started" and "Run the Application" sections before attempting to try out the app.

  1. Open up a new browser tab or window and navigate to the chat for the Twitch channel you want to use (defaults to "clarkio" in the .env file under TTV_CHANNELS)

    Example: https://www.twitch.tv/popout/clarkio/chat

    If you'd like to have the client connect to another channel you can add it to the TTV_CHANNELS environment variable. The variable is comma-delimited so you can have it as clarkio,"your channel name" to connect to multiple channels

  2. Enter the following chat message "!bulb go green" and you should see your overlay change color in your other tab/window which loaded http://localhost:1337/scenes?sceneName=mainScene

    WARNING: the implementation is currently based off of an overlay being blue by default and will alter the hue from that. If your overlay default color is different it will not exactly change to the color you may be intending. We are working on making this better to support different default overlay colors.

Twitch Viewers that have helped contribute to the project (in no particular order):

Want to contribute? Check out our Code of Conduct and Contributing docs. This project follows the all-contributors specification. Contributions of any kind welcome!

Thanks goes to these wonderful people (emoji key):

Contributors

Thanks goes to these wonderful people (emoji key):

Jake Nylund
Jake Nylund

๐Ÿ’ป
Michael Jolley
Michael Jolley

๐Ÿ’ป
CodemanCodes
CodemanCodes

๐Ÿ’ป
jaredpsimpson
jaredpsimpson

๐Ÿ’ป
Edward Evans
Edward Evans

๐Ÿ’ป
Nicholas March
Nicholas March

๐Ÿ’ป
PatPat1567
PatPat1567

๐Ÿ›
Timmy Kokke
Timmy Kokke

๐Ÿ’ป
Michael duBois
Michael duBois

๐Ÿ’ป
Benjamin Lannon
Benjamin Lannon

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

ttv-chat-light's People

Contributors

allcontributors[bot] avatar bketelsen avatar clarkio avatar codemancodes avatar corbob avatar dependabot[bot] avatar eckerdj7 avatar eeevans avatar electrichavoc avatar jakegny avatar jaredpsimpson avatar lannonbr avatar michaelcdubois avatar michaeljolley avatar nmarch213 avatar oiyouyeahyou avatar pranavgoel29 avatar ripsquid avatar sorskoot avatar toefrog avatar wwsean08 avatar

Watchers

 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.