Pls forgive the details below. I wrote these quickly on a plane.
Server Monitor (For a proprietary server)
Need to create a iPhone application which monitors a Server
The basic premise is for the iPhone application to accept a server name, and a username and password (saving this information locally), and additionally be able to capture more than one server, with a different login for each server.
When executed on the iPhone, the iPhone application would query each server (via SOAP protocol) and capture the jobs on each server, and the status of each job (Waiting, Warning, Executing or Failed, and next execution time)
View - Setup
A view to add multiple servers, and add a userID/Password for each server, also a test button to test that the server was correct, or an error
The error should indicate an unknown server, or a USerID/Password issue
View 1 - Multiple server results
When the results are displayed, it would display each server name, then below the server name, a count of each of the above conditions.
Also the capability to refresh individual servers, or all servers
When Querying each server, that server should indicate it's being refreshed so the user knows what's happening
View 2 - Server Details
If the user selects a server from View 1, this View would show
This view would show each individual job name and the status of each job, along with the last execution time and the next execution time (if it's scheduled)
There should be 2 methods to display groups of jobs:
Method 1 - By Schedule:
There should be 3 groups of jobs. 1 - Executing, 2 - Scheduled, 3 - Unscheduled
Within each of these groups, it should show the Error jobs first, and the waiting jobs last
Method 2 - By Results
There should be 3 groups of jobs 1 - Executing, 2 Failed, 3 Waiting
Within each of these 3 groups, it should be sorted by the next executing time (with the jobs not scheduled on the bottom)
Within View 2, each job should show the Status, the Last execution time and the next execution time, and also a 'Run, or Execute' button next to the job. Clicking on this button would send a message to the server to have that job executed.
When executed, there should be some confirmation by the iPhone application to re-verify with the server if the server started the job
There should also be a manual refresh button on the top of the View 2
If a user closes the application and they are at a server detail view, then application should re-open in that same server's view and re-query the server to refresh that view. The user would be able to go back to View 1 if they choose, but by default it would open in the same server which they previously closed the application with.
I can provide a VM of the server to use for testing, I can also provide a PC-based program used to send individual SOAP messages to the server so you can see the query/response and also you can trace the network packets.
There is a WSDL on this server.
I don't have the ability to change anything on the server side (besides basic configurations)
The server is a Windows server, so you'll have to authenticate using NT authentication when making requests to the server.
I have some basic instructions from the Server's Vendor in a .chm file. Looks easy enough to follow if you know your stuff.
All of the programming must be in English with good commenting and standard programming methodologies (variables are normal variable names, etc). No 'hidden' or 'obfuscated' code. Common code segments broken into classes/functions, etc.
If things go well, this is the start of a much larger project, including porting over to Android/Windows RT