Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用java向程序ab添加函数?_Java_Chatbot_Aiml - Fatal编程技术网

如何使用java向程序ab添加函数?

如何使用java向程序ab添加函数?,java,chatbot,aiml,Java,Chatbot,Aiml,我想用java制作一个聊天机器人,类似于MSN时代的那些机器人,比如cleverchild或其他任何他的名字。我已经知道如何使用,以及如何在aiml文件中使用通配符作为响应,但我不知道如何添加功能。例如,如何添加计算器,或者如何访问计算机上的某些文件?我不需要帮助为这些函数编写代码,但是,我如何给机器人一些变量,让它用这些变量运行函数呢 Me: I need to delete files //The bot would process: _delete files * Bot: which

我想用java制作一个聊天机器人,类似于MSN时代的那些机器人,比如cleverchild或其他任何他的名字。我已经知道如何使用,以及如何在aiml文件中使用通配符作为响应,但我不知道如何添加功能。例如,如何添加计算器,或者如何访问计算机上的某些文件?我不需要帮助为这些函数编写代码,但是,我如何给机器人一些变量,让它用这些变量运行函数呢

Me: I need to delete files
//The bot would process: _delete files * 
Bot: which files?
Me: C://folder/file.doc  
//Bot runs function deleteFile(path) 

我想到两种方法:

  • 编写您自己的预处理器,自己处理这些特殊任务,并将其余任务提供给program ab

  • 编写一个后处理器来捕获和查询Google,它在计算公式方面做得很好


  • 与通用Google不同,您可能还想查看Wolfram Alpha的API

    您是否能够使用aiml实现调用函数?谢谢您提供的解决方案。你能推荐一个例子来实现一个简单的java函数来打印一些东西或者一个计算器函数作为参考吗?我已经有一段时间没有使用ab了,但是总体思路是这样的:
    Web前端输入->Web服务器->ab后端->Web服务器->Web前端输出
    。因此,您的前端与web服务(可能是Tomcat,但您可以使用任何东西)通信,而web服务与ab后端通信。这样,您就可以在web服务器级别拦截任何内容。调用Google或Wolfram Alpha只是一个常规的web API调用。或者,如果你想使用Android,你的前置/后置处理器会将ab封装在中间。同样,这只是一个常规的第三方API调用。非常感谢您的帮助@Tsan KuangLee ab程序在控制台中启动聊天机器人,我如何使用spring使其与api交互?你能详细说明一下吗。