TalkerNode 是一个可以通过命令行创建对话流程的 node.js 库。其可以帮助前端开发人员快速构建对话型应用程序,实现用户与程序的自然对话交互。
安装
可以通过 npm 安装:
npm install talkernode
使用
在使用 TalkerNode 之前,我们需要了解一些术语:
- 对话节点(Node):对话流程中的一个节点,其包含一个消息和一个或多个“回答(Action)”。当用户输入满足该节点的要求时,可以执行一个或多个回答。
- 回答(Action):对话节点的“回答”,包括一个文本消息和一个可选的 JavaScript 函数。
- 上下文(Context):记录用户与程序之间的状态,以便在对话的不同节点之间传递信息。
接下来,我们看一下 TalkerNode 应该如何使用。
首先,导入 TalkerNode 库
const TalkerNode = require('talkernode');
然后,创建一个空的 TalkerNode 对象
const myTalker = new TalkerNode();
接下来,我们创建一个新的对话节点,并在节点中添加三个回答。
-- -------------------- ---- ------- --------------------- -------- ------------------- -------- - - -------- ---------------- -- - -------- ----------- ------- --------- -- - -------------- - ------- - -- - -------- ---------- -- - ---
在这个例子中,我们创建了一个节点,其消息是“你好,请问有什么需要我帮助的吗?”,并且添加了三个回答。
第一个回答只是提供一个简单的消息。
第二个回答还包含一个 JavaScript 函数,该函数将名称“Mark”存储在上下文对象中。
第三个回答只包含一个消息。
接下来,我们可以通过 TalkerNode 对象的 start() 方法,让程序开始对话:
myTalker.start();
接下来,如果用户输入与第一个回答中的消息“可以告诉我一下公司的地址吗?”相同的消息,程序会回答“公司地址是xxxxx”。
如果用户选择第二个回答,那么程序将存储一个“person”键值对,其值为“Mark”。
最后,如果用户选择第三个回答,程序将结束对话。
示例代码
在这个示例中,我们将展示如何使用 TalkerNode 创建一个简单的对话,这个对话中,程序会问用户是否要玩一个游戏,然后程序将生成一个随机数,并让用户猜这个数字。
-- -------------------- ---- ------- ----- ---------- - ---------------------- ----- -------- - --- ------------- --------------------- -------- --------------- -------- - - -------- --------- -- - -------- -------- -- - --- --------------------- -------- ---------------------- -------- - - -------- ------------ -- - -------- ---------- -- -- ------- --------- -- - -------------------- - ------------------------ - ---- - -- - --- --------------------- -------- ------------- ------- --------- -- - ------------------ - -- - --- --------------------- -------- --------- -- - --------------------- -- ------------------ --- ---------- - ------ ----------- - ---- -- ------------------ - --------------------- - ------ ------------------- - ---- -- ------------------ - --------------------- - ------ ------------------- - ---- - ------ --------- - - ------------------ - - ---- - -- ------- --------- -------- -- - ----------------- - ------------------ -- --------- --------- -------- -- - ------ -------------------------- - --- -----------------
这个程序首先问用户是否要玩一个游戏。如果用户回答“好啊,我想玩”,那么程序会生成一个随机数。
接下来,程序将要求用户猜一个数字。
如果用户的猜测太高或太低,程序将回答“你的猜测有点高了/低了,请再尝试一下”。
如果用户猜对了,程序将结束对话并告诉用户他猜了多少次。
在这个例子中,我们使用了上下文对象来保存一些信息,如随机数和猜测次数。我们还在对话节点中添加了 JavaScript 函数,以便在对话流程中处理一些更加复杂的逻辑。
结论
TalkerNode 是一个强大的工具,可以帮助我们快速构建对话型应用程序。通过使用 TalkerNode,我们可以实现真正的自然语言交互,并提供更好的用户体验。这个库虽然在一开始可能有一些学习曲线,但是一旦掌握了它的基本用法,就可以轻松地创建自己的对话流程。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/105485