Initialize Dragon Copilot Ambient SDK

When the user signs in and is confirmed to have a valid license, your app must initialize the Ambient SDK using the AmbientClient() constructor. This method must be called before you can interact with the Ambient SDK framework. You can create this client once per app run. It throws an AmbientException if it fails to initialize or if the method is called again.

AmbientClient(
    context: Context,
    provider: Provider,
    accessTokenProvider: AccessTokenProvider,
    listener: Listener
)
Parameter Description
context Android Context used to initialize the Ambient SDK. This is typically the Application context.
provider Provider object containing user and environment information. This includes user identification, geography, partner ID, and server environment settings.
accessTokenProvider Object that provides access tokens to communicate with Dragon Copilot services.
listener Listener that receives upload events and notifications.

Provider data class

Data class that contains provider and environment information for the Ambient SDK.

data class Provider(
    val userId: String? = null,
    val emrId: String? = null,
    val name: String? = null,
    val email: String? = null,
    val productId: String,
    val partnerId: String,
    val customerId: String,
    val geography: String,
    val serverEnvironment: Any = ServerEnvironment.PRODUCTION,
    val cloudInstance: Any = CloudInstance.PUBLIC_GLOBAL,
)
Parameter Description
userId User GUID from Nuance Management Center (NMS) or Dragon admin center. Either userId or emrId must be provided.
emrId The user name in the EHR. This needs to be linked to the user's Microsoft account in Dragon admin center or to their NMS user ID. Either userId or emrId must be provided.
name User's name (optional).
email User's email address (optional).
productId The Dragon Copilot product ID: 4f939ade-287a-416d-8484-1e64013039dd
partnerId The partner identifier. This is a fixed GUID assigned by the Dragon partner relations team. For more information about your partner ID, contact your Microsoft representative.
customerId The ID of the customer system. This can be either the environment ID in Dragon admin center or the organization ID in NMS.
geography The location of the tenant or the EHR server of the provider. It is determined by the client integrating the ambient SDK and passed in so that the SDK can determine the proper config service to call for streaming URLs and logging repositories. This is critical for compliance with privacy requirements, e.g. GDPR in the European Union.
serverEnvironment Server environment to connect to. This is preset to ServerEnvironment.PRODUCTION; don't change this value.
cloudInstance Cloud instance destination. This is preset to CloudInstance.PUBLIC_GLOBAL; don't change this value.