Audiokinetic's Community Q&A is the forum where users can ask and answer questions within the Wwise and Strata communities. If you would like to get an answer from Audiokinetic's Technical support team, make sure you use the Support Tickets page.

Adding Actions to Existing Event via WAAPI

0 votes

Hi there,

I'm working on a tool that automatically creates events on import. I'm stuck on what to do when there is a name conflict. Desired behaviour is that if the event already exists, add another action to that event. I thought that the "merge" setting for onNameConflict in the call below would cater for that, but I have found that it creates a new event with an incremented name instead (what I thought would be the behaviour for the "rename" setting).
 

{
    "parent": "\\Events\\Default Work Unit",
    "type": "Folder",
    "name": "WAAPI",
    "onNameConflict": "merge",
    "children": [
        {
            "type": "Event",
            "name": "Play_SFX",
            "children": [
                {
                    "name": "",
                    "type": "Action",
                    "@ActionType": 1,
                    "@Target": "\\Actor-Mixer Hierarchy\\Default Work Unit\\SFX"
                }
            ]
        }
    ]
}

I have tried giving the Action a name in the child object, thinking that maybe that would help Wwise work out the merge, but that didn't work either.

Is there a way to add another Action to an existing event with this call, or would it require me to do another @object.get, copy all actions and settings across, add the new action and replace the old object with the new?

Thanks 

Jake 

asked May 24, 2020 in General Discussion by Jake B. (190 points)

1 Answer

0 votes
 
Best answer
Managed to solve this - it was user error!
Merge is the correct option for onNameConflict, and the action does require a name so that Wwise can add a new action of the same type to an existing event, rather than overwrite it.
My blunder was having a space where there shouldn't have been one, and Wwise was creating a new event with a slightly different name - whoops.
answered May 25, 2020 by Jake B. (190 points)
selected May 26, 2020 by Bernard R. (Audiokinetic)
I'm trying to use this call from unity. It works the first time but the connection silently breaks immediately after and I can't invoke any other calls or refresh the wwise picker.

Sometimes I get this error, some times I don't

TimeoutException: Timeout when receiving message.
Wamp.Receive (System.Int32 timeout) (at Assets/Wwise/API/Runtime/Handwritten/WAAPI/Wamp.cs:334)

{
  "parent": "\\Events\\Default Work Unit",
  "type": "Folder",
  "name": "E04S06",
  "onNameConflict": "merge",
  "children": [
    {
      "type": "Event",
      "name": "E04S06_ENTROO_SERGEANT_002000",
      "children": [
        {
          "name": "newActionName",
          "type": "Action",
          "@ActionType": 1,
          "@Target": "\\Actor-Mixer Hierarchy\\VO Work Unit\\VO Sounds\\E04S06_ENTROO_SERGEANT_0020"
        }
      ]
    }
  ]
}

           AkWaapiUtilities.WaapiClient.Call(
                ak.wwise.core.@object.create,
                jsonQuery, null);
...