Session ID and Tracking Convos Problem

  • Experimenting with this interpreter, and I am setting the SESSID as a unique user name for each person. The problem is the bot is not keeping track of individual conversations, so use of things like the <that> tag fails. Any insight into why this happens or fixing it is appreciated.

    • P.S.: I'm assuming the SESSID is what allows the bot to keep track of who it's talking to. A quick check of my PHP info shows Sessions are enabled , etc.

    • Anne Kootstra
      Anne Kootstra

      In Program E the unique userid is being stored clientside in a cookie. This is done in talk.php. This is the main system for userrecoginition.

      If you have trouble recognising your users, then please describe what happens when users come back. Is more than one sessionid generated (i.e. userid) or is a single used for every conversation.

      Any alterations to the code should be mentioned, as this can influence the results.

      As ever,


      Lead developer Program E

    • Thanks for the quick reply Anne =)

      The cookie thing explains why it wasn't working, as I am not using the program in the traditional browser sense. I can however send the cookie the info it needs. I need to know the name of the actual cookie though.

      Also, I only see $uniqueid being assigned to the session id in talk.php:


    • I've checked and the cookie is being sent. The contents hold $myuniqueid being set through the session_id(). Is there another field that is to be set in the cookie with the user name?

    • Ok..working in Mozilla Firefox across a local network, the program IS setting a cookie on my machine with the contents I previously mentioned. However, this cookie info doesn't seem to persist since <that> tags still don't work when tested using the browser.

      For some reason, it is NOT getting the info it needs from the cookie even though the value of the session id is being set inside the cookie. Is there another field that needs to be set? If so, why isn't it automatically being set when using the program through a browser? I'd like to use this interperter, but if I can't get it to keep track of the convos, it's useless.

    • Any chance I might get an answer on this? Been about a week.

    • Anne Kootstra
      Anne Kootstra

      Personally this is the first time Ive come accross this particular situation.

      Could you perhaps test your setup with a test AIML file. One that only contains a couple of categories that set and read the contents of a variable and the standard that, topic and input variables.

      <that> is nothing more than a special kind of variable, this means that it stores the information in the same table, using nearly identical procedures. How and why your that doesnt work, I dont know. Could be your PHP setup, could be a lot of things. Which version of PHP, OS and browser are you using?

      As ever,


    • Ok, here's what I'm doing:

      I've loaded the database with a single, simple test AIML file:

      <pattern>Test that</pattern>
      <template>I love tests.</template>

      <pattern>Check test</pattern>
      <that>I love tests</that>
      <template>Test passed</ template>

      I'm using the default talk.php file and connecting to the server on a LOCAL network machine (not the web). When I do the intial "Test that", the cookie is set on my PC named PHPSESSID.

      When I do the next step it comes up with no answer. The cookie is set, but it doesn't seem to be getting what it needs to follow the convo and get the response.

      I'm using Windows XP Pro SP1, IIS 5.1 and PHP 4.3.11  I've tried it in both Firefox 1.0.6 and IE 6.

      It may be something in my PHP settings, but I'm not sure what to look for since everything related to cookies and sessions seems to be ok.

    • Any ideas, pointers, places to look, something to try? Still stuck with this problem.