npm 包 hubot-http-post-say 使用教程

简介

hubot-http-post-say 是 Hubot 的一个 npm 包, 目的是将 Hubot 的机器人消息作为 HTTP POST 请求发送到指定的 URL.

该 npm 包可以被用于处理一些非标准的聊天平台,例如,Kik,Viber等, 同时,也可以将 Hubot 机器人的消息发送到其它应用程序进行自定义开发.

安装

在终端中,运行以下命令安装此 package:

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

使用步骤

第一步: 基本设置

在 bot.coffee 文件中添加以下代码,引入 hubot-http-post-say:

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

然后使用获得的键/值对设置以下参数:

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

这个 http_post_say_url 是指请求将要被发送到哪个 URL,如果没有设置过程.env.HUBOT_HTTP_POST_SAY_URL,则操作会默认发送到 Slack 的 chat.postMessage API 上。

http_post_say_token 是你 Slack 的 API Token, 没有值时即为空.

http_post_say_channel 是消息将要发送到的频道,默认为 #general.

第二步:使用 http_post_say 发送消息

通过调用 http_post_say 函数,可以向指定的 URL 发送一个 Hubot 机器人的消息。

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

其中:

  • robot: Hubot 实例
  • message: 带有文本和 meta 数据的 Hubot 机器人消息对象.
  • done: 回调函数,用于处理发送请求后的结果.

以下是一个示例代码:

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

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

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

在这个代码示例中,当 Hubot 接收到 "my message" 消息后,它将使用 http_post_say 函数将 "Hello #{email}, Hubot is here." 这条信息发送给指定的 URL.

如果发送请求返回的 status code 没有异常,那么该函数的回调函数将会返回 “Message sent. HTTP response code: #{result.statusCode}" 的信息,代表消息发送成功。

深度阐述

Hubot 是一个由 Github 开发的可扩展 chat bot,它可以被用于处理一些非标准的聊天平台,同时,也可以将 Hubot 机器人的消息发送到其它应用程序进行自定义开发。hubot-http-post-say 插件就是一个用于将 Hubot 机器人的消息请求通过 HTTP POST 请求发送到指定 URL 地址的插件。

http_post_say 函数的主要实现体现在如下代码中:

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

这段代码使用 robot.http 创建一个新的 HTTP 请求,并使用 headers 指定请求体的类型. 再将请求体按照 specified body 发送给目标 URL.

在请求体提交的时候,会将 Hubot 机器人的消息文本以及 meta 数据序列化成一个 JSON 对象,并指定请求体类型为 application/json 类型。

这些参数可以在你的环境设置中进行配置,如何替换成你的 API token 和其他的参数.

结论

hubot-http-post-say 这个 npm 包是 Hubot 的一种扩展机制,它可以帮助我们将 Hubot 的消息转换成 HTTP POST 请求,并发送给指定的 URL.

此 npm 包可以应用于处理一些比较非标准的聊天平台,如 Kik, Viber 等,并且能够将 Hubot 机器人的消息发送到其他应用程序进行自定义开发.

如果你正在寻找一种简单易用、方便实用的方式将 Hubot 机器人的消息发送到特定的 URL, hubot-http-post-say 将成为你的好帮手.

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


