Forum Discussion

4 Replies

  • I think the OP is looking for a chat agent which is a program that will chat with a human. 

    I was't going to post this yet as I was still experimenting but to help the conversation develop here is some relevant information from a demo I was playing with.

    There is a "AI" based chat program called RiveScript which has implementations in several languages including JavaScript. Once some simple architecture is setup you can use RiveScript from a browser and specify the rules it follows using a configuration file named brains.rive. This of course means you can implement it within QuickBase without using any other external services.

    I have implemented RiveScript from a code page and here is a screenshot of a few questions and answers:




    Here are the five messages I typed:
    1. my name is dan
    2. who is the ceo of quickbase
    3. make me a sandwich
    4. what time is it
    5. how many pasties

    Here are the five rules in the brains.rive file:

    + my name is *
    - nice to meet you <star>
    - nice meeting you <star> + *ceo * quickbase - Rick Willett is CEO of Quick Base and serves as chairman of the company's board of directors. ^<img width=200 height=200 src=https://www.quickbase.com/uploads/panel/RickWillett_square-min.jpg>
    + make me a sandwich
    - ham, turkey or veggie?
    + what time is it
    - the time is: <call>whattime</call>
    > object whattime javascript
      return new Date();
    < object
    + how many pasties
    - there are <call>numpasties</call> pasties
    > object numpasties javascript
      var dbidPasties = "bgcwm2m4g";
      var apptoken = "d4vzqatccbhzxdkmhhp3cs4jhe4";
      return new rs.Promise(function(resolve, reject) {
        fetch('${dbidPasties}?act=API_DoQueryCount&qid=1&apptoken=${apptoken}')
          .then(r => r.text())
          .then(res => {
            var parser = new DOMParser();
            var xml = parser.parseFromString( res, "text/xml" );
            var numMatches = xml.querySelector("numMatches").textContent;
            resolve(numMatches);
          })
      });
    < object
    In a nutshell there are a bunch of commands with shortcut notations that allow you to pattern match on the user's input and dispatch various commands including capturing the state of the conversation, calling arbitrary JavaScript and generating a response message.

    Here are the docs:

    RiveScript Docs
    https://www.rivescript.com/wd/RiveScript

    Here is a playground where you can get the hang of using RiveScript:



    RiveScript Playground
    https://play.rivescript.com/

    If you want to pursue using RiveScript with QuickBase feel free to contact me off-world using the information in my profile:

    https://getsatisfaction.com/people/dandiebolt
  • I patched up my RivesSript chatbot demo so I could share it publicly:

    RiveScript ~ CodePage index.html
    https://haversineconsulting.quickbase.com/db/bn9954p94?a=dbpage&pagename=index.html

    Here is the brain.rive file:

    Brain.rive
    https://haversineconsulting.quickbase.com/db/bn9954p94?a=dbpage&pagename=brain.rive   

    And here are the constituent JavaScript and CSS files used:

    https://haversineconsulting.quickbase.com/db/bn9954p94?a=dbpage&pagename=rivescript.js   
    https://haversineconsulting.quickbase.com/db/bn9954p94?a=dbpage&pagename=script.js   
    https://haversineconsulting.quickbase.com/db/bn9954p94?a=dbpage&pagename=style.css

    My main purpose in this demo was to check out RiveScript's JavaScript interface to QuickBase data. I have no idea what you chatbot will be talking about but using the RiveScript commands you should be able to create a rather elaborate chatbot and access any QuickBase data and APIs.

    If you want to chat about RiveScript feel free to contact me off-world using the information in my profile:

    https://getsatisfaction.com/people/dandiebolt
  • I've done a Slack integration using Workato as the connector, but haven't built anything directly integrated. Not sure if there is anything that would directly connect.
  • Pandorabots is a great option.  It as an API and SDK that are compatible with Quick Base.

    CloudBase Services can customize and integrate chatbots to work on top of Quick Base OR to integrate Quick Base with common services.