Bluetooth Desktop Application for Logistics

Date: 2024-06-06

Tags

  • Python
  • Flask
  • Flask-Socketio
  • Sockets
  • Web sockets
  • User Management sytem
  • SQLite
  • Real time control system
  • Web Application
  • Logistics
  • Barcode Scanners

Summary

IMSI successfully delivered bluetooth desktop application for logistics using python Flask web framework, with Socket-IO to enable real time data update. Application is deployed on Windows tablet. It is designed to navigate fork lift drivers to move pallets of items to and from storage using interactive user interface. Application integrates with existing logistics server application using bluetooth to exchange messages and synchronise its databases.

On the back of successful delivery of full stack logistics control system last year, a manufacturer approached IMSI to develop an application that could run on tablet and integrate with their current logistic application to allow their fork lift drivers to navigate and move items to and from storage area. To meet this challenge we build bluetooth desktop application for logistics using python Flask web framework, with Socket-IO to enable real time data update. We also built three APIs to integrate the desktop application and server application using bluetooth. The three APIs interact with each other to asynchronously handle both scheduled and triggered data exchange between the two applications. To synchronise the databases we ensured that the database is updated only by server application and then copied accross to the desktop application. In the event where desktop application requested for a change, a bluetooth message is sent to server where API handles this request and updates the database then returns the status of updated database back to desktop application which then updates its local database. Changes to database by server are sent as status messages back to desktop application to update local database. Application also ensures automatic synchronisation between the two applications if the connection is lost due to any reason.