Google Actions Builder Many Slot Required

301 views Asked by At

Hello guys i need some help/understand how required slot filling works.

Looking inside the documentation: https://developers.google.com/assistant/conversational/scenes enter image description here

I would be able to add as many as much required slots but when I try to test it in Google Actions Builder Simulator (Test) I'm getting this error when I fill only one slot:

{
  "insertId": "---",
  "jsonPayload": {
    "timestamp": "2021-06-22T11:46:48.872626Z",
    "endConversation": {},
    "status": {
      "message": "There is no prompt message nor helper instruction in the response.",
      "code": 13
    },
    "executionState": {
      "sessionParameters": {},
      "currentSceneId": "Success",
      "slots": {
        "status": "COLLECTING",
        "slots": {
          "goal": {
            "status": "FILLED",
            "mode": "REQUIRED",
            "updated": true,
            "value": "goal1"
          },
          "level": {
            "status": "EMPTY",
            "mode": "REQUIRED"
          }
        }
      }
    }
  },
  "resource": {
    "type": "assistant_action",
    "labels": {
      "project_id": "---",
      "version_id": "",
      "action_id": "---"
    }
  },
  "timestamp": "2021-06-22T11:46:48.872626Z",
  "severity": "CRITICAL",
  "labels": {
    "channel": "preview"
  },
  "logName": "---",
  "trace": "---",
  "receiveTimestamp": "2021-06-22T11:46:48.912102599Z"
}

For some context I'm using two required slot filling: enter image description here

1

There are 1 answers

1
Taylor Caldwell On

You can include as many required slots as you like. Once all required slots are filled, scene.slots.status will be set to "FINAL", and the pre-populated condition will be met.

For each slot you can mark it as required by selecting This slot is required. If you need access to the value, you can write it to a session parameter by selecting Customize slot value writeback and providing a name for the session parameter key.

The error you are receiving says "There is no prompt message nor helper instruction in the response.".

When configuring each slot, you can add a customized prompt (dependent on slot type) for when you first prompt the user to fill the slot. If this isn't configured, you will receive the above error message.

To add a prompt, under the slot configuration, select Send prompt and add what you want to say to the user.

For example:

candidates:
  - first_simple:
      variants:
        - speech: What is your favorite number?