You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Node Red中如何在到达Watson Assistant V2节点前传入上下文变量

解决步骤

  1. 新增Function节点做参数转换
    在Telegram消息触发节点和Watson Assistant节点之间插入一个Function节点,用于将Telegram侧的用户信息合并到Watson可识别的请求参数中,节点内代码如下:
// 提取Telegram返回的用户first_name,若你的节点输出路径不同可自行调整
const firstName = msg.payload.from.first_name;
// 重构发往Watson节点的payload格式
msg.payload = {
  input: {
    text: msg.payload.text // 保留用户原始发送的消息内容
  },
  context: {
    // 变量名需和Watson中定义的$username完全一致,大小写敏感
    username: firstName
  }
}
return msg;
  1. 核对Watson侧变量配置
  • 进入Watson Assistant对应技能的上下文变量设置页面,确认已创建会话级别的username变量
  • 检查响应内容中引用变量的格式为$username,无拼写错误
  1. 部署测试
    保存Function节点配置后,部署整个Node Red流程,重新发送消息即可看到Watson返回内容中已正确填充用户的first_name。

注意:如果不确定Telegram节点输出的用户信息路径,可以在Telegram节点后接Debug节点打印完整msg对象,确认first_name的取值路径后替换代码中的对应部分即可。

内容的提问来源于stack exchange,提问作者W-illian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 23:36:03