Skip to main content

Typed string constants for all Wwise Authoring API (WAAPI) function URIs

Project description

waapi-uri

Typed string constants for all Wwise Authoring API (WAAPI) function URIs and subscription topics.

Eliminates hard-coded strings in your WAAPI automation scripts and enables IDE auto-completion and static type checking.

Wwise version: Constants are generated from Wwise 2025.1.7.

Installation

pip install waapi-uri

Usage

Function URIs

from waapi_uri import uri
from waapi import WaapiClient

with WaapiClient() as client:
    # Use typed constants instead of raw strings
    result = client.call(uri.ak_wwise_core_object_get, {
        "from": {"path": ["\\Actor-Mixer Hierarchy"]},
        "options": {"return": ["name", "type"]},
    })

All WAAPI function URIs are available as module-level string constants on waapi_uri.uri, named by replacing . with _:

Constant Value
uri.ak_wwise_core_object_get "ak.wwise.core.object.get"
uri.ak_wwise_core_object_set "ak.wwise.core.object.set"
uri.ak_soundengine_postEvent "ak.soundengine.postEvent"

Subscription Topics

from waapi_uri import topic
from waapi import WaapiClient

with WaapiClient() as client:
    # Subscribe to object name changes using a typed topic constant
    def on_name_changed(object, **kwargs):
        print(f"Renamed: {object['name']}")

    handler = client.subscribe(topic.ak_wwise_core_object_nameChanged, on_name_changed)

All WAAPI subscription topics are available as module-level string constants on waapi_uri.topic, using the same naming convention:

Constant Value
topic.ak_wwise_core_object_nameChanged "ak.wwise.core.object.nameChanged"
topic.ak_wwise_core_object_created "ak.wwise.core.object.created"
topic.ak_wwise_core_project_saved "ak.wwise.core.project.saved"

Regenerating Constants

The constants are auto-generated from a running Wwise instance. To regenerate them against a different Wwise version:

  1. Open Wwise with WAAPI enabled.
  2. Run the generation scripts:
python scripts/gen_uri.py
python scripts/gen_topics.py

These will overwrite src/waapi_uri/uri.py and src/waapi_uri/topic.py with all URIs and topics reported by the connected Wwise instance.

Requirements

  • Python >= 3.10

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waapi_uri-0.2.0.tar.gz (4.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

waapi_uri-0.2.0-py3-none-any.whl (5.6 kB view details)

Uploaded Python 3

File details

Details for the file waapi_uri-0.2.0.tar.gz.

File metadata

  • Download URL: waapi_uri-0.2.0.tar.gz
  • Upload date:
  • Size: 4.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.2

File hashes

Hashes for waapi_uri-0.2.0.tar.gz
Algorithm Hash digest
SHA256 efbac4eec4ab652c566e46dddc3853741efa1ae116fb6d490388ef7e91955007
MD5 79760e4c13f1f6b1e456f54be9757403
BLAKE2b-256 1ea9181723a56ce0454be9b7e5f8116f8c32fd410c85628ade3e66801b945d07

See more details on using hashes here.

File details

Details for the file waapi_uri-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: waapi_uri-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 5.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.2

File hashes

Hashes for waapi_uri-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d3e73b326fa98c6a19672b466dea4faf73a63b9dae8da3f4fbbc8c5d86c1d3f4
MD5 a1ee356c66ca4a63e7228cbc21950978
BLAKE2b-256 9b93332d0c1d52f86afd43b0fad9dba6da344ca6fe5527751686c1df4dfe9cdb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page