Having problems with your CTI server lately? Has your Windows NT machine been acting
up? Do you need to remotely monitor your CTI applications and automatically initiate
processes or programs (batch files, .EXEs, etc.) depending on certain criteria? Don't you
wish a program existed that could automatically e-mail you, or even call your mobile
phone, to tell you that something has gone wrong with your CTI server, Web server, or
unified messaging system? Well TMC Labs has found a fantastic utility that will greatly
enhance your ability to monitor all your Windows NT applications: OpalisRobot from Opalis,
Inc. With additional add-ons such as the "E-mail Add-on" and the "Call
Add-on," you can add complete e-mail and telephony integration to the core of the
OpalisRobot software.
INSTALLATION
Installation consisted of installing from a single CD, which contained OpalisRobot, the
Call Add-on, and the E-mail Add-on. We ran the OpalisRobot setup file, and there weren't
any settings to choose except which directory to install to and which Windows NT account
to use for the OpalisRobot service. Since this was a TMC Labs testing machine, we took the
"easy road" and just chose the "administrator" account (highest
possible security clearance) rather than having to contend with possible security issues
between the Opalis software and Windows NT. After installing OpalisRobot, we installed
both the Call Add-on and the E-mail Add-on. Both installations went smoothly. The only
real work involved was digging out the license cards in the box and entering the licensing
codes.
It should be noted that before we installed OpalisRobot, we knew that we were going to
test the Call Add-on, and that we would need a CTI voice-processing board to test this
feature. Dialogic was gracious enough to lend us one of their ProLine/2V boards to test in
conjunction with Opalis's product. Installing the ProLine/2V was a snap, although Dialogic
didn't ship us any drivers with the board. We searched Dialogic's Web site for the
drivers, surprisingly to no avail - the drivers were nowhere to be found. A search on
"ProLine/2V drivers" only yielded some URLs containing technical specs in
Acrobat format as well as over 100 other URLs, which didn't help us at all.
Rather than figure out the intricacies of Dialogic's search engine or peruse the dozens
of URLs its search engine returned, we called Opalis, and they directed us to the proper
URL on Dialogic's site. They also informed us that the Opalis CD had the latest Dialogic
drivers on them! Rather than download Dialogic's drivers (around a 30 MB file), we used
the drivers on Opalis's CD, and we commend Opalis for including the drivers with their
product. A few other products also include drivers for the voice processing boards that
they support, but certainly not enough do this for our tastes!
DOCUMENTATION
The documentation was very good. Important concepts were clearly bulleted, the chapters
were well organized, a table of contents and a good index were both present, screenshots
were plentiful, and the formatting was right on - utilizing italics, bold, and underlining
where appropriate. Also, important warnings or comments were placed in the left margin,
which a reader could clearly pick them up when skimming the documentation.
Concepts are clearly explained using "real world" examples, even with a touch
of humor. One such snippet from the OpalisRobot manual uses a real-life example to explain
the concept of how an event (like hunger) triggers a task (like eating): "What a
terrific game! You feel real good (you won!)
. Out of the car and into the living
room. You fall more than sit in the armchair, grab the remote, and turn on the TV. You
relax. Then you realize you are hungry. Your stomach aches. Unless you are on a strict
diet, you make your way to the fridge and help yourself." Another amusing tidbit in
the manual was "OpalisRobot is never hungry and it does not eat. Also, it won't cook
dinner, but that's just a hardware problem. Nevertheless, it recognizes computer-related
events and responds to them with appropriate actions." We applaud Opalis for
introducing some humor and real-world examples into their documentation to better explain
how their product works. Of course, a manual which is too chatty or tries too hard to be
humorous can be more annoying than helpful, but we felt that Opalis's documentation had
just the right amount of humor.
One area where we feel the documentation could be improved is in the examples. In
particular, we feel more complex examples, such as a multi-user voice mail system, would
be beneficial. However, that might take up more pages in the manual than it would be
worth. Of course, such examples might be better suited if they were included on the Opalis
CD, such that a user could simply load the example into their PC, rather than manually
keying in each event and task depicted in the manual.
FEATURES
The OpalisRobot Call Add-on gives you the ability to receive telephone calls from your
server, updating you with the latest changes in your network, CTI server, etc., and it
allows you to execute tasks to fix any problems. You can call your server and execute
important processes via a simple phone call and some DTMF key presses.
Here are some examples, which best illustrate the features and capabilities of the
OpalisRobot used in conjunction with the E-mail Add-on and Call Add-on:
Example 1: Press 1 to restart Exchange.
When OpalisRobot has detected a problem on the server, it calls the administrator on his
cellular phone and gives him an explanation message plus choices to solve the problem.
Press 1 to restart Exchange, press 2 to e-mail the help desk, press 3 to reboot the
computer, press 4 to launch the backup, etc. No more weekend drives to the office!
Example 2: Read my e-mail.
Using the optional text-to-speech engine, the Call Add-on will read any text on the line:
the latest e-mail you received, credit situation of a customer, status of network jobs,
etc. (Note: This feature was unavailable at the time TMC Labs did the review, so contact
Opalis for availability.)
Example 3: Voice-to-e-mail.
When you're away from your desk, the caller records a .WAV message, and this message is
sent by e-mail to any SMTP-compliant mailbox (Exchange, Notes, CC: Mail, etc.). Then, you
read your voice messages in any e-mail client using your sound card.
Example 4: Forgot something, call your server.
If you forgot to launch today's production job, or run your backups, just call your
server. Using menus you defined, it will let you run any of your network jobs from your
phone.
A quick feature list (by no means complete) includes the following:
- Ability to schedule tasks/events by day, to schedule them every day, and to select
"exception days" such as holidays.
- Several program execution modes: background normal priority, background low priority,
and interactive (program interacts with user, requiring user input).
- Send task and event succeed/failures to an event log.
- Send a popup message (similar to WinPopup) to another machine running OpalisRobot.
Useful for MIS to send quick messages to each other.
- Execute a RAS action, such as dialing your ISP. Useful for scheduling when to retrieve
Internet e-mail.
- System shutdown capability - useful for shutting down a server if certain conditions are
met (such as 100% CPU utilization), or you can execute a system shutdown via the telephone
interface via the optional Call Add-on.
- Execute a query or a file containing queries (SQL Server only) in a PODBC or SQL Server
database.
- Execute a ping check. If a remote TCP/IP computer is not responding (such as your Web
server, proxy server, etc.), you can be notified immediately.
- Monitor disk space utilization (50% full, 25% full, etc.).
- Monitor a Windows NT service. Useful for checking to make sure all your vital services
are started, and if not, you can take corrective measures.
- File management capabilities include the ability to copy, rename, or print files.
- All tasks/events have "result codes" which allow the Opalis user to check the
success, failure, or other various "result code" conditions.
OPERATIONAL TESTING
OpalisRobot is broken down into two components: the client and an NT service. The client
can run under Windows 95/98 or NT. The service has to run on a Windows NT machine, since
it is installed as a Windows NT service. Essentially, the service runs silently under
Windows NT, waiting for events to occur which the user has specified. When an event
occurs, a task is initiated, such as launching a program, sending an e-mail, or dialing
out to a phone number.
A very user-friendly wizard interface lets you choose whether you want to create an
event, task, Call Add-on, or an E-mail Add-on object. Simply by double-clicking on the
appropriate icon, you instantiate the object and are then taken to a screen where you can
modify the properties for that particular object. The object is then placed onto the
development area in the appropriate folder you chose. Essentially, the OpalisRobot
interface and the interface for designing tasks/events are similar to a graphical
application generator.
Changing the properties for an object (task, event, Call Add-on, etc.) is done quite
easily via screens with well-organized tabs. All of the objects included an Activity and
Options tab; however, each of the objects also contained its own specific tabs - for
instance, the E-mail Add-on had a "Connect" and "E-mail" tab for
setting various e-mail settings.
After placing two or more events or tasks in the main development area for OpalisRobot,
you can "link" these events or tasks together to perform complex functions
depending on various criteria or result codes. "Links," which are essentially
lines connecting one event or task icon to another event or task icon, allow you to define
a sequence of tasks that will occur depending on your specified criteria. Using
"links" to interconnect various events or tasks, you can use Boolean logic (ANDs
and ORs) to determine various actions, i.e., tasks. Thus, you can trigger an action (task)
only if condition1, condition2, and condition3 are all met (Boolean AND). Conversely, you
can have it so that a task is executed if any (Boolean OR) of the conditions are met.
We found that creating various tasks and events and interconnecting them with
"links" does not require any programming knowledge whatsoever. Instead, a basic
understanding of some MIS concepts in a visual environment is sufficient to create complex
applications, due to OpalisRobot's user-friendly interface.
We created some simple procedures, which did everything from launching Internet
Explorer to e-mailing files with attachments, depending on various criteria. After playing
around with some simple tasks, we proceeded to try utilizing all three elements of the
Opalis software at once in a designed event/task scenario. Thus, we needed to integrate
using at least one E-mail Add-on task or event, a Call Add-on task or event, as well as
the main OpalisRobot application. Our first snag occurred when we received an "Access
violation error occurred at address
" when we tried selecting the Activity tab
of a call starting point icon, which is part of the Call Add-on module. After a few tries
we were able to access this tab screen; however, we then noticed that the time specified
in the Range field was five hours later than our system clock.
We double-checked our system clock settings, including the time zone, but we couldn't
resolve the time differential, so we called technical support. They told us the time
difference was a known issue with their older version and to download a newer version. The
newer version solved the Access violation errors we were periodically getting, but the
time difference stayed five hours ahead. We were told not to tinker with the default
settings for the time range, but in order to get the Call Add-on to answer the phone in
our newly created application, we "tinkered" anyway. It actually wouldn't take
our changes, so we took a different approach and adjusted our PC's system clock to match
the start time specified in the time range. After some trial and error, we were finally
able to get the Dialogic ProLine/2V board to answer the call, press some DTMF keys for the
PIN, and then record a message, thus successfully testing our integrated application.
We were in the process of speaking with Opalis's technical support and their
development team to resolve the time differential, but due to deadline requirements on our
end, we were not able to get it 100% working at the time this review was completed.
However, to be fair, we were told that the product has been up and running perfectly in
several large organizations, so we didn't let this issue affect this product's overall
rating or performance scores. Since we were at least able to get the application to work,
albeit with a bit of a hack (adjusting the system clock), we felt this product worked to
our satisfaction. Also, just before we completed this review, Opalis told us that the
reason the time difference occurred was due to the developers using GMT (Greenwich Mean
Time) as opposed to local time. We did happen to notice that our system clock had a time
zone setting that was five hours behind GMT, which certainly explained the minor problem
we were having. Another patch was sent to us, but not before we completed the review
process.
In any event, building applications that used the Call Add-on was very easy, just by
connecting these basic objects together:
- Telephony starting point: Dial or answer any telephone. Use CLI (Calling Line
Identification) to decide which calls to answer or not to answer.
- Play message task: Play pre-recorded .WAV files (quality depending on Dialogic hardware
used).
- Record message task: Record and save .WAV files to user-defined path.
- Play DTMF task: Communicate with other telephony hardware (answering machine,
voice-response systems, etc.).
- Receive DTMF task: Receive DTMF tones and make decisions using OpalisRobot's
intelligence.
- Hang up task: End telephone calls.
- Menu wizard: Easily build menus with endless choices, convenient default options, and
quick access (the user can press the tone before the end of the menu message).
We created a sample application that waits for a caller to dial in (answer mode), then
waits for a certain DTMF code/PIN, and finally, executes a task depending on a DTMF digit
entered. One nice capability is that you can "link back" to any object/icon to
execute more tasks or repeat the execution of the same task. Thus, you can repeat an IVR
menu or, from a single phone call, execute multiple tasks one at a time. Another nice
feature is that Opalis Call Add-on includes an object that plays a message and receives
DTMF tones all in one step, i.e., it uses a single object. Thus, you don't need to place a
"Play Message" Call Add-on object, and then a "Receive DTMF" Call
Add-on object separately, although this is also an option.
The logging capabilities of OpalisRobot were superb! Result codes and other valuable
information can be sent to the log. It also auto-refreshes every few seconds, so you can
test your application and watch the log to see if all the steps are performing properly.
It's also very easy to access the log. You can switch from the development screen (tasks,
events) to the log, simply by clicking on the Log tab.
ROOM FOR IMPROVEMENT
We couldn't find an "Undo" feature for undoing a mistake, such as deleting a
folder by mistake. On a related note, we noticed a message that states "Do you wish
to save your changes" anytime you exit OpalisRobot. We thought maybe this was the
answer to our prayers - i.e., it would allow us to undo an accidental mistake. To test
this theory, we deleted a folder on purpose, exited OpalisRobot, and chose "No"
when prompted to "save changes." When we went back in, the folder was deleted,
hence the save feature probably is only for saving global settings, and not for saving
folders, tasks, or events. If you do make a mistake, you have to start all over.
We noticed that when we resized OpalisRobot, closed the program, and then went back in,
our window size settings for the OpalisRobot program were not retained. We'd like the
capability to preserve our last windows settings in the next release of OpalisRobot.
Another great feature addition would be the ability to watch the various tasks/events
and links in the development area get "highlighted" as they are being executed.
This would provide a graphical representation of how the processes are running, which
might be easier to inspect than using the log file. Also, in the development area, an
auto-arrange feature for the folders, and perhaps for the interconnecting objects, might
be useful.
Finally, as previously stated, it would be nice if some complex examples were provided
on the CD or in the documentation. Maybe Opalis can even provide some of these examples on
their Web site. Even better, perhaps Opalis can allow OpalisRobot users to upload their
favorite OpalisRobot applications to Opalis's Web site for others to download as freeware,
shareware, etc.
CONCLUSION
CTI servers, CTI applications, PC-based PBXs, and various Windows NT applications are
becoming more complex each day. "Up-time" is certainly a crucial element on any
CTI server, which might be running your voice mail, auto-attendant, and call switching
functionality. Hence, the ability to be informed immediately of a failure on a CTI server
or other telephony system via e-mail or telephone would be a valuable addition to any
MIS's, VAR's, or interconnect's arsenal. TMC Labs highly recommends OpalisRobot and its
corresponding add-ons to anyone running mission-critical applications on the Windows NT
platform. In fact, we were so pleased with this product, we are considering using it
in-house to monitor our Windows NT servers running critical applications. Opalis offers a
free-trial period, and the program is downloadable from their Web site, so you have
nothing to lose in trying the program out. Check it out at www.opalis.com. |