Skip to main content

Async IRC Client

Project description

AsyncIRCClient

Async (Twitch-) IRC client

First async code so takee everything with a bit of caution

Example usage

from async_irc_client.async_irc_client import TwitchIRCBot, Message
from loguru import logger


class MyBot(TwitchIRCBot):

    # subscribe to twitch's irc events
    async def on_client_ready(self, message: Message) -> None:
        logger.info("Bot is Ready")

    # create commands
    @TwitchIRCBot.command("test")
    async def test_command(self, message: Message) -> None:
        self.send_chat_message(f"Hello World {message.source.nick}")

    # mod only command
    @TwitchIRCBot.command("mod_test", mod_only=True)
    async def mod_test_command(self, message: Message) -> None:
        self.send_chat_message(f"Hello World mod {message.source.nick}")

    # repeat a task
    # runs once the client is ready and after the specified time interval
    # here 1000s
    @TwitchIRCBot.loop(1000)
    async def my_task(self):
        logger.info("Hello World")


if __name__ == "__main__":
    MyBot(oauth_token="YOURTOKEN", nick_name="BOTNAME", channel="CHANNELNAME").run()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

AsyncIRCClient-0.0.4.tar.gz (8.3 kB view hashes)

Uploaded Source

Built Distribution

AsyncIRCClient-0.0.4-py3-none-any.whl (8.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page