CallServiceConfigRegistry

A registry for managing call configurations related to call services.

Registering Configurations:

val registry = CallServiceConfigRegistry()

// Register a configuration explicitly
registry.register(CallType.Default.name, CallServiceConfig())

// Register a configuration using a builder
registry.register("livestream") {
    setServiceClass(MyCallService::class.java)
    setRunCallServiceInForeground(true)
}

// Register multiple configurations using a map
registry.register(
    mapOf(
        CallType.AudioCall.name to CallServiceConfig(),
        CallType.Default.name to CallServiceConfig()
    )
)

Retrieving Configurations:

val config = registry.get(CallType.Default.name)

Updating Configurations:

registry.update(CallType.Default.name) {
     setRunCallServiceInForeground(false)
}

Constructors

Link copied to clipboard
constructor()

Functions

Link copied to clipboard

Configures the registry using a lambda block.

Link copied to clipboard
fun get(callType: String): CallServiceConfig

Retrieves the call configuration for the given call type. Falls back to the default configuration if no specific configuration is found.

Link copied to clipboard

Registers multiple call configurations in bulk.

fun register(callType: String, config: CallServiceConfig)

Registers a specific call configuration for a given call type.

fun register(callType: String, configure: CallServiceConfigBuilder.() -> Unit)

Registers a call configuration using a builder pattern for a given call type.

Link copied to clipboard
fun update(callType: String, updater: CallServiceConfigBuilder.() -> Unit)

Updates an existing call configuration or creates a new one if it does not exist.