Skip to main content

Lavalink API wrapper for discord audio playing

Project description

lavalink-rs

An API Wrapper for lavalink. Compatible with all tokio 1.x based discord crates or asyncio based discord python libraries.

To-Do

  • Streamable queue reader
  • Improve documentation with examples, better formatting, and fill in missing data
  • Expand event logging
  • Examples
  • Gitlab CI Tests
  • Implement abstractions for ease of use
  • Round-Robin node selection method
  • Region based node selection method
  • Main and fallback node selection method

Done

  • native_tls backend
  • Player queues
  • Readbale player queues
  • Search engine helpers
  • Write basic cocumentation
  • Songbird utilities
  • Serenity utilities
  • Twilight utilities
  • Load balancer node selection method
  • Lavasnek (PyO3)
  • Lavasnek events

Links to download stuff you will need

To install Lavalink, you can follow their getting started guide.

How to use

Install the version from crates.io:

lavalink-rs = "0.10"

# or

[dependencies.lavalink-rs]
version = "0.10.0"

Or the development release:

lavalink-rs = { git = "https://gitlab.com/vicky5124/lavalink-rs/", branch = "main"}

# or

[dependencies.lavalink-rs]
git = "https://gitlab.com/vicky5124/lavalink-rs/"
branch = "main"

If you wish to use a development version of songbird, add the following to the Cargo.toml:

[patch.crates-io.serenity]
git = "https://github.com/serenity-rs/songbird"
branch = "next"

To build for python, you can use maturin.

python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install maturin
maturin develop --target x86_64-unknown-linux-gnu

Features

  • user-data - default feature - Allows the client and player context to store custom user data.
  • rustls: default feature - Use rustls.
  • native-tls Use the system native tls.
  • serenity-rustls for serenity with rustls support.
  • serenity-native for serenity with native-tls support.
  • songbird for songbird support.
  • twilight for twilight-model support.
  • python for python3.8+ support.

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

lavasnek_rs-0.10.0.tar.gz (465.1 kB view hashes)

Uploaded Source

Built Distribution

lavasnek_rs-0.10.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB view hashes)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

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