Skip to content

Latest commit

 

History

History
39 lines (20 loc) · 2.9 KB

calculating_bot_for_telegram.md

File metadata and controls

39 lines (20 loc) · 2.9 KB

RoR: бот-калькулятор для Telegram

Условия выполнения задания

  • Выполнить задание нужно на Rails (на языке Ruby).

  • Использовать библиотеки для создания Телеграм-ботов нельзя.

  • Чтобы сдать задание, нужно:

    • ссылку на исходный код под лицензией Apache 2.0 в каком-либо открытом git-репозитории (GitHub, GitLab, Bitbucket);

    • ссылку на работающего бота (в качестве бесплатного хостинга можно использовать, например, Heroku);

    • решения нескольких задач (условия приведены в форме).

  • Срок выполнения задания — чем скорее, тем лучше :) Откладывать в долгий ящик не надо, но и торопиться сделать все за один день не обязательно. Мы рассчитываем, что за неделю вы справитесь, но если справитесь за две — ничего страшного.

Задание

Напишите ​Телеграм-бота,​ который отображает в окне Телеграма примитивный кнопочный калькулятор:

  • кнопки цифр 0-9;

  • кнопки арифметических действий (+, -);

  • кнопка сброса (AC).

Реализация основывается на двух возможностях Телеграма:

  • редактировать ранее отправленные сообщения;

  • показывать многоуровневые «клавиатуры» из кнопок.

При нажатии стандартной кнопки «Start» бот отправляет пользователю сообщение с текстом «0» и клавиатурой. Пользователь никаких сообщений боту не отправляет, только нажимает кнопки, что приводит к редактированию исходного сообщения: если нажать кнопки 1 и 3, например, текст сообщения поменяется на «13». Аналогично с арифметическими действиями.

Обратите внимание: вам не нужно писать разбор арифметического выражения, простые калькуляторы этого не делают.

Внимание: разные пользователи могут пользоваться калькулятором независимо, для каждого из них должна храниться своя версия состояния.