Share via


Release notes for DAXKit SDK 1.4.0

New in version 1.4.0

Removed requirement for passing streaming endpoint to DAXKit [1913530]

  • We've removed the serverEnvironment parameter from the DAX.start() method. It's no longer required to pass endpoint URLs to DAXKit; update your DAX.start() call accordingly.

Region configuration [1676077, 1911487]

  • As DAXKit is preparing to support international partners, we've added a Provider.geography parameter to the DAX.shared.configure() method.
  • The parameter accepts two-letter country codes (ISO 3166-1 alpha-2 format) corresponding to the region you're connecting to.
  • Contact your Microsoft representative for information on supported regions.
  • As this setting defines where the SDK sends data and logs, the value must be provided by the partner app. There's no default value and DAXKit won't work unless a valid region is passed to the DAX.shared.configure() call.

Server environment configuration [1913539]

  • We've added a ServerEnvironment.environment parameter to the DAX.shared.configure() method. Use this to select a server environment to connect to within the specified geography.

  • Pass one of the following strings to this parameter:

    "production", "staging", "qa"

Note: These values can also be found on the ServerEnvironments class as static variables.

Updated DAX.shared.configure() requirements

  • Your app must now pass the serverEnvironment and geography values to every DAX.shared.configure() call.
  • Any changes to these values for a provider with a given user ID will result in the creation of a new provider. A provider with one user ID but multiple geographies or server environments is seen as different providers in the system.

Data is only uploaded to the designated geography and server environment [1943228]

  • Users are now segmented based on the geography and server environment so that their data can only go to the location that the user was configured to. Even if the same user is configured to point to QA and Production, the data written when pointing to QA will only go to DAX QA and the data written while pointing to production will only go to DAX Production.

Resolved issues

System sounds are no longer silenced during recording [1975282]

  • We've reverted a change introduced in DAXKit 1.2.0 that could cause pager notifications and calls to be silenced. DAXKit no longer silences notifications and calls. Setting the incoming calls preference to banner or full-screen no longer affects this behavior.

Support switching geographies and server environments dynamically without requiring an application restart [1960532]

  • Previous versions of DAXKit required an application restart to switch streaming endpoints. DAXKit can now change server environment (QA, Staging, or Production) and geography using DAX.shared.configure() without requiring an application restart.

Uploads successfully complete when the server has more audio data than the client. [1591783]

  • This was resolved with a server-side fix to generate the draft if the server determines the client is no longer going to send as much data as the server already has.

Empty audio files no longer block uploads [1745776]

  • When an empty audio file was present in the backup upload pipeline, subsequent files in the queue couldn't be uploaded. This has been resolved.

Minor memory leak resolved [1702296]

  • There was a circular dependency in the upload logic that caused a minor memory leak. This has been resolved; there are no longer any known memory leaks.

Lost logs edge case resolved [1913546]

  • If Azure Application Insights were down, previous versions of DAXKit would get back an error but count it as a successful upload of the log file and delete it from the disk. DAXKit now ensures that it receives a success response when uploading log files before it deletes them from the disk.

Known issues

  • When updating to DAXKit 1.4.0 from any previous version, QA and staging users from previous versions will lose any recordings that weren't uploaded to the servers. Mitigation step: Inform QA and staging users of apps that they should confirm they have uploaded all recordings they want to save before updating the app. [1941109]