def get_user_coordinates(update, context): context.user_data['emoji'] = get_smile(context.user_data) coords = update.message.location update.message.reply_text( f"Лисичка нашла твои координаты {context.user_data['emoji']}: долгота {coords['longitude']}, широта {coords['latitude']}!", reply_markup=create_fox_keyboard() )
def talk_to_me(update, context): context.user_data['emoji'] = get_smile(context.user_data) user_text = update.message.text update.message.reply_text( f"Ты говоришь Лисичке *{user_text}*.\nИ Лисичка отвечает тебе _{user_text}_! {context.user_data['emoji']}", parse_mode='MARKDOWN', reply_markup=create_fox_keyboard() )
def greet_user(update, context): logging.info('Вызван /start') context.user_data['emoji'] = get_smile(context.user_data) update.message.reply_text( f"Здравствуй, пользователь {context.user_data['emoji']}! Ты вызвал команду /start", reply_markup=create_fox_keyboard() )
def anketa_skip(update, context): user_text = format_anketa(context.user_data["anketa"]) update.message.reply_text(user_text, reply_markup=create_fox_keyboard(), parse_mode=ParseMode.HTML) return ConversationHandler.END
def send_picture_with_cat(update, context): cat_images_list = glob('images/cat-*.jp*g') cat_filename = choice(cat_images_list) # ID чата с конкретным пользователем chat_id = update.effective_chat.id context.bot.send_photo( chat_id=chat_id, photo=open(cat_filename, 'rb'), reply_markup=create_fox_keyboard() )
def get_wordcount(update, context): user_text = update.message.text user_text = user_text.replace("/wordcount", '') logging.info(user_text) if not isinstance(user_text, str): return update.message.reply_text('Ой, кажется ты ввёл не строку') stripped_text = user_text.strip() if len(stripped_text) == 0: return update.message.reply_text('Похоже ты ввёл пустую строку!') res_text = stripped_text.split() update.message.reply_text( f'Лисичка посчитала, в твоей строке {len(res_text)} слов!', reply_markup=create_fox_keyboard() )
def print_planet_place(update, context): user_text = update.message.text text_data = user_text.split() if not len(text_data) > 1: return update.message.reply_text( "Эй, ты забыл дать мне название планеты, так я ничего не найду!") planet_name = text_data[1].strip() if not hasattr(ephem, planet_name): return update.message.reply_text( "К сожалению Лисичка не знает такую планету :(") # 'Mars', 'Earth', 'Mercury', 'Venus', 'Jupiter', # 'Neptune', 'Saturn', 'Uranus', 'Pluto' planet_data = getattr(ephem, planet_name) current_date = date.today() planet_data = planet_data(current_date) constellation = ephem.constellation(planet_data) update.message.reply_text( f'Планета *{planet_name}* сейчас в *{constellation}*.', parse_mode='MARKDOWN', reply_markup=create_fox_keyboard() )