Skip to content

具身智能体接入


HTTP API 接口文档

基础信息

参数说明
API 基础地址http://robot-gateway-api.nuwax.com
租户地址tenantEndpoint(不传默认为 https://agent.nuwax.com

通用响应格式

所有接口返回统一的响应格式:

字段类型说明
codestring业务状态码,0000 表示成功,其余为失败
messagestring错误描述信息
dataobject响应数据
successboolean请求是否成功

1. 智能体关系绑定

接口信息

  • 接口地址: POST /api/robot/bind
  • 接口描述: 将智能体与机器人客户端进行绑定

请求参数

字段类型是否必填说明
clientIdstring客户端 ID(机器人的唯一标识)
agentApiKeystring智能体 API 密钥,密钥获取文档:https://nuwax.com/api-key.html
tenantEndpointstring租户地址,不传默认为:https://agent.nuwax.com

请求示例:

json
{
  "clientId": "robot_001",
  "agentApiKey": "your_agent_api_key",
  "tenantEndpoint": "https://agent.nuwax.com"
}

2. 删除绑定关系

接口信息

  • 接口地址: POST /api/robot/unbind
  • 接口描述: 解除智能体与机器人的绑定关系

请求参数

字段类型是否必填说明
tenantEndpointstring租户地址
agentIdinteger智能体 ID(int64 格式)

请求示例:

POST /api/robot/unbind?tenantEndpoint=https://agent.nuwax.com&agentId=123

3. 机器人列表查询

接口信息

  • 接口地址: POST /api/robot/list
  • 接口描述: 查询已绑定的机器人列表

请求参数

字段类型是否必填说明
tenantEndpointstring租户地址

请求示例:

POST /api/robot/list?tenantEndpoint=https://agent.nuwax.com

4. 根据机器人 ID 查询机器人信息

接口信息

  • 接口地址: POST /api/robot/{robotId}
  • 接口描述: 根据机器人 ID 查询机器人详细信息

请求参数

字段类型是否必填说明
tenantEndpointstring租户地址
robotIdstring机器人 ID(路径参数)

请求示例:

POST /api/robot/robot_001?tenantEndpoint=https://agent.nuwax.com

5. 根据 Agent ID 查询机器人信息

接口信息

  • 接口地址: POST /api/robot/agent/{agentId}
  • 接口描述: 根据智能体 ID 查询绑定的机器人信息

请求参数

字段类型是否必填说明
tenantEndpointstring租户地址
agentIdinteger智能体 ID(路径参数,int64 格式)

请求示例:

POST /api/robot/agent/123?tenantEndpoint=https://agent.nuwax.com

6. 消息发布

接口信息

  • 接口地址: POST /api/message/publish
  • 接口描述: 向指定主题发布 MQTT 消息(用于调试和测试)

请求参数

字段类型是否必填说明
topicstring主题(默认为 robot/action
payloadstring消息体(JSON 字符串)
clientIdstring客户端 ID(与 agentId 二选一,优先使用 clientId)
agentIdinteger智能体 ID(与 clientId 二选一,int64 格式)
tenantEndpointstring租户地址,不传默认为:https://agent.nuwax.com

请求示例:

json
{
  "topic": "robot/action",
  "payload": "{\"action\":\"stand\",\"params\":{}}",
  "clientId": "robot_001",
  "tenantEndpoint": "https://agent.nuwax.com"
}

MQTT 接口文档

1. 连接信息

参数说明
MQTT 服务器地址robot-gateway-mqtt.nuwax.com:10015
客户端 ID作为机器狗的唯一标识

2. 订阅主题

2.1 监听会话消息

  • 主题: agent/message
  • 消息类型: CHATERROR
  • 消息内容示例:
字段类型说明
finishedboolean是否完成
idstring消息唯一标识(仅 CHAT 类型)
rolestring角色标识(如 ASSISTANT,仅 CHAT 类型)
textstring消息内容(CHAT 为聊天内容,ERROR 为异常信息)
typestring消息类型(CHATERROR

示例:

json
// 成功
{
  "finished": true,
  "id": "b1e47afecaf54c45acf57e9d5b5e5ffa",
  "role": "ASSISTANT",
  "text": "你好!很高兴见到你。有什么我可以帮你的吗?😊",
  "type": "CHAT"
}

// 异常信息
{
  "finished": true,
  "text": "非法数据",
  "type": "ERROR"
}

2.2 接收动作指令

  • 主题: robot/action
  • 消息内容: 服务器推送的动作指令,需双方定义具体字段。
  • 示例:
json
{
  "action": "stand",
  "params": {}
}

2.3 机器人接收传感器控制指令

  • 主题: robot/sensor/command

  • 消息内容: 服务器推送传感器控制指令,需双方定义具体字段。

  • 消息内容:

字段类型说明
sensor_idstring传感器 ID,可选,不传时根据sensor_type类型匹配传感器
sensor_typestring传感器类型(如 camera, micromicrophone
command_idstring指令 ID,服务器生成每次发送命令的唯一标识,传感器返回数据时携带
commandstring指令内容(需双方定义具体命令),如 start_stream , stop_stream, start_record, stop_record, capture, play_audio
paramsobject指令附加参数(需双方定义具体字段)
  • 示例:
json
{
  "sensor_id": "0",
  "sensor_type": "camera",
  "command_id": "123456789",
  "command": "start_stream",
  "params": {
  }
}

3. 发布消息

3.1 向服务器发送消息

  • 主题: robot/message
  • 消息内容:
字段类型说明
streamboolean是否为流式消息
messagestring文本消息内容
mediaarray媒体内容(需双方定义具体字段)

示例:

json
{
  "stream": false,
  "message": "你好",
  "media": [
    {
      "type": "audio",
      "data": {}
    }
  ]
}

3.2 向服务器发送传感器数据

  • 主题: robot/sensor/data
  • 消息内容:
字段类型说明
sensor_idstring传感器 ID,可选,不传时根据sensor_type类型匹配传感器
sensor_typestring传感器类型(如 camera
command_idstring数据 ID,服务器发送过来的唯一标识
commandstring指令内容(需双方定义具体命令)
datastring传感器数据(需双方定义具体字段),多媒体数据使用16进制编码,例如FFD8FFE0...

示例:

json
{
  "sensor_id": "0",
  "sensor_type": "camera",
  "command_id": "123456789",
  "command": "start_stream",
  "data": "FFD8FFE0..."
}

4. 调试消息


5. 注意事项

  1. 客户端 ID 必须唯一,用于标识机器狗。
  2. 媒体内容 的字段需双方协商定义。
  3. 动作指令的具体字段需根据实际需求定义。