猜你喜欢

  • npm 包 loglevel-plugin-server 使用教程

    介绍 loglevel-plugin-server 是一个基于 loglevel 实现的插件,可以将前端的 console 日志实时发送到服务器端并进行保存或者后续处理。

    3 年前
  • npm 包 react-async-script-dev 使用教程

    在前端开发过程中,经常会使用第三方库或组件,而如何高效地加载和管理这些库是值得探讨的一个问题。npm 是前端开发中常用的包管理工具,而 react-async-script-dev 就是一个可以帮助我...

    3 年前
  • npm 包 react-google-recaptcha-dev 使用教程

    随着互联网的发展,用户对于网站的安全性和隐私保护要求越来越高,反垃圾、反钓鱼等技术逐渐成为了开发者们必须掌握的技能。在前端方面,Google 的 reCAPTCHA 可谓是一款非常优秀的工具。

    3 年前
  • npm 包 vue-piuma 使用教程

    前言 vue-piuma 是一个 Vue.js UI 组件库,包含了一些开箱即用的组件,如按钮、表格、面包屑、分页器等等。本文将介绍如何使用 npm 包 vue-piuma。

    3 年前
  • npm 包 @a-ignatov-parc/react-resolver 使用教程

    前言 随着前端技术发展的不断推进,越来越多的 npm 包被开发出来,帮助前端开发人员更轻松地进行开发。其中,@a-ignatov-parc/react-resolver 就是一款非常实用的 npm 包...

    3 年前
  • npm 包 @socialcare/fetch 使用教程

    简介 npm 包 @socialcare/fetch 是一个适用于前端的 HTTP 请求工具类。它具有轻量、易用和多功能的特点,在前端的项目中使用范围广泛。本篇文章将详细介绍如何使用该工具类进行 HT...

    3 年前
  • npm 包 ignite-ui-cli 使用教程

    ignite-ui-cli 是一个由 Infragistics(一个全球领先的用户界面和数据可视化工具提供商)开发的 npm 包,它可以帮助你快速地搭建和开发基于 ignite UI 框架的 Web ...

    3 年前
  • npm 包 sails-hook-adminx 使用教程

    简介 npm 是 Node.js 的包管理器,可以让我们轻松地安装和管理第三方的开源模块。而 sails-hook-adminx 是一个基于 sails.js 框架的后台管理系统脚手架。

    3 年前
  • npm 包 snabbis 使用教程

    什么是 snabbis snabbis 是一个可以让前端开发者快速使用 WebAssembly 的库。它提供了一组简单的 API,帮助开发者加载 wasm 模块,调用其中的函数,以及管理内存。

    3 年前
  • npm 包 @gamedev-js/rollup-plugin-node-resolve 使用教程

    介绍 @gamedev-js/rollup-plugin-node-resolve 是一个便于在 Rollup 中使用 Node.js 模块的插件。通常情况下,由于模块引用的相对路径问题,当我们使用 ...

    3 年前
  • npm 包 gulp-upng 使用教程

    什么是 gulp-upng gulp-upng 是一款可以帮助开发者自动优化 PNG 图片大小的 npm 包,它可以将 PNG 图片缩小至最优尺寸,减少 HTTP 请求,并提高网站加载速度,这对于网站...

    3 年前
  • npm 包 weex-binding-style-loader 使用教程

    前言 在前端开发中,使用不同的框架和库可以大大提高效率。而 weex-binding-style-loader 是一个能够将类似于 Sass 的语法转换为 Weex 样式绑定语法的 webpack l...

    3 年前
  • npm 包 Vue-plug-test 使用教程

    Vue 是一个非常流行的前端框架,因此在其上开发的插件也变得非常流行。Vue-plug-test 就是一个基于 Vue 的测试插件,专门用于测试 Vuex 数据管理库。

    3 年前
  • npm 包 component-font-awesome 使用教程

    在前端开发中经常需要使用图标来丰富页面的视觉效果。而一些经典的图标,比如各种社交媒体的图标,我们不需要自己设计而可以直接使用已有的图标库,比如 font-awesome。

    3 年前
  • npm 包 section-scroller 使用教程

    在现代网页设计中,滚动是页面交互的重要组成部分,尤其是涉及到页面文档配置滚动控制时。著名的onepage风格页面就采用了类似于滚动的机制来展现页面不同内容。为解决这一领域的问题,section-scr...

    3 年前
  • npm 包 idiew 使用教程

    介绍 idiew 是一个用于 Web 前端开发的 npm 包,通过它可以方便地在浏览器中实现类似 Photoshop 的图像处理效果。我们可以使用 idiew 来进行图像的裁剪、旋转、缩放以及添加滤镜...

    3 年前
  • npm 包 tforms 使用教程

    在前端开发中,表单是一个非常常见的组件,而且往往需要大量的样式和逻辑去处理。为了方便开发者处理表单,有许多npm包被开发出来,tforms就是其中之一。 tforms 是什么 tforms是一个轻量级...

    3 年前
  • npm 包 node-wireshark 使用教程

    在前端开发中,网络通信是不可避免的一部分。当我们遇到网络问题时,需要对网络数据进行分析和调试。而 Wireshark 是一款非常强大的抓包工具,可以帮助我们对网络数据进行捕捉、分析和调试。

    3 年前
  • npm 包 vue-toast-custom 使用教程

    1. 前言 在我们的日常开发中,界面交互效果是非常重要的一部分,而 toast 提示框组件便是其中之一。Vue 框架中有很多优秀的 toast 组件库,但是有时候需要根据自己的需求进行改造,这个时候如...

    3 年前
  • npm 包 @codetheweb/recon 使用教程

    介绍 在前端开发中,我们经常需要进行网络请求以获取数据。在进行网络请求的过程中,尤其是在跨域请求的情况下,可能会遇到一些问题,例如被防火墙拦截、出现 CORS 问题等等。

    3 年前

相关推荐

    暂无文章