- Due bug in the Taikai editor, I was unable to insert images inline but provide them as links
- Unfortunately due mistake, the video presentation was explored without sound
Welcome to the project Digital Exchange (DX)
This project aims to dramatically improve the speed of validation of digital passenger tickets from WienMobil application. It uses only Bluetooth and its beacons technology to broadcast encrypted user id from WienMobil application to inspector application when passenger approach inspection in the proximity of 10m, configurable.
On inspector application backend query will be made with received id's to check for user ticket validity and passengers will be instantly notified that their ticket has been validated by receiving an SMS message from WienerLinien backend. If a user doesn't want to use Bluetooth beacons there are options to add the widget to the home/lock screen for faster QR code scanning, reducing the time needed for showing the digital ticket.
Digital Exchange Advantages:
- All done in the background, the user id is broadcasted to the inspectors automatically when the passenger reaches the inspector at proximity around 10m
- Speed, in test environment 10 validations per second where recorded
- Security, using encryption and one-time-code that has been sent to the passenger in SMS, validation and verification is secure
- GDPR Compliant, the approach is checked against strict privacy and data protection regulations
- Cross-platform, Bluetooth beacons work great on Android and iOS
- Works offline, no internet connection is needed for passenger, no Bluetooth pairing or similar
Let's see how Digital Exchange looks in action
WienMobil - Digital Exchange
Represents current WienMobil application extended with additional features, Bluetooth beacons in "Tickets" section and new Widget with QR code as an alternative. The new "Auto Validation" feature enables a user to simply with one click turn on Bluetooth broadcast of their ID to inspectors in case of ticket inspections. Broadcasting user ID can work in the background even when the application is shut down and the phone is locked. To use this option user consent is needed (runtime permission) and Bluetooth need to be enabled but no further action by the user is necessary.
WienerLinien Inspector application on the other side starts ticket control and receive Bluetooth user ID of nearby passengers, instantly verifying their tickets on the backend over REST API and sending verification SMS back to passengers. The whole process is running automatically and the inspector just needs to verify the one-time-code that has been sent to the passenger. A big advantage is that SMS notification is visible on the lock screen and WienMobil DX app creates a high-priority notification with special full-screen activity when the phone receives a verification SMS code from WienerLinien.
The following diagram represents the top-level overview of how the whole process works:
- Passenger/User enable "Auto Validation" in WienMobil
- The inspector in proximity start ticket inspection
- The ticket inspector app generates 4 digits random verification code
- The ticket inspector app receives nearby passengers ID using a Bluetooth listener
- The ticket inspector app sends verification code and passenger ID to the Wiener Linien backend,
- Wiener Linien backend decides does the user have a valid ticket and if so send the user an SMS message that ticket validation was successful with verification code inside SMS. If the user doesn't have a valid ticket, the backend sends a different message notifying the user to prepare for the ticket inspection
- The user shows SMS (possible from the lock screen) or open notification received with SMS and shows it to the Wiener Linien Inspector