npm 包 botbuilder-toybox-dialogs 使用教程

什么是 botbuilder-toybox-dialogs?

botbuilder-toybox-dialogs 是一个可以帮助开发者快速创建对话机器人的 npm 包,解决了对话机器人开发中较为繁琐和复杂的问题。

botbuilder-toybox-dialogs 集成了 BotBuilder 中所有常见的对话控制器,比如 Prompt、Confirm、Choice 等等。同时,它还允许开发者轻松定义自己的自定义对话控制器,以适应更复杂的对话流程。

安装

--- ------- -------------------------

使用教程

1. 基本概念

在开始 botbuilder-toybox-dialogs 的使用之前,我们先来了解几个基本概念。

  • Dialog:对话控制器,定义对话的流程和行为。
  • Library:对话库,包含了一组对话,可以被其他库或者 bot 引用。
  • Session:对话中的一个 session,在对话的整个过程中保存了各种状态和上下文信息。

2. 创建对话机器人

首先,我们需要创建一个 botBuilder 实例,然后将其传入 botbuilder-toybox-dialogs 中进行初始化,最后启动 botBuilder 实例。

----- ------- - ----------------------
----- ------- - -------------------------------------

----- --------- - --- ---------------------------
----- --- - --- ------------------------------- --------- -- ----
-------------------------------------
--------------- --------- -- ----
--------------------- ------------------------------
------------------- ----------------------------
--------------------- ------------------------
----------------------------------- -------- - -------- -------- ---
------------------------------------- ---------- - -------- ---------- ---
------------------------------------- ---------- - -------- ---------- ---
--------------- -
  ------- -- -
    ----------------------------- ---- ---- --- - ---- --- ---- ---------
  --
  ------- -- -
    ------------------------------- ------- ------ -- --------- -
      ------- ------- ----- --------
      ------- --------- ----- ----------
      ------- --------- ----- ----------
    ---
  --
  --------- -------- -- -
    ------ --------------------------------------- -
      ---- -------
        -----------------------------
        ------
      ---- ---------
        -------------------------------
        ------
      ---- ---------
        -------------------------------
        ------
    -
  -
---

上面代码进行了以下操作:

  • 创建一个 botBuilder 实例并传入 ConsoleConnector 实例。
  • 创建 botbuilder-toybox-dialogs 的 library 实例(createLibrary())。
  • 初始化 dialogs 并为 bot.library() 设置一个引用。
  • 定义了以下几个对话控制器:/cancel、/help、/repeat。
  • 使用 beginDialogAction() 定义了对话中的帮助、重复和取消操作。
  • 在 '/' 对话中提供了简单的对话流程。

3. 加入自定义对话文件

我们可以将自定义对话文件加入到 botbuilder-toybox-dialogs 中通过调用 dialog() 方法。

--------------- -
  ------- -- -
    ----------------------------- ---- ---- --- - ---- --- ---- ---------
  --
  --------- -------- -- -
    -- ------------------------------- --- ---- ------- -
      ----------------------------------
    - ---- -- ------------------------------- --- ---- ------- -
      ----------------------------------
    -
  --
  ------- -- -
    -- ----
    --------------------
  --
---

------------------------ -
  ------- -- -
    ----------------------------- ----- --- ---- -- --- --- ---------
  --
  --------- -------- -- -
    ---------------------------- - -----------------
    ----------------------------- ----- -- --- --- --- --- --- ----- -------------------------------------
  --
  --------- -------- -- -
    --------------------------- - -----------------
    -------------------------------- ---- --- ---- --- ---- -- ------ ------------------------------- ---- --- ----------------------------------
  --
  --------- -------- -- -
    -- ------------------ -
      -----------------------------
        ---------- -----------------------------
        --------- ----------------------------
      ---
    - ---- -
      ------------------------ --- ---------
      --------------------
    -
  -
---

------------------------ -
  ------- -- -
    ----------------------------- ----- --- ---- -- --- ----- --- ---- -- -------
  --
  --------- -------- -- -
    ---------------------------- - -----------------
    ----------------------------- ----- ---------- ---- --- ---- -- -----------------------------------
  --
  --------- -------- -- -
    ------------------------------ - -----------------
    -------------------------------- ---- --- ---- --- ---- -- --- ------------------------------- ---- ------ -------------------------------------
  --
  --------- -------- -- -
    --------------------- ------------------------------- ---- ------ -------------------------------------
    --------------------
  --
