University Name: http://www.sjsu.edu/
Course: Cloud Technologies
Professor: Sanjay Garje
Students:
“Live life with no excuses, travel with no regrets” – Oscar Wilde. Many travelers plan to travel different places around the world during different times of the year. Planning your travel is a major work. Once the traveler decides the location of his travel, he must check individually with each travel agency for itinerary and the budget. Which consumes lot of time. Due to which the user will end up visiting few websites. If more travel plans are available under single platform then there is exposure for various travel companies and their plans.
Wouldn’t it be easier if somebody planned your trip? And all you must do is pack and leave. In this platform, just mention your specifications. To make this happen both users and travel agency will have to register with our platform. We are using AWS cloud services for developing and hosting a 3-Tier Web Application called Travelezy. It has role-based login for travel companies and travelers. The travel companies upload their itinerary after being a valid user. The travelers can register with the web application to view the travel plans which is matched for them by AWS Lex chatbot, taking traveler’s requirements to plan a travel.
- New users are allowed to create new account using Sign up. A new user row/record is created in RDS. Sign up id restricted if registered user tries to sign up.
- Only allows users who are registered to login via Login Page. Authentication for username and password match is achieved. Role-based login is aided to redirect users to their respective pages.
- Travel Companies can upload travel itinerary which includes photos, place, month of travel and budget.
- User Dashboard page provides lex chatbot, which takes user requirements and to provide them with matching travel plan.
- By using Amazon Lex and Polly our platform increases the user interaction.
- Travel users Home Page displays all the travel images uploaded by Travel Companies. Images are displayed from CloudFront.
- Lex interacts with lambda to retrieve the travel plans uploaded by the company while matching it with the users input.
- Users can post review and photos for the travel plans they availed, which is stored in S3 bucket.
- Machine learning predicts user’s interests based on the reviews provided by them, which in turn helps Travel Companies to modify their plans.
User signup:
Company signup:
Login Page:
User Dashboard:
User Lex bot:
Travel Plans:
Specific travel plan:
Company Dashboard:
Machine learning analysis:
- EC2, AutoScale Group
- ELB
- Route 53
- S3, IA, Glacier
- CloudFront
- Elasticbeanstalk
- Codepipeline
- Codebuild
- Amazon Machine Learning
- DynamoDB
- RDS
- Lambda
- Lex
- Polly
- Cloudwatch
- CloudTrail
- SNS
- IAM
- API gateway
- Server Side: Spring Boot, REST, Java, AWS Java SDK, Apache Tomcat
- Client Side: HTML5, JavaScript, Bootstrap, CSS
- Database: RDS MySQL, Hibernate, DynamoDB
- Build Tool: Maven
- Web Server: Apache Tomcat 8.5
- Prerequisite Software: Java8 Runtime, Maven, Eclipse, MySQL 5.7.
- Code is download from GitHub.
- Use maven project in eclipse
- applications.properties should be changed with your MySQL URL, Username and Password.
- application.properties should also be changed with your access key and secret.
- For social logins update the developer account URL.
- Change credentials for machine learning and lex in code
- Run the instructions mvn clean and maven update
- Then run application as java application
- Application will be accessible for you at http://localhost:8080/