The engine for developing bots for social networks, instant messengers and other systems.
Project description
Kutana
English | Русский
The engine for developing bots for social networks, instant messengers and other systems.
Nice foundation for bot using kutana engine - kubot.
Installation
python -m pip install kutana
Usage
- Create
Kutana
application and add managers. - Register your plugins in the executor. You can import plugin from folders
with function
load_plugins
. Files should be a valid python modules with availableplugin
field with your plugin (Plugin
) or fieldplugins
with list of instances ofPlugin
class. - Start application.
Example run.py
Token for VKManager is loaded from the file "configuration.json" and plugins are loaded from folder "plugins/"
from kutana import *
# Load configuration
with open("configuration.json") as fh:
config = json.load(fh)
# Create application
app = Kutana()
# Create and add VKManager to application
app.add_manager(VKManager(config["vk_token"]))
# Load and register plugins
app.register_plugins(load_plugins("plugins/"))
# Run application
app.run()
Example plugin (plugins/echo.py
)
from kutana import Plugin
plugin = Plugin(name="Echo")
@plugin.on_startswith_text("echo")
async def on_echo(message, env):
await env.reply("{}".format(env.body))
Available managers
- VKManager (for vk.com groups)
- TGManager (for telegram.org)
document
's type is nameddoc
inside of Kutana.TGAttachmentTemp
is used for storing attachments before sending them withsend_message
orreply
. Attachments can't be uploaded other way.- If you want to download file (attachment) from telegram, you have to use
TGEnvironment.get_file_from_attachment
.
Authors
- Michael Krukov - @michaelkrukov
- Other contributors
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
kutana-3.0.0.tar.gz
(26.2 kB
view hashes)
Built Distribution
kutana-3.0.0-py3-none-any.whl
(24.2 kB
view hashes)