与自定义机器人互动
更新时间: 2024/07/22 09:38:56
本文主要介绍如何快速接入类 ChatGPT 的自定义机器人,帮助您在 IM 应用中实现多样化的 AI 服务,在一对一(P2P)和群组(高级群,Team)场景中进行即时通讯。
网易云信的即时通讯自定义机器人服务,仅面向已成功接入的用户提供。对于尚未接入过的用户,推荐您尝试 AI 数字人 功能。
技术原理
接入自定义机器人后,IM 应用中的工作流程如下(以单聊为例):
主要流程如下:
- 用户发送消息给机器人(提前定义好机器人的用户账号 accid);
- 云信 IM 服务器检测到发送对象为机器人后,发送给云信机器人服务器;
- 云信机器人服务器调用自定义机器人服务的相关接口;
- 自定义机器人服务响应,返回回复内容;
- 云信机器人服务器调用云信的发送消息接口将回复内容发送到云信 IM 服务器;
- 云信 IM 服务器将机器人的回复消息返回给用户。
前提条件
- 已在云信控制台创建应用并注册云信 IM 账号,获取 accid 和 token。
实现流程
这里以单聊场景为例,描述用户与自定义机器人一对一聊天的实现步骤。
-
用户调用
sendText
方法向机器人发送文本消息。向机器人发送消息时,需要在入参中配置
robotInfo
设置机器人信息。robotInfo
字段说明:参数 类型 说明 function String 机器人具体功能 topic String 机器人消息话题 customContent String 机器人自定义内容 account String 机器人账号(仅当发送到群组有效,点对点会被忽略) 示例代码如下:
js
//这里主要以发送文本消息为例 nim.sendText({ scene: 'p2p', to: 'robotAccId', text: '请帮我找一份中餐食谱', robotInfo: { function: '', topic: '' } })
目前机器人消息功能支持多种消息类型,包括文本消息、图片消息、语音消息、视频消息、文件消息、地理位置消息、提示消息、通知消息以及自定义消息。
-
用户收到机器人的消息。机器人消息和普通消息一样,通过初始化回调函数
onmsg
接收。
此文档是否对你有帮助?