---

4. 使用当前 session 数据

可使用 session.dialogData 获取当前 session 中保存的数据,用以改变对话行为。

----------------------- -
  --------- -- -
    --- ------ - ------------------------
    -- -------- -
      ----------------------------- ---- --------- ---------- -- --- ---- -- ------ ---- ----------
    - ---- -
      ----------------------------- ------- ----- ---- ----------
    -
  --
  --------- -------- -- -
    -- ----------------- --- ------ -
      ------ ------------------------
    -
    --------------------
  -
---

5. 实现多语言支持

botbuilder-toybox-dialogs 提供了本地化语言支持的方式,以便支持多种语言的机器人。

----- ------- - ----------------------
----- ------- - -------------------------------------

----- --------- - --- ---------------------------
----- --- - --- ------------------------------- --------- -- ----

----- ------- - ------------------------------
  -----------------------------------

------------------- --------- -- -
  -------------------- ---- -- - --------
---

---------------------
----------------------------------- ------- - -------- -------- ---
------------------------------------- --------- - -------- ---------- ---

--------------- -
  --------- -- -
    ----------------------------- ----- --- - -- --- -------
  --
  --------- -------- -- -
    ------ -------------------------------- -
      ---- -------
        ----------------------------
        ------
      ---- ---------
        ------------------------------
        ------
      --------
        -------------------- - --- --- ---------- ---- -----------
        ------
    -
  --
---

6. 使用结果过滤器

结果过滤器是一个函数,接收两个参数:原始结果和 session 对象。开发人员可以使用结果过滤器来转换和改变结果。

----------------------- -
  --------- -- -
    ------------------------------- ---- ---- -- --- ---- -- ------ -
      ----------- --
      ------------ ---- ----- ------- -- -------- ------ ----- - ---------
      ---------- --
    ---
  --
  --------- -------- -- -
    -- ------------------ -
      -----------------------------
        --------- -----------------
      ---
    - ---- -
      -----------------------------
        ------- -----------
      ---
    -
  --
--
------------------------------------------ ------------ - -------- -------- ---------- --
---------------------------------- ---------- - -------- ---------- --
-------------------------------- -------- - -------- -------- ---

总结

本文介绍了 npm 包 botbuilder-toybox-dialogs 的使用教程,包含了如何创建对话机器人、加入自定义对话文件、使用当前 session 数据、实现多语言支持等等。除此之外,还介绍了如何使用结果过滤器,以便开发人员可以更加灵活地使用该 npm 包来开发自己的对话机器人。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60066c81ccdc64669dde4ceb


