Ahmed Salah
Ahmed Salah

Reputation: 969

How to create a context variable in the entire multiplied-replies node in Watson Assistant?

To add a context variable in a node with a single reply, I just add the var once in that response and that's fair enough.

But in multiple replies node, I must configure each response and add the context variable in each one with either context or JSON editor.

Can I add that only once?

If not what is the idea behind that?

Why does not even a node general variable option exist besides reply-specific ones?

Upvotes: 0

Views: 347

Answers (1)

Simon O'Doherty
Simon O'Doherty

Reputation: 9359

The multiple response node is a way to easily have different responses nested together. Before this feature you had to create a node for every single response you wanted to do.

This appears to be a side-effect of this, but is easy to resolve.

Create your main node and set your context variable. Then create a child node and have the parent "Skip User Input". The child node should have your multiple responses.

Example workspace:

{
  "name": "Example single context for multiresponse node",
  "intents": [],
  "entities": [],
  "language": "en",
  "metadata": {
    "api_version": {
      "major_version": "v1",
      "minor_version": "2017-05-26"
    }
  },
  "description": "",
  "dialog_nodes": [
    {
      "type": "response_condition",
      "title": null,
      "output": {
        "generic": [
          {
            "values": [
              {
                "text": "two $example"
              }
            ],
            "response_type": "text"
          }
        ]
      },
      "parent": "node_1_1532968597524",
      "context": null,
      "metadata": {},
      "next_step": null,
      "conditions": "input.text == \"2\"",
      "description": null,
      "dialog_node": "node_3_1532968635994",
      "previous_sibling": "node_2_1532968631610"
    },
    {
      "type": "response_condition",
      "title": null,
      "output": {
        "generic": [
          {
            "values": [
              {
                "text": "one $example"
              }
            ],
            "response_type": "text",
            "selection_policy": "sequential"
          }
        ]
      },
      "parent": "node_1_1532968597524",
      "context": null,
      "metadata": {},
      "next_step": null,
      "conditions": "input.text == \"1\"",
      "description": null,
      "dialog_node": "node_2_1532968631610",
      "previous_sibling": null
    },
    {
      "type": "standard",
      "title": "Enter 1 or 2 to trigger.",
      "output": {},
      "parent": "node_4_1532968810899",
      "context": null,
      "metadata": {
        "_customization": {
          "mcr": true
        }
      },
      "next_step": null,
      "conditions": "anything_else",
      "description": null,
      "dialog_node": "node_1_1532968597524",
      "digress_out": "allow_all",
      "previous_sibling": null
    },
    {
      "type": "standard",
      "title": "$example set to value of \"example\"",
      "output": {
        "generic": [
          {
            "values": [],
            "response_type": "text",
            "selection_policy": "sequential"
          }
        ]
      },
      "parent": null,
      "context": {
        "example": "example"
      },
      "metadata": {},
      "next_step": {
        "behavior": "skip_user_input"
      },
      "conditions": "anything_else",
      "description": null,
      "dialog_node": "node_4_1532968810899",
      "previous_sibling": "Welcome"
    },
    {
      "type": "standard",
      "title": "Anything else",
      "output": {
        "generic": [
          {
            "values": [
              {
                "text": "I didn't understand. You can try rephrasing."
              },
              {
                "text": "Can you reword your statement? I'm not understanding."
              },
              {
                "text": "I didn't get your meaning."
              }
            ],
            "response_type": "text",
            "selection_policy": "sequential"
          }
        ]
      },
      "parent": null,
      "context": null,
      "metadata": {},
      "next_step": null,
      "conditions": "anything_else",
      "description": null,
      "dialog_node": "Anything else",
      "previous_sibling": "node_4_1532968810899"
    },
    {
      "type": "standard",
      "title": "Welcome",
      "output": {
        "generic": [
          {
            "values": [
              {
                "text": "Hello. How can I help you?"
              }
            ],
            "response_type": "text",
            "selection_policy": "sequential"
          }
        ]
      },
      "parent": null,
      "context": null,
      "metadata": {},
      "next_step": null,
      "conditions": "welcome",
      "description": null,
      "dialog_node": "Welcome",
      "previous_sibling": null
    }
  ],
  "workspace_id": "9e5b9851-5f0e-4e5f-9523-d2ac7045bf1d",
  "counterexamples": [],
  "system_settings": {
    "tooling": {
      "store_generic_responses": true
    },
    "disambiguation": {
      "prompt": "Did you mean:",
      "none_of_the_above_prompt": "None of the above"
    },
    "human_agent_assist": {
      "prompt": "Did you mean:"
    }
  },
  "learning_opt_out": false
}

Upvotes: 1

Related Questions