@Bumrud

Простой бот на телеграмм?

Доброе утро. Помогите понять и реализовать бот. Разделим на две части вопрос.
бот отправляет картинки, картинки разделены по группам, коты и собаки. клиент выбирает что будет получать. через какие методы лучше реализовать кнопки. как я понял 1 скрипт получает данные с клиента и сохраняет. как бот определяет кому какие картинки отправляет и не дублировать отправку в один клиент. Желательно это весь этот функционал за паролить на клиенте.

Можете описать в коротка или не в коротко, как можно реализовать это?
  • Вопрос задан
  • 1504 просмотра
Пригласить эксперта
Ответы на вопрос 2
@spikejke
1 - бот отправляет запрос для выбора контента картинок
@bot.message_handler(commands=['start']
def question(message):
    markup = types.ReplyKeyboardMarkup()
    buttondogs = types.KeyboardButton('dogs')
    buttoncats = types.KeyboardButton('cats')
    markup.add(buttondogs, buttoncats)
    bot.reply_to(message, "Animals", reply_markup=markup)

2 - На основе выбора пользователя выводим доступные картинки
@bot.message_handler(func=lambda message: message in ['dogs', 'cats']
def photo_animals(message):
    if message.text == 'dogs':
        bot.send_photo(message.chat.id, dog_photo_file_id, reply_to_message_id=message.message_id)
    if message.text == 'cats'
        bot.send_photo(message.chat.id, cat_photo_file_id, reply_to_message_id=message.message_id)

..._photo_file_id = уникальный идентификатор фотографии Его значение можно получить с помощью данной функции:
@bot.message_handler(content_types=['photo'])
def photo_field_id(message):
        print(message.photo[0].file_id)

Мы можем отправлять фотографии с помощью встроенной функции open, но сами разработчики телеграмма рекомендуют использовать file_id Pass a file_id as String to send a photo that exists on the Telegram servers (recommended)
Это самая простая реализация бота, как Вы реализуете зависит от Вашей фантазии.
Полезные ссылки :
https://core.telegram.org/bots/api
https://github.com/eternnoir/pyTelegramBotAPI
Ответ написан
Комментировать
SimonOsipov
@SimonOsipov
Через баги к коммиту!
Обратите внимание на Python Telegram Bot.
Там есть примеры, можете подсмотреть реализацию простейших ботов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы