We are an event ticketing company and for some events we use the CountMeIn App ([login to view URL]) to count the number of people who enter and leave rooms at the event, so that we can stop people entering when it reaches capacity. The CountMeIn app works well, however since it must be installed from the App Store it creates problems with our enterprise devices which cannot easily access the store. We want a simple web-based replacement.
The journey:
* Operator opens the app
* Operator types the text key for a counter (ie "truck show")
- If the counter exists already, they join the existing counter, if it doesn't exist it is created
* The app shows the counter's key, and the number of people in the room
* Whenever a person enters the room they push a "+" button and the displayed count increases
* Whenever a person leaves the room they push a "-" button and the displaced count decreases
- Regardless of whether they push "+" or "-" the device will vibrate to give tactile feedback when pushed
* Since the room may have multiple doors (perhaps a seperate entry and exit door) there are multiple operators using the website from multiple separate phones incrementing/decrementing the count concurrently
* At the end of the day, if the count is not exactly zero, the operator would push a "Reset" button, and after confirmation the count would be reset to 0
Technical requirements:
* Must be a Swift app, and run on devices running versions of iOS down to 9
* Be optimised to work on iPod Touches and iPhones
* The app can be used on multiple devices concurrently, accessing the same counter (ie, one device is used at each of 4 doors to a room)
* It must correctly handle concurrency (ie, if two users push "+" at the same time an increment must not be missed)
- Probably the best way to handle this is using Azure Table Storage's ETAG functionality [login to view URL]
* The count must be synchronised on all devices with a delay of no more than 1sec
* If the internet temporarily drops out, it must give the operator a meaningful warning and allow them to try again
* At most 10 devices will be used on each counter concurrently. At most 5 counters will be used at one time.
* The counter must be stored in Azure Table Storage
- We will create the table and give you an access token to embed in the app
In terms of delivery:
* All source code to be provided
* Code is to be committed to a GitHub repository
* We’ll build the app using AppCenter
Hello. How are you?
I have checked your reference app.
I am a senior Java/Kotlin/Swift/Flutter app developer. I can build your "People count app" correctly.
If you are available about budget, please contact me. Thank you.