猜你喜欢

  • npm 包 botengine-sdk 使用教程

    在今天的开发世界中,许多前端开发人员很可能都听说过 botengine-sdk 这个 npm 包。botengine-sdk 是一个帮助开发人员构建聊天机器人的 JavaScript SDK,可以让开...

    4 年前
  • npm 包 botfactory 使用教程

    简介 Botfactory 是一个基于 Node.js 的聊天机器人框架,拥有丰富的功能和易于使用的 API,可以快速构建出高度定制化的聊天机器人。 安装 要使用 Botfactory,首先需要在项目...

    4 年前
  • NPM包 bootstrap-layout-scrollable 使用教程

    Bootstrap-layout-scrollable 是一款基于 Bootstrap 的滚动布局插件,它非常适用于页面上需要滚动显示的大量内容。本文将为大家介绍 bootstrap-layout-s...

    4 年前
  • npm 包 bootstrap-layouts 使用教程

    Bootstrap 是一个广泛使用的前端框架,可以帮助开发者快速搭建符合标准的页面布局。而 npm 包 bootstrap-layouts 的出现则更是提供了方便快捷的布局功能,让前端开发更为简洁高效...

    4 年前
  • npm 包 bootstrap-less 使用教程

    前言 Bootstrap 是一套非常流行的前端开源框架,它提供了多种组件和样式来帮助开发者快速搭建各类界面。而 bootstrap-less 则是一个基于 bootstrap 的 less 样式文件,...

    4 年前
  • npm 包 bootstrap-list-filter 使用教程

    在前端开发中,我们经常需要使用到一些 UI 库,比如 Bootstrap。而 Bootstrap 为了方便开发,也提供了很多功能强大、易于使用的组件。其中,bootstrap-list-filter ...

    4 年前
  • npm 包 bootstrap-listbuilder 使用教程

    在前端开发中,样式库是必不可少的一环。其中 Bootstrap 可谓是众所周知的样式库,它的布局、样式、插件等都是非常优秀的。而在 Bootstrap 的插件中,bootstrap-listbuild...

    4 年前
  • npm 包 bootstrap-loader-example 使用教程

    在前端开发中,使用第三方库能够极大地提高我们的开发效率。而 npm 包则是我们经常使用的一种方式。本文将介绍一个使用 npm 包 bootstrap-loader-example 的教程。

    4 年前
  • npm 包 bootstrap-margin-grid 使用教程

    在前端开发中,Bootstrap 是广泛使用的框架之一,可以帮助我们快速构建样式和布局。不过,bootstrap-grid 本身的使用还是有些限制,比如每一列的左右间距是固定的,并不能根据需要进行自由...

    4 年前
  • npm 包 botch 使用教程

    在前端开发中,使用 npm 包可以轻松地管理项目中的模块和工具。其中,botch 是一个非常实用的 npm 包,它能够帮助我们管理页面上的元素。本文将介绍 botch 的使用方法,包括安装、基本用法、...

    4 年前
  • npm 包 botdock-helper 使用教程

    前言 在前端开发中,我们经常需要与后台进行交互,而后台提供的接口通常会有一定的规范和要求,比如请求方式、数据格式等。在使用这些接口时,我们很容易遇到一些问题,比如参数不正确、返回数据格式不对等。

    4 年前
  • NPM包botdylan使用教程

    前言 在前端开发中,有很多常用的工具可以帮助我们提高效率。其中,npm是前端开发必备的工具之一,它不仅能够管理依赖,还可以发布自己的npm包供其他人使用。 今天,我们要介绍的是一个npm包,名为bot...

    4 年前
  • npm包botgram使用教程

    简介 Botgram是一个基于Node.js的轻量级机器人框架,可以被用来开发Telegram机器人。如果你需要一个快速,灵活,且支持多语言的机器人框架,那么Botgram就是你需要的。

    4 年前
  • npm 包 bootstrap-markdown-fa5 使用教程

    Bootstrap-markdown-fa5 是一个基于 Bootstrap 和 Font Awesome 的 Markdown 编辑器。它提供了一些有用的功能,如快捷键、代码高亮、图片上传和自动保存...

    4 年前
  • npm 包 bootstrap-material-design-icons 使用教程

    前言 在前端开发中,使用图标是必不可少的。常见的图标库有 Font Awesome、Material Icons 等,它们都很好用。但有时候需要使用另外一些图标,这时候可以使用 bootstrap-m...

    4 年前
  • npm 包 bootstrap-material-icons 使用教程

    在前端开发中,icon 图标是不可或缺的一部分。而为了更好地设计和定制 icon 图标,开发者需要一个强大的图标库。其中,bootstrap-material-icons 是一款非常受欢迎的图标库,提...

    4 年前
  • npm包 bootstrap-material-lite使用教程

    在前端开发过程中,现代化的UI设计风格已经成为了主流,其中Material Design是广受欢迎的设计风格之一。为了辅助前端开发者更快速的实现Material Design风格的UI,推出了许多相关...

    4 年前
  • npm包bootlint-teamcity使用教程

    什么是npm包? npm (Node.js Package Manager)是 world’s largest software registry 的缩写,是 Node.js 的官方包管理工具。

    4 年前
  • npm 包 bootloader 使用教程

    在前端开发中,我们经常需要使用各种各样的第三方库和工具来辅助我们完成项目。而 npm 包 bootloader 正是一款非常实用的工具,可以让我们在开发过程中更加便捷地加载和使用模块。

    4 年前
  • npm 包 bootnotify 使用教程

    引言 在现代互联网开发中,前端技术的复杂度越来越高,每个开发者都希望找到一些优秀的工具来帮助自己提升开发效率,让代码质量更可靠。其中,npm 是最常用的包管理工具之一,而 bootnotify 则是一...

    4 年前

相关推荐

    暂无文章