create fm command
This commit is contained in:
parent
0908839fb8
commit
631ceb64ee
1 changed files with 35 additions and 0 deletions
35
main.py
35
main.py
|
|
@ -24,6 +24,41 @@ client = nerimity.Client(
|
||||||
async def ping(ctx: nerimity.Context):
|
async def ping(ctx: nerimity.Context):
|
||||||
await ctx.send("Pong!")
|
await ctx.send("Pong!")
|
||||||
|
|
||||||
|
# fm command
|
||||||
|
@client.command(name="fm", aliases=["np"])
|
||||||
|
@client.slash_command(name="fm", description="Shows what you're currently playing")
|
||||||
|
async def fm(ctx: nerimity.Context, params: str = ""):
|
||||||
|
username = ""
|
||||||
|
|
||||||
|
if params == "":
|
||||||
|
username = "kaaisudev"
|
||||||
|
else:
|
||||||
|
username = params
|
||||||
|
|
||||||
|
try:
|
||||||
|
track = network.get_user(username).get_now_playing()
|
||||||
|
if track == None:
|
||||||
|
now_playing = False
|
||||||
|
played_track = network.get_user(username).get_recent_tracks(limit=1)
|
||||||
|
track = played_track[0].track
|
||||||
|
|
||||||
|
else:
|
||||||
|
now_playing = True
|
||||||
|
|
||||||
|
track_url = track.get_url()
|
||||||
|
track_name = track.get_name()
|
||||||
|
track_artist = track.get_artist().get_name()
|
||||||
|
track_artist_url = track.get_artist().get_url()
|
||||||
|
|
||||||
|
if now_playing == True:
|
||||||
|
await ctx.send(f"Now playing for **{username}**: [{track_name}]({track_url}) by [{track_artist}]({track_artist_url})")
|
||||||
|
else:
|
||||||
|
await ctx.send(f"Last played for **{username}**: [{track_name}]({track_url}) by [{track_artist}]({track_artist_url})")
|
||||||
|
except IndexError:
|
||||||
|
await ctx.send("[#e5323b]Error: User has no recent tracks or they're set to private.")
|
||||||
|
except pylast.WSError:
|
||||||
|
await ctx.send("[#e5323b]Error: User not found.")
|
||||||
|
|
||||||
@client.listen("on_ready")
|
@client.listen("on_ready")
|
||||||
async def on_ready(params):
|
async def on_ready(params):
|
||||||
print(f"Logged in as {client.account.username}")
|
print(f"Logged in as {client.account.username}")
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue