The Flag is raised, and the package is awaiting unlocking/pickup by the customer!
The web app the delivery driver uses to scan packages they need to deliver
The SmartBox is ready to receive the package, and a flag shows when the item is placed
RGB Lighting is used as feedback to indicate the different states of the SmartBox, as well as Amazon Echo for notifications
A map is used to show the delivery driver the locations of the SmartBoxes
What it does
The SmartBox Delivery Service allows independent couriers and their customers to easily deliver and securely receive packages. The delivery person starts by scanning the package, and the system opens and reserves a SmartBox for them, for every package they scan. When they deliver the package in the SmartBox, an indicator shows its presence, and they can mark it as delivered to lock the box. The customer can then scan the SmartBox to unlock it and retrieve their package. Amazon Alexa is also used to notify the customer of different events throughout the delivery.
How we built it
Our system is comprised of 3 main components: the client application, the backend service, and the smart boxes themselves. We built it by leveraging Solace as a messaging service to enable instant communication between each component. This allows for instant notifications to the Amazon Echo, and perfect feedback when reserving, locking, and unlocking the SmartBox.
Challenges we ran into
We faced several challenges during development. The first was that the node.js client for Solace was difficult to use. After spending several hours trying to use it, we had to switch to another library and so, lots of time was lost. The second major challenge was that we first tried to use React Native to build our client application. We found it to be very tedious to setup and use as well. More specifically, we spent a lot of time trying to implement NFC in our app, but React Native did not seem to have any reasonable way of reading the tags. We therefore had to make a web-app instead, and switch to QR codes.
Accomplishments that we're proud of
We're proud of building a fully working hack that includes a good portion of hardware, which was difficult to get right. We're also happy we managed to leverage Solace, as IoT is a perfect application of their software, and empowers our hack.
What we learned
We learned about Solace and Publisher/Subscriber architecture, as well as making reactive hardware technology using arduino.