IBeacon porttelefon med Raspberry Pi och Azure
I slutet av mars gick jag till en hackathon på Universal Studios. Vi skapat ett system där gäster kunde förbifartsleden kö linjen genom att fylla i en serie som skulle leda dem runt landet Ritten är i där den genomsnittliga sluttid var 66% av nuvarande rida väntetid. Detta system drar människor från kön lina samtidigt som den ger incitament för en mer rik erfarenhet, mindre stillestånd, och potentiellt mindre väntetid. Det låter naturligtvis alla fancy, men utan faktiskt visar tekniken bakom ett sådant system, är det fortfarande bara en idé.
Eller är det?
I videon kan du se mig Visa ryggraden i just detta system. Den använder iBeacons att utlösa åtgärder både på telefonen och i miljön. Telefonen är ansvarig för gästens uppföljningsprocessen flytta från plats till plats genom att erkänna vissa iBeacons. När gästen har avslutat varje uppgift, skickar den en unik iBeacon signatur till en Microsoft SQL Azure-databas, och gästen fortsätter till en sakkunnig hänrycker av åkturen. Här, blir gästens telefon nu en iBeacon sänder den unika signiture. När gatewayenheten upptäcker en iBeacon, kontrollerar det mot Azure-databas. Om det är en match, signalerar miljön får, som signaturen tas bort från databasen. Om det inte en match, är gästen vände bort. Endast gäster som slutför uppgifter tillåts komma in, och de kan inte ange mer än en gång per slutförande.
I denna instrucable, ska jag visa dig hur man bygger och testa gatewayenheten med en Raspberry Pi, iPhone och LE Bluetooth dongle. Kommer vi att:
- Lär dig att överföra och söka efter iBeacons med Raspberry Pi och Python3
- Lär dig hur du ansluter Raspberry Pi till Azure med Python3
- Skapa en ny SQL Azure-databas och Azure Mobile Service
- Anslut alla bitar ihop till vår gateway
Saker du behöver:
- En fungerande Raspberry Pi (helst B eller B +) med Raspbian ansluten till internet
- En Bluetooth LE USB dongle
- Ett Microsoft Azure-konto
- En iPhone som kör iOS 8 + (demonstrationen koden är skriven i Swift)
- Valfri men rekommenderas: Apple utvecklarkonto till sideload iOS demo app
- Tillval: en Blink(1) USB-dongle eller andra sätt att ange program status
Koden för detta projekt kan hittas på min GitHub sida.
Har en Android-telefon? Kolla in den sista sidan.