FS 292887 EPOD Automatic Updater: Difference between revisions

From Calidus HUB
(v0.1 - Initial draft version)
 
mNo edit summary
Line 90: Line 90:
If no command-line parameters have been specified (or the ''WEBSERVICE'' parameter is blank) then app will open the EPOD Client database and extract the WebService URL. The database will be disposed of at this stage.
If no command-line parameters have been specified (or the ''WEBSERVICE'' parameter is blank) then app will open the EPOD Client database and extract the WebService URL. The database will be disposed of at this stage.


The app will modify the WebService URL to keep all domain and sub-domain information, discard the service name and add ''PDAUpdates/'' to the end. For example URL ''http://www.x.com:9091/y/WebService/Calidus_EPOD/Calidus_EPOD.asmx'' becomes ''http://www.x.com:9091/y/WebService/Calidus_EPOD/PDAUpdates/''.
The app will modify the WebService URL to keep all domain and sub-domain information, discard the service name and add ''PDAUpdates/'' to the end. For example URL ''<nowiki>http://www.x.com:9091/y/WebService/Calidus_EPOD/Calidus_EPOD.asmx</nowiki>'' becomes ''<nowiki>http://www.x.com:9091/y/WebService/Calidus_EPOD/PDAUpdates/</nowiki>''.


A single form will be displayed showing:
A single form will be displayed showing:
Line 132: Line 132:
|Rev1=Tony Walker
|Rev1=Tony Walker
|Rev1Title=Consultant
|Rev1Title=Consultant
}}</div>
}}
[[Category:{{#var:Client}} FS]]
[[Category:{{#var:Client}} FS]]

Revision as of 14:56, 22 February 2012





Aptean Logo.png







OBS

EPOD Automatic Updater


CALIDUS EPOD

22nd Feb 2012 - 0.1
Reference: FS 292887












































Functional Overview

Client Requirement

The intention of this process is to allow the EPOD PDA client to be updated in a much more automated way than is currently the case.

Additionally, the process must be accessible so that it can be used to reinstall the application from scratch if required.

The process may also include functionality to support:

  • Optional updates
  • Database updates preserving the data content

Solution Overview

A separate Updater application will be written that allows updates of the application to be remotely installed.

Scope

Set-up

Pre-requisites

Menu Structure

Data

Functional Description

EPOD PDA Client/Server

The Server file structure will be modified to include a PDAUpdates folder under the Webservice/Calidus_EPOD folder. This is where any updated PDA Client and Updater CAB files will be held.

Update CAB file building

The Update (CAB) file built will be modified to automatically include the full version information from the EPOD Client app contained within it. It will also create a subdirectory of the install directory called Updater.

EPOD PDA Client/Server

The Client app will be modified to check the default Updater subdirectory for any file with AppName "EpodUpdater". If one is found, a message box will be displayed showing that "an essential system update is required - when complete please press 'OK'". Once cleared, the EPOD client app will run the CAB file to update the Updater app.

When complete and control is returned to the EPOD client, the client will continue with the logon request.

The Client app will be modified to send out the current versions of the Client and Updater application within the logon request.

The Server will check the available Client CAB files within the server file structure for the latest version of the CAB files for the Updater and the EPOD Client. For each program found, if the latest found is greater than the version passed in on the logon request message, the server will add tags to the outbound logon response message:

  • EPOD_VERS - CAB version number of the EPOD client
  • EPOD_FILE_NAME - Filename of the EPOD Client CAB file
  • REQUIRED - at this time this will be set to "Y" only
  • UPD_VERS - CAB version number of the Updater client
  • UPD_FILE_NAME - Filename of the EPOD Updater CAB file

After processing the content of the standing data and configuration within the logon message, the client will check the latest version of the CAB file from the logon response message.

If the new tags are present, the client will check the REQUIRED tag. If this is set to "N", the Client app will pop up a message to the user, informing them than an update is available and whether it should be installed. If the user enters No, the Client app will continue with its normal processing.

If the user responds Yes or the "REQUIRED" tag is set to "Y", the Client app will run the Updater app, passing a number of parameters:

  • WEBSERVICE - the WebService URL.
  • EPOD_VERS - CAB version number of the EPOD client
  • EPOD_FILE_NAME - Filename of the EPOD Client CAB file
  • UPD_VERS - CAB version number of the Updater client
  • UPD_FILE_NAME - Filename of the EPOD Updater CAB file

Once the Updater app is started, the EPOD Client app will exit.

Update App

A separate Updater application will be written that allows updates of the application to be remotely installed.

If no command-line parameters have been specified (or the WEBSERVICE parameter is blank) then app will open the EPOD Client database and extract the WebService URL. The database will be disposed of at this stage.

The app will modify the WebService URL to keep all domain and sub-domain information, discard the service name and add PDAUpdates/ to the end. For example URL http://www.x.com:9091/y/WebService/Calidus_EPOD/Calidus_EPOD.asmx becomes http://www.x.com:9091/y/WebService/Calidus_EPOD/PDAUpdates/.

A single form will be displayed showing:

  • the Version and File Name of files being downloaded (i.e. both the PDA Client and Updater if there is one) with a read-only check-box showing whether the files have been downloaded.
  • a progress bar to show the progress of downloading
  • a read-only Install check-box, showing whether the files have been successfully installed
  • A Re-start check-box, pre-checked, to indicate whether the EPOD client should be re-started on completion of the update.

The app will check whether the files have already been downloaded, by checking the versions of any downloaded CAB files within the Updater folder. If all files have not been downloaded, a dialogue will ask whether the files should be downloaded at this time. If the user answers No then the app will display a popup box showing that the Update was not applied and exit the app.

If the user answers Yes, the application will start the download of the files, showing the progress through a progress bar on the form.

If the files have been downloaded successfully, a dialogue will ask whether the update is to be installed. If the user answers No then the app will display a popup box showing that the Update was not applied and exit the app.

If the user answers Yes, the application will start the install of the EPOD Client CAB file only.

Once this installation is complete, the form will display 'Update complete - click OK to exit' on the back form.

If an Updater CAB file has been downloaded, the form will also display 'This Updater app will be updated when EPOD is next started'.

When the user clicks OK, the app will check the 'Restart' check-box - if checked, this will re-start the EPOD Client app. Regardless, the Updater app will then exit.


Appendix A: Document References

A.1 References

Ref NoDocument Title & IDVersionDate
1   


A.2 Glossary

Term Definition
EPOD Electronic Proof of Delivery. The OBS EPOD system is CALIDUS ePOD.
CALIDUS eSERV The OBS mobile system to complete Service functionality in the field. This is part of the CALIDUS ePOD system.
PDA The mobile device on which the C-ePOD system will run in the field. This can be a Phone, EDA or industrial PDA, running Android.
DAL Data Access Layer. A mechanism for accessing data by the system that is removed from the application, allowing for simplified access and providing protection to the data, as only approved DAL methods can be used to modify it.
GPS Global Positioning System. A mechanism of retrieving accurate positioning information in the form of Latitude and Longitude (Lat-Long) co-ordinates from a device.
GPRS, 3G, HSDPA, Data Service All terms referring to mobile device network connectivity, and the speed at which the device connects to the internet.


A.3 Authorised By


Tony Walker

Consultant
_____________________________