1.1. Бот поможет выбрать оптимальный отель в любом уголке мира.
1.2. Пользователю доступны 4 вида запросов:
- /lowprice - топ самых дешёвых отелей в городе,
- /highprice - топ самых дорогих отелей в городе,
- /bestdeal - топ отелей, наиболее подходящих по цене и расположению от центра (самые дешёвые и находятся ближе всего к центру);
- /history - история поиска отелей
2.1. При выборе запроса /lowprice бот предложит ввести название города. Если города с таким названием в базе данных нет, бот предложит ввести название ещё раз.
2.2. После названия города бот предложит ввести количество показываемых отелей (до 25). Если количество отелей не будет целым числом от 1 до 25, бот предложит ввести количество ещё раз.
2.3. После количества показываемых отелей бот спросит, необходимо ли показать фото каждого отеля.
2.4. При подтверждении демонстрации фото каждого отеля бот предложит ввести количество показываемых фото (до 10). Если количество фото не будет целым числом от 1 до 10, бот предложит ввести количество ещё раз.
2.5. Бот выведет название города и информацию по отелям (название отеля, адрес, расстояние от отеля до центра города, цена проживание, а также фото, если в запросе была указана необходимость вывода фото) в порядке возрастания цены проживания от самой низкой цены.
2.6. Дата, время, вид запроса, а также результаты поиска записываются в файл истории поиска отелей.
3.1. При выборе запроса /highprice бот предложит ввести название города. Если города с таким названием в базе данных нет, бот предложит ввести название ещё раз.
3.2. После названия города бот предложит ввести количество показываемых отелей (до 25). Если количество отелей не будет целым числом от 1 до 25, бот предложит ввести количество ещё раз.
3.3. После количества показываемых отелей бот спросит, необходимо ли показать фото каждого отеля.
3.4. При подтверждении демонстрации фото каждого отеля бот предложит ввести количество показываемых фото (до 10). Если количество фото не будет целым числом от 1 до 10, бот предложит ввести количество ещё раз.
3.5. Бот выведет название города и информацию по отелям (название отеля, адрес, расстояние от отеля до центра города, цена проживание, а также фото, если в запросе была указана необходимость вывода фото) в порядке убывания цены проживания от самой высокой цены.
3.6. Дата, время, вид запроса, а также результаты поиска записываются в файл истории поиска отелей.
4.1. При выборе запроса /bestdeal бот предложит ввести название города. Если города с таким названием в базе данных нет, бот предложит ввести название ещё раз.
4.2. После названия города бот предложит ввести максимальную цену проживания (USD). Если цена проживания не будет положительным целым числом, бот предложит ввести цену ещё раз.
4.3. После максимальной цены проживания бот предложит ввести максимальное расстояние от отеля до центра города (км). Если расстояние не будет положительным целым числом, бот предложит ввести расстояние ещё раз.
4.4. После максимального расстояния от отеля до центра города бот предложит ввести количество показываемых отелей (до 25). Если количество отелей не будет целым числом от 1 до 25, бот предложит ввести количество ещё раз.
4.5. После количества показываемых отелей бот спросит, необходимо ли показать фото каждого отеля.
4.6. При подтверждении демонстрации фото каждого отеля бот предложит ввести количество показываемых фото (до 10). Если количество фото не будет целым числом от 1 до 10, бот предложит ввести количество ещё раз.
4.7. Бот выведет название города и информацию по отелям (название отеля, адрес, расстояние от отеля до центра города, цена проживание, а также фото, если в запросе была указана необходимость вывода фото) в порядке возрастания расстояния от отеля до центра города от наименьшего расстояния с ценой проживания не выше указанной максимальной цены.
4.8. Дата, время, вид запроса, максимальная цена проживания, максимальное расстояние от отеля до центра города, а также результаты поиска записываются в файл истории поиска отелей.
5.1. При выборе запроса /history бот выведет историю поиска отелей. При отсутствии истории поиска отелей бот выведет сообщение, что поисковые запросы не вводились.