Pandorabots Frequently Asked Questions
This FAQ (Frequently Asked Questions) list is a work in progress - if you have any comments or suggestions for questions to include, please send e-mail to info@pandorabots.com with the word "FAQ" somewhere in the subject line.
A. Support
A.1 How does Pandorabots provide support?
Pandorabots offers two classes of service: free and premium.
The free server is located at www.pandorabots.com, and support occurs primarily through community efforts at forum.pandorabots.com (comming soon).
Premium support occurs with Pandorabots staff directly and is available through a variety of plans.
Sign up for Pandorabots Premium service to get premium Pandorabots support and to help us make Pandorabots even better. By becoming a premium member, you will receive our direct and immediate attention. You will also gain access to additional Pandorabot services that will extend and improve your pandorabot's capabilities, beyond those currently available on the free server. Contact sales@pandorabots.com for more information.
There is a lively and growing community of botmasters using
Pandorabots. If you have a question or want to open up a general
discussion you can post to the
Pandorabots forum .
For more general AIML questions not related directly to the Pandorabots service you should visit the
A.L.I.C.E and AIML Forum.
A.2 what happened to the mailing lists?
From 2002 to 2010 the primary method of communication among the Pandorabots community was a mailing list. In this age of social networking however, several new and better options have appeared. Pandorabots studied several of these in detail, and chose a new forum system loosely on a popular forum known as stackoverflow. We replaced the mailing list with a new forum located at http://forum.pandorabots.com .
Depending on performance, we may choose to replace the existing forum if we encounter scaling problems. Should we choose this path, the replacement will be very similar in functionality.
B. Hosting and Publishing
B.1. How can I put my Pandorabot on my own web page?
Pandorabots is a bot hosting service and the bot must be published at
Pandorabots.com. However, you can embed a Pandorabot within a frame on your
webpage. Create an html frameset containing a frame with:
<frame src="http://www.pandorabots.com/pandora/talk?botid=....">
If you don't need the published page to be embedded within one of your own
pages, you can still upload customized HTML to change the appearance of the
bot's published page. For basic HTML customization, take a look at:
http://www.pandorabots.com/pandora/pics/pubhtml.html
For more advanced customization (including using Sitepal), take a look at:
http://lists.pandorabots.com/pandorabots-general/2003-May/000038.html
http://lists.pandorabots.com/pandorabots-general/2003-May/000044.html
[For Oddcast Sitepal bots see also E.1.]
[For information on how to set up a Flash interface for your Pandorabot see also H.3.]
B.2. What link can I give to others so that they can talk to my Pandorabot?
Click on the name of your bot on the My Pandorabots page and
you'll be taken to page which will show you the link(s) through which
your published bot can be accessed. If your bot is not yet
published, you'll need to first publish it. You can do that by
clicking on the "publish" link on this same page.
C. Botmaster Control
C.1. Training my chatbot doesn't seem to be having any affect. Why
might that be?
Firstly, after specifying an alternate response, try re-asking the
same question using the Training interface (you can simply click on
"Ask Again"). If that works then the AIML for your bot has been
correctly updated. What you then need to do is publish those updates so that
clients talking to your bot via the published URL will see the
changes. You can do this by clicking on the name of your bot to get to
the summary page. On this page you should see some text like this:
“You have made changes to the pandorabot since it was last
published. You must republish the pandorabot to make these changes
available for others.”
Until you click on the "republish" link your changes will not have
any affect for clients chatting with your bot. This feature allows you
to try out some AIML changes (either by using the Training interface
or by editing the AIML files directly) and only make them public when
you're satisfied that they're working correctly.
D. Instant Messaging
D.1. Does Pandorabots support Instant Messaging Services?
At this time, we are unable to offer a comprehensive IM solution on the free server. We do offer IM options as part of our premium service, and for more information, please send e-mail to sales@pandorabots.com with the word "IM" somewhere in the subject line.
D.2. What are the issues involved with supporting Instant Messaging and what options are available on the free server?
Supporting various IM protocols poses difficult challenges because each one requires custom code and moreover it seems that most protocol interfaces undergo continuous undocumented change. One way to lower the burden and cost of maintaining an IM service for Pandorabots would be to allow all pandorabots to communicate with other IM clients (on variety of IM networks) by connecting to them through our own XMPP Server (meaning: Extensible Messaging and Presence Protocol server - and formerly known as a Jabber server - see wikipedia for more details) via a Gateway. However this approach leads to another question: How can one manage user accounts on the XMPP Server? Also we still have to maintain the service in the face of the many changes (protocol changes and other types of changes) occurring in other IM networks - and this is very time consuming. In short, at the time of this writing, we are unable to allocate sufficient resources to offer a comprehensive IM solution for the free server.
There are a variety third-party solutions available for individual IM networks. Please visit http://forum.pandorabots.com for more information.
D.3. Can I create my own IM gateway?
Pandorabots has an API called XML-RPC for connecting third-party software to our bot hosting service. If you have programming skills, you can write your own software to
connect your bot to IM services. See section H.2 for specific information.
E. Oddcast Sitepal
E.1. What HTML do I cut and paste to put my Sitepal Pandorabot onto a web page?
Unfortunately the way the integration between Pandorabots and SitePal is
designed, it's not possible to simply cut and paste some code into a page
on your own site. Basically the page serving the bot's responses must come
from pandorabots.com. However, there are several ways you can
achieve the affect that you want. Take a look at:
http://lists.pandorabots.com/pandorabots-general/2004-February/000257.html
F. Customized HTML
F.1. The conversation logs for my Customized HTML bot, consist of lots
of separate 1-line conversations. How can I fix that?
Pandorabots normally tracks individual conversations by placing a cookie on
the client's browser. If the client's browser is not setup to accept the
cookie, an alternative mechanism is through a hidden form variable within
the form. This hidden form variable is created automatically if you're
using the standard Pandorabots response (ie. no customized HTML), but if
you create your own customized HTML page, you need to include the marker
!CUSTID! somewhere within the form. Without this, the hidden form variable
will not be included in your pandorabot's response, and conversations will
not be correctly tracked if the client's browser does not accept cookies.
An example showing how to include the marker in a customized HTML file
can be seen here.
F.2. How can I show the recent conversation history when using Custom HTML?
The default “Plain Text” appearance of a published
bot includes the recent conversation history. When using a Custom HTML
file you have complete control over the appearance of the published
bot. In order to show the conversation history you have to include
some special embedded AIML in your Custom HTML file.
Inserting a <template> element in a
Custom HTML file causes the AIML interpreter to evaluate the template
in the current bot context (ie with all the predicates and using the current that,
and topic contexts). It then inserts the result of evaluating
the template into the published HTML page.
Combining this feature with the full power of AIML template processing
allows us to create the following Custom HTML fragment which will
result in the inclusion of the 4 most recent user inputs and the
bot's responses. Just add this code to your Custom HTML file where you
want the conversation history to appear.
<template>
<think>
<set name="_history_1"><request index="1"/></set>
<set name="_history_2"><request index="2"/></set>
<set name="_history_3"><request index="3"/></set>
<set name="_history_4"><request index="4"/></set>
</think>
<condition name="_history_1" value="*">
<i><b>Human:</b></i> <request index="1"/><br/>
<i><b><bot name="name"/>:</b></i> <response index="1"/><br/>
<br/>
</condition>
<condition name="_history_2" value="*">
<i><b>Human:</b></i> <request index="2"/><br/>
<i><b><bot name="name"/>:</b></i> <response index="2"/><br/>
<br/>
</condition>
<condition name="_history_3" value="*">
<i><b>Human:</b></i> <request index="3"/><br/>
<i><b><bot name="name"/>:</b></i> <response index="3"/><br/>
<br/>
</condition>
<condition name="_history_4" value="*">
<i><b>Human:</b></i> <request index="4"/><br/>
<i><b><bot name="name"/>:</b></i> <response index="4"/><br/>
<br/>
</condition>
</template>
The predicate and condition elements are used to avoid showing blank
history elements at the beginning of a conversation. The contents of
the template could be trivially changed to change the order of the
history (recent to old versus old to recent), the amount of
conversation history shown (up to 10 interactions), or the layout of
the conversation history. Just remember that within the <template> element everything must be valid
AIML - consequently it most be valid XML - so any HTML tags must be
XHTML-like. For example, note the <br/> element. Using simply <br> (ie
without the /) will not work. (If you use the Pandorabots on-line
Custom HTML editor, it will catch this when you try to save your
Custom HTML file.)
G. AIML
G.1 Can I change the name of my Pandorabot?
You cannot change the name of the bot as it appears in the list of
bots in 'Botmaster Control'. However, you can change the bot's name
for the processing of any AIML templates - this is controlled by the
value of the 'name' property.
To change this, from 'Botmaster Control', click on 'Edit', change the
property 'name' and click on 'Set Bot Properties'. If you then ask
your bot its name it should reply with the new name.
H. Technical
H.1 What is a "botid"?
The botid is is that part of the Pandorabot's published URL after 'botid='.
For example, the Divabot linked to from the Pandorabots home page has a published URL of:
-
http://www.pandorabots.com/pandora/talk?botid=f6d4afd83e34564d
So the botid is:
- f6d4afd83e34564d
You can find the published URL of your bot by publishing it in Botmaster Control and
then examining the URL of the link to your published bot.
H.2 Is there an API allowing other programs to talk to a Pandorabot?
Pandorabots has an API called XML-RPC that you can use to connect
third-party software to our server.
The XML-RPC has been used to connect Pandorabots to a wide variety
of third-party applications, including Mified, mIRC, Second Life and Flash.
You may interact with Pandorabots as a webservice. Pandorabots offers
consulting services supporting arbitrary web services for premium
services customers. Please contact sales@pandorabots.com for more
information.
A client can interact with a Pandorabot by POST'ing to:
- http://www.pandorabots.com/pandora/talk-xml
The form variables the client needs to POST are:
- botid - see H.1 above.
- input - what you want said to the bot.
- custid - an ID to track the conversation with a particular customer. This variable is optional. If you don't send a value Pandorabots will return a custid attribute value in the <result> element of the returned XML. Use this in subsequent POST's to continue a conversation.
This will give a text/xml response. For example:
<result status="0" botid="c49b63239e34d1d5" custid="d2228e2eee12d255">
<input>hello</input>
<that>Hi there!</that>
</result>
The <input> and <that> elements are named after the corresponding AIML elements for bot input and last response. If there is an error, status will be non-zero and there will be a human readable <message> element included describing the error. For example:
<result status="1" custid="d2228e2eee12d255">
<input>hello</input>
<message>Missing botid</message>
</result>
Note that the values POST'd need to be form-urlencoded.
H.3 How can I integrate my Pandorabot into a Flash component?
Using the XML-RPC API described above, you can create a Flash component which collects user input and displays your Pandorabot's response. This component can be served directly from your own site. To do this requires programming the Flash control to make the appropriate HTTP request to the Pandorabots server and parse the XML response.
Jamie Durrant has written a very nice tutorial showing exactly how to do this:
- http://www.jamiedurrant.com/flashbot.html
|