Skip to content
This repository was archived by the owner on Dec 31, 2021. It is now read-only.

isidentical-archive/chatat

Repository files navigation

Chatat

Features

  • Nice, cursed terminal ui.
  • Completly asynchronous
  • Connecting to multiple channels and listening them
  • Switching between channels
  • Quitting channels
  • Twitch Helix API
  • MACROS

Macros

You can register macros to certain events. For an example when a message posted to channel you can reply it like you are a bot. Create a python module in starting directory. The name doesn't matter. example_module.py

Import Macros for registering your macro and Actions for choosing event to register.

from chatat.macros import Macros
from chatat.twitch import Actions

And then register with Macros.macro

@Macros.macro(Actions.PRIVMSG)
def macro(*blabla):
    ...

The macro takes handler (for accessing services) and message (a chatat.twitch.Message object that holds message / author etc.)

def on_gnu(handler, message):
    lower_message = message.message.lower()
    author = message.author
    if "linux" in lower_message and "gnu" not in lower_message:
        ...

Send with handler.publisher

        handler.publisher.publish("outgoing", f"{author} dude; not linux, GNU/Linux")

Helix API

Current version supports usage of Twitch Helix API with a little wrapper.

await handler.helix.get(endpoint, **params) -> JSON Response
await handler.helix.get("streams", game_id=33214) -> {...}

About

Chat Client for Twitch w/MACROS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages