飞书智能查询机器人搭建说明文档

飞书智能查询机器人搭建说明文档

一、使用手册

1. 创建飞书机器人应用

如果仅需对接已有机器人应用则可跳过该步骤(建议各业务部门独立使用各自的机器人应用)。在飞书开发者后台中创建企业自建应用,添加机器人应用能力并申请对应的身份权限,最终发布应用后即可在飞书中使用自定义机器人。注意: 新创建的机器人应用需要联系开发者进行后端自有服务对接,否则无法使用命令查询和管理能力。

步骤配置步骤配置解释配置说明
1创建自建应用要为用户提供服务,必须创建一个应用作为载体。登录飞书 开发者后台创建应用。img基础信息 > 凭证与基础信息 页面,可以查看应用的 App IDApp Secret(后续自有服务对接机器人的身份凭证)。img
2添加应用能力:机器人使应用可以接收消息、发送消息,必须为应用开启机器人能力。在飞书开发者后台,应用能力 > 添加应用能力 页面,添加 机器人 能力。机器人能力
3申请应用身份权限要通过应用调用接口、订阅事件以操作数据,出于安全考虑,必须为应用申请对应权限。要开通的具体权限可在要调用的接口和订阅的事件文档中查看。在飞书开发者后台,开发配置 > 权限管理 > API 权限 页面,开通应用身份权限。img本项目机器人要申请的基本权限包括(单聊和群聊):在这里插入图片描述
4添加事件:接收消息事件(im.message.receive_v1)要使应用及时收到用户在飞书发送的消息内容,需要为应用订阅接收消息事件。在飞书开发者后台,开发配置 > 事件与回调 > 事件配置 页面,编辑订阅方式事件配置选择使用长连接接收事件,并保存提示:在 已添加事件 区域点击 添加事件,并添加 接收消息(im.message.receive_v1) 事件。添加事件
5发布应用当应用的基本信息、权限范围和应用功能等信息发生变更时,都需要发布新的应用版本才能正式生效。在飞书开发者后台,应用发布 > 版本管理与发布 页面,点击 创建版本,填写版本信息并发布并申请发布应用。若本次发布需要管理员审核,建议创建一个新企业用于测试,避免审核耗时。 发布应用

2. 配置机器人交互命令

2.1 系统命令

系统命令属于通用命令类型,无法进行任何配置或修改,统一由开发人员进行管理和维护(若有想要新增的系统命令请联系开发者沟通)。目前机器人系统支持的系统命令列表如下:

序号命令命令含义命令示例
1/cmd展示当前机器人所有的可执行命令在这里插入图片描述
2/help {command}展示命令{command}的详细信息,包括命令描述、命令参数等在这里插入图片描述
2.2 自定义命令

自定义命令支持由用户配置和修改,并由各业务系统自行维护。其配置过程如下:

序号步骤详细描述示例
1选择业务域并新建命令配置选择业务域并新建命令配置(目前仅支持电商机器人)在这里插入图片描述
2填写命令配置各配置项参数的说明如下:
1.命令: 命令关键词,命令触发的唯一标识(必填);
2.描述: 命令的描述(选填);
3.地址: 命令查询的目标地址,从该地址获取返回数据(必填);
4.请求类型: 地址的请求类型,GET或POST(必填);
5.模板ID: 飞书消息卡片的模板ID,用于机器人呈现查询结果,目前仅支持表格类型(必填);
6.附加信息: 命令请求目标地址时附加的请求头Header信息,保存为JSON格式的key-value单层结构(必填);
7.参数模版: 命令参数的配置模板,该配置项实际会提取接收用户消息中的对应参数,并在请求目标地址时作为查询参数传递(必填);
8.提取模板: 查询结果的提取模板,使用JsonPath表达式。该配置项实际会针对返回结果提取展示给用户消息中的字段数据列表(必填);
在这里插入图片描述
3保存命令配置点击”保存“按钮,保存命令配置在这里插入图片描述
2.2.1 附加信息填写规范

附加信息是命令请求目标地址时附加的请求头Header信息,在填写时需要保存为JSON格式的key-value单层结构,其中key为请求头字段、value为字段值,使用场景包括接口鉴权更改请求方式POST请求Content-type默认为application/json)、传递附加参数等。附加信息填写示例如下:

{"Content-type": "application/x-www-form-urlencoded","User-Agent": "ffffffffffffffffffffffff0"
}
2.2.2 参数模板填写规范

参数模板是用户执行命令时需要同步传递的查询参数,该模板配置项实际会识别并提取接收用户消息中对应参数的数据,并在请求目标地址时作为查询参数传递。参数模板在填写时需要保存为JSON格式的key-value两层结构,其中variable_params字段固定为变量集,constant_params字段固定为常量集。参数模板填写示例如下:

{"variable_params": {"customerId": "用户ID(可选)","orderId": "订单ID(可选)","mobile": "用户手机号(可选)","tradeId": "交易号(可选)"},"constant_params": {"current": 1}
}

