retroBot


NameretroBot JSON
Version 0.3.4 PyPI version JSON
download
home_pagehttps://github.com/retrontology/retroBot
SummaryA Twitch IRC bot integrating twitchAPI and irc
upload_time2023-01-29 09:17:26
maintainer
docs_urlNone
authorretrontology
requires_python>=3.6
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # retroBot
Python IRC Twitch bot module integrating [twitchAPI](https://github.com/Teekeks/pyTwitchAPI) and [irc](https://github.com/jaraco/irc).

## Installation
clone this repository
```
git clone https://github.com/retrontology/retroBot
```
install the dependencies
```
cd retroBot
pip install -r requirements.txt
```
install the module
```
python setup.py install
```

## Overview
The bot is split into two main components: the ``retroBot.retroBot`` and the ``retroBot.channelHandler``. These are designed as a base skeleton class to be subtyped.

``retroBot.retroBot`` is the bot itself, a subtype derived from ``irc.bot.SingleServerIRCBot`` and controls the main thread. 

A ``retroBot.channelHandler`` is created for each channel in the channels parameter passed to ``retroBot.retroBot`` constructor. One can also pass their own ``retroBot.channelHandler`` subtype to the ``retroBot.retroBot`` constructor via the handler parameter, which is ideal as the base handler class does nothing. The ``retroBot.retroBot`` instance, when started, passes messages to the respective channel handler instance in a new thread. 

There is also the ``retroBot.config`` module which needs to be imported separately. This is a simple dict subtype that can save and load itself from a yaml file. I personally use it to supply the bots with the information they need to run, but it's not required.

## Examples
There are a few examples in the [examples](https://github.com/retrontology/retroBot/tree/main/examples) directory
- ### [TwitchMarkov](https://github.com/retrontology/TwitchMarkov)
    A fork of [TwitchMarkov](https://github.com/metalgearsvt/TwitchMarkov) written in retroBot.
- ### [atton](https://github.com/retrontology/Atton-Rand-Bot)
    A Twitch bot that sends a message in a channel when the channel goes live.
- ### [twitchlogger](https://github.com/retrontology/twitchlogger)
    A Twitch bot that listens to selected channels and logs the messages to a pre-configured PostgreSQL database.
- ### test
    The simplest bot that does nothing. Used as a test when developing.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/retrontology/retroBot",
    "name": "retroBot",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "",
    "author": "retrontology",
    "author_email": "retrontology@hotmail.com",
    "download_url": "https://files.pythonhosted.org/packages/59/1e/32a447b80ff0401afe66b621add4cc86fc5d2700a8b8992188f5f0ca7706/retroBot-0.3.4.tar.gz",
    "platform": null,
    "description": "# retroBot\nPython IRC Twitch bot module integrating [twitchAPI](https://github.com/Teekeks/pyTwitchAPI) and [irc](https://github.com/jaraco/irc).\n\n## Installation\nclone this repository\n```\ngit clone https://github.com/retrontology/retroBot\n```\ninstall the dependencies\n```\ncd retroBot\npip install -r requirements.txt\n```\ninstall the module\n```\npython setup.py install\n```\n\n## Overview\nThe bot is split into two main components: the ``retroBot.retroBot`` and the ``retroBot.channelHandler``. These are designed as a base skeleton class to be subtyped.\n\n``retroBot.retroBot`` is the bot itself, a subtype derived from ``irc.bot.SingleServerIRCBot`` and controls the main thread. \n\nA ``retroBot.channelHandler`` is created for each channel in the channels parameter passed to ``retroBot.retroBot`` constructor. One can also pass their own ``retroBot.channelHandler`` subtype to the ``retroBot.retroBot`` constructor via the handler parameter, which is ideal as the base handler class does nothing. The ``retroBot.retroBot`` instance, when started, passes messages to the respective channel handler instance in a new thread. \n\nThere is also the ``retroBot.config`` module which needs to be imported separately. This is a simple dict subtype that can save and load itself from a yaml file. I personally use it to supply the bots with the information they need to run, but it's not required.\n\n## Examples\nThere are a few examples in the [examples](https://github.com/retrontology/retroBot/tree/main/examples) directory\n- ### [TwitchMarkov](https://github.com/retrontology/TwitchMarkov)\n    A fork of [TwitchMarkov](https://github.com/metalgearsvt/TwitchMarkov) written in retroBot.\n- ### [atton](https://github.com/retrontology/Atton-Rand-Bot)\n    A Twitch bot that sends a message in a channel when the channel goes live.\n- ### [twitchlogger](https://github.com/retrontology/twitchlogger)\n    A Twitch bot that listens to selected channels and logs the messages to a pre-configured PostgreSQL database.\n- ### test\n    The simplest bot that does nothing. Used as a test when developing.\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A Twitch IRC bot integrating twitchAPI and irc",
    "version": "0.3.4",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "591e32a447b80ff0401afe66b621add4cc86fc5d2700a8b8992188f5f0ca7706",
                "md5": "3f0b8a7adf68ac087797324567fdc2fd",
                "sha256": "983b2d0e5c0c9843b8d8a84f0742ab08fa1b2b97f1e119019bbdfe2633b759e1"
            },
            "downloads": -1,
            "filename": "retroBot-0.3.4.tar.gz",
            "has_sig": false,
            "md5_digest": "3f0b8a7adf68ac087797324567fdc2fd",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 22703,
            "upload_time": "2023-01-29T09:17:26",
            "upload_time_iso_8601": "2023-01-29T09:17:26.098941Z",
            "url": "https://files.pythonhosted.org/packages/59/1e/32a447b80ff0401afe66b621add4cc86fc5d2700a8b8992188f5f0ca7706/retroBot-0.3.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-01-29 09:17:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "retrontology",
    "github_project": "retroBot",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [],
    "lcname": "retrobot"
}
        
Elapsed time: 0.13824s