inline.py 文件源码

python
阅读 21 收藏 0 点赞 0 评论 0

项目:VocaBot 作者: bomjacob 项目源码 文件源码
def answer(bot, update, entries, offset='', switch_pm=None):
    if not switch_pm:
        switch_pm = (_('Click for help.'), 'help_inline')

    results = []

    for entry in entries:
        try:
            thumb = entry['mainPicture']['urlThumb']
        except KeyError:
            thumb = ''

        content = content_parser(entry, info=True, inline=True, bot_name=bot.username)
        if 'songType' in entry:
            description = _('{artist}\n{type} song').format(artist=entry['artistString'], type=entry['songType'])
            if 'favoritedTimes' in entry:
                description += ' ' + _('with {favorites} favourites').format(favorites=entry['favoritedTimes'])
            results.append(InlineQueryResultArticle(
                id=uuid4(),
                title=Emoji.MUSICAL_NOTE + ' ' + entry['name'],
                description=description,
                thumb_url=thumb,
                input_message_content=InputTextMessageContent(content, parse_mode=ParseMode.HTML,
                                                              disable_web_page_preview=True),
                reply_markup=song_keyboard(entry, inline=True)
            ))
        elif 'artistType' in entry:
            results.append(InlineQueryResultArticle(
                id=uuid4(),
                title=Emoji.MICROPHONE + ' ' + entry['name'],
                description='{type}'.format(type=entry['artistType']),
                thumb_url=thumb,
                input_message_content=InputTextMessageContent(content, parse_mode=ParseMode.HTML,
                                                              disable_web_page_preview=True),
                reply_markup=artist_keyboard(entry, inline=True)
            ))
        elif 'discType' in entry:
            description = '{artist}\n{type}'.format(artist=entry['artistString'], type=entry['discType'])
            results.append(InlineQueryResultArticle(
                id=uuid4(),
                title=Emoji.OPTICAL_DISC + ' ' + entry['name'],
                description=description,
                thumb_url=thumb,
                input_message_content=InputTextMessageContent(content, parse_mode=ParseMode.HTML,
                                                              disable_web_page_preview=True),
                reply_markup=album_keyboard(entry, inline=True)
            ))

    update.inline_query.answer(results=results,
                               cache_time=INLINE_CACHE_TIME,
                               is_personal=True,
                               next_offset=offset,
                               switch_pm_text=switch_pm[0],
                               switch_pm_parameter=switch_pm[1])
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号