variable_params变量集模板中,key为参数名称、value为参数描述;在constant_params常量集模板中,key为参数名称、value为常量数值。注意这里常量参数不会在/help的系统命令中展示。

2.2.3 提取模板填写规范

提取模板是针对查询结果的提取结构,该配置项实际会针对返回结果提取展示给用户消息中的字段数据列表,提取模板在填写时需要保存为JSON格式的key-value单层结构,其中key为结果提取字段、value为对应字段在返回结果中的JsonPath表达式。提取模板填写示例如下:

{"customer_id": "$.data[*].customer_id","order_id": "$.data[*].order_id","parent_order_id": "$.data[*].parent_order_id","goods_title": "$.data[*].goods_title","resource_id": "$.data[*].resource_id","status": "$.data[*].status","strStartTime": "$.data[*].strStartTime","strEndTime": "$.data[*].strEndTime"
}

需要注意的是: 结果提取字段key需要与飞书消息卡片模板ID中对应的变量名称相同,否则机器人展示的查询消息将无法映射数据。

3. 创建飞书消息卡片

飞书自有的消息卡片具有良好的可读性、拓展性,并且满足定制化需求,与飞书机器人具有很强的联动性;因此本系统选择飞书消息卡片来承载机器人返回的提取数据、格式化响应消息,并作为结果展示看板。每条自定义命令都需要创建对应的消息卡片模板,并在配置命令时填写对应的模板ID,其地址为:飞书卡片搭建工具

在这里插入图片描述

需要注意的是: 目前机器人仅支持表格卡片,且表格行变量名称需固定为result_array;除此之外,卡片在构建完成后必须发布并关联机器人应用才可以被调用。

在这里插入图片描述

4. 添加并使用机器人

机器人应用支持群聊(需将机器人添加到群聊中)和单聊,命令的消息格式为{command} param_1=valu_1 param_2=value_2 ...,其中param列表为参数模板中的变量集参数的子集(无需全部使用),机器人使用的示例如下:

在这里插入图片描述

二、系统设计

在这里插入图片描述

  • 机器人应用服务端: 通过EventDispatcher注册事件监听器,建立长连接监听飞书客户端的机器人单聊或群聊消息,识别并处理消息中的命令关键字和参数,将最终查询结果通过WebSocket推送给客户端;
  • 管理平台服务端: 通过独立的管理平台来管理和维护机器人相关命令的配置及参数;

三、未来演进

  • 数据总结:对接大模型,在数据查询后交由大模型对数据查询结果进行总结,支持基于查询结果进行连续问答;
  • 知识库助手:对接知识库,支持基于知识库和命令配置进行知识问答;
  • 问题分析:对接线上运维日志(比如ClickHouse)和大模型,基于命令获取线上日志查询结果并由大模型进行问题分析;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/923663.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/923663.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

蓝色系列包装行业网站 适合企业站,带手机版自适应

内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍 蓝色通用企业网站是基于SDCMS四合一企业网站管理系统开发的模板,适合企业站,带手机版。 四网合一企业网站管理系统是一个以PHPMySQL/Sqlite进行开发的四网合一网…

【大模型:知识图谱】--6.Neo4j DeskTop安装+使用

上一期讲了图知识库的安装, 【图数据库】--Neo4j 安装_neo4j安装-CSDN博客 现在来看看可视化管理程序:Neo4j DeskTop的安装. 需要先安装java环境,具体看上面 目录 1.Neo4j DeskTop版下载 2.Neo4j DeskTop版安装 3.Neo4j DeskTop版使用 …

Python爬虫实战——使用NetNut网页解锁器获取亚马逊电商数据

文章目录一、电商数据的作用1.1 支撑科学决策,降低试错成本1.2 提升运营效率,实现降本增效1.3 深化用户理解,驱动个性化服务1.4 监测竞品动态,制定差异化策略1.5 驱动产品创新,满足用户需求二、爬取目标三、环境准备四…

超越NAT:如何构建高效、安全的内网穿透隧道

在敏捷开发和分布式协作成为主流的今天,开发者需要一个能够将本地开发环境瞬间暴露给公网的能力,以便进行演示、联调或处理回调。传统方案如配置路由器端口映射或部署VPN,不仅繁琐且存在安全风险。内网穿透技术,特别是以 ngrok、Z…

第二十三章 ESP32S3 RTC 实验

本章介绍 ESP32-S3 实时时钟(RTC)的使用,实时时钟能为系统提供一个准确的时间,即时系统复位或主电源断电, RTC 依然能够运行,因此 RTC 也经常用于各种低功耗场景。通过本章的学习,将学习到 RTC …

Java 轻松实现 Markdown 转 Word、PDF、HTML

在软件开发和技术写作领域,Markdown 已成为一种被广泛使用的轻量级标记语言。它的语法简洁,书写效率高,非常适合快速记录笔记、撰写技术文档或博客文章。但在实际应用中,Markdown 文件往往需要被转换为更通用的格式,例…

