Skip to main content

Andesite client for Python

Project description

andesite.py

CircleCI GitHub release PyPI

A Python client library for Andesite. andesite.py tries to be as flexible as possible while still providing the same, consistent API. The library comes with built-in support for discord.py, but it can be used with any library of your choice.

The goodies

  • Pythonic, fully typed API including all Andesite "entities"
  • Client pools with balancing and even state migration. If one node goes down its players are seamlessly migrated to another one.
  • Custom state handlers. andesite.py doesn't force you to use its state manager, not even for the client pools. It provides you with a solid in-memory one, but you can swap it out however you want.
  • Future-proof design so that if the library becomes outdated it still remains usable.

Installation

You can install the library from PyPI using pip:

pip install andesite.py

Look & Feel

The following is a small example of how to use andesite.py. For more in-depth examples and information, please refer to the documentation.

Please keep in mind that the following example is incomplete. It only serves to demonstrate some andesite.py code.

import asyncio

import andesite


client = andesite.create_client(
    "http://localhost:5000",            # REST endpoint
    "ws://localhost:5000/websocket",    # WebSocket endpoint
    None,                               # Andesite password
    549905730099216384,                 # Bot's user id
)

async def main() -> None:
    result = await client.search_tracks("your favourite song")
    track_info = result.get_selected_track()

    # notice that we haven't called any sort of connect method. You can
    # of course manually connect the client, but if you don't, that's no
    # biggie because andesite.py will do it for you.
    await client.play(track_info.track)

asyncio.run(main())

Documentation

You can find the documentation on the project's website. Click here to open the documentation.

You can also take a look at the examples directory for a reference.

Alternatives

If andesite.py isn't what you're looking for, first of all, please leave some feedback, but secondly here are some alternative Python client libraries which you can use:

Project details


Download files

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

Files for andesite.py, version 0.2.4
Filename, size File type Python version Upload date Hashes
Filename, size andesite.py-0.2.4-py3-none-any.whl (52.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size andesite.py-0.2.4.tar.gz (44.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page