Hospitable: Smart lock system for Property Management System
Reading Time: 3 minutes
Client’s Location: Europe
Technologies: PHP Laravel, MySQL, Webhooks, Docker
Services: Web Service development, Digital Ocean, GitLab, Sentry.io, Grafana
Project duration: September 2021 – ongoing
Team size: Project Manager, 2 Backend developers
Background: Hospitable is a property management system and an automation platform that is actively expanding and adding new unique features. As for the initial request, the client wanted to create a middleware app that will serve as an integration between the main application and the vendors on smart locks connectivity so that the property owners and managers who use the PMS are able to further facilitate the creation of reservations for their guests. Due to the unfortunate development experience approximately a year ago, the client decided to abandon this idea after 5 months of work. But they returned to the concept in the mid of 2021 and cooperated with the ASD team. Hence, our team started working on the project, coding the functionality from scratch, having defined it as the independent part of the project, where the specific team works in the self-organized way and communicates with the client directly via the Project Manager on the weekly basis.
After thorough project analysis and comprehensive communication with the client, we defined two main business tasks: the first one was to develop the functionality where Property Manager connects the smart locks to his account, and the second part of the functionality covered the smart locks administration during the reservation. That allows the hassle-free check-in on the exact day with the help of the unique pin code assigned to each guest. If we consider the technical part of the task, we had to develop the service the main monolith app would communicate with as a general matter, while our app would communicate with the different gateways.
For that reason, we developed a standalone application that would receive the incoming data from one side and transfer it to the another, while the returning data has to be unified in terms of the main application regardless of where we receive it from. Simply put, when the user creates a reservation in the main app that contains the smart locks, the data is transferred to the server that supports the locks. After that, the guest receives the check-in information. In general, there are many providers of such smart locks and to integrate the client’s PMS with them, it would have been required to code each integration separately, and to configure each key during the reservation process as well. However, our client decided to put the locks communication service on the proxy app that was developed by ASD. Thus, when the reservation is created, the information about it is transferred to the new app, while the info about who to communicate with and how as well as parameters are available only for the proxy. Therefore, after the release the locks are being added to the system and everything works automatically. As a part of our service, we provided the connection between PMS and the service account of the smart locks vendor.
On the ground of this, the client received: