It's amazing how hard it is to remember to do something every day. One of these things is clocking in and out from work. It's incredibly important (assuming you want to get paid), but if you forget it can be almost impossible to recover your appropriate hours. We realized that clocking in and out from work should not be something prone to so much human error.
What it does
Elapsed is a timesheet solution built around convenience for both the employee and the employer. Instead of having to manually clock in and out Elapsed detects when the employee arrives at his/her desk using iBeacon technology and automatically clocks them in. When this employee leaves work to go to the break room or leave for the day the iBeacon also notices and properly clocks the employee out. The employee can then see all of their clock in and clock out times right from the app and easily graph the number of hours worked each day. Again, all of this is done automatically without the employee or employer needing to do anything.
All of this data integrated directly with the employers Intuit Quickbooks account so payroll is done automatically for the employer maximizing convenience. However, we understand that something so precious such as money should have a human touch if the computer appears to make a mistake. For that reason we implemented SupportKit. If some of the data appears wrong to the employee when they look at the times listed or the graph with one click they can chat their boss. Their boss is instantly emailed with the complaint so the employee and employer can resolve the issue together.
How I built it
The main app was written in Objective C for iPhone. All of the data is stored in Realm locally and then sent to the Intuit system for payroll. To manage the intuit data and deal with login, Microsoft Azure is used. The main logic is handled by utilizing iBeacon bluetooth beacons. The app just senses the bluetooth beacon corresponding to an employees desk or the iBeacon corresponding to the break room or some other location and properly clocks employees in and out based off of these locations.
Challenges I ran into
iBeacons initially were a little unreliable, but we found that using our own methods over Apple's suggested implementation of iBeacon reduced irregularities tremendously.
What's next for Elapsed
The idea of this would be for corporations to release their own distribution of this app so we would need to add easy ways for the employee to customize the app without us needing to manually edit all of this code.