Groove Tools - Automatically Seeking for an update
Q. |
How do I implement Seeking for
updates in my Groove Tool? |
A. |
When deploying a Groove
developer's application (Groove tool), the developer
can set the behavior of Groove to periodically check back to a known location to
see if there are any updates of the application. If Groove finds a newer
version, the user is asked if they want to upgrade the tool. In creating the
dialog to ask the user, Groove gets the tool's title from the currently
installed tool's OSD. Groove uses the <TITLE> tag for this,
so if you are using the seek capabilities it is important that you include the
<TITLE> information when you first create your tool. If the user chooses to
upgrade Groove proceeds as a normal injection. If the user declines then Groove
ends the process for now, but will check again at your next seek interval. If
the user has the latest version, Groove proceeds along and the user gets no
visible feedback. It setting up seek here are some guidelines:
- Set the interval at a reasonable level, Groove sets
its tools to check for updates every 14 days.
- By default Groove does not limit the frequency of
seeks or the number of them, but please do not abuse this. A management server
can limit seeks on managed computers, so some enterprises will not
automatically get your tool's updates.
- Seek for only installed components.
- Seek will not do major versioning updates. It will
check for minor version updates and later builds. See the Groove Developer
Library for more details on versioning.
To implement seeking in your OSD you need to know (see
example 1)
- HREF - This is the URL for the component
resource that you want Groove to seek for. This should be the pointer where
you are placing your tool's OSD on a public web server, if your tool is
publicly being distributed. If the tool is internal to your organization only
this can be an internal server.
- Interval - This is the time in minutes you
want Groove to use between seeks. Groove uses 20160 (14 days).
- Fingerprint - This is the expected signer of
the OSD as indexed in the Fingerprint Table
|
Example 1
|
<SOFTPKG NAME="com.mycompany.Tools.KillerApp" VERSION=2,0,0,0">
<TITLE>My Company Killer App for Groove</TITLE>
<g:Seek HREF="http://mycompany.com/Components/Tools.osd?Package=com.mycompany.Tools.KillerApp&Version=2" Interval="20160" FingerprintID="MyCompany" />
<IMPLEMENTATION>
.........
</IMPLEMENTATION>
</SOFTPKG>
|
|
With the Groove Toolkit (Version 1) installed, Visual
Studio .NET will automatically generate your OSD file for you. However, you will
need to manually edit this OSD to include the Seek information. You should save
the edited OSD in a separate location since the Groove Toolkit will replace the
OSD file each time the tool is recompiled. With Groove Toolkit version 2.0
coming shortly, you will have a property setting on the project to tell the
Toolkit to preserver your edits and not generate a newer versions of the OSD and
other implementation files. |
|
Terminology notes:
- Groove Tool -
-
An application a developer has created
that is running inside the Groove Transceiver.
- OSD -
- Open Software Descriptor used by Groove to define your
tool and all the key information on how it should be installed in Groove.
|
|