def query_text(inline_query): try: r = types.InlineQueryResultArticle('1', 'Result1', types.InputTextMessageContent('hi')) r2 = types.InlineQueryResultArticle('2', 'Result2', types.InputTextMessageContent('hi')) bot.answer_inline_query(inline_query.id, [r, r2]) except Exception as e: print(e)
def query_text(inline_query): if len(inline_query.query) == 0: r = types.InlineQueryResultArticle( "1", "▶️ Start", types.InputTextMessageContent("Press 'Join'"), reply_markup = roomview.render_invite_keyboard() ) bot.answer_inline_query(inline_query.id, [r]) elif len(inline_query.query) > 0: defins = defmode.get_def(inline_query.query) if len(defins) > 0: cut_defins = defmode.get_cut_def(defins) params = defmode.get_params(defins, cut_defins, inline_query) bot.answer_inline_query(inline_query.id, params) else: r = types.InlineQueryResultArticle( "1", "Word is not found", types.InputTextMessageContent('{} trying to find {}'.format(inline_query.from_user.first_name, inline_query.query)), reply_markup = None ) bot.answer_inline_query(inline_query.id, [r])
def _show_inline_list(bot: TeleBot, query: InlineQuery, botan_key: str): """Sending inline list to user.""" inline_query: list = [ types.InlineQueryResultArticle( id='1', title="Информация о компании Хогарт", description="Информация о компании Хогарт", input_message_content=types.InputTextMessageContent(message_text=texts.contact) ), types.InlineQueryResultArticle( id='2', title="Адрес компании", description="Адрес центрального офиса в Москве", input_message_content=types.InputTextMessageContent(message_text=texts.where_hogart) ), types.InlineQueryResultArticle( id='3', title="Склад Бутово", description="Адрес склада в Бутово", input_message_content=types.InputTextMessageContent(message_text=texts.store_butovo) ), types.InlineQueryResultArticle( id='4', title="Склад Нева", description="Адрес склада в Санкт-Петербурге", input_message_content=types.InputTextMessageContent(message_text=texts.store_neva) )] bot.answer_inline_query(query.id, inline_query) if not botan_track(botan_key, query.id, None, 'Inline режим'): logging.error('botan problem')
def query_text(inline_query): r = types.InlineQueryResultArticle( '1', 'Instagram', types.InputTextMessageContent('Instagramni bosdingiz')) r2 = types.InlineQueryResultArticle( '2', 'Telegram', types.InputTextMessageContent('Telegramni bosdingiz')) bot.answer_inline_query(inline_query.id, [r, r2], cache_time=1)
def search_inline(inline_query): results_push = list() try: yt_results = YtSearch( inline_query.query, inline_query.from_user.language_code).perform_search() if len(yt_results) <= 0: results_push.append( types.InlineQueryResultArticle( "Nothing found son, try again something else").reply_markup ) else: for idx, res_dict in enumerate(yt_results): duration = int("".join( filter(str.isdigit, res_dict['vid_duration']))) if duration < 3800: results_push.append( types.InlineQueryResultArticle( thumb_url=res_dict['vid_thumbnail'], description='ytid:' + res_dict['vid_id'] + ' ' + res_dict['vid_duration'], title=res_dict['vid_title'], id=idx, input_message_content=types. InputTextMessageContent(message_text='/give' + res_dict['vid_id']))) bot.answer_inline_query(inline_query.id, results_push) except Exception as e: print(e)
def solitaire(query): username = query.from_user.username user_chat_id = query.from_user.id try: # check whether user in any group, but can't play personal mode chat_id = in_group(username, user_chat_id, games) if not chat_id: raise NotJoinGame if chat_id in games: if query.from_user.username == games[chat_id].get_current_player(): start_with = games[chat_id].get_current_word()[-1] if query.query[0] == start_with: inline_button = make_inline_button(query.query) response = [ types.InlineQueryResultArticle( 0, query.query, types.InputTextMessageContent(query.query), reply_markup=inline_button) ] bot.answer_inline_query(query.id, response, cache_time=1) else: raise StartWithError(start_with) else: raise NotCurrentPlayerError else: print(games, chat_id) raise NotStartGameError except Exception as error: response = [ types.InlineQueryResultArticle( 0, str(error), types.InputTextMessageContent('illegal action')) ] bot.answer_inline_query(query.id, response, cache_time=1)
def query_text(query): try: CourseList.parse_text(query.query) except AttributeError as e: return text = query.query.upper().split() try: if course.update(text): result = types.InlineQueryResultArticle( id='0', title="Конвертор", description=str(course.value), input_message_content=types.InputTextMessageContent( message_text=str(course.value))) else: result = types.InlineQueryResultArticle( id='0', title="Не формат", description="Формат: 'число' 'валюта из' 'валюта в'", input_message_content=types.InputTextMessageContent( message_text='')) bot.answer_inline_query(query.id, [result]) except Exception as e: if bot.debug(): bot.query_error(query.id, e)
def handle_inline_query(inline_query): default_word = dictionary.getWordOfTheDay() inline_answers = [] if default_word: default_result = types.InlineQueryResultArticle( '1', 'Word of the day', types.InputTextMessageContent( '*' + default_word['word'] + '*\n' + default_word['definitions'], parse_mode='markdown' ), description=default_word['word'] ) inline_answers = [default_result] query_word = inline_query.query if query_word or query_word != '': reply = make_reply('/define ' + query_word) desc = reply if reply == 'Word not found.' else None query_result = types.InlineQueryResultArticle('2', query_word, types.InputTextMessageContent( reply, parse_mode='markdown' ), description=desc ) inline_answers = [query_result] wordbot.answer_inline_query(inline_query.id, inline_answers)
def query_text(inline_query): try: i = 0 result = [] print ('searching ' + inline_query.query) r = requests.get(PHP_URL + inline_query.query) salida = r.text.split("\n") if "PHP: Manual Quick Reference" in salida[7] : inicio = salida.index('<ul id="quickref_functions">') + 1 fin = salida.index('<!-- result list end -->') - 1 for x in range(inicio, fin): re_list = re.compile(r'<li><a href="(.*)">(.*)</a></li>') f_list = re_list.findall(salida[x]) func = f_list[0][1].replace("<b>", "").replace("</b>", "") url = 'https://php.net' + f_list[0][0] result.append(types.InlineQueryResultArticle(str(i), func, types.InputTextMessageContent(func + " " + url))) i = i + 1 else: for x in range(0, len(salida)): if '<base href' in salida[x]: linea = x re_list = re.compile(r'<base href="(.*)">') f_list = re_list.findall(salida[linea]) url = f_list[0] func = inline_query.query result.append(types.InlineQueryResultArticle('1', func, types.InputTextMessageContent(func + " " + url))) print (': Found ' + str(len(result)) + ' results') bot.answer_inline_query(inline_query.id, result) except Exception as e: print(e)
def manga_chap(in_id, name, page): url = holy + name lis = count_chapters(url) chapters_name = list(lis.keys()) total = len(chapters_name) r = [] if total > 50 * page: for i in range(50 * (page - 1), 50 * page): r.append( types.InlineQueryResultArticle( i + 1, chapters_name[i][:20] + "..." + chapters_name[i][-20:], types.InputTextMessageContent('/read ' + lis[chapters_name[i]]))) elif (total > 50 * (page - 1) and 50 * page > total): for i in range(50 * (page - 1), total): r.append( types.InlineQueryResultArticle( i + 1, chapters_name[i][:20] + "..." + chapters_name[i][-20:], types.InputTextMessageContent('/read ' + lis[chapters_name[i]]))) elif total < 50 * (page - 1): r.append( types.InlineQueryResultArticle( 1, "Page out of range", types.InputTextMessageContent("oops!! Wrong page"))) bot.answer_inline_query(in_id, r)
def handle_inline_query(bot, inline_query): yandex_icon = "https://lh5.ggpht.com/g40UQh7fmsg0oLRNpF4b06zeGBOwerbepCXTPz-HSwTSBBZzPODjzjJWkDUrX2v6p60=w300" bot_icon = "https://telegram.org/file/811140614/2/flKQKZ7xUOE.27938.gif/5574a04570218c9e11" language = language_settings.get_user_language( user_id=inline_query.from_user.id) translated_text = yandexAPI.translate(language, inline_query.query) try: translation = types.InlineQueryResultArticle( '1', 'translation', types.InputTextMessageContent(translated_text), thumb_url=yandex_icon, thumb_width=48, thumb_height=48) suggestion = types.InlineQueryResultArticle( '2', 'bot contact', types.InputTextMessageContent( 'for language setup https://telegram.me/TranslateInBot'), thumb_url=bot_icon, thumb_width=48, thumb_height=48) bot.answer_inline_query(inline_query.id, [translation, suggestion]) except Exception as e: print(e)
def hola(inline_query): r1 = types.InlineQueryResultArticle( '1', 'Titulo1', types.InputTextMessageContent("Respuesta")) r2 = types.InlineQueryResultArticle( '2', 'Titulo2', types.InputTextMessageContent("Respuesta2")) bot.answer_inline_query(inline_query.id, [r1, r2])
def handle_inline(self, query): try: query_word = query.get('query') default_word = self.getWordOfTheDay() inline_answers = [] if default_word: default_result = types.InlineQueryResultArticle( '1', 'Word of the day', types.InputTextMessageContent( '*' + default_word['word'] + '*\n' + default_word['definitions'], parse_mode='markdown' ), description=default_word['word'] ) inline_answers = [default_result] if query_word or query_word != '': reply = self.make_reply('/define ' + query_word) desc = reply if reply == 'Word not found.' else None query_result = types.InlineQueryResultArticle('2', query_word, types.InputTextMessageContent( reply, parse_mode='markdown' ), description=desc ) inline_answers = [query_result] self.bot.answer_inline_query(query.get('id'), inline_answers) except Exception as e: pass
def query_text(inline_query): try: r1 = types.InlineQueryResultArticle('1', '查看当前统计(Beta)(不会即时更新)', types.InputTextMessageContent(getstat(0))) r2 = types.InlineQueryResultArticle('2', '您正在使用 inline 模式,请输入内容以便生成', types.InputTextMessageContent('?')) bot.answer_inline_query(inline_query.id, [r1, r2], cache_time=360) except Exception as e: logging.error(e)
def query_text(query): try: data = {} choice = query.query data = finder.find(choice) desc = 'Поиск: ' + data["name"] text = 'Поиск по: ' + query.query + '\n\n*' + str( data["name"] ) + ' (' + str( data["num"] ) + ' номер в таблице)\n' + '*' + 'Русское название: ' + '*' + data[ "Rname"] + '*' + '\nЛатинское название: ' + '*' + data[ "Lname"] + '*' + '\nАнглийское название: ' + '*' + data[ "Ename"] + '*' + '\nДата открытия: ' + '*' + str( data["Birth"] ) + '*' + '\nЭлектронная оболочка: ' + '*' + data[ "Eshell"] + '*' + '\nСтепень окисления: ' + '*' + data[ "Doxi"] + '*' + '\nАтомная масса: ' + '*' + data[ "Amass"] + ' (г/моль)' + '*' + '\nПлотность: ' + '*' + data[ "density"] + ' (г/см³)' + '*' + '\nТемпература плавления: ' + '*' + data[ "Tmelting"] + '°C' + '*' + '\nТемпература кипения: ' + '*' + data[ "boil"] + '°C' + '*' r = types.InlineQueryResultArticle( '1', desc, types.InputTextMessageContent(text, parse_mode="MARKDOWN")) bot.answer_inline_query(query.id, [r]) rate.append(data["name"]) except: er = 'Поиск по: ' + query.query + '\n\nЭлемент не найден!' r2 = types.InlineQueryResultArticle( '2', title='Ошибка!', description='Элемент не найден!', input_message_content=types.InputTextMessageContent(er)) bot.answer_inline_query(query.id, [r2])
def handle_inline_query(inline_query): default_word = dictionary.get_word_of_the_day() inline_answers = [] if default_word: default_result = types.InlineQueryResultArticle( '1', 'Word of the day', types.InputTextMessageContent('{}\n\n{}'.format( bold(default_word['word']), format_definitions(default_word)), parse_mode='markdown'), description=default_word['word']) inline_answers = [default_result] query_word = inline_query.query if query_word or query_word != '': reply = make_reply('/define ' + query_word) desc = reply if reply == 'Word not found.' else None query_result = types.InlineQueryResultArticle( '2', query_word, types.InputTextMessageContent(reply, parse_mode='markdown'), description=desc) inline_answers = [query_result] try: wordbot.answer_inline_query(inline_query.id, inline_answers) except Exception as e: logging.error(e) logging.error(inline_query)
def query_text(inline_query): try: api = os.environ['keyC'] payload = {'key': api} r=requests.get("https://www.worldcoinindex.com/apiservice/json",params=payload) doc = r.json() markets=doc['Markets'] moneda1='Bitcoin' moneda2='Ethereum' for i in markets: if i['Name'] == moneda1: nombre1=i['Name'] dolar1=i['Price_usd'] euro1=i['Price_eur'] volumen1=i['Volume_24h'] frase1='%s tiene un precio de: 💵 %d USD, 💶 %d EUR, con un volumen 💸 de %d en las ultimas 24h' % (nombre1,dolar1,euro1,volumen1) elif i['Name'] == moneda2: nombre2=i['Name'] dolar2=i['Price_usd'] euro2=i['Price_eur'] volumen2=i['Volume_24h'] frase2='%s tiene un precio de: 💵 %d USD, 💶 %d EUR, con un volumen 💸 de %d en las ultimas 24h' % (nombre2,dolar2,euro2,volumen2) r = types.InlineQueryResultArticle('1', 'cryptos Bitcoin', types.InputTextMessageContent(frase1)) r2 = types.InlineQueryResultArticle('2', 'cryptos Etherum', types.InputTextMessageContent(frase2)) bot.answer_inline_query(inline_query.id, [r, r2]) except Exception as e: print(e)
def query(query): try: if str(query.from_user.id) in tabchi: if int(query.query) == int(config["tabchi"]["DB"]): markup = types.InlineKeyboardMarkup() main = types.InlineKeyboardButton(text="Info", callback_data="info") setdata = types.InlineKeyboardButton(text="Set Datas", callback_data="setdata") markup.add(main, setdata) r1 = types.InlineQueryResultArticle( '1', "Panel :|", types.InputTextMessageContent( 'Welcome to Panel Choose One :D '), reply_markup=markup) tb.answer_inline_query(query.id, [r1]) else: tb.answer_inline_query(query.id, [ types.InlineQueryResultArticle( '1', "You aren't Sudo", types.InputTextMessageContent("Sick")) ]) except Exception as e: print(e)
def qq(q): text = q.query thumbb = 'http://lettergenerator.net/alphabetletters/bold/printable-letter-asap-b.jpg' thumbc = 'http://lettergenerator.net/alphabetletters/bold/printable-letter-forque-c.jpg' thumbi = 'http://lettergenerator.net/alphabetletters/bold/printable-letter-newtown-i.jpg' bold = types.InlineQueryResultArticle('1', 'Bold', types.InputTextMessageContent( '*{}*'.format(text), parse_mode="Markdown"), description='{}'.format(text), thumb_url=thumbb, thumb_width=20, thumb_height=20) code = types.InlineQueryResultArticle('2', 'Code', types.InputTextMessageContent( '```{}```'.format(text), parse_mode="Markdown"), description='{}'.format(text), thumb_url=thumbc, thumb_width=20, thumb_height=20) italic = types.InlineQueryResultArticle('3', 'Italic', types.InputTextMessageContent( '_{}_'.format(text), parse_mode="Markdown"), description='{}'.format(text), thumb_url=thumbi, thumb_width=20, thumb_height=20) bot.answer_inline_query(q.id, [bold, code, italic], cache_time=1)
def query_text(query): text = str.lower(query.query) print('запрос слова ' + text) for i in range(len(self.eng)): if text.find(self.eng[i]) == 1: translate = self.ru_translator.translate(text) anc = types.InlineQueryResultArticle( id='1', title="Слово/Фраза: \n '{}'".format(text), description="Результат перевода:\n {}".format( translate), input_message_content=types.InputTextMessageContent( message_text= 'Слово/Фраза "{}"\n переводится как "{}"'.format( text, translate))) self.bot.answer_inline_query(query.id, [anc]) elif text.find(self.rus[i]) == 1: translate = self.en_translator.translate(text) anc = types.InlineQueryResultArticle( id='1', title="Слово/Фраза: \n '{}'".format(text), description="Результат перевода:\n {}".format( translate), input_message_content=types.InputTextMessageContent( message_text= 'Слово/Фраза "{}"\n переводится как "{}"'.format( text, translate))) self.bot.answer_inline_query(query.id, [anc])
def create_inline_results_personal_audio(q: types.InlineQuery, db_conn: Database) \ -> List[Union[types.InlineQueryResultCachedVoice, types.InlineQueryResultArticle]]: inline_results = [] sql_read = Constants.DBStatements.DB_AUDIOS_READ_FOR_QUERY_BUILD % str( q.from_user.id) result = db_conn.read_all(sql_read) if len(result) > 0: for audio in result: markup = types.InlineKeyboardMarkup() markup.add( types.InlineKeyboardButton("Description", callback_data=audio[3])) inline_results.append( types.InlineQueryResultCachedVoice(str(audio[2]), audio[0], audio[1], reply_markup=markup)) else: message = FileProcessing('data/help.txt', Constants.FileType.REG).read_file() inline_results.append( types.InlineQueryResultArticle( 1, "No entries for personal audios", types.InputTextMessageContent(message))) inline_results.append( types.InlineQueryResultArticle( 2, "You can type to get a TextToSpeech audio", types.InputTextMessageContent(message))) inline_results.append( types.InlineQueryResultArticle( 3, "Or add a personal audio chatting me privately", types.InputTextMessageContent(message))) return inline_results
def query_text(inline_query): try: print(inline_query) send_name, from_id = get_sender_name_and_id(inline_query) txt = get_time() if txt == '睡觉': txt = '晚安' txt1 = "[{send_name}](tg://user?id={from_id}) 向 大家 道 {txt}~".format( send_name=send_name, from_id=from_id, txt=txt) greeting1 = types.InlineQueryResultArticle( '1', '向大家问好', types.InputTextMessageContent(txt1, parse_mode="Markdown")) if len(inline_query.query) != 0: if inline_query.query[0] == '@': txt2 = "{send_name} 向 {reply_name} 道 {txt}~".format( send_name=send_name, reply_name=inline_query.query, txt=txt) greeting2 = types.InlineQueryResultArticle( '2', '向{reply_name}问好'.format( reply_name=inline_query.query), types.InputTextMessageContent(txt2)) bot.answer_inline_query(inline_query.id, [greeting1, greeting2], cache_time=0, is_personal=False) else: bot.answer_inline_query(inline_query.id, [greeting1], cache_time=0, is_personal=False) except Exception as e: print(e)
def query_text(inline_query): try: if not inline_query.query: return ans1 = convert(inline_query.query) ans2 = brat(inline_query.query) ans3 = rrr(inline_query.query) title1 = ans1.split('\n')[0] title2 = ans2 title3 = ans3 now = str(datetime.now()) r1 = types.InlineQueryResultArticle( 'k' + now, title1, types.InputTextMessageContent(ans1), thumb_url= 'https://github.com/los16dura/losika_bot/blob/master/title_1.jpg?raw=true' ) r2 = types.InlineQueryResultArticle( 'b' + now, title2, types.InputTextMessageContent(ans2), thumb_url= 'https://github.com/los16dura/losika_bot/blob/master/title_2.jpg?raw=true' ) r3 = types.InlineQueryResultArticle( 'r' + now, title3, types.InputTextMessageContent(ans3), thumb_url= 'https://github.com/los16dura/losika_bot/blob/master/title_3.jpg?raw=true' ) bot.answer_inline_query(inline_query.id, [r1, r2, r3]) except Exception as e: print(e)
def query_competitions(inline_query): try: date = time.gmtime(time.time()) month, year = date.tm_mon, date.tm_year competitions = news.get_competitions(month, year) logger.info(str(len(competitions))) if len(competitions) < 10: if month == 12: month = 1 year += 1 else: month += 1 competitions += news.get_competitions(month, year) queries = [ types.InlineQueryResultArticle( '111', 'Google-таблица стартов и одноклубников', description='Показать ссылку', input_message_content=types.InputTextMessageContent( news.club_calendar(), parse_mode='html')) ] for i, comp in enumerate(competitions, 1): queries.append( types.InlineQueryResultArticle( str(i), comp[0], description=comp[1], input_message_content=types.InputTextMessageContent( comp[2], parse_mode='html'))) bot.answer_inline_query(inline_query.id, queries, cache_time=30000) except Exception as e: logger.error(e)
def query_text(query): if query.from_user.id == 224976780 or query.from_user.id == 172064503: id = query.from_user.id user = query.from_user.username name = query.from_user.first_name test = types.InlineQueryResultArticle( '1', 'Admin', types.InputTextMessageContent( 'Your Are A *Admin*\nYour Name: {}\nYour Rank: *Admin*'.format( name), parse_mode='Markdown'), thumb_url='http://yon.ir/kXyZ') bot.answer_inline_query(query.id, [test], cache_time="10") else: err = types.InlineQueryResultArticle('1', 'Member', types.InputTextMessageContent( ''' *Umbrella Copy Project Team* This user is `Normal` Member ''', parse_mode='Markdown'), thumb_url='http://yon.ir/kXyZ') bot.answer_inline_query(query.id, [err], cache_time="10")
def query_text(inline_query): try: r = types.InlineQueryResultArticle('1', 'Result', inline_query.query) r2 = types.InlineQueryResultArticle('2', 'Result2', inline_query.query) bot.answer_inline_query(inline_query.id, [r, r2]) except Exception as e: print(e)
def query_text(inline_query): try: r = types.InlineQueryResultArticle('1', 'Manhã', types.InputTextMessageContent('Bom dia!')) r2 = types.InlineQueryResultArticle('2', 'Tarde', types.InputTextMessageContent('Boa tarde!')) r3 = types.InlineQueryResultArticle('3', 'Noite', types.InputTextMessageContent('Boa noite!')) bot.answer_inline_query(inline_query.id, [r, r2, r3], cache_time=1) except Exception as e: print(e)
def query_text(inline_query): r = types.InlineQueryResultArticle( '1', 'Result', types.InputTextMessageContent('Result message.')) r2 = types.InlineQueryResultArticle( '2', 'Result2', types.InputTextMessageContent('Result message2.')) r3 = types.InlineQueryResultAudio('3', PFAD, "yeet") bot.answer_inline_query(inline_query.id, [r, r2, r3]) print("inline triggered")
def query_text(inline_query): try: r1 = types.InlineQueryResultArticle('1', '查看当前统计(Beta)(不会即时更新)', types.InputTextMessageContent(getstat(0))) r2 = types.InlineQueryResultArticle('2', '您正在使用 inline 模式,请输入内容以便生成', types.InputTextMessageContent('?')) bot.answer_inline_query(inline_query.id, [r1, r2], cache_time=360) except Exception as e: rid = getReportID() traceback.print_exc() logging.error(str(rid + '::' + str(repr(e)) + '\n' + traceback.format_exc()))
def query_text(inline_query): try: r = types.InlineQueryResultArticle( '1', 'Result', types.InputTextMessageContent('privet')) r2 = types.InlineQueryResultArticle( '2', 'Result2', types.InputTextMessageContent('privet')) bot.answer_inline_query(inline_query.id, ['kak dela', 'bratan']) except Exception as e: print(e)