Welcome to LabHand 1.0. LabHand is an extension that should help Macintosh network administrators manage their Macintosh Manager networks. LabHand should run on Mac OS 8.1 and later, but most of the features will only work on OS 9 and later. It will not work at all on OS X. I'm currently focussing on making LabHand for OS 9 the best that it can be, and then I'll look at LabHand's future on OS X.
In order for this software to be useful, I need as much feedback (both positive and negative) as possible. Please email me if you have anything you want to say. I especially want to hear about bugs you find, and new features you would like to see.
I have a mailing list on Yahoo/eGroups set up for the discussion of LabHand (and File Blaster). Head on over to:
<http://groups.yahoo.com/group/labhand/>
and subscribe to it. If you don't want to sign up with Yahoo Groups, just send an email to <labhand-subscribe@yahoogroups.com>. If you don't want to join a Yahoo Groups list at all, just email me and I'll let you know if I set up another mailing list.
LabHand and MM 2.0
LabHand works fine with both MM 1.x and 2.x.
Client File Updating
LabHand connects to an AppleShare server (over AppleTalk or IP),
logs in as a specified user, and copies new and updated files down to
the client.
LabHand also has an Auto-update feature. When the next version is released, just put it on your Update Server, and LabHand will automatically download and install it.
Machine-specific preferences
When a user logs in, files from a folder on the local HD are copied
to the user's Preferences folder.
This is useful for applications that require different serial numbers. You can put different serial numbers into different preferences file on each computer, and have that file copied to the user's preference folder when they log in.
Preference Deletion
When a user logs out, specified items are deleted from their
Preferences folder. Good for getting rid of Web Browser cache
files.
Using this and the above feature, you could have scanner preferences copied to a user's preferences folder on login, and then deleted when they log out. This means that you won't have gigs of useless preference files stored on the server
Control the Control Strip on Login
You can tell LabHand to either show or hide (or neither) the
Control Strip when a user logs in. PLEASE NOTE: This feature
now works as advertised!
Automatic ejection of CDs at logout
If a CD is in the drive when a user logs out, it gets ejected.
PLEASE NOTE: This feature now works as advertised! Beta 6
fixed a bug where empty CD trays were being opened.
Changing of Monitor Bit Depth (the colours of the monitor) on
Login
LabHand can change the monitor to a pre-determined bit depth when
users log in, and to another depth when they log out.
Changing Sound Volume
LabHand can change the sound volume at login and logout.
AppleScript Commands
You can ask LabHand for the current Username and the current
Workgroup name. More details on this will come with a later beta, so
for now, just open up LabHand Extension with Script Editor, and have
a look at the syntax.
Control Strip Module
Labhand has a control strip module. Currently it has only two usable
actions, Update Client (which forces LabHand to connect to the Update
server and update the client machine) and Change Location (which lets
users change Location Manager locations).
Both of these actions are only available in System Access or on the Login screen.
Setting Internet Preferences
The following Internet Preferences can be set:
Web Home Page
The page that loads when a user first opens their browser
Web Search Page
I guess this loads when the user wants to search for stuff...
HTTP Proxy
The proxy used for HTTP traffic
No Proxy For
If you set the HTTP proxy, this option lets you specify domains and
IP addresses that shouldn't be accessed through the proxy
Set IE Cache
You can tell LabHand to set the location of the Internet Explorer
Cache.waf file!!!
Set IE Downloads Location
Warning: This is a hack!! You can specify the four letter code of
the folder you want downloads to go to. If you want downloads to go
to the user's Documents folder, use "docs". This feature appears to
work about 90% of the time. I'm working on the other 10%.
Here are some other four letter codes:
|
Documents |
docs |
|
|
Desktop Folder |
desk |
|
|
Preferences |
pref |
|
|
Application Support |
asup |
For a bigger list, see here.
Restarting if the Workgroup Documents Volume can't be
Unmounted
If a user logs in, opens Internet Explorer, and then IE crashes,
certain files will be left open on the WG Docs volume.This means that
the volume can't be ejected. If you have users logging in using their
own usernames and passwords, the next user to log in on that machine
won't be able to access their documents, because the machine is
already connected to the server as a different user. With this option
enabled, LabHand checks to see if the WG Docs volume is still mounted
after the user logs out. If it is, LabHand tries to eject it. If the
volume can't be unmounted, LabHand displays a message and restarts
the machine in 5 seconds. This is a new feature, so please let me
know if you'd like to see it implemented differently.
Clearing of Users folder
LabHand can delete the local "Users" folder when a user logs out.
This will delete anything that users leave on the desktop, and
desktop Printers.
LabHand now comes with a Preference Editor, called (oddly enough) LabHand Prefs Editor, or LHPE to its friends. This means you can now get rid of ResEdit, and bask in the glory of GUIness. LHPE 1.0.2 now displays the Updater Password in bullets on the main screen.
You'll need to run LabHand at least once to create the preferences file before you can use LabHand Prefs Editor. By default, all options are turned off, so install LabHand, restart, and then open LHPE and edit away!
To edit the preferences, open LHPE, and go to the File menu. You'll see that you have two options of interest: "Open Preferences" and "Open LabHand Extension...". If you Open Preferences, LHPE will look in the "Application Support" folder in the startup disk for a file called "LabHand Preferences". If it finds it, you'll get the editing window. If it doesn't find it, you'll get an error. If you Open LabHand Extension, you'll be asked to locate a LabHand Extension. "Why would I need to edit the LabHand Extension?" I hear you ask. Well my friend, the answer is simple.
After you've opened up LabHand or a Preferences file, you'll see that the screen is divided into two areas:

