npm 包 botbuilder-location 使用教程

阅读时长 6 分钟读完

简介

npm 是 Node.js 的包管理工具,它允许我们在项目中引入第三方模块,快速、高效地开发出丰富多彩的应用程序。botbuilder-location 是一个让 Bot Framework 能够处理地理位置的 npm 包。这篇文章将介绍如何使用该 npm 包,以及如何在自己的应用程序中发挥其作用。

安装

首先我们需要在项目中安装 botbuilder-location,可以通过运行以下命令来完成安装:

安装完成后,我们就可以在代码中引入 botbuilder-location 这个 npm 包,并在 Bot Framework 中使用它了。

使用

botbuilder-location 可以帮助我们在 Bot Framework 中处理地理位置。通过在 bot 中添加相应的 Dialog,我们可以获得用户的地理位置信息。接下来,我们将一步步介绍如何使用 botbuilder-location 来完成这个过程。

步骤一:引入 botbuilder-location

首先,我们需要在代码中引入 botbuilder-location 这个 npm 包,并创建一个实例对象。

这里,我们在 bot 中引入了 LocationDialog 这个 Dialog,并将其添加到了 DialogSet 中。同时,我们也初始化了这个 Dialog,给它传入了一个 BING_MAPS_KEY。这个 BING_MAPS_KEY 用于从微软地图 API 中获取地理位置信息。

步骤二:使用 LocationDialog

现在,我们已经把 LocationDialog 添加到了 bot 中,接下来我们需要在适当的时候调用它。具体来说,我们可以在对话中的任意时刻(比如问答、推销、用户查询等)调用 LocationDialog。

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

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

以下是我们调用 LocationDialog 的代码,我们可以看到该 Dialog 的使用非常简单,只需要调用 beginDialog 方法即可。在第二个 async 中,我们打印出了用户所在的纬度和经度信息。

步骤三:运行 bot

以上,我们已经完成了代码中的所有实现。现在,我们可以直接运行这个 bot,并在对话中询问用户地理位置信息。botbuilder-location 所包含的 Dialog 会帮助我们处理完整的地理位置信息,无需我们自己处理。

总结

通过这篇文章,我们学习了如何在 Bot Framework 中使用 botbuilder-location 这个 npm 包。我们看到,使用 LocationDialog 非常简单,只需几行代码即可完成对地理位置的处理。当然,要使用 botbuilder-location 中的 Dialog,我们需要先将它安装到我们的项目中,并正确调用它的接口。此外,当我们使用 LocationDialog 时,也需要给 Dialog 传入 BING_MAPS_KEY 这样的 API Key。但总体来说,使用 botbuilder-location 将会大大简化我们在 Bot Framework 中的开发工作。

完整代码

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

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

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

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

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

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

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

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

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

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

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60066c81ccdc64669dde4cba

纠错
反馈