【问题标题】:Bot Framework Composer: iterating over an array of object (in json) produces invalid outputBot Framework Composer:迭代对象数组(在 json 中)产生无效输出
【发布时间】:2020-09-05 02:54:51
【问题描述】:

我正在调用以 json 格式返回对象数组的 http 服务。 在 Bot Framework Composer 中,我使用 For each 循环来迭代数组。 对于数组的每一项,机器人都需要向用户提问。 问题的文本来自收到的项目数组。

在机器人模拟器中运行,机器人问第一个问题,但不问任何后续问题。 如何让它为每个返回的数组项提出一个问题?

从 http 服务返回的 JSON:

 "questions":[
        {
            "question_id":"78jha873_q1",
            "text":"What is question 1?"
        },
        {
            "question_id":"78jha873_q2",
            "text":"What is question 2?"
        },
        {
            "question_id":"78jha873_q3",
            "text":"What is question 3?"
        },
        {
            "question_id":"78jha873_q4",
            "text":"What is question 4?"
        },
        {
            "question_id":"78jha873_q5",
            "text":"What is question 5?"
        }
    ]

Bot Composer design

Bot Emulator runtime - asking questions

Bot Composer 代码:

{
              "$kind": "Microsoft.Foreach",
              "$designer": {
                "id": "49MVnl"
              },
              "index": "dialog.foreach.index",
              "value": "dialog.foreach.value",
              "actions": [
                {
                  "$kind": "Microsoft.TextInput",
                  "$designer": {
                    "id": "yr2RbY"
                  },
                  "disabled": false,
                  "maxTurnCount": 1,
                  "alwaysPrompt": false,
                  "allowInterruptions": false,
                  "prompt": "${TextInput_Prompt_yr2RbY()}",
                  "property": "turn.userAnswer"
                },
                {
                  "$kind": "Microsoft.SendActivity",
                  "$designer": {
                    "id": "ehxqn9"
                  },
                  "activity": "${SendActivity_ehxqn9()}"
                }
              ],
              "itemsProperty": "dialog.my_api_response.reasoning.questions"
            }

【问题讨论】:

    标签: botframework bot-framework-composer


    【解决方案1】:

    回答我自己的问题: 在 For-each 循环中,在 Bot Asks 活动中,在其他选项卡下,将“始终提示”属性设置为 true。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-12
      相关资源
      最近更新 更多