Power User
by Jim Little

Power User is a regular column in OS/2 e-Zine!, available online at
http://www.haligonian.com/os2/.

You can install the project without reading this file first.  If you
encounter problems, see "Manual Installation," below.


Backtalk Project Notes
----------------------

1. Availability
The Power User column for this project is part of OS/2 e-Zine! volume 1,
number 10.  It is available online at http://www.haligonian.com/os2/v1n10/.
You will find hotlinks to additional resources listed at the end of the
article.  In addition to the project REXX files, you need: rsynth.zip,
uptime.zip, and ux_dos.zip.  These files are also available at
ftp://hobbes.nmsu.edu/os2/.

2. Manual Installation
If the provided installation script doesn't work for you, do the following:
1) Create a folder named "Backtalk."
2) Unzip each zip file into its own folder and place this folder in the
  Backtalk folder.
3) Create the following program objects in the Backtalk folder:
      Title                Program Name    Parameter
   a) Speech Queue         SPEECHQ.CMD     
   b) Stop Speech          SPEECHCMD.CMD   COMMAND_END
   c) Mute Speech          SPEECHCMD.CMD   COMMAND_MUTE
   d) Unmute Speech        SPEECHCMD.CMD   COMMAND_UNMUTE
   e) Discard Messagees    SPEECHCMD.CMD   COMMAND_DISCARD
   f) Say Queued           SPEECHCMD.CMD   COMMAND_NUMQUEUED
   g) Say Something        SPEECHSND.CMD   [Enter text to say:]
   h) System Stats         SPKSTATS.CMD
   The .CMD files will be in the folder you unzipped REXX.ZIP into.

3. Speech Queue .CMD file
The speech queue (SPEECHQ.CMD) is the only program that actually uses SAY.EXE
to generate speech.  The other programs simply place their messages in a queue
for SPEECHQ to handle.  Therefore, SPEECHQ.CMD must be running before any of
the other speech programs will work.

SPEECHQ.CMD must be located in the same directory as SAY.EXE.  If you
installed the entire project, the file will be moved automatically by the
installation program.  Otherwise, you must move SPEECHQ.CMD in to the
RSynth folder manually.  If you don't do this, SPEECHQ.CMD will display
an error when you start it.  Normally, SPEECHQ will say, "Speech Enabled"
when it is started.  If you don't hear this, you can assume something went
wrong.

4. CMU Pronunciation Dictionary
RSynth sounds much better if you install the optional dictionary.  This
dictionary can be found online on Derek Decker's web site.  The URL is
http://www.cris.com/~djd/products.html.  To install the dictionary, do the
following:
1) Stop the speech queue if it is active.
2) Copy the plain-text dictionary file into the RSynth folder.
3) Make sure you have plenty of hard drive space.  (15MB should be enough.)
3) Type "mkdictdb cmudict.04 adict.db" at a command prompt in the RSynth
   directory.  Use the appropriate filename in place of cmudict.04 if it's
   changed.
4) Ignore errors.
5) Wait.
   ...a long time.
   ...a very, very, very long time.
   (We're talking at least an hour here.  Fortunately, you can multitask.)
6) When it's done, restart the speech queue and marvel at the frog prince's
   transformation.  You can delete the cmudict.04 file.

5. SPKMAIL.CMD
The only truly useful program included with this project is SPKMAIL.CMD.  When
this program is installed with your email program, you will be notified by
voice whenever new mail arrives.  This is particularly useful if you leave
your mailer running but minimized while you are connected to the Internet.
SpkMail reads the author and the subject of any new message, preventing the
need to bring up your mailer every time new mail arrives.

SpkMail requires an email program that supports REXX exits.  I've used it
successfully with MR/2 ICE 1.05 and PMMail 1.51.  To use SpkMail with MR/2
ICE:
Set up SPKMAIL.CMD:
1) Move SPKMAIL.CMD to a location such that there are no spaces in the path.
   This is very important; MR/2 ICE can't call a REXX file with a space in
   the path.  Therefore, "\DESKTOP\Power User\Backtalk\REXX\SPKMAIL.CMD is
   not a path that can be used with MR/2 ICE, because of the space in
   "Power User."
2) Copy Unix_DOS.EXE (in the Unix2DOS folder) into the same directory as
   SPKMAIL.CMD.
3) Edit SPKMAIL.CMD and put MR/2's path in the pathstem variable.  For
   example, if MR/2 ICE is in C:\MR2ICE, change the line to read
   pathstem='C:\MR2ICE'.  (Without the period.)
Create an incoming mail filter:
4) Open MR/2 ICE.
5) Select "Filter maintenance..." from the "Utilities" menu.
6) Press the "New" button.
7) Enter a description, such as "New message."
8) Press Tab and enter a tag, such as "New."
9) Check the "Link to REXX" checkbox.
10) Enter the full pathname to SPKMAIL.CMD in the corresponding entry field.
11) Press OK.
12) Press Done.

To use SpkMail with PMMail 1.51:
Set up SPKMAIL.CMD:
1) Copy SPKMAIL.CMD and Unix_DOS.EXE (in the Unix2DOS folder) to your
   PMMail directory.  This directory is by default "x:\SOUTHSDE\PMMAIL".
2) Edit SPKMAIL.CMD (in the REXX folder) and put PMMail's path in the 
   pathstem variable.  For example, if PMMail is in C:\SOUTHSDE\PMMAIL, 
   change the line to read pathstem='C:\SOUTHSDE\PMMAIL'. (Without the 
   period.)
Set up the REXX exit:
3) Open PMMail.
4) Select "Utilities Settings..." from the "Account" menu.
5) Click the "REXX Exits" tab.
6) Check the "Message Receive Exit" checkbox.
7) Enter SPKMAIL.CMD in the corresponding entry field.
8) Press OK.

Note: Although PM Mail 1.5 also supports REXX exits, they don't appear to
work properly.  If you have PM Mail 1.5, I recommend that you download the
updated version.

6. Feedback
I'm very interested in any other practical (or not so practical) applications
of speech you can think of.  Send any ideas, REXX programs, or wacky flights
of fancy to me via email at jiml@teleport.com.  Cash is appreciated, too, if
you can figure out how to fit it down the telephone line.

7. Acknowledgements
Many thanks go to Nick Ing-Simmons (nik@tiuk.ti.com) for writing RSynth and
to Derek J. Decker (djd@cris.com) for porting it to OS/2.
Thanks also to Cheng-Yang Tan (cytan@tristan.tn.cornell.edu) for writing
UPTIME.EXE and to boris@innonyc.com for writing UNIX_DOS.EXE.
Thanks to the unknown artistic genious that created the icons I stole.  If
you recognize any of these icons as your own, let me know so I can give you
credit.
Thanks to Colin Little for the directions on using SPKMAIL.CMD with PMMail.
Last, but not least, thanks to my editor, Trevor Smith, for putting up with
seemingly endless delays as I wrestled with the install program.
