@Bumrud

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

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

Можете описать в коротка или не в коротко, как можно реализовать это?
  • Вопрос задан
  • 1528 просмотров
Пригласить эксперта
Ответы на вопрос 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.
Там есть примеры, можете подсмотреть реализацию простейших ботов.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы