import { IAutoConnectorStateMachine, TAutoConnectorSnapshot } from '../AutoConnectorManager'; import { ICallStateMachine, TCallSnapshot } from '../CallManager'; import { ICallReconnectStateMachine, TCallReconnectSnapshot } from '../CallReconnectManager'; import { TCallSessionSnapshot } from '../CallSessionState'; import { ConnectionStateMachine, TConnectionSnapshot } from '../ConnectionManager'; import { IncomingCallStateMachine, TIncomingSnapshot } from '../IncomingCallManager'; import { PresentationStateMachine, TPresentationSnapshot } from '../PresentationManager'; export type TSessionSnapshot = { connection: TConnectionSnapshot; call: TCallSnapshot; incoming: TIncomingSnapshot; presentation: TPresentationSnapshot; autoConnector: TAutoConnectorSnapshot; callReconnect: TCallReconnectSnapshot; callSessionState: TCallSessionSnapshot; }; export type TSessionMachines = { connection: ConnectionStateMachine; call: ICallStateMachine; incoming: IncomingCallStateMachine; presentation: PresentationStateMachine; autoConnector: IAutoConnectorStateMachine; callReconnect: ICallReconnectStateMachine; }; export { EAutoConnectorStatus } from '../AutoConnectorManager'; export { ECallStatus } from '../CallManager'; export { ECallReconnectStatus } from '../CallReconnectManager'; export { EConnectionStatus } from '../ConnectionManager'; export { EIncomingStatus } from '../IncomingCallManager'; export { EPresentationStatus } from '../PresentationManager'; /** * Комбинированное состояние системы, объединяющее состояния Connection и Call * для однозначного определения текущего состояния системы клиентом */ export declare enum ESystemStatus { /** Система не инициализирована, соединение не установлено */ DISCONNECTED = "system:disconnected", /** Идет процесс отключения (ожидание disconnected от UA) */ DISCONNECTING = "system:disconnecting", /** Идет процесс подключения (preparing, connecting, connected, registered) */ CONNECTING = "system:connecting", /** Соединение установлено, готово к звонкам, но звонок не активен */ READY_TO_CALL = "system:readyToCall", /** Идет установка звонка (connection established, call connecting) */ CALL_CONNECTING = "system:callConnecting", /** Идет автоматическое восстановление звонка после сетевого сбоя */ CALL_RECONNECTING = "system:callReconnecting", /** Идет процесс отключения звонка (connection established, call disconnecting) */ CALL_DISCONNECTING = "system:callDisconnecting", /** Звонок активен (connection established, call accepted/inCall) */ CALL_ACTIVE = "system:callActive" }