Botframework 使用数组对象时如何在bot framework composer中传递动态变量值

Botframework 使用数组对象时如何在bot framework composer中传递动态变量值,botframework,Botframework,因此,我的问题/挑战是,我通过http请求获得一些数据,我希望使用这些数据动态构建多按钮操作 因此,从我的http请求中,我可能会得到1到多个值,然后我将使用这些值为每个项目循环向bot-in构建输出操作 如果我在向数组添加新对象时使用静态内容,则一切都会正常工作,例如 { "type": "Action.Submit", "title": "my title", "data": &quo

因此,我的问题/挑战是,我通过http请求获得一些数据,我希望使用这些数据动态构建多按钮操作

因此,从我的http请求中,我可能会得到1到多个值,然后我将使用这些值为每个项目循环向bot-in构建输出操作

如果我在向数组添加新对象时使用静态内容,则一切都会正常工作,例如

{ "type": "Action.Submit",
  "title": "my title",
  "data": "my data"
}
所以这个打印按钮上写着“我的标题”

但是,我尝试在那里使用用户属性来传递数据,它只打印属性名,而不打印其中的值。例如

{ "type": "Action.Submit",
  "title": "${turn.myTitle}",
  "data": "${turn.myData}"
}
现在只打印出属性/变量名${turn.MyTitle}


那么,这里有没有任何方法可以传递实际数据呢?我可以看出,如果我的类型是字符串,那么数据在其他方面是可以的,但它不再作为和对象工作(因为在开始和结束处有额外的双引号)

所以回答我自己的问题,因为这似乎有助于你几天不关注这个主题:)

因此,要通过对象,然后创建阵列:

  • 使用“设置属性”创建对象值,例如“旋转动作”。
  • 在此之后,使用编辑数组属性,在该属性中,您只需将对象作为表达式“turn.actions”推送
  • 一旦有了此选项,数组应显示正确的值,如:

    [ {"type":"Action.Submit"}, {"title":"<your title value>"}, {"data":"<your data value>"} ]
    
    [{“type”:“Action.Submit”},{“title”:“},{“data”:“}]
    
    然后在foreach中循环这个来构建多个动作按钮

    参考: