Вы можете сделать функции en и ru не просто функциями, а также и коммандами для бота при помощи декоратора @bot.message_handler(commands=["ru"])
, где "ru" - это коммада для вызова функции. Вы также можете использовать несколько комманд для одной функции @bot.message_handler(commands=["ru", "ру", "russion", "русский"])
, функция ru с таким декоратором будет срабатвать на комманды /ru, /ру, /russion, /русский.
Также если я не ошибаюсь если перед каким либо словом в сообщении идёт '/', то телеграм воспринимает его как комманду, и при нажатии на этот текст на мобильных устройствах эта комманда автоматически отправиться(насчёт компьютерной версии телеграм я не уверен). Вот Ваш код с нужными декораторами:
import telebot
import config
bot = telebot.TeleBot(config.token)
@bot.message_handler(commands=["start"])
def hello(message):
bot.send_message(message.chat.id, '/en\n/ru')
@bot.message_handler(commands=["en"])
def en(message):
bot.send_message(message.caht.id, "you choose en")
@bot.message_handler(commands=["ru"])
def ru(message):
bot.send_message(message.caht.id, "you choose ru")
bot.infinity_polling()