Существует ли более элегантный способ узнать время Телеграм, когда пользователь нажал inline-кнопку, кроме применяемого мной? Пока использую неуклюжую конструкцию:
msg = bot.send_message(callback.message.chat.id, 'Производится поиск...')
add_new_user_sequence(callback.message.chat.id, callback.from_user.id, msg.date, seq_name)
т.е. по нажатию инлайн-кнопки бот отправляет, а потом удаляет сообщение, а уже из этого сообщения извлекается время. При этом появляется и исчезает это сообщение, что немного раздражает.
Использовать
time.time() не хочется, чтобы избежать конфликта с Телеграм при неправильно установленном времени на локальной машине пользователя.
Код:
def start_sequence_by_button(callback, seq_name):
msg = bot.send_message(callback.message.chat.id, 'Производится поиск...')
msg.from_user.id = get_btn_owner_id(callback)
bot.delete_message(msg.chat.id, msg.id)
delete_user_sequence(callback.message.chat.id, callback.from_user.id)
add_new_user_sequence(callback.message.chat.id, callback.from_user.id, msg.date, seq_name)
# нужно установить это время --> msg.date
process_sequence(msg, 0, False)
@bot.callback_query_handler(func=lambda callback: callback.data.startswith('btn_find'))
def answer_callback(callback):
if btn_is_not_correct(callback):
return
start_sequence_by_button(callback, seq_find)