A python package for creating Twitch Bots
Project description
#Jarvis
This is the repository for Jarvis, the twitch bot.
##Getting Started
The simplest way to get started is to create a new file, with the basic code below:
from jarviscore.client import Client
jarvis = Client(nick="yourbotsname",
token="yourbotstoken",
channels=["a list", "of channels", "to connect to"])
jarvis.start()
As an alternative, better practice would be to make use of a config file to store your settings and loading them into the bot when you start.
Use the following code for your bot as a starter.
from jarviscore.client import Client
from jarviscore import Settings
setting = Settings()
jarvis = Client(nick=setting.get_setting("nick"),
token=setting.get_setting("token"),
channels=setting.get_setting("channels"))
jarvis.start()
Next, create a file called config.json
and use the following template to get started
{
"name": "yourbotsname",
"token": "yourbotstoken",
"channels": [
"a list", "of channels", "to connect to"
]
}
If you prefer, you may use a config.yaml
file instead.
##Custom Commands
You can create your own custom commands and interactions for your bot using the Jarvis Core.
Create a folder called Commands
in the same location as your bot file like so,
+-- root
| |-- bot.py
| |-- config.json
| +-- Commands
| |-- command1.py
| +-- command2.py
Then, copy the following boiler plate text to get started. This example implements a simple ping command.
Note: All Commands need to implement setup()
and teardown()
, both take channel as a parameter.
from jarviscore import Command, Log
from jarviscore.message import CommandMessage
log = Log("CORE:Ping", verbose="log")
class Ping(Command):
def __init__(self, channel):
Command.__init__(self, "Ping")
self.channel = channel
def on_command(self, data: CommandMessage):
if "ping" == data.KEYWORD:
self.channel.send("pong")
def setup(channel):
channel.load_command(Ping(channel))
log.log(f"[{channel.name}]: Loaded Module Ping")
def teardown(channel):
log.log(f"[{channel.name}]: Removed Module Ping")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for jarviscore-0.1.1.25-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3acc08311efef3c44f482414afc733e843ad1acd3fd9ab4efc12f57bb2a7ba1 |
|
MD5 | 59c01cb7af03ab50f719aaf74e95078e |
|
BLAKE2b-256 | 658ea20e6a0a48e4f2a2d10fb6df59baffc19e53f644ae1a1bdcab800d6bcc58 |