如何通过输入框与cleverbot交谈?

时间:2016-01-16 21:06:16

标签: javascript jquery html api input

我最近发现a script使用了cleverbot的api。当我在ask()函数中输入变量时,我能够得到一个响应,但是我如何才能使用户可以通过在输入框中输入值来与cleverbot进行通信?

另外,cleverbot的api只会将响应打印到console.log(),所以我不得不使用底部的代码将条目转录到.console div:

$(document).ready(function() {

var bot = new cleverbot("BIsKhtIhZdmgbOPp", "DwikyXztHk6GEG7LcvHCKfObCxYduTMP");

bot.setNick("sessionname")

bot.create(function (err, session) {
  // session is your session name, it will either be as you set it previously, or cleverbot.io will generate one for you

  // Woo, you initialized cleverbot.io.  Insert further code here
});

$('#clever').keyup(function (e) {
   if (e.keyCode == 13) {

      var value = $(this).val();
      var input = value;

       if (value == input) {
          document.getElementById("input").innerHTML =
          '<p>&#62;&nbsp;' + bot.ask(input, function (err, response) {
            console.log(input);
            console.log(response);
          }); + '</p>';
       }

   }
});

if (typeof console  != "undefined")
  if (typeof console.log != 'undefined')
    console.olog = console.log;
else
  console.olog = function() {};

console.log = function(message) {
  console.olog(message);
  $('.console').append('<br>' + '<p>&#62;&nbsp;' + message + '</p>');
};
console.error = console.debug = console.info =  console.log
});
<!DOCTYPE html>

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href='https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700,300' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://unilogue.github.io/css/style.css">
<script type="text/javascript" src="https://unilogue.github.io/js/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="https://unilogue.github.io/js/cleverbot/cleverbot.io.js"></script>
</head>

<body>

<div class="console" style="width:75%;"></div>
<div id="input"></div>
<p>&#62;&nbsp;</p><input id="clever" type="text" placeholder="say something clever." />


</body>


</html>

1 个答案:

答案 0 :(得分:0)

我更新了代码段并添加了if ...语句以启用对话。

&#13;
&#13;
$(document).ready(function() {

var bot = new cleverbot("BIsKhtIhZdmgbOPp", "DwikyXztHk6GEG7LcvHCKfObCxYduTMP");



bot.setNick("sessionname")

bot.create(function (err, session) {
  // session is your session name, it will either be as you set it previously, or cleverbot.io will generate one for you

  // Woo, you initialized cleverbot.io.  Insert further code here
});

$('#clever').keyup(function (e) {
   if (e.keyCode == 13) {

      var value = $(this).val();
      var input = value;

       if (value == input) {
          document.getElementById("input").innerHTML =
            bot.ask(input, function (err, response) {
            console.log('me > ' + input);
            console.log('cb > ' + response); // Will likely be: "Living in a lonely world"
          });
          $(this).val('');
       }

   }
});

$('html').keydown(function(e) {
 if (e.which == 118) {
    window.open('/', '_self');
}
});

if (typeof console  != "undefined")
  if (typeof console.log != 'undefined')
    console.olog = console.log;
else
  console.olog = function() {};

console.log = function(message) {
  console.olog(message);
  $('.console').append('<br>' + '<p>' + message + '</p>');
};
console.error = console.debug = console.info =  console.log
});
&#13;
<!DOCTYPE html>

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href='https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700,300' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="https://unilogue.github.io/css/style.css">
<script type="text/javascript" src="https://unilogue.github.io/js/jquery-1.11.3.min.js"></script>
<script type="text/javascript" src="https://unilogue.github.io/js/cleverbot/cleverbot.io.js"></script>
</head>

<body>

<div class="console"><div id="input" style="display:none;"></div></div>
<p>me &#62;&nbsp;</p><input id="clever" type="text" placeholder="say something clever." spellcheck="false" />


</body>


</html>
&#13;
&#13;
&#13;