The above applet is a user interface client for an A.I. chatbot servlet.
Type any sentence into the input area at the bottom of the applet and
the chatbot will respond. The text will be spoken using a speech
The applet at the top of this webpage takes awhile to install due to the
size of the speech synthesis voice file. Fortunately it will be cached so
the next time you use this applet you will not have to download it again
unless it has been updated.
In addition to using the applet at the top of this webpage, you can install
the program as a desktop application by clicking on this link:
If it does not install, check that you have
Java installed first.
The chatbot servlet is
an Open Source Java
The user interface client applet communicates with the servlet via HTTP.
Using an applet provides the flexibility to integrate enhancements
such as speech synthesis, 3D avatars, and server-side event generation.
The next step is to enable users to create chatbots representing themselves
by uploading customized Artificial Intelligence Markup Language
Another task is to update the client so that it can display HTML markup
such as the break tag. This would also allow hyperlinks.
If I have time, I hope to enhance the speech synthesis output so that it
integrate Speech Synthesis Markup Language
into the responses of the chatbot to be able to modulate the voice.
Another possibility is to permit users to upload 3D avatar representations
of themselves. This might be accomplished using
CroftSoft Client uses
libraries from the following organizations:
It is wonderful to be able to combine all of these Open Source
components to create a new application. Fortunately I will be able to
contribute this effort to the Open Source community as well.
I would like to thank my client,
Terasem Movement, for granting me the right within our
software development contract to do so.
You can find the source code for CroftSoft Client in the
CroftSoft Code Library.
I have created a Program D Setup
tutorial for software developers who wish to deploy Program D on JBoss.