mafic 2.10.0

Creator: bradpython12

Last updated:

Add to Cart

Description:

mafic 2.10.0

Mafic








A properly typehinted lavalink client for discord.py, nextcord, disnake and py-cord.
Installation
pip install mafic


Note
Use python -m, py -m, python3 -m or similar if that is how you install packages.
Generally windows uses py -m pip and linux uses python3 -m pip

Discord Server
Join the Discord Server for support and updates.
Documentation
Read the docs.
Features

Fully customisable node balancing.
Multi-node support.
Filters.
Full API coverage.
Properly typehinted for Pyright strict.

Usage
Go to the Lavalink Repository
to set up a Lavalink node.
import os

import mafic
import nextcord
from nextcord.ext import commands


class MyBot(commands.Bot):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)

self.pool = mafic.NodePool(self)
self.loop.create_task(self.add_nodes())

async def add_nodes(self):
await self.pool.create_node(
host="127.0.0.1",
port=2333,
label="MAIN",
password="<password>",
)


bot = MyBot(intents=nextcord.Intents(guilds=True, voice_states=True))


@bot.slash_command(dm_permission=False)
async def play(inter: nextcord.Interaction, query: str):
if not inter.guild.voice_client:
player = await inter.user.voice.channel.connect(cls=mafic.Player)
else:
player = inter.guild.voice_client

tracks = await player.fetch_tracks(query)

if not tracks:
return await inter.send("No tracks found.")

track = tracks[0]

await player.play(track)

await inter.send(f"Playing {track.title}.")


bot.run(...)

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.