Kafka系列之:Kafka broker does not support the ‘MetadataRequest_v0‘ Kafka protocol.

Kafka系列之:Kafka broker does not support the MetadataRequest_v0 Kafka protocol. 一、完整报错 二、错误原因 三、解决方法 一、完整报错 kafka.errors.IncompatibleBrokerVersion: IncompatibleBrokerVersion: Kafka broker does not support the ‘MetadataRequest_v0’…

开源AI红队工具“Red AI Range“助力发现、分析与缓解AI系统漏洞

开源AI红队平台Red AI Range(RAR)正在改变安全专业人员评估和强化AI系统的方式。该平台通过模拟真实攻击场景,利用容器化架构和自动化工具,简化了AI特有漏洞的发现、分析和缓解流程。**核心功能** 1. 武器库/目标按钮可快速启动…

SQL 数据库简介

SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准语言。关系型数据库以表格形式存储数据,并通过行和列的结构化方式组织信息。SQL 提供了一套强大的命令,用于查询、插入、更新和删除数据,以及管…

SpringBoot4与Spring7发布:云原生深度进化

Spring Boot 4和Spring Framework 7带来基础要求升级、模块化改进、API版本化、声明式HTTP客户端、弹性注解等重大特性,标志着Java开发生态向云原生时代的深度进化。 近日,Spring生态迎来了自2022年以来最具里程碑意义的更新——Spring Boot 4和Spring …

基于Spring Boot与Micrometer的系统参数监控指南

如何为你的Spring Boot应用装上一个功能强大的监控仪表盘在现代微服务架构中,系统监控已成为保障应用稳定性的关键环节。通过有效的监控,我们可以实时了解应用的运行状态,及时发现并解决性能问题。本文将介绍如何使用Micrometer及其注册表&am…

【运维】-- 前端会话回放与产品分析平台之 openreplay

目录 OpenReplay 项目分析 1、项目概览 2、关键特性 3、代码结构(Monorepo) 4、技术栈与语言占比 5、部署与交付 6、社区与支持 7、版本与活跃度(截至仓库页面所示) 8、适用场景 9、优势与注意事项 10、落地建议&#…

NineData社区版 V4.5.0 正式发布!运维中心新增细粒度任务权限管理,新增MySQL至Greenplum全链路复制对比

NineData 社区版 V4.5.0 正式发布!在数据复制方面,新增 MySQL 至 Greenplum 全链路复制对比,并优化全局 DDL 管控、MySQL/PostgreSQL/MongoDB 同构性能。在数据库 DevOps 方面,新增支持 AWS RDS 全系列及阿里云 PolarDB&#xff0…

discuz所有下载版本和升级工具

下载版本: Discuz! 每日构建版下载 - DiscuzX 3.x Daily Build Download Site SC是简体中文 TC是繁体中文 可能你需要其他版本: Discuz!官方网站 - 开放、连接、共赢 下载简体中文就好。 升级工具: 升级程序下载地址 https://gitee.com/oldhuhu/DiscuzX34235.git(…

【开题答辩全过程】以 “红色枣庄”旅游网站为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

【LeetCode】2785. 将字符串中的元音字母排序

题目描述 题目链接 问题分析 这道体的思路非常简单和好理解,找出字符串中的元音字符,然后按照ASSIC值进行排序,然后插入回对应的位置,解题步骤为: 使用一个set(可以快速查找的容器)&#x…

3 步发 10 亿邮件,这个 GitHub 开源项目牛逼。

你是否要经常批量发邮件?无论是向客户推送最新资讯、产品营销,还是发送日常常规通知类邮件。使用第三方邮件服务平台不仅成本高昂,功能限制多,而且可能无法保证隐私和安全。现在,有一个完全开源、能自己部署的解决方案…

【计算机网络】DNS 解析 DNS 污染

1. DNS 解析(工作流程、参与方与缓存) DNS 的目标:把人类可读的域名(如 www.example.com)映射为 IP 地址(如 93.184.216.34)。 典型解析流程(递归解析器 迭代查询)&…

用住宿楼模型彻底理解Kubernetes架构(运行原理视角)

导读:从楼宇建设到租客入住的全流程想象我们正在建设一栋巨型智能住宿楼,从基础设施搭建到租客入住管理,每个环节都对应Kubernetes的组件和概念。本文将按运行原理的先后顺序,系统解析Kubernetes的23个核心组件与基本概念。把 Kub…

嘉银科技基于阿里云 Kafka Serverless 提升业务弹性能力,节省成本超过 20%

作者:四牛 前言 云消息队列 Kafka 版 Serverless 系列凭借其秒级弹性扩展、按需付费、轻运维的优势,助力嘉银科技业务系统实现灵活扩缩容,在业务效率和成本优化上持续取得突破,保证服务的敏捷性和稳定性,并节省超过 20…