前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【玩转腾讯云】 Web 云开发作为企业微信机器人教程

【玩转腾讯云】 Web 云开发作为企业微信机器人教程

原创
作者头像
XaDon
修改2020-04-24 18:04:42
2K0
修改2020-04-24 18:04:42
举报
文章被收录于专栏:Xudon的云开发吖Xudon的云开发吖

当我们企业微信的机器人碰上云开发会擦出怎样的火花?我们今天来做一个通过云函数来定时向企业微信群内推送消息

开发前准备

首先我们准备工具 企业微信 @cloudbase/cli node.js

企业微信

企业微信下载在这

@cloudbase/cli

@cloudbase/cli通过npm命令进行下载

npm i @cloudbase/cli

node.js

node.js在这

开通云环境

云开发控制台进行新建一个云环境~

注:每个账户可使用一个开启免费资源的环境~

开通后自动进入持续大概2-3分钟的初始化环境阶段,我们稍等等即可~

创建机器人

我们打开企业微信,右击群聊天,点击添加群机器人

点击已添加的群机器人,可以看到 Webhook 地址

我们可以通过向这个地址发送post请求,来实现推送消息。

可以打开 Postman 或 使用 curl 进行测试。

postman
postman

curl的用法可以参考阮一峰老师的这篇文章~

具体查看消息类型及数据格式,可以查看机器人配置说明~

不但成功返回,并且群聊中会出现我们刚刚推送的消息~

但这个是我们需要手动发送post请求才能进行推送,但是往往的需求并不是这样的。比如我们想要每天早上6点向群聊中推送今日当地的天气情况。那么这就用到云函数中的定时器触发功能啦~

新建云开发项目

使用命令tcb init

$ tcb init
√ 选择关联环境 · xxxx - [xxxx-xxx:空]
√ 请输入项目名称 · webHook
√ 选择开发语言 · Node
√ 选择云开发模板 · Hello World
√ 创建项目 webHook 成功!

配置云函数触发器

在cloudbaserc.js中加入

triggers: [
 {
 // name: 触发器的名字
 name: "webHooks",
 // type: 触发器类型,目前仅支持 timer (即定时触发器)
 type: "timer",
 // config: 触发器配置,在定时触发器下,config 格式为 cron 表达式
 config: "_/10 _ * * * * *"
 }
]

现在cloudbaserc.js文件变成这样👇

为了演示效果,这里我们配置为10秒触发一次,具体可以参考cron表达式

为其创建一个云函数触发器

使用命令tcb functions:trigger:create app

$ tcb functions:trigger:create app
√ [app] 创建云函数触发器成功!

注:

  • 删除云函数触发器可以使用命令tcb functions:trigger:delete app
  • 必须现在cloudbaserc.js中配置云函数触发器,才能使用命令进行创建,否则会出现创建失败

编写云函数

接下来进入到functions/app

我们安装axios来为我们发送post请求~

npm init

npm i axios

安装完成后进入到app/index.js中将下列代码写入👇

// 返回输入参数
const axios = require('axios')
exports.main = async (event) => {
    let json = {
        "msgtype": "text",
        "text": {
            "content": "广州今日天气:29度,大部分多云,降雨概率:60%",
            "mentioned_list": ["wangqing", "@all"],
            "mentioned_mobile_list": ["13800001111", "@all"]
        }
    }
    let url = '你的企业微信群机器人的Webhook地址'
    let result = await axios.post(url,json)
    return result.data
}

随后我们将云函数部署到云端

使用命令tcb functions:deploy app

部署完成后,进入到云函数

选择对应的云函数进行日志查看

我们就可以在日志中看到每隔10s会输出一次日志,并且在企业微信群聊中也会推送我们的消息~

快来试试吧~

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开发前准备
    • 企业微信
      • @cloudbase/cli
        • node.js
        • 开通云环境
        • 创建机器人
        • 新建云开发项目
        • 配置云函数触发器
        • 编写云函数
        相关产品与服务
        云函数
        云函数(Serverless Cloud Function,SCF)是腾讯云为企业和开发者们提供的无服务器执行环境,帮助您在无需购买和管理服务器的情况下运行代码。您只需使用平台支持的语言编写核心代码并设置代码运行的条件,即可在腾讯云基础设施上弹性、安全地运行代码。云函数是实时文件处理和数据处理等场景下理想的计算平台。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档