8行代码手把手教你搭建智能机器人平台

我们传统的应用开发中,部署一个应用服务器基本上是必须的,而通过serverless应用部署我们自己的应用则无需搭建服务器,也不需要部署相应环境,只需要简简单单几行代码就可以在线部署我们的应用。话不多说,先给大家看一下效果图。
在这里插入图片描述
上面是一个智能计算器应用,通过8行代码我们就可以部署一个属于自己的智能计算器,当然还可以体验其它有趣的功能。

1准备工作

  1. linux,mac等环境(有其中一个即可,不能是windows),如果没有,采用ubuntu虚拟机或者linux网络服务器也可以(非必须),今天主要介绍采用ubuntu虚拟机的方式
  2. 飞书开放平台账号注册
  3. 飞书下载

1.1 部分参考链接

  1. vmware安装链接:https://my.vmware.com/cn/web/vmware/downloads
  2. ubuntu18.04镜像下载:http://mirrors.aliyun.com/ubuntu-releases/18.04.5/
  3. rust环境配置链接:https://github.com/secondstate/serverlessreactorstarter/blob/main/README.md
  4. 飞书下载windows应用下载链接:https://www.feishu.cn/download
  5. 飞书开放平台账号注册:https://passport.feishu.cn/create
    6.Serverless Reactor官网: http://reactor.secondstate.info/

2 基于飞书开放平台创建机器人应用

2.1 飞书开放平台账号注册

点击链接:https://passport.feishu.cn/create/?redirect_uri=https%3A%2F%2Fopen.feishu.cn%2Fapp%2Fcli_a02624f5b838d013%2Fevent&app_id=7&lang=zh-CN

注册完成后采用手机号方式进行登录

飞书开放平台主界面

2.2 创建机器人应用

点击创建应用

创建企业自建应用

填写应用基本信息,点击确认创建

当前应用处于待上线状态

2.3 配置机器人应用信息

点击刚才创建的应用,点击机器人

点击启用机器人

3 Serverless Reactor配置飞书应用

Serverless Reactor 面向飞书、Slack、钉钉等即时通讯工具的开发者,为开发者提供快速搭建上线第三方应用的开发体验。通过 Serverless Reactor,开发者只需专注业务逻辑的实现,无需搭建应用的服务器、域名备案、数据存储等繁琐流程。
程序使用 WebAssembly(WASM) 分发,runtime 使用 WasmEdge-napi,给予开发者较大的语言选择自由度,并保证执行效率。
具体流程如下:
开发者把飞书平台所需要的每个 callback 写成一个函数
开发者把函数代码上传到 Serverless Reactor 平台,收到一个 callback URL
开发者把这个 callback URL 填在飞书平台需要 callback 的地方

注册Serverless Reactor账号(通过邮箱注册)
在这里插入图片描述
注册后邮箱会收到一封链接,点击验证,然后进行登录
登录首页

点击左上角apps

点击创建new app



填写玩欢迎语后点击完成

欢迎语采用json格式,在启用机器人时显示

在列表可以看到我们刚才创建的应用

4 上传自定义函数配置文件

这里默认大家已经搭建好ubuntu虚拟机环境

4.1安装nmp环境

在终端输入下面命令

curl --silent --location https://rpm.nodesource.com/setup_10.x | bash -
yum install -y nodejs
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm install
npm run build
npm -v

4.2 配置rust和rustwasmc环境

在终端输入下面命令安装rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

在终端输入下面命令安装rustwasmc(管理员模式,需要输入密码)

sudo npm install -g rustwasmc  --unsafe-perm 

4.3 fork计算器源代码到本地

github链接:https://github.com/second-state/serverless-reactor-starter
下载zip压缩包到本地

进行解压
解压后生成的文件

在文件夹内打开终端
在文件夹内右击选择open in terminal

输入下面命令

rustwasmc bulid

编译完成后可以看过原来的文件夹里面多了一个pkg文件夹

里面生产我们需要上床的.wasm文件

4.4 上传.wasm文件

回到Serverless Reactor主界面,点击upload wasm file

将刚才生成的.wasm文件可以现在虚拟机中拖拽到windows中在上传(安装vmtools可以直接拖拽)

上传后复制service url

回到飞书开放平台,点击时间订阅

编辑请求网址,将刚才的复制service url复制过来

这里需要注意的是复制网址后还需要在后面添加/internal
添加事件

4.5 版本发布

在版本发布与管理中创建新建版本

版本填写1.0即可

点击保存

然后申请发布

等待审核通过

5 在本地安装飞书应用

5.1 注册登录飞书

以windows为例
下载链接:https://www.feishu.cn/download

下载安装包后默认安装即可
安装完成后进行登录

应用主界面

在搜索栏搜索计算器

可以看到我们创建的应用

5.2 计算机机器人应用体验


体验感觉还不错,欢迎大家试用!

(完)