Challenge Overview
Project Overview
The objective of this project is to extend the current Mobile GetHelp webapp that will be used by 3 types of Users (An Exec, Support Admin, Support Specialist). The GetHelp App is designed to manage the collaboration between these 3 types of Users on IT support requests that need to be fulfilled. Think of a hi-touch support application for Exec users, where it offers instant feedback and communication between these users for speedy resolution of support requests and upto the minute status on the requests, thereby eliminating any delays or disruptions into the users normal business.
Competition Task Overview
Over the past challenges we have built the GetHelp Mobile web App that will be used as an Asset for this challenge to create the iOS mobile build for this contest. The first of this focusses on the iOS build, then extending into an Android build at a later step (* Would be great if both are delivered in this challenge) :
!! The Asset App will be made available to you in the forums for registered members. !!
The GetHelp App is designed to cater Executive users who need IT help. They can initiate their requests through this app in either of the 3 ways (Onsite Support, Call me OR SMS). The current Asset already has all of the functionality covered and working as a pure webApp.
The objective of this contest will be to deliver the following key requirements:
-
Ability to have a settings option on the app once installed natively, where the user can configure the "Backend Host URL" (i.e. “Dev-gethelp.herokuapp.com” or “Prod-gethelp.herokuapp.com”), so the app can be made to point to a Dev environment or a Prod environment by simply updating this Host value. (* Assumption is that the client build is not required to change for these 2 environments).
-
Whenever a User Updates the Application Host value, we need to reset/clear the local data store values for this App, such that the user is prompted for the Confirmation code again.
-
-
Ability to store the User Confirmation # in the local data store on the client device (HTML5 data store). The User should be prompted to enter activation the first time when the App is installed. Once, activated, this value should be checked from the local store, and only when not available, redirect the user to activation again (i.e. if the app was uninstalled/reinstalled, or all Application data was cleared, etc.).
-
Graceful handling of User Experience when data connection is lost (maybe something like what offline.js does). When a connection is lost, (display a message - “Data Connection Lost” with a button to “Retry” which should attempt to resume when the user explicitly clicks on “Retry”).
-
We need to have the app lock Orientation to “Portrait”.
-
Notifications Here are the scenarios we need to be able handle very well:
-
References that might help take the current socketio implementation into phonegap.
-
http://remysharp.com/2010/10/04/websockets-in-phonegap-projects/
-
-
Both end users are in the App - In-App updates and Notifications should appear as they appear now.
-
Exec Users phone is in standby, App may still be in memory -- If a status update occurred on an open request, we need the ability to auto-wake / notify the device in standby.
-
Exec Users phone is in standby, App may not be in memory -- If a status update occurred on an open request, we need the ability to notify the device in standby.
-
-
Able to use PhoneGaps QR Code scan API, Implement the QR Code Scan functionality to complete the “Onsite Request” flow.
-
As you realize, every request on the backend will have its own distinct QRCode generated. This generated QR Code will be displayed on the Exec Users interface rt after they select the option “Visit Completed”.
-
���
- Validate all the Onsite activity / SMS and Call me flow interactions after the above implementation to ensure we have no dead spots (i.e. buttons with no events/actions or redirects that lead nowhere.).
Final Submission Guidelines
Development Guidelines
We need the same development guidelines from the previous challenge to be followed, and enrich the new code with comments. Please add appropriate comments around all the API’s that have been built on the backend.
Documentation Provided
Register to download the source code of previous challenge and UI prototype from challenge forum.
Software Guidelines
Submission Deliverables?, Environment Setup Instructions?, Final Submission Guidelines?
Submission Deliverables
-
This Solution needs to be a Production quality asset.
-
Your Submission should include all the Code elements, and a folder that has instructions for Build/deploy/configure.
-
An Overview video of the application code blocks (i.e. Code overview) highlighting the discipline of separation of concerns(SoC) applied.
-
Organized Code Walkthrough
-
Demonstrate Test Execution of your Code simulating all the implemented scenarios
-
-
A Demo video that presents all the Request Activity flows (end to end) that were provided in the form of design mockups.
-
Feature the Build/Deploy/Install and Config Steps
-
Feature all the Functionality
-
- A Documentation that covers all aspects of the solution (Requirements / Build / Deploy / Install / Configure)