Member-only story
How I Use a Raspberry Pi, Pushover, and Puppeteer to Streamline Mundane Tasks.
Automate your life
In this post, I’ll walk you through my setup for automating several mundane everyday tasks, where the tasks range from reserving the laundry room to notifying me about today’s workout at my local Crossfit gym.
The focus of this post is on the general setup and process of developing and adding tasks, rather than digging into the specifics of how each task was automated. My setup relies on a Raspberry Pi for running the scripts associated with the tasks, Pushover for sending native notifications to my phone, and Puppeteer for scraping and interacting with websites.
What is it I’m trying to automate?
In my case, all tasks I’m automating can be divided into two general categories: Scheduled tasks and Continuous tasks.
Both share the same general structure in that they require you to go to a website (perhaps having to log in), then do some kind of information retrieval, and maybe perform some kind of action (e.g. pressing a button).
Scheduled tasks are all of the things that I do with a set interval between them. Examples of this are every morning checking what today’s CrossFit workout will be, or each Sunday evening making a reservation for the laundry room for the upcoming week. These are the types of tasks that are easy to forget, it’s just stuff that I do and that in many cases involve navigating slow and cumbersome websites.
Continuous tasks on the other hand are a bit more intricate but still mind-numbingly boring. These types of tasks involve continuously performing some type of check and then depending on what’s found executing an action. An example of this was when I was taking my driver’s license. Appointments for the driver’s test were not available except for 3 months ahead. However, now and then new appointments would be made available due to people canceling their appointments, making them available for others to book. This required me to check the website several times a day, looking to see if there was any new appointment made available for the next couple of weeks.