Eind maart ging ik naar een hackathon bij Universal Studios. We een systeem waar gasten de wachtrij lijn omzeilen kunnen door het invullen van een reeks taken die zou leiden hen rond het land dat de rit is gecreëerd waar de gemiddelde invultijd was 66% van de huidige rit wachttijd. Dit systeem trekt mensen uit de wachtrij lijn terwijl het verstrekken van de stimulans van een meer rijke ervaring, minder uitvaltijd en potentieel minder wachttijd. Dat klinkt natuurlijk allemaal fancy, maar zonder het daadwerkelijk tonen van de technologie achter een dergelijk systeem, is het nog steeds gewoon een idee.
Of is het?
In de video, kan je me aantonen dat de ruggengraat van deze zeer systeem zien. Het maakt gebruik van iBeacons trigger acties, zowel op de telefoon en in de omgeving. De telefoon is verantwoordelijk voor de voortgang van de gast van locatie tot locatie verplaatsen door de erkenning van bepaalde iBeacons. Zodra de gast heeft elke taak voltooid, een unieke iBeacon handtekening verzendt naar een Microsoft Azure SQL-database, en de gast verloopt een speciale ingang van de rit. Hier wordt van de gast telefoon nu een iBeacon uitzenden van de unieke uitloggen. Zodra de gateway-apparaat een iBeacon detecteert, het controleert of de tegen de Azure database. Als er een match, signalen het milieu dat toegang is toegestaan, en de handtekening wordt verwijderd uit de database. Als er niet een wedstrijd, wordt de gast is afgewend. Alleen voor gasten die de taken kunnen invoeren, en ze kunnen niet vaker dan eenmaal per voltooiing invoeren.
In deze instrucable, zal ik u tonen hoe te bouwen en testen van de gateway-apparaat met behulp van een Raspberry Pi, iPhone en Bluetooth LE dongle. Zullen we:
- Leer hoe te verzenden en zoeken van iBeacons met de Raspberry Pi en Python3
- Leer hoe de Raspberry Pi verbinden met Azure met Python3
- Maak een nieuwe Azure SQL-database en Azure Mobile Service
- Sluit alle stukken te laten samenwerken om te vormen van onze gateway
Dingen die je zal nodig:
- Een goed functionerende Raspberry Pi (bij voorkeur B of B +) met Raspbian verbonden met het internet
- Een Bluetooth LE USB-dongle
- Een account van Microsoft Azure
- Een iPhone in werking stellend iOS 8 + (manifestatiecode is geschreven in Swift)
- Optioneel maar aanbevolen: Apple Developer account sideload het demo-app van iOS
- Optioneel: een Blink(1) USB-dongle of enig ander middel vermelding van de status van het programma
De code voor dit project kan worden gevonden op mijn GitHub pagina.
Heb een Android telefoon? Kijk op de laatste pagina.