Не так выполняется питон код

Должен делаться анонимный чат по команде, а работает не корректно, выдают No one can hear you... на любой текст

import telebot
from telebot import types
token = 'тут токен'

bot = telebot.TeleBot(token)

freeid = None

users = {}
@bot.message_handler(commands=['start'])
def start_message(message):
    keyboard = telebot.types.ReplyKeyboardMarkup(True)
    keyboard.row('И тутт', 'И тут', 'Тут арбуз ')
    bot.send_message(message.chat.id, 'Привет!', reply_markup=keyboard)
    @bot.message_handler(content_types=['text'])
    def send_text(message):
        if message.text.lower() == 'И тутт':
            bot.send_message(message.chat.id, 'Арбуз')
        if message.text.lower() == 'и тут':
            bot.send_message(message.chat.id, 'И тут ')
        if message.text.lower() == 'Тут арбуз':
            bot.send_message(message.chat.id, 'И тут')
        if message.text.lower() == 'как':
            bot.send_message(message.chat.id, 'сука бот работай)
@bot.message_handler(commands=['find'])
def find(message: types.Message):
    global freeid

    if message.chat.id not in users:
        bot.send_message(message.chat.id, 'Finding...')

        if freeid == None:
            freeid = message.chat.id
        else:
            # Question:
            # Is there any way to simplify this like `bot.send_message([message.chat.id, freeid], 'Founded!')`?
            bot.send_message(message.chat.id, 'Founded!')
            bot.send_message(freeid, 'Founded!')

            users[freeid] = message.chat.id
            users[message.chat.id] = freeid
            freeid = None

        print(users, freeid)  # Debug purpose, you can remove that line
    else:
        bot.send_message(message.chat.id, 'Shut up!')


# `/stop` command handler
#
# That command stops your current conversation (if it exist)
#
# That command according to the following principle:
# 1. You have written `/stop` command
# 2. If you are not have active dialog or you are not in search, bot sends you 'You are not in search!'
# 3. If you are in active dialog:
#   3.1. Bot sends you 'Stopping...'
#   3.2. Bot sends 'Your opponent is leavin`...' to your opponent
#   3.3. {your_opponent_chat_id, your_chat_id} removes from `users`
#   3.4. {your_chat_id, your_opponent_chat_id} removes from `users`
# 4. If you are only in search:
#   4.1. Bot sends you 'Stopping...'
#   4.2. `freeid` updated with `None`
@bot.message_handler(commands=['stop'])
def stop(message: types.Message):
    global freeid

    if message.chat.id in users:
        bot.send_message(message.chat.id, 'Stopping...')
        bot.send_message(users[message.chat.id], 'Your opponent is leavin`...')

        del users[users[message.chat.id]]
        del users[message.chat.id]

        print(users, freeid)  # Debug purpose, you can remove that line
    elif message.chat.id == freeid:
        bot.send_message(message.chat.id, 'Stopping...')
        freeid = None

        print(users, freeid)  # Debug purpose, you can remove that line
    else:
        bot.send_message(message.chat.id, 'You are not in search!')


# message handler for conversation
#
# That handler needed to send message from one opponent to another
# If you are not in `users`, you will recieve a message 'No one can hear you...'
# Otherwise all your messages are sent to your opponent
#
# Questions:
# 1. Is there any way to improve readability like `content_types=['all']`?
# 2. Is there any way to register this message handler only when i found the opponent?
@bot.message_handler(
    content_types=['animation', 'audio', 'contact', 'dice', 'document', 'location', 'photo', 'poll', 'sticker', 'text',
                   'venue', 'video', 'video_note', 'voice'])
def chatting(message: types.Message):
    if message.chat.id in users:
        bot.copy_message(users[message.chat.id], users[users[message.chat.id]], message.id)
bot.polling()

Ответы (0 шт):