String Preferences are options that need specific information. Boolean Preferences are options that can either be on or off. Some options require you to enter details into the String Preferences area, and then active the option in the Boolean Preferences area.
All the options should be pretty much self-explanatory, but I have some free time, so I'll explain them.
String Preferences:
|
userName |
The username LabHand should use to connect to the AppleShare server when doing Client Updating |
|
|
volumeName |
The name of the volume LH should mount for Client Updating |
|
|
serverName |
The name of the server LH should connect to for Client Updating |
|
|
password |
Guess what this does |
|
|
ATZone |
The AppleTalk zone the Client Update server is in. Use "*" for no zone, or when connecting via TCP/IP. |
|
|
User Bit Depth |
The Bit Depth (number of colours on the screen) LH should set the monitor to when a User logs in |
|
|
System Bit Depth |
The Bit Depth (number of colours on the screen) LH should set the monitor to when a User logs OUT |
|
|
User Sound Volume |
The Sound Volume LH should set when a User logs in |
|
|
System Sound Volume |
The Sound Volume LH should set when a User logs OUT |
|
|
Web Home Page |
The URL of the Home Page. Leave blank if you don't want to use this feature. |
|
|
Web Search Page |
The URL of the Search Page. Leave blank if you don't want to use this feature. |
|
|
HTTP Proxy |
The domain name of the HTTP Proxy. Leave blank if you want LabHand to remove the proxy from the user's preferences. Set to "NONE" if you don't want LabHand to do anything to the user's proxy settings. You can specify a port by putting the domain name, a colon, and then the port. |
|
|
No Proxy For |
A comma-separated list of domain names that shouldn't be accessed through the proxy. |
|
|
Web Download Folder |
The four character code of the folder you want the user's downloads to go to. Default is "docs" for Documents. |
Boolean Preferences:
|
Client Update |
Set this to true and LabHand will connect to an AppleShare server and download any updated files. See below for details on setting up the AppleShare server. |
|
|
Update only once a day? |
Set this to "true", and LabHand will only attempt to connect to the Update server once a day. |
|
|
Local Managed Prefs |
Set this to true and LabHand will create a "Local Managed Preferences" folder in the "LabHand Data" folder in the "Application Support" folder of the startup disk. See below for more details. |
|
|
Manage Control Strip? |
Set this to true if you want LabHand to either show or hide the Control Strip when users log in. |
|
|
Show CStrip on Login? |
If this is true, and the above setting is true, LabHand will show the Control Strip when users login. If this is false and the above is true, LabHand will hide the Control Strip. |
|
|
Set monitor resolution |
NOT FUNCTIONAL |
|
|
Set Bit Depth (colours) |
Changes the bit depth of the monitor when a user logs in, and back again when they log out. |
|
|
Set Volume |
Set this to true and LabHand will change the sound volume when a user logs in and out to levels that you specify. |
|
|
Eject CD on Logout? |
Set this to true and LabHand will make sure the CD drive is empty each time a user logs out. |
|
|
CSM: Location Manager |
Allows users to change Locations (if Location Manager is installed). Only works in System Access or on the Login screen. |
|
|
CSM: Quit LabHand |
NOT FUNCTIONAL |
|
|
CSM: Update Client |
Forces LabHand to connect to the specified Updates server and update the local machine. Also only works in System Access or on the Login screen. |
|
|
CSM: User Information |
NOT FUNCTIONAL |
|
|
Restart is WG Vol is stuck? |
LabHand will restart the machine if the Workgroup Documents Volume can't be unmounted. |
|
|
Clear Users Folder |
LabHand will delete the local "Users" folder when a user logs out. |
|
|
Set IE Cache |
LabHand will set the Internet Explorer cache.waf file location for each user. |
IMPORTANT:
This is how the LabHand Extension works with its Preferences.
First, you configure LabHand by editing the application itself. You then copy it to your workstations (using Network Assistant or something similar). When LabHand launches for the first time, it copies its Preferences from the application to a file called "LabHand Preferences" in the "LabHand Data Folder" in the "Application Support" folder in the System Folder of the local machine. From then on, every time LabHand launches, it looks for a Preferences File, and if it finds one, it will takes its preferences from there, NOT from the application. This is because you can't edit the application itself if it is open.
During the beta testing period, LabHand will check to see what version of LabHand created the preferences file, and if the file was create with a different version of LabHand, it will delete the file. This is because the format of the Preferences file will be changing significantly during the beta testing period.
You'll need an AppleShare server for this on. Make a new user called "updater", with a password of "updater". Make a new folder on your AppleShare server and call it "updates". Make it a sharepoint, and set the permissions so that the "updater" user can read and write to it. I'd suggest something like this:
|
Owner: |
|
Read/Write |
|
Group: |
|
Read/Write |
|
Everyone: |
None |
You then need to tell LabHand which server to connect to and the like. To do this, just open LHPE, and edit the appropriate string options. If you used the information above, you'd set "userName" to "updater", "volumeName" to "updates" and password to "updater". The other two fields will depend on your server and its zone. If you want LabHand to connect via AppleTalk, enter the AppleTalk name of your server, and the AppleTalk zone in which it appears. If you don't have any zones, then just enter "*" as the zone. If you want LabHand to connect to your AppleShare server via TCP/IP (which is the recommended method as long as your server supports it), then enter the IP address of your server in the "serverName" field, and enter "*" in the "ATZone" field. PLEASE NOTE: You can't enter the DNS name of the server at this stage - you can ONLY use the raw IP address.
Before you start using LabHand, make sure that your sharepoint works by going to the Chooser, and logging on to your server with the username and password for the "updater" user you created above. If it works, you should be able to mount a volume called "updates" and nothing else. If your "updater" user can mount other volumes, you should adjust your server's privileges, otherwise you will have security issues.
The way LabHand does its client updating stuff is as follows. Mounts the Updates volume using the information in its preferences. Finds out the name of the startup disk. Looks for a folder on the Updates volume that matches the name of the startup disk. Recursively looks at each file in every folder on the Updates volume. If the file/folder on the server doesn't exist on the local hard drive, it gets copied down. If the file does exist on the local hard drive, but the one on the server has a newer modification date, then the local file is deleted, and the file from the server is copied down.
So, for the whole thing to work, you need to make a folder on the Updates volume, and set its name to the name of your hard drives. Most people keep their machines' hard drives set to "Macintosh HD", and the rest of these instructions assume that you have too.
Keep the Updates volume mounted, and make a new folder in it called "Macintosh HD". LabHand will look in here, and scan through all its subfolders, and copy down any new files. If you wanted to copy a new Control Strip Module called "LabHand CSM" to all of your workstations, you'd make several new folders in the "Macintosh HD" folder, and end up with a structure like this:
Macintosh HD:System Folder:Control Strip Modules:
You'd then put your "LabHand CSM" module into the "Control Strip Modules" folder, and let LabHand do its thang. LabHand would connect to the Updates volume when the computer starts up, and copy the "LabHand CSM" file down to the local machine. LabHand would put the file in the same folder it appears in on the server, that is, "Macintosh HD:System Folder:Control Strip Modules:".
As LabHand scans through the Updates volume each time the computer starts up, you should remove any unnecessary files and folders from the Updates volume in order to reduce the amount of time LabHand spends searching for new files. In a future release of LabHand, you'll be able to tell LabHand to only look for updates once a day/week/month etc, or only between certain hours. Currently you can tell LabHand to only connect to the Update server once a day. If you do this, updated files won't get to you clients as quickly, but the load on the Update server will be less, and it will take less time (not much less, but less none-the-less) for the client machines to boot and be usable.
|
Forced Preferences |
Everything in this folder is copied to the user's Preferences folder when they log in. |
|
|
Initial Preferences |
If these files/folders don't exist in the user's Preferences folder, they'll be copied to it when they log in. |
|
|
Updated Preferences |
If the files in this folder are newer than the ones in the user's Preferences folder (that is, if the local files' modification dates are after the user's files' modifications dates), or if these files aren't in the user's Preferences folder at all, they'll be copied. |
|
|
Deleted Preferences -> At Login |
Anything in this folder will be deleted from the user's Preferences folder when they log in. |
|
|
Deleted Preferences -> At Logout |
Anything in this folder will be deleted from the user's Preferences folder when they log out. |
This means that you can put the files that scanners need in the "Forced Preferences" or "Initial Preferences" folder, and put them in the "Deleted Preferences:At Logout:" folder as well, and your scanners will work, but their files won't be wasting space in your users' Preferences folder on your server.
You could also put a "cache.waf" file in the "Deleted Preferences:At Logout:" folder, and any Internet Explorer Cache files will be deleted from your users' Preferences folder when they log out.
On the other hand, if you want LabHand to hide the Control Strip when users log in, you need to set the "Manage Control Strip" option to true, and the "Show CStrip on Login?" option to false.
If you want LabHand to do nothing to the Control Strip, set the "Manage Control Strip" option to false.
Once LabHand becomes more fully-featured I'll set up an official bug tracking mechanism that will let you enter bugs and feature requests into a database, and then track their status. In the meantime, just email me with any bugs you've found, or any new features you'd like to see.
I also need to thank John Weston for the cool LabHand Support icon, and John (again) and Rick Davis for critiquing the documentation
I think that's all I need to tell you. Stay tuned for the next version of LabHand, and make sure you give me some feedback!!!
Stewart Macdonald
28 November 2001
stewart at ugmedia dot com dot au
http://www.ugmedia.com.au/