Skip to content

[DOC] SWML schema and docs: Document transfer property for data_map.output.action[] #772

@hey-august

Description

@hey-august

Thanks to issue #751 and its corresponding customer ticket, we now know that you must include "transfer": true before your SWML block in functions.data_map.output.action[].SWML when the SWML object in the action will transfer the call. This property ends the AI interaction and stops AI billing.

"action": [
  {
    "transfer": true,
    "SWML": {
      "sections": {
        "main": [
          {
            "join_conference": {
              "name": "main_conference"
            }
          }
        ]
      }
    }
  }
]

Because of a problem in the YAML-JSON conversion, it's impossible to position this transfer property correctly when writing SWML in YAML. (See the "additional steps" section below.)

This property should be added to the SWML schema and docs.

Required information

To correctly document this behavior and intended usage, we need a complete list of "transfer-like" methods for which the transfer property is required. We know these two methods are included, since they were described in the original ticket:

  • join_conference
  • connect

It seems logical that the transfer method would also require the transfer property, but this should be confirmed, and any other methods should be added.

Proposed documentation changes and additions

  1. Convert the existing "List of valid actions" section of data_map.output parameters to a standalone nested doc.

  2. Add action[].transfer (boolean, optional) as a parameter of output.action[].

  3. Include a usage example showing the new transfer parameter in context above the SWML block in the same action[] object.

  4. Add a note in the action[].SWML ApiField reminding users to include "transfer": true for transfer-like methods.

  5. List transferring SWML methods (e.g., connect, join_conference).

Additional steps

  • Open a new ticket reporting the YAML issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions