npm包jovo-webhook-connector使用教程

阅读时长 10 分钟读完

最近在开发一个语音助手项目,发现使用 jovo 框架可以轻松地构建语音应用(Alexa技能、Google助手等)。其中的 jovo-webhook-connector npm 包,可以让我们把语音应用和服务器连接起来,从而进行自定义交互。本文将详细介绍 jovo-webhook-connector 的使用方法,以及示例代码和深入解析。

什么是 jovo-webhook-connector

jovo-webhook-connector 是一个 npm 包,用于将 jovo 语音应用和服务器连接。它通过定义 webhook(回调函数),将与 Alexa 或 Google Home 的交互请求传递到服务器端,然后处理并返回响应。

如何使用 jovo-webhook-connector

安装 jovo-webhook-connector

要使用 jovo-webhook-connector,您需要先安装 jovo。然后,您可以使用以下命令安装 jovo-webhook-connector:

npm install --save jovo-webhook-connector

使用 jovo-webhook-connector

在您的 jovo 应用程序中,您需要为 Alexa 或 Google Home 设置 webhook。可以添加以下代码:

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

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

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

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

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

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

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

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

请注意,我们为 Alexa 设置了 webhook。在 jovo-webhook-connector 中,您可以使用 Alexa、Dialogflow、GoogleAssitant 等。

此外,我们使用 webhook.listen() 来启动它。这将使您的服务器在端口3000上运行,并挂钩到“/webhook”路径上。

现在,如果用户对 Alexa 设备说“启动我的应用”,您的 jovo 应用程序将响应“Hello World! What's your name?”该响应将通过 webhook 发送到服务器,并返回服务器响应。

深入理解 jovo-webhook-connector

在上述示例中,我们只是使用了 jovo-webhook-connector 的最基本功能。在下面的示例中,我们讲解了 jovo-webhook-connector 更多的高级功能:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

上面的示例中,我们添加了以下配置:

  • onRequest:在每个请求开始时运行。
  • onResponse:在每个请求结束后运行。
  • onError:在每个错误处理程序被调用时执行。
  • onSend:在每个响应成功时运行。
  • onListen:在服务器开始运行时运行。
  • onClose:在服务器关闭时运行。

还是上一个例子中用到的 webhook.listen() 函数,这里我们改为将所有配置项传递进构造函数,而返回 HTTP Server 对象,在setTimeout() 结束后方便主动关闭服务操作。

这里我们同时也使用了 jovo 的中间件机制:app.use(),我们也传输了一个函数来执行一个自定义的 middleware。在本示例中,我们对中间件的内容进行了更改,以在每个请求时打印消息。

总之,jovo-webhook-connector 是一个非常强大的 npm 包,您可以使用它来轻松地连接 jovo 应用程序和服务器或云服务。如果您正在构建 jovo 应用程序,请务必尝试使用 jovo-webhook-connector。

示例代码

您可以在下面找到完整的示例代码来了解如何使用 jovo-webhook-connector:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

参考

结果

您现在应该已经掌握了如何使用jovo-webhook-connector将jovo应用程序与服务器连接,以及如何为不同的请求添加高级配置。请记住,jovo-webhook-connector有很多不同的设置和配置,所以您应该花时间尝试各种不同的设置,并探索其所有可能的设置和属性。

最后,祝你好运并愉快地编程!

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

纠错
反馈