# SessionManagerRx

class SessionManagerRx

Reactive facade for managing session lifecycle and related services.

This class coordinates session connection/restore/suspend flows, publishes connectivity and chat status signals.

## Properties

chatConnectedObservable
Link copied to clipboard
val chatConnectedObservable: Observable<Boolean>

Emits `true` when the chat service is authenticated, `false` otherwise.

isConferenceServiceAvailable
Link copied to clipboard
val isConferenceServiceAvailable: Observable<Boolean>

Emits availability of the conference service (QSS).

isConnectivityAvailable
Link copied to clipboard
val isConnectivityAvailable: Observable<Boolean>

Emits connectivity availability changes from the underlying observer.

isSessionConnected
Link copied to clipboard
val isSessionConnected: Observable<Boolean>

Emits `true` while the session is connected, `false` otherwise.

reconnectionNotPossible
Link copied to clipboard
val reconnectionNotPossible: Observable<Boolean>

Emits `true` when reconnection is not possible (e.g., wrong credentials).

strictReachable
Link copied to clipboard
val strictReachable: Single<Boolean>

## Functions

connect
Link copied to clipboard
fun connect(authentication: Authentication, context: Context): Completable

Connects the session using the provided authentication and context.

restore
Link copied to clipboard
fun restore(context: Context): Completable

Restores a session when possible, waiting for connectivity and service readiness.

suspend
Link copied to clipboard
fun suspend(): Completable

Suspends the session and chat service if the current state allows it.