Airbnb checkout reminder
Disclaimer
Airbnb-checkout-reminder will no longer be maintained and it would not work as expected in the future. The reason for this is that it's extremely difficult to bypass Gmail/Airbnb api protections. They uses their own api protection mechanism, such as RECHAPCHA and Airlock. It means your app can suddenly stop working at any moment throwing errors such as 'Cannot find element: xxx timeout 30000s'. I'm currently working on version2 of this app which doesn't uses either Gmail or Airbnb api.
Features
- It sends predefined check-in/check-out messages at a set time
- It responds to certain type of messages like reservation-confirmation and sends gmail notification after finishing the job
Read More
Getting Started
If you're interested and want to build your own on your local machine or whatever, Then follow the instructions below.
-
Copy
.env.example
and change the content of itcp .env.example .env # now change the content of .env file
-
Download
service-account-key.json
in whatever path you specified in.env
.Checkout creating-managing-service-account-keys for more info.
service-account-key
is required to use Cloud Translation Api. -
Downalod
oauth2.keys.json
under root directory.Checkout Using OAuth 2.0 to Access Google APIs for more info.
This is required to get OAuth 2.0 Access for your Gmail account.
-
Find your
GOOGLE_PROJECT_ID
in the GCP dashboardReplace
GOOGLE_PROJECT_ID
in your.env
file. -
Make sure you've created label for all of your airbnb mails
Checkout create filtering rules for more info.
And add its id in
.env
file. (replaceAIRBNB_MAIL_LABEL_ID
) -
(Optional) If you want to receive error logs via Gmail notification,
you can create filter to contain the word "에러" which means "error" in english.This is optional step but you'll find this helpful when you can't access Airbnb inbox.
Tips
-
Use Google Chrome RemoteDesktop service when you're using GCP VMs and want to debug in with GUI.
-
Transfer files, ex. credentials keys through GoogleDrive when needed.
-
Manage your node process with PM2. They are definitely goto solution for managing node processes.
Closing
If you have any question or suggestion, please leave an issue.