🔹 Java 8
🔹 Spring Boot
🔹 Spring Data JPA
🔹 JUint test
🔹 Maven
🔹 PostgreSQL
🔹 Telegram API
🔹 2GIS API
🔹 Docker
Travelator рассчитывает средний чек в заведениях общественного питания и среднюю стоимость проживания в отеле в городах России.
Кроме того, бот может показать вам примеры дорогих и недорогих заведений.
Это может быть полезно, когда вы планируете бюджет на путешествие.
Имя бота в telegram: @travel_cost_bot
Данные об организациях и средних чеках предоставлены компанией 2GIS. Спасибо им 💙
Для подключения к telegram и взаимодействия с telegram API используется библиотека Telegrambots spring boot starter
Бот обрабатывает сообщения, которые вводит пользователь и реагирует на них.
Когда пользователь просит рассчитать средние цены, бот обращается к API 2GIS посредством GET запроса. API несложно подменить, достаточно создать класс, который будет реализовывать интерфейс MapsAPI.
Полученный ответ десериализуется из json в java-объекты, по найденным заведениям высчитывается средняя цена.
Результаты поиска сохраняются в базе данных, это дает возможность пользователю вернуться позже и просмотреть список с примерами заведений из интересующего его города.
Все что нужно для запуска - docker compose. Находясь в корневой директории запустите скрипт:
bash start.sh
Готово!
🔹 Java 8
🔹 Spring Boot
🔹 Spring Data JPA
🔹 JUint test
🔹 Maven
🔹 PostgreSQL
🔹 Telegram API
🔹 2GIS API
🔹 Docker
Travelator calculates average check in cafes and hotels in Russian cities. Also, bot can show you examples of cheap and expensive establishments.
It can be useful when you budget your trip.
Bot's name in telegram: @travel_cost_bot
Information about establishments provided py 2GIS. Thank them 💙
For working with Telegram API I am using Telegrambots spring boot starter
Bot reacts on user's messages in chat.
When user asks to calculate prices, bot get information from 2GIS API by GET query.
Answer from API will be deserialized from json to java-objects. After that, average price will be calculated.
It's simple to use another API, you just need to create class that implements MapsAPI interface.
Searching results stores in database, so user can later watch the examples of establishments.
All you need to launch is docker compose. In root directory use command:
bash start.sh
Done!