Add spotify search (only search), default menu
This commit is contained in:
1
bot/handlers/inline_default/__init__.py
Normal file
1
bot/handlers/inline_default/__init__.py
Normal file
@@ -0,0 +1 @@
|
||||
from .on_inline_default import router
|
||||
38
bot/handlers/inline_default/on_inline_default.py
Normal file
38
bot/handlers/inline_default/on_inline_default.py
Normal file
@@ -0,0 +1,38 @@
|
||||
from aiogram import Router, Bot, F
|
||||
from aiogram.types import (
|
||||
InlineQuery, InlineQueryResultDocument, InlineQueryResultCachedAudio,
|
||||
InlineKeyboardMarkup, InlineKeyboardButton,
|
||||
)
|
||||
|
||||
from bot.modules.spotify import spotify
|
||||
from bot.modules.database import db
|
||||
|
||||
router = Router()
|
||||
|
||||
|
||||
@router.inline_query(F.query != '')
|
||||
async def default_inline_query(inline_query: InlineQuery, bot: Bot):
|
||||
await inline_query.answer(
|
||||
[
|
||||
InlineQueryResultDocument(
|
||||
id='spot::' + audio.id,
|
||||
title=audio.name,
|
||||
description=audio.all_artists,
|
||||
thumb_url=audio.thumbnail,
|
||||
document_url=audio.preview_url,
|
||||
mime_type='application/zip',
|
||||
reply_markup=InlineKeyboardMarkup(
|
||||
inline_keyboard=[
|
||||
[InlineKeyboardButton(text='Downloading...', callback_data='.')]
|
||||
]
|
||||
)
|
||||
) if audio.id not in list(db.spotify.keys()) else
|
||||
InlineQueryResultCachedAudio(
|
||||
id='spotc::' + audio.id,
|
||||
audio_file_id=db.spotify[audio.id],
|
||||
)
|
||||
for audio in spotify.songs.search(inline_query.query)
|
||||
],
|
||||
cache_time=0,
|
||||
is_personal=True
|
||||
)
|
||||
Reference in New Issue
Block a user