Как сделать? 1. Что бы я получал информацию какой пользователь пользовался ботом? 2. Что бы без подписки на канал не были доступны кнопки

Всех приветствую, подскажите пожалуйста?

  1. Что бы я получал информацию какой пользователь пользовался ботом, например ссылку на его профиль в TG или же номер телефона?
  2. Как заблокировать все действия в боте до тех пор пока пользователь не подпишется на канал? Что бы к примеру не было доступно меню бота пока не будет подписки на канал.
from telebot import types
token='-'
bot = telebot.TeleBot(token)

@bot.message_handler(commands=['start'])
def start(message):
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    btn1 = types.KeyboardButton("❓ Что я могу?")
    btn2 = types.KeyboardButton("? Список объектов")
    btn3 = types.KeyboardButton("? Обратная связь")
    markup.add(btn1, btn2, btn3)
    bot.send_message(message.chat.id, text="Привет, {0.first_name}! Я Ваш личный помощник для того что бы подготовить материалы по объекту и Вы могли передать их клиенту".format(message.from_user), reply_markup=markup)
    
@bot.message_handler(content_types=['text'])
def func(message):
    if(message.text == "❓ Что я могу?"):
        bot.send_message(message.chat.id, text="Я могу показать вам все актуальные объекты недвижимости в Сочи")
    elif(message.text == "? Обратная связь") :
        bot.send_message(message.chat.id, text="Если вы нашли несоответствие или хотите добавить объект недвижимости сообщите это создателю @igor_jurievich_01")
    elif(message.text == "? Список объектов"):
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        btn1 = types.KeyboardButton("Семейный")
        btn2 = types.KeyboardButton("Каравелла Португалии")
        btn3 = types.KeyboardButton("Летний")
        btn4 = types.KeyboardButton("Весна")
        btn5 = types.KeyboardButton("Моне")
        btn6 = types.KeyboardButton("Фрукты")
        back = types.KeyboardButton("Вернуться в главное меню")
        markup.add(btn1, btn2, btn3, btn4, btn5, btn6, back)
        bot.send_message(message.chat.id, text="Выберете объект из предложенного списка", reply_markup=markup)
    
    elif(message.text == "Семейный"):
        bot.send_message(message.chat.id, "Самое дешевое предложение по ЖК Семейный = 6.230.470 руб Ссылка на источник : https://app.nedvex.ru/building/3107")
    
    elif message.text == "Каравелла_Португалии":
        bot.send_message(message.chat.id, text="Самое дешевое предложение по ЖК Каравелла_Португалии = 8.820.000 руб Ссылка на источник : https://app.nedvex.ru/building/2617")

    elif message.text == "Летний":
        bot.send_message(message.chat.id, text="Самое дешевое предложение по ЖК Летний = 5.335.500 руб Ссылка на источник : https://app.nedvex.ru/building/3745")

    elif message.text == "Весна":
        bot.send_message(message.chat.id, text="Самое дешевое предложение по АК Весна = 17.790.000 руб Ссылка на источник : https://app.nedvex.ru/building/3866")

    elif message.text == "Моне":
        bot.send_message(message.chat.id, text="Самое дешевое предложение по СКК Моне = 17.790.000 руб Ссылка на источник : https://app.nedvex.ru/building/3665")

    elif message.text == "Фрукты":
        bot.send_message(message.chat.id, text="Самое дешевое предложение по ЖК Фрукты = 13.335.000 руб Ссылка на источник : https://app.nedvex.ru/building/3423")
    
    elif (message.text == "Вернуться в главное меню"):
        markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
        button1 = types.KeyboardButton("❓ Что я могу?")
        button2 = types.KeyboardButton("? Список объектов")
        button3 = types.KeyboardButton("? Обратная связь")
        markup.add(button1, button2, button3)
        bot.send_message(message.chat.id, text="Вы вернулись в главное меню", reply_markup=markup)
    else:
        bot.send_message(message.chat.id, text="На такую комманду я не запрограммирован")

bot.polling(none_stop=True)

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