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.

Source Distribution

andesite.py-0.2.4.tar.gz (44.8 kB view details)

Uploaded Source

Built Distribution

andesite.py-0.2.4-py3-none-any.whl (52.9 kB view details)

Uploaded Python 3

File details

Details for the file andesite.py-0.2.4.tar.gz.

File metadata

  • Download URL: andesite.py-0.2.4.tar.gz
  • Upload date:
  • Size: 44.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for andesite.py-0.2.4.tar.gz
Algorithm Hash digest
SHA256 248cd2f02172042700c21633fd9835bddfa56f7c14ffe57c33e569e537d3c639
MD5 33b68a9050d72c5f414e7df83eaeda34
BLAKE2b-256 d8975ef266dd7c514f1d1a0535a1702fbbef3776ea89dbb9c7ff23c54c7b3ae8

See more details on using hashes here.

File details

Details for the file andesite.py-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: andesite.py-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 52.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.8.0 tqdm/4.36.1 CPython/3.7.4

File hashes

Hashes for andesite.py-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 05872b1eb5a51831bc76180641d2870bccc7f9ac483825eea2ac662d9ab85b31
MD5 82389f74d6cf2d27deea8e91f2fe6bb8
BLAKE2b-256 6e1e4b9c07a117c50f491d9ccdc77bd90e694791a2468e8e7026a1994940085d

See more details on using hashes here.

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