Skip to content

VueSip API Reference v1.0.0


VueSip API Reference / <internal>

<internal>

Enumerations

LineState

Defined in: src/core/MultiLineManager.ts:12

Represents the current state of a line

Enumeration Members

Enumeration MemberValueDescriptionDefined in
IDLE"idle"Line is available and not in usesrc/core/MultiLineManager.ts:14
RINGING"ringing"Incoming call ringing on this linesrc/core/MultiLineManager.ts:16
ACTIVE"active"Active call in progress on this linesrc/core/MultiLineManager.ts:18
HELD"held"Call is on hold on this linesrc/core/MultiLineManager.ts:20
TRANSFERRING"transferring"Call transfer in progress on this linesrc/core/MultiLineManager.ts:22
PARKED"parked"Call is parked on this linesrc/core/MultiLineManager.ts:24

TransportEvent

Defined in: src/core/TransportManager.ts:15

Transport event types

Enumeration Members

Enumeration MemberValueDefined in
Connected"connected"src/core/TransportManager.ts:16
Disconnected"disconnected"src/core/TransportManager.ts:17
Error"error"src/core/TransportManager.ts:18
Message"message"src/core/TransportManager.ts:19
Connecting"connecting"src/core/TransportManager.ts:20
Reconnecting"reconnecting"src/core/TransportManager.ts:21

AmiMessageType

Defined in: src/types/ami.types.ts:26

AMI message types from amiws

Enumeration Members

Enumeration MemberValueDescriptionDefined in
Unknown0Unknown message typesrc/types/ami.types.ts:28
ProtocolID1AMI protocol ID messagesrc/types/ami.types.ts:30
PeerStatus2Peer connection statussrc/types/ami.types.ts:32
Event3AMI Eventsrc/types/ami.types.ts:34
Response4AMI Responsesrc/types/ami.types.ts:36
Queue5Queue updatesrc/types/ami.types.ts:38
Disconnect6Disconnect notificationsrc/types/ami.types.ts:40

AmiConnectionState

Defined in: src/types/ami.types.ts:144

AMI connection state

Enumeration Members

Enumeration MemberValueDefined in
Disconnected"disconnected"src/types/ami.types.ts:145
Connecting"connecting"src/types/ami.types.ts:146
Connected"connected"src/types/ami.types.ts:147
Reconnecting"reconnecting"src/types/ami.types.ts:148
Failed"failed"src/types/ami.types.ts:149

QueueMemberStatus

Defined in: src/types/ami.types.ts:186

Queue member status codes from Asterisk

Enumeration Members

Enumeration MemberValueDefined in
Unknown0src/types/ami.types.ts:187
NotInUse1src/types/ami.types.ts:188
InUse2src/types/ami.types.ts:189
Busy3src/types/ami.types.ts:190
Invalid4src/types/ami.types.ts:191
Unavailable5src/types/ami.types.ts:192
Ringing6src/types/ami.types.ts:193
RingInUse7src/types/ami.types.ts:194
OnHold8src/types/ami.types.ts:195

ChannelState

Defined in: src/types/ami.types.ts:465

Channel state codes

Enumeration Members

Enumeration MemberValueDefined in
Down0src/types/ami.types.ts:466
Reserved1src/types/ami.types.ts:467
OffHook2src/types/ami.types.ts:468
Dialing3src/types/ami.types.ts:469
Ring4src/types/ami.types.ts:470
Ringing5src/types/ami.types.ts:471
Up6src/types/ami.types.ts:472
Busy7src/types/ami.types.ts:473
DialingOffHook8src/types/ami.types.ts:474
PreRing9src/types/ami.types.ts:475
Unknown10src/types/ami.types.ts:476

FreePBXPresenceCode

Defined in: src/types/freepbx-presence.types.ts:14

FreePBX presence status codes These map to FreePBX presence/BLF states

Enumeration Members

Enumeration MemberValueDescriptionDefined in
Available"available"Available - Greensrc/types/freepbx-presence.types.ts:16
OnPhone"on_phone"On the phone - Redsrc/types/freepbx-presence.types.ts:18
Busy"busy"Busy - Do not disturbsrc/types/freepbx-presence.types.ts:20
Away"away"Away - Yellowsrc/types/freepbx-presence.types.ts:22
ExtendedAway"extended_away"Extended Away - Custom timesrc/types/freepbx-presence.types.ts:24
Lunch"lunch"Out to lunchsrc/types/freepbx-presence.types.ts:26
InMeeting"in_meeting"In a meetingsrc/types/freepbx-presence.types.ts:28
Offline"offline"Offline/Unavailablesrc/types/freepbx-presence.types.ts:30
Custom"custom"Custom statussrc/types/freepbx-presence.types.ts:32

ExtendedAwayReason

Defined in: src/types/freepbx-presence.types.ts:38

Extended away reasons for FreePBX

Enumeration Members

Enumeration MemberValueDescriptionDefined in
Away"away"Generic awaysrc/types/freepbx-presence.types.ts:40
Break"break"On breaksrc/types/freepbx-presence.types.ts:42
Lunch"lunch"At lunchsrc/types/freepbx-presence.types.ts:44
Meeting"meeting"In a meetingsrc/types/freepbx-presence.types.ts:46
Rounds"rounds"On rounds (healthcare)src/types/freepbx-presence.types.ts:48
WithPatient"with_patient"With patient (healthcare)src/types/freepbx-presence.types.ts:50
InProcedure"in_procedure"In procedure (healthcare)src/types/freepbx-presence.types.ts:52
OutOfOffice"out_of_office"Out of officesrc/types/freepbx-presence.types.ts:54
Vacation"vacation"Vacationsrc/types/freepbx-presence.types.ts:56
Custom"custom"Custom reasonsrc/types/freepbx-presence.types.ts:58

AmiRecordingState

Defined in: src/types/recording.types.ts:14

AMI Recording state enumeration

Enumeration Members

Enumeration MemberValueDescriptionDefined in
Idle"idle"Not recordingsrc/types/recording.types.ts:16
Recording"recording"Recording in progresssrc/types/recording.types.ts:18
Paused"paused"Recording pausedsrc/types/recording.types.ts:20
Stopped"stopped"Recording stoppedsrc/types/recording.types.ts:22
Failed"failed"Recording failedsrc/types/recording.types.ts:24

Classes

MultiLineManager

Defined in: src/core/MultiLineManager.ts:237

MultiLineManager manages multiple concurrent SIP lines Provides line switching, conferencing, parking, and state management

Constructors

Constructor
ts
new MultiLineManager(config?, eventBus?): MultiLineManager;

Defined in: src/core/MultiLineManager.ts:247

Parameters
ParameterType
config?Partial<MultiLineConfig>
eventBus?EventBus
Returns

MultiLineManager

Methods

getLine()
ts
getLine(lineId): Line | undefined;

Defined in: src/core/MultiLineManager.ts:280

Get a specific line by ID

Parameters
ParameterType
lineIdnumber
Returns

Line | undefined

getAllLines()
ts
getAllLines(): Line[];

Defined in: src/core/MultiLineManager.ts:287

Get all lines

Returns

Line[]

getActiveLine()
ts
getActiveLine(): Line | undefined;

Defined in: src/core/MultiLineManager.ts:294

Get the currently active line

Returns

Line | undefined

getActiveLineId()
ts
getActiveLineId(): number;

Defined in: src/core/MultiLineManager.ts:301

Get the active line ID

Returns

number

getAvailableLine()
ts
getAvailableLine(criteria?): Line | undefined;

Defined in: src/core/MultiLineManager.ts:308

Find an available line based on criteria

Parameters
ParameterType
criteria?LineSelectionCriteria
Returns

Line | undefined

assignCallToLine()
ts
assignCallToLine(callSession, lineId?): Promise<number>;

Defined in: src/core/MultiLineManager.ts:349

Assign a call to a specific line or auto-select

Parameters
ParameterType
callSessionCallSession
lineId?number
Returns

Promise<number>

switchToLine()
ts
switchToLine(lineId): Promise<void>;

Defined in: src/core/MultiLineManager.ts:405

Switch to a different line

Parameters
ParameterType
lineIdnumber
Returns

Promise<void>

holdLine()
ts
holdLine(lineId): Promise<void>;

Defined in: src/core/MultiLineManager.ts:441

Hold a call on a specific line

Parameters
ParameterType
lineIdnumber
Returns

Promise<void>

resumeLine()
ts
resumeLine(lineId): Promise<void>;

Defined in: src/core/MultiLineManager.ts:476

Resume a held call on a specific line

Parameters
ParameterType
lineIdnumber
Returns

Promise<void>

parkLine()
ts
parkLine(lineId): Promise<string>;

Defined in: src/core/MultiLineManager.ts:511

Park a call from a specific line

Parameters
ParameterType
lineIdnumber
Returns

Promise<string>

retrieveParked()
ts
retrieveParked(parkSlot): Promise<number>;

Defined in: src/core/MultiLineManager.ts:566

Retrieve a parked call

Parameters
ParameterType
parkSlotstring
Returns

Promise<number>

createConference()
ts
createConference(lineIds): Promise<string>;

Defined in: src/core/MultiLineManager.ts:603

Create a conference from multiple lines

Parameters
ParameterType
lineIdsnumber[]
Returns

Promise<string>

addToConference()
ts
addToConference(lineId, conferenceId?): Promise<void>;

Defined in: src/core/MultiLineManager.ts:666

Add a line to an existing conference

Parameters
ParameterType
lineIdnumber
conferenceId?string
Returns

Promise<void>

removeFromConference()
ts
removeFromConference(lineId): Promise<void>;

Defined in: src/core/MultiLineManager.ts:714

Remove a line from a conference

Parameters
ParameterType
lineIdnumber
Returns

Promise<void>

getConference()
ts
getConference(conferenceId): ConferenceState | undefined;

Defined in: src/core/MultiLineManager.ts:781

Get conference state

Parameters
ParameterType
conferenceIdstring
Returns

ConferenceState | undefined

getActiveConferences()
ts
getActiveConferences(): ConferenceState[];

Defined in: src/core/MultiLineManager.ts:788

Get all active conferences

Returns

ConferenceState[]

releaseCall()
ts
releaseCall(lineId): void;

Defined in: src/core/MultiLineManager.ts:795

Release a call from a line

Parameters
ParameterType
lineIdnumber
Returns

void

releaseLine()
ts
releaseLine(lineId): void;

Defined in: src/core/MultiLineManager.ts:830

Release a line (alias for releaseCall)

Parameters
ParameterType
lineIdnumber
Returns

void

getStats()
ts
getStats(): MultiLineStats;

Defined in: src/core/MultiLineManager.ts:883

Get statistics about line usage

Returns

MultiLineStats

getParkedCalls()
ts
getParkedCalls(): ParkSlot[];

Defined in: src/core/MultiLineManager.ts:899

Get all parked calls

Returns

ParkSlot[]

updateDurations()
ts
updateDurations(): void;

Defined in: src/core/MultiLineManager.ts:906

Update call duration for active lines

Returns

void

reset()
ts
reset(): void;

Defined in: src/core/MultiLineManager.ts:918

Reset all lines to idle state

Returns

void


TokenStorageManager

Defined in: src/services/OAuth2Service.ts:96

OAuth2 token storage manager

Constructors

Constructor
ts
new TokenStorageManager(type, prefix): TokenStorageManager;

Defined in: src/services/OAuth2Service.ts:100

Parameters
ParameterType
type"localStorage" | "sessionStorage" | "memory"
prefixstring
Returns

TokenStorageManager

Methods

store()
ts
store(key, data): Promise<void>;

Defined in: src/services/OAuth2Service.ts:109

Parameters
ParameterType
keystring
dataOAuth2StoredData
Returns

Promise<void>

retrieve()
ts
retrieve(key): Promise<OAuth2StoredData | null>;

Defined in: src/services/OAuth2Service.ts:119

Parameters
ParameterType
keystring
Returns

Promise<OAuth2StoredData | null>

remove()
ts
remove(key): Promise<void>;

Defined in: src/services/OAuth2Service.ts:135

Parameters
ParameterType
keystring
Returns

Promise<void>

clear()
ts
clear(): Promise<void>;

Defined in: src/services/OAuth2Service.ts:144

Returns

Promise<void>

storePKCE()
ts
storePKCE(state, pkce): Promise<void>;

Defined in: src/services/OAuth2Service.ts:164

Parameters
ParameterType
statestring
pkcePKCEParams
Returns

Promise<void>

retrievePKCE()
ts
retrievePKCE(state): Promise<string | null>;

Defined in: src/services/OAuth2Service.ts:176

Parameters
ParameterType
statestring
Returns

Promise<string | null>

removePKCE()
ts
removePKCE(state): Promise<void>;

Defined in: src/services/OAuth2Service.ts:187

Parameters
ParameterType
statestring
Returns

Promise<void>


StorePersistenceManager

Defined in: src/stores/persistence.ts:51

Store persistence manager

Constructors

Constructor
ts
new StorePersistenceManager(): StorePersistenceManager;
Returns

StorePersistenceManager

Methods

initialize()
ts
initialize(config): Promise<void>;

Defined in: src/stores/persistence.ts:62

Initialize persistence for all stores

Parameters
ParameterTypeDescription
configPersistenceConfigPersistence configuration
Returns

Promise<void>

saveAll()
ts
saveAll(): Promise<void>;

Defined in: src/stores/persistence.ts:317

Manually save all store states

Returns

Promise<void>

loadAll()
ts
loadAll(): Promise<void>;

Defined in: src/stores/persistence.ts:335

Manually load all store states

Returns

Promise<void>

clearAll()
ts
clearAll(): Promise<void>;

Defined in: src/stores/persistence.ts:353

Clear all persisted data

Returns

Promise<void>

destroy()
ts
destroy(): void;

Defined in: src/stores/persistence.ts:371

Destroy all persistence managers

Returns

void

getStatistics()
ts
getStatistics(): object;

Defined in: src/stores/persistence.ts:389

Get statistics about persistence

Returns

object

NameTypeDefined in
enabledbooleansrc/stores/persistence.ts:391
managersCountnumbersrc/stores/persistence.ts:392
managersstring[]src/stores/persistence.ts:393
hasLocalStoragebooleansrc/stores/persistence.ts:394
hasIndexedDBbooleansrc/stores/persistence.ts:395
getStorageQuota()
ts
getStorageQuota(): Promise<StorageQuotaInfo>;

Defined in: src/stores/persistence.ts:404

Get storage quota information

Returns

Promise<StorageQuotaInfo>

Promise resolving to storage quota info

getStorageUsageSummary()
ts
getStorageUsageSummary(): Promise<{
  overall: StorageQuotaInfo;
  localStorage: {
     available: boolean;
     estimatedUsage: number;
  };
  sessionStorage: {
     available: boolean;
  };
  indexedDB: {
     available: boolean;
  };
}>;

Defined in: src/stores/persistence.ts:414

Get storage usage summary

Returns

Promise<{ overall: StorageQuotaInfo; localStorage: { available: boolean; estimatedUsage: number; }; sessionStorage: { available: boolean; }; indexedDB: { available: boolean; }; }>

Promise resolving to comprehensive storage usage info

checkStorageWarning()
ts
checkStorageWarning(threshold): Promise<boolean>;

Defined in: src/stores/persistence.ts:425

Check if storage quota is running low

Parameters
ParameterTypeDefault valueDescription
thresholdnumber80Warning threshold percentage (default: 80)
Returns

Promise<boolean>

Promise resolving to true if usage is above threshold

clearOldCallHistory()
ts
clearOldCallHistory(targetReduction): Promise<number>;

Defined in: src/stores/persistence.ts:438

Clear old call history entries to free up space

Uses LRU (Least Recently Used) strategy to remove oldest entries.

Parameters
ParameterTypeDefault valueDescription
targetReductionnumber20Target reduction percentage (default: 20)
Returns

Promise<number>

Promise resolving to number of entries removed


EventEmitter

Defined in: src/utils/EventEmitter.ts:15

EventEmitter base class

Provides event subscription, emission, and cleanup capabilities.

Extended by

Type Parameters

Type ParameterDefault type
TEvents extends Record<string, unknown>Record<string, unknown>

Constructors

Constructor
ts
new EventEmitter<TEvents>(): EventEmitter<TEvents>;
Returns

EventEmitter<TEvents>

Properties

PropertyModifierTypeDefined in
listenersprotectedMap<string, Set<EventHandler<unknown>>>src/utils/EventEmitter.ts:16

Methods

on()
ts
on<K>(event, handler): () => void;

Defined in: src/utils/EventEmitter.ts:25

Subscribe to an event

Type Parameters
Type Parameter
K extends string | number | symbol
Parameters
ParameterTypeDescription
eventKEvent name
handlerEventHandler<TEvents[K]>Event handler function
Returns

Unsubscribe function

ts
(): void;
Returns

void

once()
ts
once<K>(event, handler): () => void;

Defined in: src/utils/EventEmitter.ts:55

Subscribe to an event once (auto-unsubscribe after first emission)

Type Parameters
Type Parameter
K extends string | number | symbol
Parameters
ParameterTypeDescription
eventKEvent name
handlerEventHandler<TEvents[K]>Event handler function
Returns

Unsubscribe function

ts
(): void;
Returns

void

off()
ts
off<K>(event, handler?): void;

Defined in: src/utils/EventEmitter.ts:71

Unsubscribe from an event

Type Parameters
Type Parameter
K extends string | number | symbol
Parameters
ParameterTypeDescription
eventKEvent name
handler?EventHandler<TEvents[K]>Event handler function to remove (optional - removes all if not specified)
Returns

void

emit()
ts
emit<K>(event, data): void;

Defined in: src/utils/EventEmitter.ts:93

Emit an event

Type Parameters
Type Parameter
K extends string | number | symbol
Parameters
ParameterTypeDescription
eventKEvent name
dataTEvents[K]Event data
Returns

void

removeAllListeners()
ts
removeAllListeners(): void;

Defined in: src/utils/EventEmitter.ts:112

Remove all event listeners

Returns

void

listenerCount()
ts
listenerCount<K>(event): number;

Defined in: src/utils/EventEmitter.ts:122

Get the number of listeners for an event

Type Parameters
Type Parameter
K extends string | number | symbol
Parameters
ParameterTypeDescription
eventKEvent name
Returns

number

Number of listeners

eventNames()
ts
eventNames(): string[];

Defined in: src/utils/EventEmitter.ts:133

Get all event names that have listeners

Returns

string[]

Array of event names

Interfaces

AmiPresenceState

Defined in: src/composables/useAmi.ts:26

Presence state from AMI

Properties

PropertyTypeDescriptionDefined in
extensionstringExtension numbersrc/composables/useAmi.ts:28
statestringCurrent state (available, away, dnd, etc.)src/composables/useAmi.ts:30
subtype?stringOptional subtypesrc/composables/useAmi.ts:32
message?stringOptional messagesrc/composables/useAmi.ts:34
lastUpdatedDateLast updated timestampsrc/composables/useAmi.ts:36

ClickToCallOptions

Defined in: src/composables/useAmiCalls.ts:79

Options for click-to-call

Properties

PropertyTypeDescriptionDefined in
context?stringContext for dial-out (default from config)src/composables/useAmiCalls.ts:81
callerId?stringCaller ID to presentsrc/composables/useAmiCalls.ts:83
timeout?numberTimeout in ms for agent to answersrc/composables/useAmiCalls.ts:85
variables?Record<string, string>Variables to set on the channelsrc/composables/useAmiCalls.ts:87
accountCode?stringAccount codesrc/composables/useAmiCalls.ts:89

ContactGroup

Defined in: src/composables/useAmiDatabase.ts:25

Contact group with contacts

Properties

PropertyTypeDescriptionDefined in
namestringGroup namesrc/composables/useAmiDatabase.ts:27
contactsAmiContact[]Contacts in this groupsrc/composables/useAmiDatabase.ts:29
countnumberContact countsrc/composables/useAmiDatabase.ts:31

ParkingEvent

Defined in: src/composables/useAmiParking.ts:66

Properties

PropertyTypeDefined in
typeParkingEventTypesrc/composables/useAmiParking.ts:67
callParkedCallsrc/composables/useAmiParking.ts:68
retrieverChannel?stringsrc/composables/useAmiParking.ts:69

PeerStatusSummary

Defined in: src/composables/useAmiPeers.ts:26

Peer status summary

Properties

PropertyTypeDescriptionDefined in
totalnumberTotal number of peerssrc/composables/useAmiPeers.ts:28
onlinenumberNumber of online/OK peerssrc/composables/useAmiPeers.ts:30
offlinenumberNumber of offline/unreachable peerssrc/composables/useAmiPeers.ts:32
unknownnumberNumber of peers in unknown statesrc/composables/useAmiPeers.ts:34

SupervisionSession

Defined in: src/composables/useAmiSupervisor.ts:28

Active supervision session

Properties

PropertyTypeDescriptionDefined in
idstringUnique session IDsrc/composables/useAmiSupervisor.ts:30
supervisorChannelstringSupervisor channelsrc/composables/useAmiSupervisor.ts:32
targetChannelstringTarget channel being supervisedsrc/composables/useAmiSupervisor.ts:34
modeSupervisionModeSupervision modesrc/composables/useAmiSupervisor.ts:36
startTimeDateStart timesrc/composables/useAmiSupervisor.ts:38
serverId?numberServer ID for multi-server setupssrc/composables/useAmiSupervisor.ts:40

UseAudioDevicesReturn

Defined in: src/composables/useAudioDevices.ts:15

Properties

PropertyTypeDefined in
microphonesReadonly<Ref<AudioDevice[]>>src/composables/useAudioDevices.ts:17
speakersReadonly<Ref<AudioDevice[]>>src/composables/useAudioDevices.ts:18
camerasReadonly<Ref<AudioDevice[]>>src/composables/useAudioDevices.ts:19
allDevicesReadonly<Ref<AudioDevice[]>>src/composables/useAudioDevices.ts:20
currentMicrophoneReadonly<Ref<AudioDevice | null>>src/composables/useAudioDevices.ts:23
currentSpeakerReadonly<Ref<AudioDevice | null>>src/composables/useAudioDevices.ts:24
currentCameraReadonly<Ref<AudioDevice | null>>src/composables/useAudioDevices.ts:25
permissionStatusReadonly<Ref<AudioPermissionState>>src/composables/useAudioDevices.ts:28
isLoadingReadonly<Ref<boolean>>src/composables/useAudioDevices.ts:29
errorRef<string | null>src/composables/useAudioDevices.ts:30
refreshDevices() => Promise<void>src/composables/useAudioDevices.ts:33
requestPermissions() => Promise<boolean>src/composables/useAudioDevices.ts:34
checkAudioPermission() => Promise<AudioPermissionState>src/composables/useAudioDevices.ts:35
checkVideoPermission() => Promise<AudioPermissionState>src/composables/useAudioDevices.ts:36
selectMicrophone(deviceId) => Promise<void>src/composables/useAudioDevices.ts:37
selectSpeaker(deviceId) => Promise<void>src/composables/useAudioDevices.ts:38
selectCamera(deviceId) => Promise<void>src/composables/useAudioDevices.ts:39
selectDefaultMicrophone() => Promise<void>src/composables/useAudioDevices.ts:40
selectDefaultSpeaker() => Promise<void>src/composables/useAudioDevices.ts:41
selectDefaultCamera() => Promise<void>src/composables/useAudioDevices.ts:42
createAudioStream(constraints?) => Promise<MediaStream | null>src/composables/useAudioDevices.ts:43
createVideoStream(constraints?) => Promise<MediaStream | null>src/composables/useAudioDevices.ts:44
getCurrentAudioStream() => MediaStream | nullsrc/composables/useAudioDevices.ts:45
getMicrophoneById(deviceId) => AudioDevice | undefinedsrc/composables/useAudioDevices.ts:46
getSpeakerById(deviceId) => AudioDevice | undefinedsrc/composables/useAudioDevices.ts:47
getCameraById(deviceId) => AudioDevice | undefinedsrc/composables/useAudioDevices.ts:48
isDeviceAvailable(deviceId) => booleansrc/composables/useAudioDevices.ts:49
onDeviceAdded(callback) => () => voidsrc/composables/useAudioDevices.ts:50
onDeviceRemoved(callback) => () => voidsrc/composables/useAudioDevices.ts:51
cleanup() => voidsrc/composables/useAudioDevices.ts:52

UseCallHoldReturn

Defined in: src/composables/useCallHold.ts:22

Return type for useCallHold composable

Properties

PropertyTypeDescriptionDefined in
holdStateRef<HoldState>Current hold statesrc/composables/useCallHold.ts:28
isOnHoldComputedRef<boolean>Is call on hold (local)src/composables/useCallHold.ts:30
isLocalHoldComputedRef<boolean>Is call on hold by local partysrc/composables/useCallHold.ts:32
isRemoteHoldComputedRef<boolean>Is call on hold by remote partysrc/composables/useCallHold.ts:34
isHoldingComputedRef<boolean>Is hold operation in progresssrc/composables/useCallHold.ts:36
isResumingComputedRef<boolean>Is resume operation in progresssrc/composables/useCallHold.ts:38
holdErrorRef<string | null>Hold error messagesrc/composables/useCallHold.ts:40
holdCall(options?) => Promise<HoldResult>Place call on holdsrc/composables/useCallHold.ts:47
resumeCall() => Promise<HoldResult>Resume call from holdsrc/composables/useCallHold.ts:49
toggleHold() => Promise<HoldResult>Toggle hold statesrc/composables/useCallHold.ts:51
clearHold() => voidClear hold state and errorssrc/composables/useCallHold.ts:53

TransferResult

Defined in: src/composables/useCallTransfer.ts:32

Transfer result interface

Properties

PropertyTypeDescriptionDefined in
successbooleanWhether transfer was successfulsrc/composables/useCallTransfer.ts:34
transferId?stringTransfer IDsrc/composables/useCallTransfer.ts:36
error?stringError message if failedsrc/composables/useCallTransfer.ts:38
stateTransferStateTransfer statesrc/composables/useCallTransfer.ts:40

UseCallTransferReturn

Defined in: src/composables/useCallTransfer.ts:46

Return type for useCallTransfer composable

Properties

PropertyTypeDescriptionDefined in
transferStateRef<TransferState>Current transfer statesrc/composables/useCallTransfer.ts:52
transferTypeRef<TransferType | null>Current transfer typesrc/composables/useCallTransfer.ts:54
transferTargetRef<string | null>Transfer target URIsrc/composables/useCallTransfer.ts:56
transferErrorRef<string | null>Transfer error messagesrc/composables/useCallTransfer.ts:58
transferProgressRef<TransferProgress | null>Transfer progress informationsrc/composables/useCallTransfer.ts:60
isTransferringComputedRef<boolean>Is transfer currently in progresssrc/composables/useCallTransfer.ts:62
transferCall(target, options) => Promise<TransferResult>Initiate call transfer (blind or attended)src/composables/useCallTransfer.ts:69
acceptTransfer() => Promise<void>Accept incoming transfer requestsrc/composables/useCallTransfer.ts:71
rejectTransfer(reason?) => Promise<void>Reject incoming transfer requestsrc/composables/useCallTransfer.ts:73
clearTransfer() => voidClear transfer statesrc/composables/useCallTransfer.ts:75

UseDialogReturn

Defined in: src/composables/useDialog.ts:31

Return type for useDialog composable

Properties

PropertyTypeDescriptionDefined in
watchedExtensionsRef<Map<string, DialogStatus>>Map of watched extensions and their dialog statussrc/composables/useDialog.ts:37
subscriptionsRef<Map<string, DialogSubscription>>Active subscriptionssrc/composables/useDialog.ts:39
subscriptionCountComputedRef<number>Number of active subscriptionssrc/composables/useDialog.ts:41
displayConfigRef<PresenceDisplayConfig>Display configurationsrc/composables/useDialog.ts:43
subscribe(uri, options?) => Promise<string>Subscribe to an extension's dialog state (BLF)src/composables/useDialog.ts:50
unsubscribe(uri) => Promise<void>Unsubscribe from an extension's dialog statesrc/composables/useDialog.ts:52
subscribeMany(uris, options?) => Promise<string[]>Subscribe to multiple extensions at oncesrc/composables/useDialog.ts:54
unsubscribeAll() => Promise<void>Unsubscribe from all extensionssrc/composables/useDialog.ts:56
getStatus(uri) => DialogStatus | undefinedGet dialog status for a specific extensionsrc/composables/useDialog.ts:58
getDisplayOptions(state) => StateDisplayOptionsGet display options for a dialog statesrc/composables/useDialog.ts:60
setDisplayConfig(config) => voidSet custom display configurationsrc/composables/useDialog.ts:62
onDialogEvent(callback) => () => voidListen for dialog eventssrc/composables/useDialog.ts:64

ExtensionPresence

Defined in: src/composables/useFreePBXPresence.ts:28

Extension presence status with computed helpers

Properties

PropertyTypeDescriptionDefined in
extensionstringExtension numbersrc/composables/useFreePBXPresence.ts:30
statusFreePBXPresenceStatusCurrent presence statussrc/composables/useFreePBXPresence.ts:32
isAvailablebooleanIs the extension availablesrc/composables/useFreePBXPresence.ts:34
isBusybooleanIs the extension busy (on phone or in meeting)src/composables/useFreePBXPresence.ts:36
isAwaybooleanIs the extension awaysrc/composables/useFreePBXPresence.ts:38
hasReturnTimebooleanHas an expected return timesrc/composables/useFreePBXPresence.ts:40
isOverduebooleanIs return time overduesrc/composables/useFreePBXPresence.ts:42
returnTimeDisplaystring | nullFormatted return time stringsrc/composables/useFreePBXPresence.ts:44
remainingTimeDisplaystring | nullFormatted remaining time stringsrc/composables/useFreePBXPresence.ts:46

UseFreePBXPresenceReturn

Defined in: src/composables/useFreePBXPresence.ts:52

Return type for useFreePBXPresence composable

Properties

PropertyTypeDescriptionDefined in
presenceMapRef<Map<string, FreePBXPresenceStatus>>Map of all presence statuses by extensionsrc/composables/useFreePBXPresence.ts:58
presenceListComputedRef<ExtensionPresence[]>Array of presence statuses for iterationsrc/composables/useFreePBXPresence.ts:61
selectedExtensionRef<string | null>Currently selected/focused extensionsrc/composables/useFreePBXPresence.ts:64
selectedPresenceComputedRef<ExtensionPresence | null>Presence status of selected extensionsrc/composables/useFreePBXPresence.ts:67
isSubscribedRef<boolean>Is currently subscribed to presence updatessrc/composables/useFreePBXPresence.ts:70
lastEventRef<FreePBXPresenceEvent | null>Last presence event receivedsrc/composables/useFreePBXPresence.ts:73
errorRef<string | null>Connection/subscription error if anysrc/composables/useFreePBXPresence.ts:76
availableCountComputedRef<number>Count of available extensionssrc/composables/useFreePBXPresence.ts:83
busyCountComputedRef<number>Count of busy extensionssrc/composables/useFreePBXPresence.ts:86
awayCountComputedRef<number>Count of away extensionssrc/composables/useFreePBXPresence.ts:89
withReturnTimeCountComputedRef<number>Count of extensions with return time setsrc/composables/useFreePBXPresence.ts:92
overdueCountComputedRef<number>Count of overdue extensionssrc/composables/useFreePBXPresence.ts:95
overdueExtensionsComputedRef<ExtensionPresence[]>List of overdue extensionssrc/composables/useFreePBXPresence.ts:98
initialize(config) => voidInitialize the presence bridge with configurationsrc/composables/useFreePBXPresence.ts:105
setUserAgent(ua) => voidSet the JsSIP User Agent for SIP subscriptionssrc/composables/useFreePBXPresence.ts:108
subscribe(extensions) => Promise<void>Subscribe to presence updates for extensionssrc/composables/useFreePBXPresence.ts:111
unsubscribe(extension) => voidUnsubscribe from specific extensionsrc/composables/useFreePBXPresence.ts:114
unsubscribeAll() => voidUnsubscribe from all extensionssrc/composables/useFreePBXPresence.ts:117
getPresence(extension) => ExtensionPresence | nullGet presence status for an extensionsrc/composables/useFreePBXPresence.ts:120
setReturnTime(extension, returnTime) => voidSet return time for an extensionsrc/composables/useFreePBXPresence.ts:123
clearReturnTime(extension) => voidClear return time for an extensionsrc/composables/useFreePBXPresence.ts:126
selectExtension(extension) => voidSelect/focus an extensionsrc/composables/useFreePBXPresence.ts:129
isExtensionAvailable(extension) => booleanCheck if extension is availablesrc/composables/useFreePBXPresence.ts:132
isExtensionBusy(extension) => booleanCheck if extension is busysrc/composables/useFreePBXPresence.ts:135
filterByState(state) => ExtensionPresence[]Filter extensions by presence statesrc/composables/useFreePBXPresence.ts:138
destroy() => voidDestroy and cleanupsrc/composables/useFreePBXPresence.ts:141

UseMultiLineReturn

Defined in: src/composables/useMultiLine.ts:24

Properties

PropertyTypeDefined in
linesRef<Line[]>src/composables/useMultiLine.ts:26
activeLineComputedRef<Line | undefined>src/composables/useMultiLine.ts:27
activeLineIdComputedRef<number>src/composables/useMultiLine.ts:28
statsRef<MultiLineStats>src/composables/useMultiLine.ts:29
hasAvailableLineComputedRef<boolean>src/composables/useMultiLine.ts:32
activeCallCountComputedRef<number>src/composables/useMultiLine.ts:33
heldCallCountComputedRef<number>src/composables/useMultiLine.ts:34
getLine(lineId) => Line | undefinedsrc/composables/useMultiLine.ts:37
switchToLine(lineId) => Promise<void>src/composables/useMultiLine.ts:38
holdLine(lineId) => Promise<void>src/composables/useMultiLine.ts:39
resumeLine(lineId) => Promise<void>src/composables/useMultiLine.ts:40
assignCallToLine(callSession, lineId?) => Promise<number>src/composables/useMultiLine.ts:43
releaseCall(lineId) => voidsrc/composables/useMultiLine.ts:44
createConference(lineIds) => Promise<string>src/composables/useMultiLine.ts:47
addToConference(lineId, conferenceId?) => Promise<void>src/composables/useMultiLine.ts:48
removeFromConference(lineId) => Promise<void>src/composables/useMultiLine.ts:49
getActiveConferences() => ConferenceState[]src/composables/useMultiLine.ts:50
parkLine(lineId) => Promise<string>src/composables/useMultiLine.ts:53
retrieveParked(parkSlot) => Promise<number>src/composables/useMultiLine.ts:54
getParkedCalls() => ParkSlot[]src/composables/useMultiLine.ts:55
isLineActive(lineId) => booleansrc/composables/useMultiLine.ts:58
isLineHeld(lineId) => booleansrc/composables/useMultiLine.ts:59
isLineIdle(lineId) => booleansrc/composables/useMultiLine.ts:60
managerMultiLineManagersrc/composables/useMultiLine.ts:63

UseSipDtmfReturn

Defined in: src/composables/useSipDtmf.ts:17

Properties

PropertyTypeDefined in
sendDtmf(digit) => Promise<void>src/composables/useSipDtmf.ts:18
sendDtmfSequence(digits, interval?, signal?) => Promise<void>src/composables/useSipDtmf.ts:19

RegistrationStatistics

Defined in: src/composables/useSipRegistration.ts:89

Registration statistics

Properties

PropertyTypeDefined in
stateRegistrationStatesrc/composables/useSipRegistration.ts:90
registeredUristring | nullsrc/composables/useSipRegistration.ts:91
isRegisteredbooleansrc/composables/useSipRegistration.ts:92
expiresnumbersrc/composables/useSipRegistration.ts:93
secondsUntilExpirynumbersrc/composables/useSipRegistration.ts:94
retryCountnumbersrc/composables/useSipRegistration.ts:95
hasAutoRefreshTimerbooleansrc/composables/useSipRegistration.ts:96
lastErrorstring | nullsrc/composables/useSipRegistration.ts:97
lastRegistrationTimeDate | nullsrc/composables/useSipRegistration.ts:98
expiryTimeDate | nullsrc/composables/useSipRegistration.ts:99

UseSipWebRTCStatsReturn

Defined in: src/composables/useSipWebRTCStats.ts:34

Return type for useSipWebRTCStats composable

Properties

PropertyTypeDescriptionDefined in
statsRef<CallQualityStats | null>Current call quality statisticssrc/composables/useSipWebRTCStats.ts:37
qualityComputedRef<ConnectionQuality>Current connection quality levelsrc/composables/useSipWebRTCStats.ts:39
mosScoreComputedRef<MosScore | null>Current MOS scoresrc/composables/useSipWebRTCStats.ts:41
historyRef<StatsHistoryEntry[]>Stats collection historysrc/composables/useSipWebRTCStats.ts:43
alertsRef<QualityAlert[]>Active quality alertssrc/composables/useSipWebRTCStats.ts:45
isCollectingRef<boolean>Whether stats collection is activesrc/composables/useSipWebRTCStats.ts:47
errorRef<string | null>Error message if anysrc/composables/useSipWebRTCStats.ts:49
avgPacketLossComputedRef<number>Average packet loss (percentage)src/composables/useSipWebRTCStats.ts:53
avgJitterComputedRef<number>Average jitter (ms)src/composables/useSipWebRTCStats.ts:55
avgRttComputedRef<number | null>Average round-trip time (ms)src/composables/useSipWebRTCStats.ts:57
currentBitrateComputedRef<number>Current bitrate (kbps)src/composables/useSipWebRTCStats.ts:59
start() => voidStart collecting statssrc/composables/useSipWebRTCStats.ts:63
stop() => voidStop collecting statssrc/composables/useSipWebRTCStats.ts:65
getSnapshot() => Promise<CallQualityStats | null>Get current stats snapshotsrc/composables/useSipWebRTCStats.ts:67
clearHistory() => voidClear stats historysrc/composables/useSipWebRTCStats.ts:69
clearAlerts() => voidClear alertssrc/composables/useSipWebRTCStats.ts:71
setThresholds(thresholds) => voidUpdate quality thresholdssrc/composables/useSipWebRTCStats.ts:73
onAlert(callback) => () => voidListen for quality alertssrc/composables/useSipWebRTCStats.ts:75
onQualityChange(callback) => () => voidListen for quality changessrc/composables/useSipWebRTCStats.ts:77

CallSessionEvents

Defined in: src/core/CallSession.ts:31

Call session event types

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
progressunknownsrc/core/CallSession.ts:32
acceptedvoidsrc/core/CallSession.ts:33
confirmedvoidsrc/core/CallSession.ts:34
endedunknownsrc/core/CallSession.ts:35
failedunknownsrc/core/CallSession.ts:36
holdvoidsrc/core/CallSession.ts:37
unholdvoidsrc/core/CallSession.ts:38
mutedvoidsrc/core/CallSession.ts:39
unmutedvoidsrc/core/CallSession.ts:40
sdpunknownsrc/core/CallSession.ts:41
icecandidateunknownsrc/core/CallSession.ts:42
getusermediafailedunknownsrc/core/CallSession.ts:43
peerconnectionunknownsrc/core/CallSession.ts:44
connectingvoidsrc/core/CallSession.ts:45
sendingvoidsrc/core/CallSession.ts:46
newDTMFunknownsrc/core/CallSession.ts:47
newInfounknownsrc/core/CallSession.ts:48
referunknownsrc/core/CallSession.ts:49
replacesunknownsrc/core/CallSession.ts:50
updateunknownsrc/core/CallSession.ts:51

CallSessionOptions

Defined in: src/core/CallSession.ts:59

Call session options

Properties

PropertyTypeDescriptionDefined in
idstringCall IDsrc/core/CallSession.ts:61
directionCallDirectionCall directionsrc/core/CallSession.ts:63
localUristringLocal SIP URIsrc/core/CallSession.ts:65
remoteUristringRemote SIP URIsrc/core/CallSession.ts:67
remoteDisplayName?stringRemote display namesrc/core/CallSession.ts:69
rtcSessionanyJsSIP RTCSession instancesrc/core/CallSession.ts:71
eventBusEventBusEvent bus for emitting eventssrc/core/CallSession.ts:73
data?Record<string, any>Custom datasrc/core/CallSession.ts:75

EventListener

Defined in: src/core/EventBus.ts:19

Internal event listener structure

Type Parameters

Type ParameterDefault type
Tunknown

Properties

PropertyTypeDefined in
handlerEventHandler<T>src/core/EventBus.ts:20
oncebooleansrc/core/EventBus.ts:21
prioritynumbersrc/core/EventBus.ts:22
idstringsrc/core/EventBus.ts:23

MediaManagerOptions

Defined in: src/core/MediaManager.ts:81

Media manager options

Properties

PropertyTypeDescriptionDefined in
eventBusEventBusEvent bus for emitting eventssrc/core/MediaManager.ts:83
rtcConfiguration?ExtendedRTCConfigurationRTC configurationsrc/core/MediaManager.ts:85
mediaConfiguration?MediaConfigurationMedia configurationsrc/core/MediaManager.ts:87
autoQualityAdjustment?booleanEnable auto-quality adjustmentsrc/core/MediaManager.ts:89

DeviceTestResult

Defined in: src/core/MediaManager.ts:95

Device test result

Properties

PropertyTypeDescriptionDefined in
deviceIdstringDevice IDsrc/core/MediaManager.ts:97
successbooleanSuccess statussrc/core/MediaManager.ts:99
error?stringError message if failedsrc/core/MediaManager.ts:101
audioLevel?numberAudio level (0-1) if applicablesrc/core/MediaManager.ts:103

Line

Defined in: src/core/MultiLineManager.ts:35

Represents a single line in the multi-line system

Properties

PropertyTypeDescriptionDefined in
idnumberUnique line identifier (1-based)src/core/MultiLineManager.ts:37
stateLineStateCurrent state of the linesrc/core/MultiLineManager.ts:39
callSessionCallSession | nullAssociated call session if activesrc/core/MultiLineManager.ts:41
remotePartystring | nullRemote party identifier (phone number or SIP URI)src/core/MultiLineManager.ts:43
durationnumberCall duration in secondssrc/core/MultiLineManager.ts:45
startTimeDate | nullCall start timestampsrc/core/MultiLineManager.ts:47
isConferencebooleanWhether this line is part of a conferencesrc/core/MultiLineManager.ts:49
conferenceId?stringConference ID if part of a conferencesrc/core/MultiLineManager.ts:51
parkSlot?stringPark slot identifier if parkedsrc/core/MultiLineManager.ts:53

MultiLineConfig

Defined in: src/core/MultiLineManager.ts:59

Configuration options for multi-line manager

Properties

PropertyTypeDescriptionDefined in
maxLinesnumberMaximum number of lines to supportsrc/core/MultiLineManager.ts:61
autoAnswerbooleanAutomatically answer incoming callssrc/core/MultiLineManager.ts:63
ringPolicyRingPolicyPolicy for distributing incoming callssrc/core/MultiLineManager.ts:65
defaultLinenumberDefault line to use for outgoing callssrc/core/MultiLineManager.ts:67
conferenceEnabledbooleanEnable conference bridgingsrc/core/MultiLineManager.ts:69
parkingEnabledbooleanEnable call parkingsrc/core/MultiLineManager.ts:71

ConferenceState

Defined in: src/core/MultiLineManager.ts:77

Conference state tracking

Properties

PropertyTypeDescriptionDefined in
idstringUnique conference identifiersrc/core/MultiLineManager.ts:79
linesnumber[]Lines participating in the conferencesrc/core/MultiLineManager.ts:81
activebooleanWhether the conference is activesrc/core/MultiLineManager.ts:83
bridgedbooleanWhether all lines are bridged togethersrc/core/MultiLineManager.ts:85
startTimeDateConference start timesrc/core/MultiLineManager.ts:87
participantCountnumberNumber of participantssrc/core/MultiLineManager.ts:89

LineSelectionCriteria

Defined in: src/core/MultiLineManager.ts:127

Line selection criteria

Properties

PropertyTypeDescriptionDefined in
preferredLine?numberPrefer specific line IDsrc/core/MultiLineManager.ts:129
requireIdle?booleanRequire idle linesrc/core/MultiLineManager.ts:131
excludeLines?number[]Exclude specific linessrc/core/MultiLineManager.ts:133
allowHeld?booleanAllow held linessrc/core/MultiLineManager.ts:135

ParkSlot

Defined in: src/core/MultiLineManager.ts:141

Park slot information

Properties

PropertyTypeDescriptionDefined in
idstringSlot identifiersrc/core/MultiLineManager.ts:143
lineIdnumberLine ID that is parkedsrc/core/MultiLineManager.ts:145
remotePartystringRemote party informationsrc/core/MultiLineManager.ts:147
parkedAtDatePark timestampsrc/core/MultiLineManager.ts:149
retrievalCode?stringRetrieval codesrc/core/MultiLineManager.ts:151

MultiLineStats

Defined in: src/core/MultiLineManager.ts:157

Multi-line statistics

Properties

PropertyTypeDescriptionDefined in
totalLinesnumberTotal number of linessrc/core/MultiLineManager.ts:159
activeLinesnumberNumber of active linessrc/core/MultiLineManager.ts:161
heldLinesnumberNumber of held linessrc/core/MultiLineManager.ts:163
idleLinesnumberNumber of idle linessrc/core/MultiLineManager.ts:165
activeConferencesnumberActive conferencessrc/core/MultiLineManager.ts:167
parkedCallsnumberParked callssrc/core/MultiLineManager.ts:169
totalCallsHandlednumberTotal calls handledsrc/core/MultiLineManager.ts:171

SipClientState

Defined in: src/core/SipClient.ts:106

SIP Client state

Properties

PropertyTypeDescriptionDefined in
connectionStateConnectionStateCurrent connection statesrc/core/SipClient.ts:108
registrationStateRegistrationStateCurrent registration statesrc/core/SipClient.ts:110
registeredUri?stringRegistered SIP URIsrc/core/SipClient.ts:112
registrationExpiry?numberRegistration expiry time in secondssrc/core/SipClient.ts:114
lastRegistrationTime?DateLast registration timestampsrc/core/SipClient.ts:116

TransportConfig

Defined in: src/core/TransportManager.ts:27

Transport configuration options

Properties

PropertyTypeDescriptionDefined in
urlstringWebSocket server URLsrc/core/TransportManager.ts:29
protocols?string | string[]WebSocket protocolssrc/core/TransportManager.ts:31
connectionTimeout?numberConnection timeout in milliseconds (default: 10000)src/core/TransportManager.ts:33
maxReconnectionAttempts?numberMaximum reconnection attempts (default: 5)src/core/TransportManager.ts:35
initialReconnectionDelay?numberInitial reconnection delay in milliseconds (default: 2000)src/core/TransportManager.ts:37
keepAliveInterval?numberKeep-alive interval in milliseconds (default: 30000)src/core/TransportManager.ts:39
keepAliveType?"options" | "crlf"Keep-alive type: 'crlf' or 'options' (default: 'crlf')src/core/TransportManager.ts:41
autoReconnect?booleanEnable automatic reconnection (default: true)src/core/TransportManager.ts:43

TransportEventData

Defined in: src/core/TransportManager.ts:49

Transport event data types

Properties

PropertyTypeDefined in
state?ConnectionStatesrc/core/TransportManager.ts:50
attempt?numbersrc/core/TransportManager.ts:51
data?string | Blob | ArrayBuffersrc/core/TransportManager.ts:52

OAuth2ServiceReturn

Defined in: src/services/OAuth2Service.ts:313

OAuth2 service return type (for composable)

Extends

Properties

PropertyTypeDescriptionInherited fromDefined in
configOAuth2ServiceConfigService configuration-src/services/OAuth2Service.ts:315
storageTokenStorageManagerStorage manager-src/services/OAuth2Service.ts:317
initialize() => Promise<void>Initialize service (restore from storage)-src/services/OAuth2Service.ts:319
authStateRef<OAuth2AuthState, OAuth2AuthState>Current authentication stateUseOAuth2Return.authStatesrc/types/oauth.types.ts:325
isAuthenticatedComputedRef<boolean>Whether user is authenticatedUseOAuth2Return.isAuthenticatedsrc/types/oauth.types.ts:327
errorRef<OAuth2Error | null, OAuth2Error | null>Current error (null if none)UseOAuth2Return.errorsrc/types/oauth.types.ts:329
userInfoRef<OAuth2UserInfo | null, OAuth2UserInfo | null>Current OAuth2 user infoUseOAuth2Return.userInfosrc/types/oauth.types.ts:331
sipCredentialsRef< | ProvisionedSipCredentials | null, | ProvisionedSipCredentials | null>Provisioned SIP credentialsUseOAuth2Return.sipCredentialssrc/types/oauth.types.ts:333
tokensRef<OAuth2TokenResponse | null, OAuth2TokenResponse | null>Current OAuth2 tokensUseOAuth2Return.tokenssrc/types/oauth.types.ts:335
tokenExpiresAtRef<Date | null, Date | null>Token expiration timestampUseOAuth2Return.tokenExpiresAtsrc/types/oauth.types.ts:337
isRefreshingRef<boolean, boolean>Whether token refresh is in progressUseOAuth2Return.isRefreshingsrc/types/oauth.types.ts:339
login(options?) => Promise<void>Initiate OAuth2 login flowUseOAuth2Return.loginsrc/types/oauth.types.ts:343
handleCallback(url?) => Promise<ProvisionedSipCredentials>Handle OAuth2 callback (after redirect)UseOAuth2Return.handleCallbacksrc/types/oauth.types.ts:345
logout() => Promise<void>Logout and revoke tokensUseOAuth2Return.logoutsrc/types/oauth.types.ts:347
refreshTokens() => Promise<OAuth2TokenResponse>Manually refresh tokensUseOAuth2Return.refreshTokenssrc/types/oauth.types.ts:349
getAccessToken() => Promise<string>Get current access token (auto-refresh if needed)UseOAuth2Return.getAccessTokensrc/types/oauth.types.ts:351
isTokenExpired() => booleanCheck if tokens are expiredUseOAuth2Return.isTokenExpiredsrc/types/oauth.types.ts:353
clearAuth() => voidClear stored auth dataUseOAuth2Return.clearAuthsrc/types/oauth.types.ts:355

BasePersistenceManager

Defined in: src/stores/persistence.ts:41

Base persistence manager interface for storing in collections

Methods

load()
ts
load(): Promise<void>;

Defined in: src/stores/persistence.ts:42

Returns

Promise<void>

save()
ts
save(): Promise<void>;

Defined in: src/stores/persistence.ts:43

Returns

Promise<void>

clear()
ts
clear(): Promise<void>;

Defined in: src/stores/persistence.ts:44

Returns

Promise<void>

destroy()
ts
destroy(): void;

Defined in: src/stores/persistence.ts:45

Returns

void


SpeechRecognitionAPI

Defined in: src/transcription/providers/web-speech.ts:21

SpeechRecognition API interface Represents the Web Speech API's SpeechRecognition interface

Properties

PropertyTypeDefined in
langstringsrc/transcription/providers/web-speech.ts:22
continuousbooleansrc/transcription/providers/web-speech.ts:23
interimResultsbooleansrc/transcription/providers/web-speech.ts:24
onresult(event) => void | nullsrc/transcription/providers/web-speech.ts:25
onerror(event) => void | nullsrc/transcription/providers/web-speech.ts:26
onend() => void | nullsrc/transcription/providers/web-speech.ts:27

Methods

start()
ts
start(): void;

Defined in: src/transcription/providers/web-speech.ts:28

Returns

void

stop()
ts
stop(): void;

Defined in: src/transcription/providers/web-speech.ts:29

Returns

void

abort()
ts
abort(): void;

Defined in: src/transcription/providers/web-speech.ts:30

Returns

void


SpeechRecognitionResultEvent

Defined in: src/transcription/providers/web-speech.ts:43

Web Speech API result event type

Properties

PropertyTypeDefined in
resultIndexnumbersrc/transcription/providers/web-speech.ts:44
resultsSpeechRecognitionResultListsrc/transcription/providers/web-speech.ts:45

AgentQueueMembership

Defined in: src/types/agent.types.ts:20

Queue membership state for an agent

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/agent.types.ts:22
interfacestringAgent interface (e.g., PJSIP/1001)src/types/agent.types.ts:25
isMemberbooleanWhether agent is currently a member of this queuesrc/types/agent.types.ts:28
isPausedbooleanWhether agent is paused in this queuesrc/types/agent.types.ts:31
pauseReason?stringPause reason if pausedsrc/types/agent.types.ts:34
penaltynumberAgent penalty in this queuesrc/types/agent.types.ts:37
callsTakennumberNumber of calls taken in this queuesrc/types/agent.types.ts:40
lastCallnumberTimestamp of last call in this queue (Unix time)src/types/agent.types.ts:43
loginTimenumberLogin timestamp for this queue (Unix time)src/types/agent.types.ts:46
inCallbooleanWhether agent is currently on a call from this queuesrc/types/agent.types.ts:49

AgentSession

Defined in: src/types/agent.types.ts:55

Agent session information

Properties

PropertyTypeDescriptionDefined in
agentIdstringAgent identifiersrc/types/agent.types.ts:57
interfacestringAgent interface (e.g., PJSIP/1001)src/types/agent.types.ts:60
namestringDisplay namesrc/types/agent.types.ts:63
statusAgentLoginStatusCurrent login statussrc/types/agent.types.ts:66
queuesAgentQueueMembership[]Queues the agent is logged intosrc/types/agent.types.ts:69
loginTimeDate | nullOverall login time (first queue login)src/types/agent.types.ts:72
sessionDurationnumberSession duration in secondssrc/types/agent.types.ts:75
totalCallsHandlednumberTotal calls handled this sessionsrc/types/agent.types.ts:78
totalTalkTimenumberTotal talk time this session (seconds)src/types/agent.types.ts:81
isPausedbooleanWhether agent is globally pausedsrc/types/agent.types.ts:84
pauseReason?stringGlobal pause reasonsrc/types/agent.types.ts:87
shiftStart?DateShift start time (if configured)src/types/agent.types.ts:90
shiftEnd?DateShift end time (if configured)src/types/agent.types.ts:93
isOnShiftbooleanWhether agent is within shift hourssrc/types/agent.types.ts:96
serverId?numberServer ID for multi-server setupssrc/types/agent.types.ts:99

ShiftConfig

Defined in: src/types/agent.types.ts:119

Shift configuration

Properties

PropertyTypeDescriptionDefined in
startHournumberShift start hour (0-23)src/types/agent.types.ts:121
startMinutenumberShift start minute (0-59)src/types/agent.types.ts:124
endHournumberShift end hour (0-23)src/types/agent.types.ts:127
endMinutenumberShift end minute (0-59)src/types/agent.types.ts:130
daysOfWeeknumber[]Days of week (0=Sunday, 6=Saturday)src/types/agent.types.ts:133
timezone?stringTimezone (IANA format, e.g., 'America/New_York')src/types/agent.types.ts:136

AgentLoginOptions

Defined in: src/types/agent.types.ts:142

Agent login options

Properties

PropertyTypeDescriptionDefined in
queuesstring[]Queues to log intosrc/types/agent.types.ts:144
defaultPenalty?numberDefault penalty for all queuessrc/types/agent.types.ts:147
penalties?Record<string, number>Queue-specific penaltiessrc/types/agent.types.ts:150
memberName?stringAgent display namesrc/types/agent.types.ts:153
persist?booleanWhether to persist login state in storagesrc/types/agent.types.ts:156

AgentLogoutOptions

Defined in: src/types/agent.types.ts:162

Agent logout options

Properties

PropertyTypeDescriptionDefined in
queues?string[]Queues to log out from (empty = all queues)src/types/agent.types.ts:164
reason?stringReason for logoutsrc/types/agent.types.ts:167
clearPersistence?booleanWhether to clear persisted statesrc/types/agent.types.ts:170

AgentPauseOptions

Defined in: src/types/agent.types.ts:176

Agent pause options

Properties

PropertyTypeDescriptionDefined in
queues?string[]Queues to pause in (empty = all queues)src/types/agent.types.ts:178
reasonstringPause reasonsrc/types/agent.types.ts:181
duration?numberDuration in seconds (0 = indefinite)src/types/agent.types.ts:184

UseAmiAgentLoginOptions

Defined in: src/types/agent.types.ts:190

Options for useAmiAgentLogin composable

Properties

PropertyTypeDescriptionDefined in
agentIdstringAgent identifiersrc/types/agent.types.ts:192
interfacestringAgent interface (e.g., PJSIP/1001)src/types/agent.types.ts:195
name?stringAgent display namesrc/types/agent.types.ts:198
availableQueues?string[]Available queues for this agentsrc/types/agent.types.ts:201
defaultQueues?string[]Default queues to auto-loginsrc/types/agent.types.ts:204
defaultPenalty?numberDefault penaltysrc/types/agent.types.ts:207
shift?ShiftConfigShift configurationsrc/types/agent.types.ts:210
autoLogoutAfterShift?booleanAuto-logout after shift endsrc/types/agent.types.ts:213
pauseReasons?string[]Available pause reasonssrc/types/agent.types.ts:216
persistState?booleanPersist login state to localStoragesrc/types/agent.types.ts:219
storageKeyPrefix?stringStorage key prefix for persistencesrc/types/agent.types.ts:222
onStatusChange?(status, session) => voidCallback when login status changessrc/types/agent.types.ts:225
onQueueChange?(queue, isMember) => voidCallback when queue membership changessrc/types/agent.types.ts:228
onShiftStart?() => voidCallback when shift startssrc/types/agent.types.ts:231
onShiftEnd?() => voidCallback when shift endssrc/types/agent.types.ts:234
sessionUpdateInterval?numberUpdate session duration interval (ms)src/types/agent.types.ts:237

UseAmiAgentLoginReturn

Defined in: src/types/agent.types.ts:243

Return type for useAmiAgentLogin composable

Properties

PropertyTypeDescriptionDefined in
sessionRef<AgentSession>Current agent sessionsrc/types/agent.types.ts:246
statusComputedRef<AgentLoginStatus>Current login statussrc/types/agent.types.ts:249
isLoggedInComputedRef<boolean>Whether agent is logged in to any queuesrc/types/agent.types.ts:252
isPausedComputedRef<boolean>Whether agent is pausedsrc/types/agent.types.ts:255
isOnCallComputedRef<boolean>Whether agent is on a callsrc/types/agent.types.ts:258
isOnShiftComputedRef<boolean>Whether currently within shift hourssrc/types/agent.types.ts:261
loggedInQueuesComputedRef<string[]>List of queues agent is logged intosrc/types/agent.types.ts:264
sessionDurationFormattedComputedRef<string>Session duration in formatted stringsrc/types/agent.types.ts:267
isLoadingRef<boolean>Loading statesrc/types/agent.types.ts:270
errorRef<string | null>Error message if anysrc/types/agent.types.ts:273
login(options) => Promise<void>Log in to queuessrc/types/agent.types.ts:277
logout(options?) => Promise<void>Log out from queuessrc/types/agent.types.ts:280
pause(options) => Promise<void>Pause in queuessrc/types/agent.types.ts:283
unpause(queues?) => Promise<void>Unpause in queuessrc/types/agent.types.ts:286
toggleQueue(queue, penalty?) => Promise<void>Toggle login state for a queuesrc/types/agent.types.ts:289
setPenalty(queue, penalty) => Promise<void>Set penalty for a queuesrc/types/agent.types.ts:292
refresh() => Promise<void>Refresh session state from AMIsrc/types/agent.types.ts:295
getAvailableQueues() => string[]Get available queuessrc/types/agent.types.ts:298
getPauseReasons() => string[]Get pause reasonssrc/types/agent.types.ts:301
isLoggedIntoQueue(queue) => booleanCheck if logged into specific queuesrc/types/agent.types.ts:304
getQueueMembership(queue) => AgentQueueMembership | nullGet queue membership detailssrc/types/agent.types.ts:307
startSession() => voidStart session timer (for persistence)src/types/agent.types.ts:310
endSession() => Promise<void>End sessionsrc/types/agent.types.ts:313

AgentCallRecord

Defined in: src/types/agentstats.types.ts:30

Individual call record for agent

Properties

PropertyTypeDescriptionDefined in
callIdstringUnique call identifiersrc/types/agentstats.types.ts:32
queue?stringQueue name (for inbound)src/types/agentstats.types.ts:35
remotePartystringCaller/callee identifiersrc/types/agentstats.types.ts:38
directionAgentCallDirectionCall directionsrc/types/agentstats.types.ts:41
startTimeDateCall start timestampsrc/types/agentstats.types.ts:44
answerTime?DateCall answer timestampsrc/types/agentstats.types.ts:47
endTime?DateCall end timestampsrc/types/agentstats.types.ts:50
waitTimenumberWait time before answer (seconds) - for queue callssrc/types/agentstats.types.ts:53
talkTimenumberTalk time (seconds)src/types/agentstats.types.ts:56
holdTimenumberHold time during call (seconds)src/types/agentstats.types.ts:59
wrapTimenumberWrap/ACW time after call (seconds)src/types/agentstats.types.ts:62
disposition"answered" | "voicemail" | "missed" | "abandoned" | "transferred"Call dispositionsrc/types/agentstats.types.ts:65
transferredTo?stringTransfer destination if transferredsrc/types/agentstats.types.ts:68
recordedbooleanWhether call was recordedsrc/types/agentstats.types.ts:71
qualityScore?numberCall quality score (MOS) if availablesrc/types/agentstats.types.ts:74
tags?string[]Custom tagssrc/types/agentstats.types.ts:77

HourlyStats

Defined in: src/types/agentstats.types.ts:83

Hourly statistics bucket

Properties

PropertyTypeDescriptionDefined in
hournumberHour (0-23)src/types/agentstats.types.ts:85
callCountnumberNumber of callssrc/types/agentstats.types.ts:88
talkTimenumberTotal talk time (seconds)src/types/agentstats.types.ts:91
avgHandleTimenumberAverage handle time (seconds)src/types/agentstats.types.ts:94
serviceLevelnumberService level percentagesrc/types/agentstats.types.ts:97

AgentQueueStats

Defined in: src/types/agentstats.types.ts:103

Queue-specific agent statistics

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/agentstats.types.ts:105
callsHandlednumberCalls handled from this queuesrc/types/agentstats.types.ts:108
callsMissednumberCalls missed from this queuesrc/types/agentstats.types.ts:111
talkTimenumberTotal talk time in this queue (seconds)src/types/agentstats.types.ts:114
avgHandleTimenumberAverage handle time for this queue (seconds)src/types/agentstats.types.ts:117
avgWaitTimenumberAverage wait time for calls from this queue (seconds)src/types/agentstats.types.ts:120
serviceLevelnumberService level for this queue (percentage)src/types/agentstats.types.ts:123
loginTimenumberTime spent logged into this queue (seconds)src/types/agentstats.types.ts:126
availableTimenumberTime spent available in this queue (seconds)src/types/agentstats.types.ts:129
pausedTimenumberTime spent paused in this queue (seconds)src/types/agentstats.types.ts:132

AgentPerformanceMetrics

Defined in: src/types/agentstats.types.ts:138

Agent performance metrics

Properties

PropertyTypeDescriptionDefined in
callsPerHournumberCalls per hoursrc/types/agentstats.types.ts:140
avgHandleTimenumberAverage handle time (seconds)src/types/agentstats.types.ts:143
avgTalkTimenumberAverage talk time (seconds)src/types/agentstats.types.ts:146
avgWrapTimenumberAverage wrap time (seconds)src/types/agentstats.types.ts:149
avgHoldTimenumberAverage hold time per call (seconds)src/types/agentstats.types.ts:152
fcrRatenumberFirst call resolution rate (percentage)src/types/agentstats.types.ts:155
serviceLevelnumberService level percentage (calls answered within threshold)src/types/agentstats.types.ts:158
occupancynumberOccupancy rate (talk time / logged in time)src/types/agentstats.types.ts:161
utilizationnumberUtilization rate ((talk + wrap) / logged in time)src/types/agentstats.types.ts:164
avgQualityScorenumberAverage quality score (MOS)src/types/agentstats.types.ts:167
transferRatenumberTransfer rate (percentage)src/types/agentstats.types.ts:170
holdRatenumberHold rate (percentage of calls with holds)src/types/agentstats.types.ts:173

AgentStats

Defined in: src/types/agentstats.types.ts:179

Aggregated agent statistics

Properties

PropertyTypeDescriptionDefined in
agentIdstringAgent identifiersrc/types/agentstats.types.ts:181
interfacestringAgent interface (e.g., PJSIP/1001)src/types/agentstats.types.ts:184
namestringAgent display namesrc/types/agentstats.types.ts:187
periodAgentStatsPeriodStatistics periodsrc/types/agentstats.types.ts:190
periodStartDatePeriod start datesrc/types/agentstats.types.ts:193
periodEndDatePeriod end datesrc/types/agentstats.types.ts:196
totalCallsnumberTotal calls handledsrc/types/agentstats.types.ts:199
inboundCallsnumberInbound callssrc/types/agentstats.types.ts:202
outboundCallsnumberOutbound callssrc/types/agentstats.types.ts:205
internalCallsnumberInternal callssrc/types/agentstats.types.ts:208
missedCallsnumberMissed callssrc/types/agentstats.types.ts:211
transferredCallsnumberTransferred callssrc/types/agentstats.types.ts:214
voicemailCallsnumberCalls sent to voicemailsrc/types/agentstats.types.ts:217
totalTalkTimenumberTotal talk time (seconds)src/types/agentstats.types.ts:220
totalHoldTimenumberTotal hold time (seconds)src/types/agentstats.types.ts:223
totalWrapTimenumberTotal wrap/ACW time (seconds)src/types/agentstats.types.ts:226
totalHandleTimenumberTotal handle time (talk + hold + wrap) (seconds)src/types/agentstats.types.ts:229
totalLoginTimenumberTotal login time (seconds)src/types/agentstats.types.ts:232
totalAvailableTimenumberTotal available time (seconds)src/types/agentstats.types.ts:235
totalPausedTimenumberTotal paused time (seconds)src/types/agentstats.types.ts:238
totalOnCallTimenumberTotal on-call time (seconds)src/types/agentstats.types.ts:241
performanceAgentPerformanceMetricsPerformance metricssrc/types/agentstats.types.ts:244
queueStatsAgentQueueStats[]Per-queue statisticssrc/types/agentstats.types.ts:247
hourlyStatsHourlyStats[]Hourly breakdown (24 hours)src/types/agentstats.types.ts:250
recentCallsAgentCallRecord[]Recent call recordssrc/types/agentstats.types.ts:253
performanceLevelAgentPerformanceLevelPerformance level assessmentsrc/types/agentstats.types.ts:256
lastUpdatedDateLast updated timestampsrc/types/agentstats.types.ts:259

AgentStatsComparison

Defined in: src/types/agentstats.types.ts:265

Agent statistics comparison

Properties

PropertyTypeDescriptionDefined in
agentAgentStatsAgent being comparedsrc/types/agentstats.types.ts:267
teamAverageAgentPerformanceMetricsTeam/queue average for comparisonsrc/types/agentstats.types.ts:270
percentileRanknumberPercentile rank (0-100)src/types/agentstats.types.ts:273
strengthsstring[]Areas where agent excelssrc/types/agentstats.types.ts:276
improvementAreasstring[]Areas for improvementsrc/types/agentstats.types.ts:279

StatsThreshold

Defined in: src/types/agentstats.types.ts:285

Statistics threshold for alerts

Properties

PropertyTypeDescriptionDefined in
metrickeyof AgentPerformanceMetricsMetric namesrc/types/agentstats.types.ts:287
warningThresholdnumberWarning thresholdsrc/types/agentstats.types.ts:290
criticalThresholdnumberCritical thresholdsrc/types/agentstats.types.ts:293
higherIsBetterbooleanWhether higher is bettersrc/types/agentstats.types.ts:296

StatsAlert

Defined in: src/types/agentstats.types.ts:302

Statistics alert

Properties

PropertyTypeDescriptionDefined in
idstringAlert IDsrc/types/agentstats.types.ts:304
agentIdstringAgent IDsrc/types/agentstats.types.ts:307
metrickeyof AgentPerformanceMetricsMetric that triggered alertsrc/types/agentstats.types.ts:310
currentValuenumberCurrent valuesrc/types/agentstats.types.ts:313
thresholdValuenumberThreshold valuesrc/types/agentstats.types.ts:316
level"critical" | "warning"Alert levelsrc/types/agentstats.types.ts:319
messagestringAlert messagesrc/types/agentstats.types.ts:322
timestampDateAlert timestampsrc/types/agentstats.types.ts:325
acknowledgedbooleanWhether alert has been acknowledgedsrc/types/agentstats.types.ts:328

UseAmiAgentStatsOptions

Defined in: src/types/agentstats.types.ts:334

Options for useAmiAgentStats composable

Properties

PropertyTypeDescriptionDefined in
agentId?stringAgent ID to track (optional, track all if not specified)src/types/agentstats.types.ts:336
interfacePattern?stringAgent interface pattern to track (e.g., 'PJSIP/*')src/types/agentstats.types.ts:339
queues?string[]Queues to track (optional, all queues if not specified)src/types/agentstats.types.ts:342
period?AgentStatsPeriodStatistics periodsrc/types/agentstats.types.ts:345
customStart?DateCustom period start (for period='custom')src/types/agentstats.types.ts:348
customEnd?DateCustom period end (for period='custom')src/types/agentstats.types.ts:351
serviceLevelThreshold?numberService level threshold in seconds (default: 20)src/types/agentstats.types.ts:354
maxRecentCalls?numberMaximum recent calls to keep (default: 50)src/types/agentstats.types.ts:357
refreshInterval?numberStats refresh interval in ms (default: 30000)src/types/agentstats.types.ts:360
realTimeUpdates?booleanEnable real-time updates via AMI eventssrc/types/agentstats.types.ts:363
thresholds?StatsThreshold[]Performance thresholds for alertssrc/types/agentstats.types.ts:366
onStatsUpdate?(stats) => voidCallback when stats are updatedsrc/types/agentstats.types.ts:369
onAlert?(alert) => voidCallback when alert is triggeredsrc/types/agentstats.types.ts:372
onError?(error) => voidCallback on errorsrc/types/agentstats.types.ts:375
persist?booleanPersist stats to localStoragesrc/types/agentstats.types.ts:378
storageKey?stringStorage key for persistencesrc/types/agentstats.types.ts:381

UseAmiAgentStatsReturn

Defined in: src/types/agentstats.types.ts:387

Return type for useAmiAgentStats composable

Properties

PropertyTypeDescriptionDefined in
statsRef<AgentStats | null>Current agent statisticssrc/types/agentstats.types.ts:390
allAgentStatsRef<Map<string, AgentStats>>All tracked agents statistics (when tracking multiple)src/types/agentstats.types.ts:393
alertsRef<StatsAlert[]>Active alertssrc/types/agentstats.types.ts:396
isLoadingRef<boolean>Loading statesrc/types/agentstats.types.ts:399
errorRef<string | null>Error messagesrc/types/agentstats.types.ts:402
isTrackingRef<boolean>Whether real-time tracking is activesrc/types/agentstats.types.ts:405
performanceLevelComputedRef<AgentPerformanceLevel | null>Current performance levelsrc/types/agentstats.types.ts:409
callsPerHourComputedRef<number>Calls per hour (current)src/types/agentstats.types.ts:412
avgHandleTimeComputedRef<number>Average handle timesrc/types/agentstats.types.ts:415
serviceLevelComputedRef<number>Service level percentagesrc/types/agentstats.types.ts:418
occupancyComputedRef<number>Occupancy ratesrc/types/agentstats.types.ts:421
utilizationComputedRef<number>Utilization ratesrc/types/agentstats.types.ts:424
formattedTalkTimeComputedRef<string>Formatted talk time (HH:MM:SS)src/types/agentstats.types.ts:427
formattedLoginTimeComputedRef<string>Formatted login time (HH:MM:SS)src/types/agentstats.types.ts:430
alertCountComputedRef<number>Unacknowledged alerts countsrc/types/agentstats.types.ts:433
topQueuesComputedRef<AgentQueueStats[]>Top performing queues for agentsrc/types/agentstats.types.ts:436
peakHoursComputedRef<number[]>Peak hours based on call volumesrc/types/agentstats.types.ts:439
startTracking() => voidStart tracking agent statisticssrc/types/agentstats.types.ts:443
stopTracking() => voidStop tracking agent statisticssrc/types/agentstats.types.ts:446
refresh() => Promise<void>Refresh statistics from AMIsrc/types/agentstats.types.ts:449
setPeriod(period, customStart?, customEnd?) => voidSet statistics periodsrc/types/agentstats.types.ts:452
getAgentStats(agentId) => AgentStats | nullGet statistics for specific agentsrc/types/agentstats.types.ts:455
compareToTeam(agentId?) => AgentStatsComparison | nullCompare agent to team averagesrc/types/agentstats.types.ts:458
getCallHistory(agentId?, limit?) => AgentCallRecord[]Get call history for agentsrc/types/agentstats.types.ts:461
getHourlyBreakdown(agentId?) => HourlyStats[]Get hourly breakdownsrc/types/agentstats.types.ts:464
getQueueStats(agentId?, queue?) => AgentQueueStats[]Get queue-specific statssrc/types/agentstats.types.ts:467
exportCsv(agentId?) => stringExport statistics as CSVsrc/types/agentstats.types.ts:470
exportJson(agentId?) => stringExport statistics as JSONsrc/types/agentstats.types.ts:473
acknowledgeAlert(alertId) => voidAcknowledge an alertsrc/types/agentstats.types.ts:476
acknowledgeAllAlerts() => voidAcknowledge all alertssrc/types/agentstats.types.ts:479
clearHistory(agentId?) => voidClear old call recordssrc/types/agentstats.types.ts:482
resetStats(agentId?) => voidReset statistics for current periodsrc/types/agentstats.types.ts:485
recordCall(call) => voidRegister a call completion (for manual tracking)src/types/agentstats.types.ts:488
recordWrapTime(callId, wrapTime) => voidUpdate wrap time for last callsrc/types/agentstats.types.ts:491

AmiConfig

Defined in: src/types/ami.types.ts:10

AMI WebSocket connection configuration

Properties

PropertyTypeDescriptionDefined in
urlstringWebSocket URL to amiws proxy (e.g., 'ws://pbx.example.com:8080')src/types/ami.types.ts:12
autoReconnect?booleanAuto-reconnect on disconnect (default: true)src/types/ami.types.ts:14
reconnectDelay?numberReconnect delay in ms (default: 3000)src/types/ami.types.ts:16
maxReconnectAttempts?numberMax reconnect attempts (default: 5, 0 = infinite)src/types/ami.types.ts:18
connectionTimeout?numberConnection timeout in ms (default: 10000)src/types/ami.types.ts:20

AmiAction

Defined in: src/types/ami.types.ts:46

Base AMI action (sent to server)

Indexable

ts
[key: string]: string | number | string[] | undefined

Additional action parameters

Properties

PropertyTypeDescriptionDefined in
ActionstringAMI action namesrc/types/ami.types.ts:48
ActionID?stringOptional action ID for tracking responsessrc/types/ami.types.ts:50
AMIServerID?numberTarget specific AMI server (for multi-server setups)src/types/ami.types.ts:52

AmiMessage

Defined in: src/types/ami.types.ts:60

AMI message wrapper from amiws

Type Parameters

Type ParameterDefault type
TRecord<string, string>

Properties

PropertyTypeDescriptionDefined in
typeAmiMessageTypeMessage type (see AmiMessageType)src/types/ami.types.ts:62
server_idnumberServer ID in multi-server setupsrc/types/ami.types.ts:64
server_namestringServer hostnamesrc/types/ami.types.ts:66
sslbooleanWhether SSL is enabledsrc/types/ami.types.ts:68
dataTAMI event/response datasrc/types/ami.types.ts:70

AmiResponseData

Defined in: src/types/ami.types.ts:76

AMI Response data

Indexable

ts
[key: string]: string | undefined

Additional response fields

Properties

PropertyTypeDescriptionDefined in
ResponsestringResponse status (Success, Error, etc.)src/types/ami.types.ts:78
ActionID?stringAction ID if providedsrc/types/ami.types.ts:80
Message?stringError message if failedsrc/types/ami.types.ts:82

AmiEventData

Defined in: src/types/ami.types.ts:90

AMI Event data

Extended by

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionDefined in
EventstringEvent namesrc/types/ami.types.ts:92

AmiPresenceStateChangeEvent

Defined in: src/types/ami.types.ts:112

Presence state change event

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"PresenceStateChange"Event nameAmiEventData.Eventsrc/types/ami.types.ts:113
PresentitystringPresence provider (e.g., CustomPresence:1000)-src/types/ami.types.ts:115
StatestringNew state-src/types/ami.types.ts:117
Subtype?stringSubtype-src/types/ami.types.ts:119
Message?stringCustom message-src/types/ami.types.ts:121

AmiClientEvents

Defined in: src/types/ami.types.ts:155

AMI client events

Properties

PropertyTypeDefined in
connected() => voidsrc/types/ami.types.ts:156
disconnected(reason?) => voidsrc/types/ami.types.ts:157
error(error) => voidsrc/types/ami.types.ts:158
message(message) => voidsrc/types/ami.types.ts:159
event(event) => voidsrc/types/ami.types.ts:160
response(response) => voidsrc/types/ami.types.ts:161
presenceChange(event) => voidsrc/types/ami.types.ts:162
queueMemberStatus(event) => voidsrc/types/ami.types.ts:164
queueMemberAdded(event) => voidsrc/types/ami.types.ts:165
queueMemberRemoved(event) => voidsrc/types/ami.types.ts:166
queueMemberPause(event) => voidsrc/types/ami.types.ts:167
queueCallerJoin(event) => voidsrc/types/ami.types.ts:168
queueCallerLeave(event) => voidsrc/types/ami.types.ts:169
queueCallerAbandon(event) => voidsrc/types/ami.types.ts:170
newChannel(event) => voidsrc/types/ami.types.ts:172
hangup(event) => voidsrc/types/ami.types.ts:173
newState(event) => voidsrc/types/ami.types.ts:174
peerStatus(event) => voidsrc/types/ami.types.ts:176

QueueInfo

Defined in: src/types/ami.types.ts:227

Queue information from QueueParams event

Properties

PropertyTypeDescriptionDefined in
namestringQueue namesrc/types/ami.types.ts:229
strategystringQueue strategy (ringall, leastrecent, fewestcalls, etc.)src/types/ami.types.ts:231
callsnumberNumber of calls waitingsrc/types/ami.types.ts:233
holdtimenumberAverage hold time in secondssrc/types/ami.types.ts:235
talktimenumberAverage talk time in secondssrc/types/ami.types.ts:237
completednumberCompleted callssrc/types/ami.types.ts:239
abandonednumberAbandoned callssrc/types/ami.types.ts:241
serviceLevelPerfnumberService level performance (percentage)src/types/ami.types.ts:243
serviceLevelPerf2numberSecondary service level performancesrc/types/ami.types.ts:245
weightnumberQueue weightsrc/types/ami.types.ts:247
membersQueueMember[]Queue memberssrc/types/ami.types.ts:249
entriesQueueEntry[]Callers waiting in queuesrc/types/ami.types.ts:251
serverId?numberServer ID (for multi-server)src/types/ami.types.ts:253
lastUpdatedDateLast updated timestampsrc/types/ami.types.ts:255

QueueMember

Defined in: src/types/ami.types.ts:261

Queue member information

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/ami.types.ts:263
namestringMember namesrc/types/ami.types.ts:265
interfacestringMember interface (e.g., SIP/1001)src/types/ami.types.ts:267
stateInterfacestringState interface for device statesrc/types/ami.types.ts:269
membership"static" | "dynamic" | "realtime"Membership typesrc/types/ami.types.ts:271
penaltynumberPenalty (lower = higher priority)src/types/ami.types.ts:273
callsTakennumberCalls takensrc/types/ami.types.ts:275
lastCallnumberLast call timestamp (Unix epoch seconds, 0 if never)src/types/ami.types.ts:277
lastPausenumberLast pause timestamp (Unix epoch seconds, 0 if never)src/types/ami.types.ts:279
loginTimenumberLogin time (Unix epoch seconds, 0 if not logged in)src/types/ami.types.ts:281
inCallbooleanWhether currently in a callsrc/types/ami.types.ts:283
statusQueueMemberStatusCurrent status codesrc/types/ami.types.ts:285
statusLabelstringHuman-readable statussrc/types/ami.types.ts:287
pausedbooleanWhether pausedsrc/types/ami.types.ts:289
pausedReason?stringPause reason if pausedsrc/types/ami.types.ts:291
wrapupTime?numberWrapup time in secondssrc/types/ami.types.ts:293
ringinusebooleanRing in use flagsrc/types/ami.types.ts:295
serverId?numberServer ID (for multi-server)src/types/ami.types.ts:297

QueueEntry

Defined in: src/types/ami.types.ts:303

Queue entry (caller waiting)

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/ami.types.ts:305
positionnumberPosition in queue (1-based)src/types/ami.types.ts:307
channelstringChannel namesrc/types/ami.types.ts:309
uniqueIdstringUnique IDsrc/types/ami.types.ts:311
linkedId?stringLinked ID (optional, may not be present in join events)src/types/ami.types.ts:313
callerIdNumstringCaller ID numbersrc/types/ami.types.ts:315
callerIdNamestringCaller ID namesrc/types/ami.types.ts:317
connectedLineNumstringConnected line numbersrc/types/ami.types.ts:319
connectedLineNamestringConnected line namesrc/types/ami.types.ts:321
waitnumberWait time in secondssrc/types/ami.types.ts:323
prioritynumberPrioritysrc/types/ami.types.ts:325
serverId?numberServer ID (for multi-server)src/types/ami.types.ts:327
joinTime?DateJoin timestamp (optional)src/types/ami.types.ts:329

QueueSummary

Defined in: src/types/ami.types.ts:335

Queue summary (from QueueSummary action)

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/ami.types.ts:337
loggedInnumberLogged in agentssrc/types/ami.types.ts:339
availablenumberAvailable agentssrc/types/ami.types.ts:341
callersnumberCallers waitingsrc/types/ami.types.ts:343
holdtimenumberHold timesrc/types/ami.types.ts:345
talktimenumberTalk timesrc/types/ami.types.ts:347
longestHoldTimenumberLongest hold timesrc/types/ami.types.ts:349

AmiQueueMemberEvent

Defined in: src/types/ami.types.ts:370

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueMember"Event nameAmiEventData.Eventsrc/types/ami.types.ts:371
Queuestring--src/types/ami.types.ts:372
Namestring--src/types/ami.types.ts:373
Locationstring--src/types/ami.types.ts:374
StateInterfacestring--src/types/ami.types.ts:375
Membershipstring--src/types/ami.types.ts:376
Penaltystring--src/types/ami.types.ts:377
CallsTakenstring--src/types/ami.types.ts:378
LastCallstring--src/types/ami.types.ts:379
LastPausestring--src/types/ami.types.ts:380
LoginTimestring--src/types/ami.types.ts:381
InCallstring--src/types/ami.types.ts:382
Statusstring--src/types/ami.types.ts:383
Pausedstring--src/types/ami.types.ts:384
PausedReason?string--src/types/ami.types.ts:385
Ringinusestring--src/types/ami.types.ts:386

AmiQueueEntryEvent

Defined in: src/types/ami.types.ts:389

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueEntry"Event nameAmiEventData.Eventsrc/types/ami.types.ts:390
Queuestring--src/types/ami.types.ts:391
Positionstring--src/types/ami.types.ts:392
Channelstring--src/types/ami.types.ts:393
Uniqueidstring--src/types/ami.types.ts:394
Linkedidstring--src/types/ami.types.ts:395
CallerIDNumstring--src/types/ami.types.ts:396
CallerIDNamestring--src/types/ami.types.ts:397
ConnectedLineNumstring--src/types/ami.types.ts:398
ConnectedLineNamestring--src/types/ami.types.ts:399
Waitstring--src/types/ami.types.ts:400
Prioritystring--src/types/ami.types.ts:401

AmiQueueMemberStatusEvent

Defined in: src/types/ami.types.ts:404

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueMemberStatus"Event nameAmiEventData.Eventsrc/types/ami.types.ts:405
Queuestring--src/types/ami.types.ts:406
MemberNamestring--src/types/ami.types.ts:407
Interfacestring--src/types/ami.types.ts:408
StateInterfacestring--src/types/ami.types.ts:409
Membershipstring--src/types/ami.types.ts:410
Penaltystring--src/types/ami.types.ts:411
CallsTakenstring--src/types/ami.types.ts:412
LastCallstring--src/types/ami.types.ts:413
LastPausestring--src/types/ami.types.ts:414
LoginTimestring--src/types/ami.types.ts:415
InCallstring--src/types/ami.types.ts:416
Statusstring--src/types/ami.types.ts:417
Pausedstring--src/types/ami.types.ts:418
PausedReason?string--src/types/ami.types.ts:419
Ringinusestring--src/types/ami.types.ts:420

AmiQueueCallerJoinEvent

Defined in: src/types/ami.types.ts:423

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueCallerJoin"Event nameAmiEventData.Eventsrc/types/ami.types.ts:424
Queuestring--src/types/ami.types.ts:425
Positionstring--src/types/ami.types.ts:426
Channelstring--src/types/ami.types.ts:427
Uniqueidstring--src/types/ami.types.ts:428
CallerIDNumstring--src/types/ami.types.ts:429
CallerIDNamestring--src/types/ami.types.ts:430
ConnectedLineNumstring--src/types/ami.types.ts:431
ConnectedLineNamestring--src/types/ami.types.ts:432

AmiQueueCallerLeaveEvent

Defined in: src/types/ami.types.ts:435

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueCallerLeave"Event nameAmiEventData.Eventsrc/types/ami.types.ts:436
Queuestring--src/types/ami.types.ts:437
Positionstring--src/types/ami.types.ts:438
Channelstring--src/types/ami.types.ts:439
Uniqueidstring--src/types/ami.types.ts:440
CallerIDNumstring--src/types/ami.types.ts:441
CallerIDNamestring--src/types/ami.types.ts:442
ConnectedLineNumstring--src/types/ami.types.ts:443
ConnectedLineNamestring--src/types/ami.types.ts:444
Countstring--src/types/ami.types.ts:445

AmiQueueCallerAbandonEvent

Defined in: src/types/ami.types.ts:448

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"QueueCallerAbandon"Event nameAmiEventData.Eventsrc/types/ami.types.ts:449
Queuestring--src/types/ami.types.ts:450
Positionstring--src/types/ami.types.ts:451
OriginalPositionstring--src/types/ami.types.ts:452
HoldTimestring--src/types/ami.types.ts:453
Channelstring--src/types/ami.types.ts:454
Uniqueidstring--src/types/ami.types.ts:455

ChannelInfo

Defined in: src/types/ami.types.ts:499

Channel information

Properties

PropertyTypeDescriptionDefined in
channelstringChannel name (e.g., PJSIP/1001-00000001)src/types/ami.types.ts:501
uniqueIdstringUnique IDsrc/types/ami.types.ts:503
linkedIdstringLinked IDsrc/types/ami.types.ts:505
contextstringDialplan contextsrc/types/ami.types.ts:507
extenstringExtensionsrc/types/ami.types.ts:509
prioritynumberPrioritysrc/types/ami.types.ts:511
stateChannelStateChannel state (numeric)src/types/ami.types.ts:513
channelStateChannelStateChannel state (numeric) - alias for compatibilitysrc/types/ami.types.ts:515
stateDescstringState descriptionsrc/types/ami.types.ts:517
channelStateDescstringChannel state description - alias for compatibilitysrc/types/ami.types.ts:519
callerIdNumstringCaller ID numbersrc/types/ami.types.ts:521
callerIdNamestringCaller ID namesrc/types/ami.types.ts:523
connectedLineNumstringConnected line numbersrc/types/ami.types.ts:525
connectedLineNamestringConnected line namesrc/types/ami.types.ts:527
accountCodestringAccount codesrc/types/ami.types.ts:529
application?stringCurrent applicationsrc/types/ami.types.ts:531
applicationData?stringApplication datasrc/types/ami.types.ts:533
durationstring | numberDuration (can be number or string "HH:MM:SS" depending on source)src/types/ami.types.ts:535
bridgedChannel?stringBridged to channelsrc/types/ami.types.ts:537
bridgeId?stringBridge IDsrc/types/ami.types.ts:539
serverId?numberServer ID (for multi-server)src/types/ami.types.ts:541
createdAtDateCreated timestampsrc/types/ami.types.ts:543

OriginateOptions

Defined in: src/types/ami.types.ts:549

Originate options

Properties

PropertyTypeDescriptionDefined in
channelstringChannel to call first (e.g., PJSIP/1001)src/types/ami.types.ts:551
exten?stringExtension to dial after answer (for agent-first flow)src/types/ami.types.ts:553
context?stringDialplan contextsrc/types/ami.types.ts:555
priority?numberDialplan prioritysrc/types/ami.types.ts:557
application?stringApplication to run instead of extensionsrc/types/ami.types.ts:559
data?stringApplication datasrc/types/ami.types.ts:561
callerId?stringCaller IDsrc/types/ami.types.ts:563
timeout?numberTimeout in millisecondssrc/types/ami.types.ts:565
variables?Record<string, string>Channel variablessrc/types/ami.types.ts:567
account?stringAccount codesrc/types/ami.types.ts:569
async?booleanAsync originatesrc/types/ami.types.ts:571
earlyMedia?booleanEarly mediasrc/types/ami.types.ts:573
codecs?stringCodecssrc/types/ami.types.ts:575

OriginateResult

Defined in: src/types/ami.types.ts:581

Originate result

Properties

PropertyTypeDescriptionDefined in
successbooleanWhether originate was successfulsrc/types/ami.types.ts:583
channel?stringChannel name if successfulsrc/types/ami.types.ts:585
uniqueId?stringUnique IDsrc/types/ami.types.ts:587
message?stringError message if failedsrc/types/ami.types.ts:589
responsestringResponse codesrc/types/ami.types.ts:591

AmiNewChannelEvent

Defined in: src/types/ami.types.ts:596

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"Newchannel"Event nameAmiEventData.Eventsrc/types/ami.types.ts:597
Channelstring--src/types/ami.types.ts:598
ChannelStatestring--src/types/ami.types.ts:599
ChannelStateDescstring--src/types/ami.types.ts:600
CallerIDNumstring--src/types/ami.types.ts:601
CallerIDNamestring--src/types/ami.types.ts:602
ConnectedLineNumstring--src/types/ami.types.ts:603
ConnectedLineNamestring--src/types/ami.types.ts:604
AccountCodestring--src/types/ami.types.ts:605
Contextstring--src/types/ami.types.ts:606
Extenstring--src/types/ami.types.ts:607
Prioritystring--src/types/ami.types.ts:608
Uniqueidstring--src/types/ami.types.ts:609
Linkedidstring--src/types/ami.types.ts:610

AmiHangupEvent

Defined in: src/types/ami.types.ts:613

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"Hangup"Event nameAmiEventData.Eventsrc/types/ami.types.ts:614
Channelstring--src/types/ami.types.ts:615
ChannelStatestring--src/types/ami.types.ts:616
ChannelStateDescstring--src/types/ami.types.ts:617
CallerIDNumstring--src/types/ami.types.ts:618
CallerIDNamestring--src/types/ami.types.ts:619
ConnectedLineNumstring--src/types/ami.types.ts:620
ConnectedLineNamestring--src/types/ami.types.ts:621
AccountCodestring--src/types/ami.types.ts:622
Contextstring--src/types/ami.types.ts:623
Extenstring--src/types/ami.types.ts:624
Prioritystring--src/types/ami.types.ts:625
Uniqueidstring--src/types/ami.types.ts:626
Linkedidstring--src/types/ami.types.ts:627
Causestring--src/types/ami.types.ts:628
Cause-txtstring--src/types/ami.types.ts:629

AmiNewStateEvent

Defined in: src/types/ami.types.ts:632

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"Newstate"Event nameAmiEventData.Eventsrc/types/ami.types.ts:633
Channelstring--src/types/ami.types.ts:634
ChannelStatestring--src/types/ami.types.ts:635
ChannelStateDescstring--src/types/ami.types.ts:636
CallerIDNumstring--src/types/ami.types.ts:637
CallerIDNamestring--src/types/ami.types.ts:638
ConnectedLineNumstring--src/types/ami.types.ts:639
ConnectedLineNamestring--src/types/ami.types.ts:640
Uniqueidstring--src/types/ami.types.ts:641
Linkedidstring--src/types/ami.types.ts:642

AmiCoreShowChannelEvent

Defined in: src/types/ami.types.ts:645

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"CoreShowChannel"Event nameAmiEventData.Eventsrc/types/ami.types.ts:646
Channelstring--src/types/ami.types.ts:647
ChannelStatestring--src/types/ami.types.ts:648
ChannelStateDescstring--src/types/ami.types.ts:649
CallerIDNumstring--src/types/ami.types.ts:650
CallerIDNamestring--src/types/ami.types.ts:651
ConnectedLineNumstring--src/types/ami.types.ts:652
ConnectedLineNamestring--src/types/ami.types.ts:653
AccountCodestring--src/types/ami.types.ts:654
Contextstring--src/types/ami.types.ts:655
Extenstring--src/types/ami.types.ts:656
Prioritystring--src/types/ami.types.ts:657
Uniqueidstring--src/types/ami.types.ts:658
Linkedidstring--src/types/ami.types.ts:659
Applicationstring--src/types/ami.types.ts:660
ApplicationDatastring--src/types/ami.types.ts:661
Durationstring--src/types/ami.types.ts:662
BridgeId?string--src/types/ami.types.ts:663

PeerInfo

Defined in: src/types/ami.types.ts:678

Peer information

Properties

PropertyTypeDescriptionDefined in
objectNamestringObject name / peer namesrc/types/ami.types.ts:680
channelType"SIP" | "PJSIP"Channel type (SIP or PJSIP)src/types/ami.types.ts:682
ipAddressstringIP addresssrc/types/ami.types.ts:684
portnumberIP portsrc/types/ami.types.ts:686
statusPeerStatusStatussrc/types/ami.types.ts:688
latency?numberLatency in ms (if available)src/types/ami.types.ts:690
dynamicbooleanWhether dynamically registeredsrc/types/ami.types.ts:692
forceRPortbooleanForce RPortsrc/types/ami.types.ts:694
comediabooleanComediasrc/types/ami.types.ts:696
aclbooleanACL enabledsrc/types/ami.types.ts:698
autoForcerPortbooleanAuto-force RPortsrc/types/ami.types.ts:700
autoComediabooleanAuto-comediasrc/types/ami.types.ts:702
videoSupportbooleanVideo supportsrc/types/ami.types.ts:704
textSupportbooleanText supportsrc/types/ami.types.ts:706
realtimeDevicebooleanRealtime devicesrc/types/ami.types.ts:708
description?stringDescriptionsrc/types/ami.types.ts:710
serverId?numberServer ID (for multi-server)src/types/ami.types.ts:712
lastSeen?DateLast seensrc/types/ami.types.ts:714

AmiPeerStatusEvent

Defined in: src/types/ami.types.ts:739

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"PeerStatus"Event nameAmiEventData.Eventsrc/types/ami.types.ts:740
ChannelTypestring--src/types/ami.types.ts:741
Peerstring--src/types/ami.types.ts:742
PeerStatusstring--src/types/ami.types.ts:743
Cause?string--src/types/ami.types.ts:744
Address?string--src/types/ami.types.ts:745
Port?string--src/types/ami.types.ts:746
Time?string--src/types/ami.types.ts:747

AmiPeerEntryEvent

Defined in: src/types/ami.types.ts:750

AMI Event data

Extends

Indexable

ts
[key: string]: string | undefined

Additional event fields

Properties

PropertyTypeDescriptionOverridesDefined in
Event"PeerEntry"Event nameAmiEventData.Eventsrc/types/ami.types.ts:751
ChannelTypestring--src/types/ami.types.ts:752
ObjectNamestring--src/types/ami.types.ts:753
ChanObjectTypestring--src/types/ami.types.ts:754
IPaddressstring--src/types/ami.types.ts:755
IPportstring--src/types/ami.types.ts:756
Dynamicstring--src/types/ami.types.ts:757
AutoForcerportstring--src/types/ami.types.ts:758
Forcerportstring--src/types/ami.types.ts:759
AutoComediastring--src/types/ami.types.ts:760
Comediastring--src/types/ami.types.ts:761
VideoSupportstring--src/types/ami.types.ts:762
TextSupportstring--src/types/ami.types.ts:763
ACLstring--src/types/ami.types.ts:764
Statusstring--src/types/ami.types.ts:765
RealtimeDevicestring--src/types/ami.types.ts:766
Description?string--src/types/ami.types.ts:767

AmiContact

Defined in: src/types/ami.types.ts:777

Contact stored in AstDB

Properties

PropertyTypeDescriptionDefined in
idstringUnique IDsrc/types/ami.types.ts:779
namestringContact namesrc/types/ami.types.ts:781
numberstringPhone numbersrc/types/ami.types.ts:783
email?stringEmail addresssrc/types/ami.types.ts:785
company?stringCompany namesrc/types/ami.types.ts:787
groupstringGroup/categorysrc/types/ami.types.ts:789
notes?stringNotessrc/types/ami.types.ts:791
customFields?Record<string, string>Custom fieldssrc/types/ami.types.ts:793
createdAtDateCreated timestampsrc/types/ami.types.ts:795
updatedAtDateUpdated timestampsrc/types/ami.types.ts:797
serverId?numberServer IDsrc/types/ami.types.ts:799

ContactFieldDefinition

Defined in: src/types/ami.types.ts:805

Contact field definition for custom fields

Properties

PropertyTypeDescriptionDefined in
keystringField keysrc/types/ami.types.ts:807
labelstringDisplay labelsrc/types/ami.types.ts:809
type"text" | "select" | "textarea" | "tel" | "email"Input typesrc/types/ami.types.ts:811
required?booleanRequired fieldsrc/types/ami.types.ts:813
defaultValue?stringDefault valuesrc/types/ami.types.ts:815
options?string[]Options for select typesrc/types/ami.types.ts:817

UseAmiQueuesOptions

Defined in: src/types/ami.types.ts:919

Options for useAmiQueues composable

Properties

PropertyTypeDescriptionDefined in
pollInterval?numberPolling interval in ms (0 = events only)src/types/ami.types.ts:921
useEvents?booleanUse real-time eventssrc/types/ami.types.ts:923
autoRefresh?booleanAuto-refresh on reconnectsrc/types/ami.types.ts:925
queueFilter?(queue) => booleanQueue filter functionsrc/types/ami.types.ts:927
memberFilter?(member) => booleanMember filter functionsrc/types/ami.types.ts:929
pauseReasons?string[]Custom pause reasonssrc/types/ami.types.ts:931
statusLabels?Record<number, string>Custom member status labelssrc/types/ami.types.ts:933
onQueueUpdate?(queue) => voidQueue update callbacksrc/types/ami.types.ts:935
onMemberUpdate?(member, queue) => voidMember update callbacksrc/types/ami.types.ts:937
onCallerJoin?(entry, queue) => voidCaller join callbacksrc/types/ami.types.ts:939
onCallerLeave?(entry, queue) => voidCaller leave callbacksrc/types/ami.types.ts:941
onCallerAbandon?(entry, queue) => voidCaller abandon callbacksrc/types/ami.types.ts:943
transformQueue?(queue) => QueueInfoCustom queue transformersrc/types/ami.types.ts:945
transformMember?(member) => QueueMemberCustom member transformersrc/types/ami.types.ts:947

ActiveCall

Defined in: src/types/ami.types.ts:953

Active call representation

Properties

PropertyTypeDescriptionDefined in
uniqueIdstringUnique call identifiersrc/types/ami.types.ts:955
channelstringChannel namesrc/types/ami.types.ts:957
linkedIdstringLinked channel ID (bridged call)src/types/ami.types.ts:959
callerIdNumstringCaller ID numbersrc/types/ami.types.ts:961
callerIdNamestringCaller ID namesrc/types/ami.types.ts:963
connectedLineNumstringConnected line numbersrc/types/ami.types.ts:965
connectedLineNamestringConnected line namesrc/types/ami.types.ts:967
stateChannelStateChannel statesrc/types/ami.types.ts:969
stateDescstringState descriptionsrc/types/ami.types.ts:971
startTimeDateCall start timesrc/types/ami.types.ts:973
durationnumberDuration in secondssrc/types/ami.types.ts:975
application?stringApplication handling the callsrc/types/ami.types.ts:977
serverId?numberServer ID for multi-server setupssrc/types/ami.types.ts:979

UseAmiCallsOptions

Defined in: src/types/ami.types.ts:985

Options for useAmiCalls composable

Properties

PropertyTypeDescriptionDefined in
defaultContext?stringDefault dialplan contextsrc/types/ami.types.ts:987
pollInterval?numberPolling intervalsrc/types/ami.types.ts:989
useEvents?booleanUse eventssrc/types/ami.types.ts:991
agentFirst?booleanAgent-first call flowsrc/types/ami.types.ts:993
dialTimeout?numberDial timeout in mssrc/types/ami.types.ts:995
channelFilter?(channel) => booleanChannel filtersrc/types/ami.types.ts:997
stateLabels?Record<number, string>Custom state labelssrc/types/ami.types.ts:999
onCallStart?(call) => voidCall start callbacksrc/types/ami.types.ts:1001
onCallEnd?(call) => voidCall end callbacksrc/types/ami.types.ts:1003
onCallStateChange?(call, oldState) => voidCall state change callbacksrc/types/ami.types.ts:1005
transformChannel?(channel) => ChannelInfoTransform channel functionsrc/types/ami.types.ts:1007

UseAmiSupervisorOptions

Defined in: src/types/ami.types.ts:1013

Options for useAmiSupervisor composable

Properties

PropertyTypeDescriptionDefined in
supervisorContext?stringDialplan context for supervisorsrc/types/ami.types.ts:1015
dialTimeout?numberDial timeout in mssrc/types/ami.types.ts:1017
chanspyOptions?objectChanSpy mode optionssrc/types/ami.types.ts:1019
chanspyOptions.silentMode?string-src/types/ami.types.ts:1020
chanspyOptions.whisperMode?string-src/types/ami.types.ts:1021
chanspyOptions.bargeMode?string-src/types/ami.types.ts:1022
onSessionStart?(session) => voidSession start callback - receives the full session objectsrc/types/ami.types.ts:1025
onSessionEnd?(session) => voidSession end callback - receives the full session objectsrc/types/ami.types.ts:1034

UseAmiPeersOptions

Defined in: src/types/ami.types.ts:1047

Options for useAmiPeers composable

Properties

PropertyTypeDescriptionDefined in
pollInterval?numberPolling interval in ms (0 = no polling)src/types/ami.types.ts:1049
useEvents?booleanUse real-time eventssrc/types/ami.types.ts:1051
includeSip?booleanInclude SIP peerssrc/types/ami.types.ts:1053
includePjsip?booleanInclude PJSIP peerssrc/types/ami.types.ts:1055
peerFilter?(peer) => booleanPeer filter functionsrc/types/ami.types.ts:1057
onlineStatusPatterns?string[]Patterns that indicate online statussrc/types/ami.types.ts:1059
onPeerUpdate?(peer) => voidPeer update callbacksrc/types/ami.types.ts:1061
transformPeer?(peer) => PeerInfoTransform peer functionsrc/types/ami.types.ts:1063

UseAmiDatabaseOptions

Defined in: src/types/ami.types.ts:1069

Options for useAmiDatabase composable

Properties

PropertyTypeDescriptionDefined in
contactFamily?stringAstDB family for contactssrc/types/ami.types.ts:1071
groups?string[]Default groupssrc/types/ami.types.ts:1073
fields?ContactFieldDefinition[]Contact field definitionssrc/types/ami.types.ts:1075
contactFilter?(contact) => booleanContact filter functionsrc/types/ami.types.ts:1077
onContactSaved?(contact) => voidContact saved callbacksrc/types/ami.types.ts:1079
onContactDeleted?(contact) => voidContact deleted callbacksrc/types/ami.types.ts:1081
transformContact?(contact) => AmiContactTransform contact functionsrc/types/ami.types.ts:1083

AudioDevice

Defined in: src/types/audio.types.ts:9

Audio device information

Properties

PropertyTypeDescriptionDefined in
deviceIdstringUnique device identifiersrc/types/audio.types.ts:11
labelstringHuman-readable device labelsrc/types/audio.types.ts:13
kindMediaDeviceKindDevice kind (audioinput, audiooutput, videoinput)src/types/audio.types.ts:15
groupId?stringGroup identifier for related devicessrc/types/audio.types.ts:17

AudioConstraints

Defined in: src/types/audio.types.ts:23

Audio constraints for media stream configuration

Properties

PropertyTypeDescriptionDefined in
echoCancellation?booleanEnable echo cancellationsrc/types/audio.types.ts:25
noiseSuppression?booleanEnable noise suppressionsrc/types/audio.types.ts:27
autoGainControl?booleanEnable automatic gain controlsrc/types/audio.types.ts:29
sampleRate?numberSample rate in Hzsrc/types/audio.types.ts:31
sampleSize?numberSample size in bitssrc/types/audio.types.ts:33
channelCount?numberNumber of audio channelssrc/types/audio.types.ts:35
latency?number | "balanced" | "interactive" | "playback"Audio latency hintsrc/types/audio.types.ts:37
deviceId?| string | { exact: string; } | { ideal: string; }Specific device ID to usesrc/types/audio.types.ts:39

AutoAnswerHeaders

Defined in: src/types/autoanswer.types.ts:28

SIP headers that can trigger auto-answer

Properties

PropertyTypeDescriptionDefined in
Call-Info?stringCall-Info header with answer-after parametersrc/types/autoanswer.types.ts:30
Alert-Info?stringAlert-Info header with auto-answer indicatorsrc/types/autoanswer.types.ts:32
X-Auto-Answer?stringCustom auto-answer headersrc/types/autoanswer.types.ts:34
X-Cisco-Intercom?stringCisco intercom headersrc/types/autoanswer.types.ts:36
X-Polycom-Intercom?stringPolycom intercom headersrc/types/autoanswer.types.ts:38

AutoAnswerWhitelistEntry

Defined in: src/types/autoanswer.types.ts:44

Whitelist entry for auto-answer

Properties

PropertyTypeDescriptionDefined in
patternstringPhone number or SIP URI patternsrc/types/autoanswer.types.ts:46
name?stringDisplay name for identificationsrc/types/autoanswer.types.ts:48
enabledbooleanWhether this entry is enabledsrc/types/autoanswer.types.ts:50
delay?numberOptional delay override for this entry (ms)src/types/autoanswer.types.ts:52
intercomMode?IntercomModeOptional intercom mode overridesrc/types/autoanswer.types.ts:54
addedAtDateDate addedsrc/types/autoanswer.types.ts:56

AutoAnswerSettings

Defined in: src/types/autoanswer.types.ts:62

Auto-answer settings

Properties

PropertyTypeDescriptionDefined in
enabledbooleanWhether auto-answer is enabledsrc/types/autoanswer.types.ts:64
modeAutoAnswerModeAuto-answer modesrc/types/autoanswer.types.ts:66
delaynumberDelay before answering (milliseconds)src/types/autoanswer.types.ts:68
maxDelaynumberMaximum delay allowed (milliseconds)src/types/autoanswer.types.ts:70
playAnnouncementbooleanPlay announcement before answeringsrc/types/autoanswer.types.ts:72
announcementUrl?stringAnnouncement audio URL or file pathsrc/types/autoanswer.types.ts:74
intercomModeIntercomModeIntercom mode (simplex = one-way, duplex = two-way)src/types/autoanswer.types.ts:76
intercomMuteOnAnswerbooleanMute microphone initially in intercom modesrc/types/autoanswer.types.ts:78
detectHeadersbooleanAutomatically detect auto-answer headerssrc/types/autoanswer.types.ts:80
triggerHeaderskeyof AutoAnswerHeaders[]Headers that trigger auto-answersrc/types/autoanswer.types.ts:82
whitelistAutoAnswerWhitelistEntry[]Whitelist for selective auto-answersrc/types/autoanswer.types.ts:84
playBeepbooleanBeep sound before auto-answersrc/types/autoanswer.types.ts:86
beepUrl?stringBeep audio URLsrc/types/autoanswer.types.ts:88
showNotificationbooleanShow visual notification before auto-answersrc/types/autoanswer.types.ts:90
notificationDurationnumberNotification duration before auto-answer (ms)src/types/autoanswer.types.ts:92

AutoAnswerEvent

Defined in: src/types/autoanswer.types.ts:98

Auto-answer event data

Properties

PropertyTypeDescriptionDefined in
callIdstringCall IDsrc/types/autoanswer.types.ts:100
callerstringCaller number/URIsrc/types/autoanswer.types.ts:102
displayName?stringDisplay namesrc/types/autoanswer.types.ts:104
triggerAutoAnswerTriggerWhat triggered auto-answersrc/types/autoanswer.types.ts:106
delaynumberDelay that was applied (ms)src/types/autoanswer.types.ts:108
isIntercombooleanWhether intercom mode was usedsrc/types/autoanswer.types.ts:110
intercomMode?IntercomModeIntercom mode typesrc/types/autoanswer.types.ts:112
matchedWhitelistEntry?AutoAnswerWhitelistEntryMatched whitelist entry if applicablesrc/types/autoanswer.types.ts:114
matchedHeaders?Partial<AutoAnswerHeaders>Headers that triggered auto-answersrc/types/autoanswer.types.ts:116
timestampDateTimestampsrc/types/autoanswer.types.ts:118

AutoAnswerStats

Defined in: src/types/autoanswer.types.ts:124

Auto-answer statistics

Properties

PropertyTypeDescriptionDefined in
totalAutoAnswerednumberTotal calls auto-answeredsrc/types/autoanswer.types.ts:126
headerTriggerednumberCalls auto-answered via headerssrc/types/autoanswer.types.ts:128
whitelistTriggerednumberCalls auto-answered via whitelistsrc/types/autoanswer.types.ts:130
intercomTriggerednumberCalls auto-answered via intercomsrc/types/autoanswer.types.ts:132
allCallsTriggerednumberCalls auto-answered via all_calls modesrc/types/autoanswer.types.ts:134
skippednumberCalls skipped (not auto-answered)src/types/autoanswer.types.ts:136
averageDelaynumberAverage answer delay (ms)src/types/autoanswer.types.ts:138
lastEvent?AutoAnswerEventLast auto-answer eventsrc/types/autoanswer.types.ts:140

PendingAutoAnswer

Defined in: src/types/autoanswer.types.ts:146

Pending auto-answer call

Properties

PropertyTypeDescriptionDefined in
callIdstringCall IDsrc/types/autoanswer.types.ts:148
callerstringCaller number/URIsrc/types/autoanswer.types.ts:150
displayName?stringDisplay namesrc/types/autoanswer.types.ts:152
triggerAutoAnswerTriggerTrigger reasonsrc/types/autoanswer.types.ts:154
remainingTimenumberTime remaining before auto-answer (ms)src/types/autoanswer.types.ts:156
totalDelaynumberTotal delay configured (ms)src/types/autoanswer.types.ts:158
cancellablebooleanWhether this can be cancelledsrc/types/autoanswer.types.ts:160
timerId?TimeoutTimer ID for cancellationsrc/types/autoanswer.types.ts:162

UseSipAutoAnswerOptions

Defined in: src/types/autoanswer.types.ts:168

Configuration options for useSipAutoAnswer

Properties

PropertyTypeDescriptionDefined in
initialSettings?Partial<AutoAnswerSettings>Initial auto-answer settingssrc/types/autoanswer.types.ts:170
storageKey?stringStorage key for persisting settingssrc/types/autoanswer.types.ts:172
persist?booleanEnable persistence to localStoragesrc/types/autoanswer.types.ts:174
onAutoAnswer?(event) => voidCallback when call is auto-answeredsrc/types/autoanswer.types.ts:176
onPending?(pending) => voidCallback when auto-answer is pendingsrc/types/autoanswer.types.ts:178
onCancelled?(callId, reason) => voidCallback when pending auto-answer is cancelledsrc/types/autoanswer.types.ts:180
onSkipped?(callId, reason) => voidCallback when auto-answer is skippedsrc/types/autoanswer.types.ts:182
onError?(error) => voidCallback on errorsrc/types/autoanswer.types.ts:184

UseSipAutoAnswerReturn

Defined in: src/types/autoanswer.types.ts:190

Return type for useSipAutoAnswer composable

Properties

PropertyTypeDescriptionDefined in
settingsRef<AutoAnswerSettings, AutoAnswerSettings>Current settingssrc/types/autoanswer.types.ts:193
isEnabledComputedRef<boolean>Whether auto-answer is globally enabledsrc/types/autoanswer.types.ts:195
modeComputedRef<AutoAnswerMode>Current modesrc/types/autoanswer.types.ts:197
pendingCallsRef<PendingAutoAnswer[], PendingAutoAnswer[]>Pending auto-answer callssrc/types/autoanswer.types.ts:199
statsRef<AutoAnswerStats, AutoAnswerStats>Statisticssrc/types/autoanswer.types.ts:201
isLoadingRef<boolean, boolean>Loading statesrc/types/autoanswer.types.ts:203
errorRef<string | null, string | null>Error statesrc/types/autoanswer.types.ts:205
enable() => voidEnable auto-answersrc/types/autoanswer.types.ts:209
disable() => voidDisable auto-answersrc/types/autoanswer.types.ts:211
toggle() => voidToggle auto-answersrc/types/autoanswer.types.ts:213
setMode(mode) => voidSet auto-answer modesrc/types/autoanswer.types.ts:217
updateSettings(settings) => voidUpdate settingssrc/types/autoanswer.types.ts:221
resetSettings() => voidReset settings to defaultssrc/types/autoanswer.types.ts:223
setDelay(delay) => voidSet answer delaysrc/types/autoanswer.types.ts:225
setIntercomMode(mode) => voidSet intercom modesrc/types/autoanswer.types.ts:227
addToWhitelist(entry) => voidAdd to whitelistsrc/types/autoanswer.types.ts:231
removeFromWhitelist(pattern) => voidRemove from whitelistsrc/types/autoanswer.types.ts:233
updateWhitelistEntry(pattern, updates) => voidUpdate whitelist entrysrc/types/autoanswer.types.ts:235
clearWhitelist() => voidClear whitelistsrc/types/autoanswer.types.ts:237
isWhitelisted(number) => booleanCheck if number is whitelistedsrc/types/autoanswer.types.ts:239
shouldAutoAnswer(callId, caller, headers?) => objectCheck if call should be auto-answeredsrc/types/autoanswer.types.ts:243
cancelPending(callId) => voidCancel pending auto-answersrc/types/autoanswer.types.ts:250
cancelAllPending() => voidCancel all pending auto-answerssrc/types/autoanswer.types.ts:252
triggerAutoAnswer(callId) => voidManually trigger auto-answer for a callsrc/types/autoanswer.types.ts:254
setAnnouncementUrl(url) => voidSet announcement URLsrc/types/autoanswer.types.ts:258
setPlayAnnouncement(play) => voidEnable/disable announcementsrc/types/autoanswer.types.ts:260
resetStats() => voidReset statisticssrc/types/autoanswer.types.ts:264
getRecentEvents(limit?) => AutoAnswerEvent[]Get recent auto-answer eventssrc/types/autoanswer.types.ts:266
saveSettings() => voidSave settings to storagesrc/types/autoanswer.types.ts:270
loadSettings() => voidLoad settings from storagesrc/types/autoanswer.types.ts:272

BlockResult

Defined in: src/types/blacklist.types.ts:62

Result of adding a number to the blacklist

Properties

PropertyTypeDefined in
successbooleansrc/types/blacklist.types.ts:63
numberstringsrc/types/blacklist.types.ts:64
message?stringsrc/types/blacklist.types.ts:65
entry?BlockEntrysrc/types/blacklist.types.ts:66

UnblockResult

Defined in: src/types/blacklist.types.ts:72

Result of removing a number from the blacklist

Properties

PropertyTypeDefined in
successbooleansrc/types/blacklist.types.ts:73
numberstringsrc/types/blacklist.types.ts:74
message?stringsrc/types/blacklist.types.ts:75

CallerReputation

Defined in: src/types/blacklist.types.ts:81

Caller ID reputation information

Properties

PropertyTypeDescriptionDefined in
numberstringPhone numbersrc/types/blacklist.types.ts:83
spamScorenumberSpam score (0-100, higher = more likely spam)src/types/blacklist.types.ts:85
isBlockedbooleanIs this number in the blacklistsrc/types/blacklist.types.ts:87
category?"unknown" | "spam" | "telemarketer" | "robocall" | "scam" | "legitimate"Category based on known databasessrc/types/blacklist.types.ts:89
reportCountnumberNumber of reportssrc/types/blacklist.types.ts:91
provider?stringProvider information if availablesrc/types/blacklist.types.ts:93
location?stringLocation information if availablesrc/types/blacklist.types.ts:95

BlacklistStats

Defined in: src/types/blacklist.types.ts:101

Blacklist statistics

Properties

PropertyTypeDescriptionDefined in
totalEntriesnumberTotal number of blocked entriessrc/types/blacklist.types.ts:103
activeEntriesnumberActive blockssrc/types/blacklist.types.ts:105
disabledEntriesnumberDisabled blockssrc/types/blacklist.types.ts:107
expiredEntriesnumberExpired blockssrc/types/blacklist.types.ts:109
totalBlockedCallsnumberTotal blocked callssrc/types/blacklist.types.ts:111
blockedTodaynumberBlocked calls todaysrc/types/blacklist.types.ts:113
blockedThisWeeknumberBlocked calls this weeksrc/types/blacklist.types.ts:115
byReasonRecord<BlockReason, number>Breakdown by reasonsrc/types/blacklist.types.ts:117
byActionRecord<BlockAction, number>Breakdown by actionsrc/types/blacklist.types.ts:119

BlacklistQueryOptions

Defined in: src/types/blacklist.types.ts:125

Options for querying the blacklist

Properties

PropertyTypeDescriptionDefined in
status?"all" | BlockStatusFilter by statussrc/types/blacklist.types.ts:127
reason?BlockReasonFilter by reasonsrc/types/blacklist.types.ts:129
action?BlockActionFilter by actionsrc/types/blacklist.types.ts:131
search?stringSearch pattern (supports wildcards)src/types/blacklist.types.ts:133
sortBy?"number" | "blockedAt" | "blockedCount" | "lastBlockedAt"Sort fieldsrc/types/blacklist.types.ts:135
sortOrder?"desc" | "asc"Sort ordersrc/types/blacklist.types.ts:137
offset?numberPagination offsetsrc/types/blacklist.types.ts:139
limit?numberPagination limitsrc/types/blacklist.types.ts:141

ImportResult

Defined in: src/types/blacklist.types.ts:152

Result of import operation

Properties

PropertyTypeDefined in
successbooleansrc/types/blacklist.types.ts:153
importednumbersrc/types/blacklist.types.ts:154
skippednumbersrc/types/blacklist.types.ts:155
failednumbersrc/types/blacklist.types.ts:156
errorsobject[]src/types/blacklist.types.ts:157

UseAmiBlacklistOptions

Defined in: src/types/blacklist.types.ts:163

Configuration options for useAmiBlacklist

Properties

PropertyTypeDescriptionDefined in
dbFamily?stringAstDB family for blacklist storage (default: 'blacklist')src/types/blacklist.types.ts:165
extension?stringExtension to associate with blacklist (optional, for per-extension lists)src/types/blacklist.types.ts:167
defaultAction?BlockActionDefault action for new blocks (default: 'hangup')src/types/blacklist.types.ts:169
defaultReason?BlockReasonDefault reason for new blocks (default: 'manual')src/types/blacklist.types.ts:171
autoCleanExpired?booleanAuto-clean expired entries (default: true)src/types/blacklist.types.ts:173
enableSpamDetection?booleanEnable spam detection integration (default: false)src/types/blacklist.types.ts:175
spamThreshold?numberSpam score threshold for auto-blocking (0-100, default: 80)src/types/blacklist.types.ts:177
onNumberBlocked?(entry) => voidCallback when number is blockedsrc/types/blacklist.types.ts:179
onNumberUnblocked?(number) => voidCallback when number is unblockedsrc/types/blacklist.types.ts:181
onCallBlocked?(number, entry) => voidCallback when call is blockedsrc/types/blacklist.types.ts:183
onSpamDetected?(reputation) => voidCallback when spam detectedsrc/types/blacklist.types.ts:185
onError?(error) => voidCallback on errorsrc/types/blacklist.types.ts:187

UseAmiBlacklistReturn

Defined in: src/types/blacklist.types.ts:193

Return type for useAmiBlacklist composable

Properties

PropertyTypeDescriptionDefined in
blocklistRef<BlockEntry[], BlockEntry[]>List of blocked entriessrc/types/blacklist.types.ts:196
statsRef<BlacklistStats, BlacklistStats>Blacklist statisticssrc/types/blacklist.types.ts:198
isLoadingRef<boolean, boolean>Loading statesrc/types/blacklist.types.ts:200
errorRef<string | null, string | null>Error statesrc/types/blacklist.types.ts:202
activeCountComputedRef<number>Number of active blockssrc/types/blacklist.types.ts:206
isBlocked(number) => booleanCheck if a number is blockedsrc/types/blacklist.types.ts:208
getBlockEntry(number) => BlockEntry | undefinedGet block entry for a numbersrc/types/blacklist.types.ts:210
blockNumber(number, options?) => Promise<BlockResult>Block a phone numbersrc/types/blacklist.types.ts:214
unblockNumber(number) => Promise<UnblockResult>Unblock a phone numbersrc/types/blacklist.types.ts:225
updateBlock(number, updates) => Promise<BlockResult>Update block entrysrc/types/blacklist.types.ts:227
enableBlock(number) => Promise<BlockResult>Enable a disabled blocksrc/types/blacklist.types.ts:229
disableBlock(number) => Promise<BlockResult>Disable a block without removingsrc/types/blacklist.types.ts:231
blockNumbers(numbers, options?) => Promise<{ success: number; failed: number; errors: object[]; }>Block multiple numberssrc/types/blacklist.types.ts:235
unblockNumbers(numbers) => Promise<{ success: number; failed: number; }>Unblock multiple numberssrc/types/blacklist.types.ts:244
clearAll() => Promise<boolean>Clear all blockssrc/types/blacklist.types.ts:246
refresh() => Promise<void>Refresh blacklist from AstDBsrc/types/blacklist.types.ts:250
query(options?) => BlockEntry[]Query blacklist with filterssrc/types/blacklist.types.ts:252
search(pattern) => BlockEntry[]Search blacklistsrc/types/blacklist.types.ts:254
exportList(format?) => stringExport blacklistsrc/types/blacklist.types.ts:258
importList(data, format?) => Promise<ImportResult>Import blacklistsrc/types/blacklist.types.ts:260
checkReputation(number) => Promise<CallerReputation>Check caller reputationsrc/types/blacklist.types.ts:264
reportSpam(number, category?) => Promise<boolean>Report number as spamsrc/types/blacklist.types.ts:266
cleanExpired() => Promise<number>Clean expired entriessrc/types/blacklist.types.ts:270
getStats() => BlacklistStatsGet statisticssrc/types/blacklist.types.ts:272

CallSession

Defined in: src/types/call.types.ts:210

Call session interface

Properties

PropertyTypeDescriptionDefined in
idstringUnique call IDsrc/types/call.types.ts:212
stateCallStateCall statesrc/types/call.types.ts:214
directionCallDirectionCall directionsrc/types/call.types.ts:216
localUristring | SipUriLocal SIP URIsrc/types/call.types.ts:218
remoteUristring | SipUriRemote SIP URIsrc/types/call.types.ts:220
remoteDisplayName?stringRemote display namesrc/types/call.types.ts:222
localStream?MediaStreamLocal media streamsrc/types/call.types.ts:224
remoteStream?MediaStreamRemote media streamsrc/types/call.types.ts:226
isOnHoldbooleanIs call on holdsrc/types/call.types.ts:228
isMutedbooleanIs call mutedsrc/types/call.types.ts:230
hasRemoteVideobooleanIs remote video enabledsrc/types/call.types.ts:232
hasLocalVideobooleanIs local video enabledsrc/types/call.types.ts:234
timingCallTimingInfoCall timing informationsrc/types/call.types.ts:236
terminationCause?TerminationCauseTermination cause (if terminated)src/types/call.types.ts:238
data?Record<string, unknown>Custom datasrc/types/call.types.ts:240
hold?() => voidHold the call (SIP re-INVITE with sendonly)src/types/call.types.ts:242
unhold?() => voidResume the call (SIP re-INVITE with sendrecv)src/types/call.types.ts:244

ScheduleCallbackOptions

Defined in: src/types/callback.types.ts:90

Options for scheduling a callback

Properties

PropertyTypeDescriptionDefined in
callerNumberstringCaller's phone numbersrc/types/callback.types.ts:92
callerName?stringOptional caller namesrc/types/callback.types.ts:95
targetQueue?stringQueue to route callback throughsrc/types/callback.types.ts:98
targetAgent?stringSpecific agent to handle callbacksrc/types/callback.types.ts:101
reason?stringReason for callbacksrc/types/callback.types.ts:104
priority?CallbackPriorityPriority (default: normal)src/types/callback.types.ts:107
scheduledAt?DateScheduled time (default: immediate/ASAP)src/types/callback.types.ts:110
maxAttempts?numberMaximum retry attempts (default: 3)src/types/callback.types.ts:113
callerId?stringCaller ID to show when calling backsrc/types/callback.types.ts:116
timeout?numberTimeout for each attempt in secondssrc/types/callback.types.ts:119
metadata?Record<string, string>Custom metadatasrc/types/callback.types.ts:122

ExecuteCallbackOptions

Defined in: src/types/callback.types.ts:128

Options for executing a callback

Properties

PropertyTypeDescriptionDefined in
callerId?stringOverride caller ID for this executionsrc/types/callback.types.ts:130
timeout?numberOverride timeoutsrc/types/callback.types.ts:133
context?stringContext for the callsrc/types/callback.types.ts:136
variables?Record<string, string>Channel variablessrc/types/callback.types.ts:139
extension?stringExtension to dial after connecting (e.g., IVR menu)src/types/callback.types.ts:142

CallbackQueueStats

Defined in: src/types/callback.types.ts:148

Callback queue statistics

Properties

PropertyTypeDescriptionDefined in
pendingnumberTotal callbacks pendingsrc/types/callback.types.ts:150
schedulednumberCallbacks scheduled for latersrc/types/callback.types.ts:153
inProgressnumberCurrently in progresssrc/types/callback.types.ts:156
completedTodaynumberCompleted todaysrc/types/callback.types.ts:159
failedTodaynumberFailed todaysrc/types/callback.types.ts:162
avgCallbackTimenumberAverage callback time in secondssrc/types/callback.types.ts:165
successRatenumberSuccess rate (0-100)src/types/callback.types.ts:168
byPriorityRecord<CallbackPriority, number>Callbacks by prioritysrc/types/callback.types.ts:171

CallbackStorageConfig

Defined in: src/types/callback.types.ts:177

AstDB storage configuration

Properties

PropertyTypeDescriptionDefined in
dbFamilystringAstDB family name for callbackssrc/types/callback.types.ts:179
maxInMemorynumberMaximum callbacks to keep in memorysrc/types/callback.types.ts:182
cleanupAgenumberAuto-cleanup completed callbacks older than (ms)src/types/callback.types.ts:185
persistEnabledbooleanPersist to AstDB on changessrc/types/callback.types.ts:188

UseAmiCallbackOptions

Defined in: src/types/callback.types.ts:194

Options for useAmiCallback composable

Properties

PropertyTypeDescriptionDefined in
defaultQueue?stringDefault queue for callbackssrc/types/callback.types.ts:196
defaultCallerId?stringDefault caller ID for outgoing callbackssrc/types/callback.types.ts:199
defaultMaxAttempts?numberDefault maximum attemptssrc/types/callback.types.ts:202
defaultTimeout?numberDefault timeout per attempt (seconds)src/types/callback.types.ts:205
defaultContext?stringContext for callback callssrc/types/callback.types.ts:208
retryDelay?numberRetry delay between attempts (seconds)src/types/callback.types.ts:211
autoExecute?booleanAuto-execute pending callbackssrc/types/callback.types.ts:214
autoExecuteInterval?numberAuto-execute interval (ms)src/types/callback.types.ts:217
storage?Partial<CallbackStorageConfig>Storage configurationsrc/types/callback.types.ts:220
onCallbackAdded?(callback) => voidCallback when a new request is addedsrc/types/callback.types.ts:223
onCallbackStarted?(callback) => voidCallback when execution startssrc/types/callback.types.ts:226
onCallbackCompleted?(callback) => voidCallback when completed successfullysrc/types/callback.types.ts:229
onCallbackFailed?(callback, error) => voidCallback when failedsrc/types/callback.types.ts:232
onCallbackCancelled?(callback) => voidCallback when cancelledsrc/types/callback.types.ts:235

UseAmiCallbackReturn

Defined in: src/types/callback.types.ts:241

Return type for useAmiCallback composable

Properties

PropertyTypeDescriptionDefined in
callbacksRef<CallbackRequest[]>All callback requestssrc/types/callback.types.ts:247
activeCallbackRef<CallbackRequest | null>Current callback being executedsrc/types/callback.types.ts:250
statsRef<CallbackQueueStats>Queue statisticssrc/types/callback.types.ts:253
isLoadingRef<boolean>Loading statesrc/types/callback.types.ts:256
errorRef<string | null>Error messagesrc/types/callback.types.ts:259
autoExecuteEnabledRef<boolean>Auto-execute enabledsrc/types/callback.types.ts:262
pendingCallbacksComputedRef<CallbackRequest[]>Pending callbacks (not yet executed)src/types/callback.types.ts:269
scheduledCallbacksComputedRef<CallbackRequest[]>Scheduled callbacks (with future scheduledAt)src/types/callback.types.ts:272
completedCallbacksComputedRef<CallbackRequest[]>Completed callbackssrc/types/callback.types.ts:275
failedCallbacksComputedRef<CallbackRequest[]>Failed callbackssrc/types/callback.types.ts:278
isExecutingComputedRef<boolean>Whether a callback is in progresssrc/types/callback.types.ts:281
nextCallbackComputedRef<CallbackRequest | null>Next callback to execute (by priority and time)src/types/callback.types.ts:284
pendingCountComputedRef<number>Total pending countsrc/types/callback.types.ts:287
scheduleCallback(options) => Promise<CallbackRequest>Schedule a new callbacksrc/types/callback.types.ts:294
executeCallback(callbackId, options?) => Promise<void>Execute a specific callbacksrc/types/callback.types.ts:297
executeNext(options?) => Promise<void>Execute next pending callbacksrc/types/callback.types.ts:300
cancelCallback(callbackId, reason?) => Promise<void>Cancel a callbacksrc/types/callback.types.ts:303
rescheduleCallback(callbackId, newTime) => Promise<void>Reschedule a callbacksrc/types/callback.types.ts:306
updatePriority(callbackId, priority) => voidUpdate callback prioritysrc/types/callback.types.ts:309
addNotes(callbackId, notes) => voidAdd notes to callbacksrc/types/callback.types.ts:312
markCompleted(callbackId, disposition?) => voidMark callback as completed manuallysrc/types/callback.types.ts:315
getCallback(callbackId) => CallbackRequest | undefinedGet callback by IDsrc/types/callback.types.ts:318
getCallbacksForNumber(phoneNumber) => CallbackRequest[]Get callbacks for specific numbersrc/types/callback.types.ts:321
startAutoExecute() => voidStart auto-execute modesrc/types/callback.types.ts:328
stopAutoExecute() => voidStop auto-execute modesrc/types/callback.types.ts:331
clearCompleted() => voidClear completed callbackssrc/types/callback.types.ts:334
clearFailed() => voidClear failed callbackssrc/types/callback.types.ts:337
refreshStats() => voidRefresh statssrc/types/callback.types.ts:340
loadFromStorage() => Promise<void>Load callbacks from AstDBsrc/types/callback.types.ts:347
saveToStorage() => Promise<void>Save callbacks to AstDBsrc/types/callback.types.ts:350
clearStorage() => Promise<void>Clear all stored callbackssrc/types/callback.types.ts:353

CdrRecord

Defined in: src/types/cdr.types.ts:37

Individual CDR record

Properties

PropertyTypeDescriptionDefined in
uniqueIdstringUnique ID for the CDRsrc/types/cdr.types.ts:39
accountCodestringAccount codesrc/types/cdr.types.ts:42
sourcestringSource (caller) numbersrc/types/cdr.types.ts:45
destinationstringDestination numbersrc/types/cdr.types.ts:48
destinationContextstringDestination contextsrc/types/cdr.types.ts:51
callerIdstringCaller IDsrc/types/cdr.types.ts:54
channelstringChannel usedsrc/types/cdr.types.ts:57
destinationChannelstringDestination channelsrc/types/cdr.types.ts:60
lastApplicationstringLast application executedsrc/types/cdr.types.ts:63
lastDatastringLast application datasrc/types/cdr.types.ts:66
startTimeDateCall start timesrc/types/cdr.types.ts:69
answerTimeDate | nullCall answer timesrc/types/cdr.types.ts:72
endTimeDateCall end timesrc/types/cdr.types.ts:75
durationnumberTotal call duration in seconds (ring + talk)src/types/cdr.types.ts:78
billableSecondsnumberBillable seconds (time after answer)src/types/cdr.types.ts:81
dispositionCdrDispositionCall dispositionsrc/types/cdr.types.ts:84
amaFlagsstringAMA flagssrc/types/cdr.types.ts:87
userFieldstringUser fieldsrc/types/cdr.types.ts:90
directionCdrDirectionCall directionsrc/types/cdr.types.ts:93
serverId?numberServer ID for multi-server setupssrc/types/cdr.types.ts:96
queue?stringQueue name if applicablesrc/types/cdr.types.ts:99
agent?stringAgent who handled if applicablesrc/types/cdr.types.ts:102
customFields?Record<string, string>Additional custom fieldssrc/types/cdr.types.ts:105

CdrStats

Defined in: src/types/cdr.types.ts:111

Aggregated CDR statistics

Properties

PropertyTypeDescriptionDefined in
totalCallsnumberTotal number of callssrc/types/cdr.types.ts:113
answeredCallsnumberNumber of answered callssrc/types/cdr.types.ts:116
missedCallsnumberNumber of missed callssrc/types/cdr.types.ts:119
failedCallsnumberNumber of failed callssrc/types/cdr.types.ts:122
totalTalkTimenumberTotal talk time in secondssrc/types/cdr.types.ts:125
averageTalkTimenumberAverage talk time in secondssrc/types/cdr.types.ts:128
averageRingTimenumberAverage ring time in secondssrc/types/cdr.types.ts:131
answerRatenumberAnswer rate percentage (0-100)src/types/cdr.types.ts:134
byDispositionRecord<CdrDisposition, number>Calls by dispositionsrc/types/cdr.types.ts:137
byHourRecord<number, number>Calls by hour of day (0-23)src/types/cdr.types.ts:140
byDayOfWeekRecord<number, number>Calls by day of week (0-6, 0=Sunday)src/types/cdr.types.ts:143
periodStartDateStart of the periodsrc/types/cdr.types.ts:146
periodEndDateEnd of the periodsrc/types/cdr.types.ts:149

AgentCdrStats

Defined in: src/types/cdr.types.ts:155

Agent-specific CDR statistics

Properties

PropertyTypeDescriptionDefined in
agentstringAgent identifiersrc/types/cdr.types.ts:157
callsHandlednumberTotal calls handledsrc/types/cdr.types.ts:160
totalTalkTimenumberTotal talk time in secondssrc/types/cdr.types.ts:163
averageTalkTimenumberAverage talk time in secondssrc/types/cdr.types.ts:166
totalWrapTimenumberTotal wrap time in seconds (if tracked)src/types/cdr.types.ts:169
averageHandleTimenumberAverage handle time (talk + wrap)src/types/cdr.types.ts:172
byDispositionRecord<CdrDisposition, number>Calls by dispositionsrc/types/cdr.types.ts:175
serviceLevelPct?numberService level achievement percentagesrc/types/cdr.types.ts:178
periodStartDatePeriod startsrc/types/cdr.types.ts:181
periodEndDatePeriod endsrc/types/cdr.types.ts:184

QueueCdrStats

Defined in: src/types/cdr.types.ts:190

Queue-specific CDR statistics

Properties

PropertyTypeDescriptionDefined in
queuestringQueue namesrc/types/cdr.types.ts:192
callsOfferednumberTotal calls offeredsrc/types/cdr.types.ts:195
callsAnswerednumberTotal calls answeredsrc/types/cdr.types.ts:198
callsAbandonednumberTotal calls abandonedsrc/types/cdr.types.ts:201
averageWaitTimenumberAverage wait time in secondssrc/types/cdr.types.ts:204
averageTalkTimenumberAverage talk time in secondssrc/types/cdr.types.ts:207
serviceLevelPctnumberService level percentagesrc/types/cdr.types.ts:210
serviceLevelThresholdnumberService level threshold in secondssrc/types/cdr.types.ts:213
abandonmentRatenumberAbandonment rate percentagesrc/types/cdr.types.ts:216
byAgentRecord<string, number>Calls by agentsrc/types/cdr.types.ts:219
periodStartDatePeriod startsrc/types/cdr.types.ts:222
periodEndDatePeriod endsrc/types/cdr.types.ts:225

CdrFilter

Defined in: src/types/cdr.types.ts:231

CDR filter options

Properties

PropertyTypeDescriptionDefined in
source?stringFilter by source numbersrc/types/cdr.types.ts:233
destination?stringFilter by destination numbersrc/types/cdr.types.ts:236
direction?CdrDirectionFilter by call directionsrc/types/cdr.types.ts:239
disposition?| CdrDisposition | CdrDisposition[]Filter by dispositionsrc/types/cdr.types.ts:242
queue?stringFilter by queuesrc/types/cdr.types.ts:245
agent?stringFilter by agentsrc/types/cdr.types.ts:248
accountCode?stringFilter by account codesrc/types/cdr.types.ts:251
startDate?DateStart date/timesrc/types/cdr.types.ts:254
endDate?DateEnd date/timesrc/types/cdr.types.ts:257
minDuration?numberMinimum duration in secondssrc/types/cdr.types.ts:260
maxDuration?numberMaximum duration in secondssrc/types/cdr.types.ts:263
limit?numberLimit number of resultssrc/types/cdr.types.ts:266
offset?numberOffset for paginationsrc/types/cdr.types.ts:269
sortBy?"startTime" | "duration" | "source" | "billableSeconds" | "destination"Sort by fieldsrc/types/cdr.types.ts:272
sortOrder?"desc" | "asc"Sort ordersrc/types/cdr.types.ts:275

CdrExportOptions

Defined in: src/types/cdr.types.ts:281

CDR export options

Properties

PropertyTypeDescriptionDefined in
format"json" | "csv"Export formatsrc/types/cdr.types.ts:283
fields?keyof CdrRecord[]Fields to includesrc/types/cdr.types.ts:286
includeHeader?booleanInclude header row (CSV only)src/types/cdr.types.ts:289
dateFormat?stringDate format stringsrc/types/cdr.types.ts:292
filename?stringFilename for downloadsrc/types/cdr.types.ts:295

UseAmiCDROptions

Defined in: src/types/cdr.types.ts:353

Options for useAmiCDR composable

Properties

PropertyTypeDescriptionDefined in
maxRecords?numberMaximum CDR records to keep in memorysrc/types/cdr.types.ts:355
autoStats?booleanAuto-calculate statisticssrc/types/cdr.types.ts:358
statsPeriod?CdrAggregationPeriodStatistics aggregation periodsrc/types/cdr.types.ts:361
trackCel?booleanEnable CEL event trackingsrc/types/cdr.types.ts:364
filter?CdrFilterFilter for incoming CDRssrc/types/cdr.types.ts:367
detectDirection?(cdr) => CdrDirectionCustom direction detection functionsrc/types/cdr.types.ts:370
onCdr?(cdr) => voidCallback when CDR is receivedsrc/types/cdr.types.ts:373
onStatsUpdate?(stats) => voidCallback when stats are updatedsrc/types/cdr.types.ts:376
transformCdr?(cdr) => CdrRecordTransform CDR recordsrc/types/cdr.types.ts:379

UseAmiCDRReturn

Defined in: src/types/cdr.types.ts:385

Return type for useAmiCDR composable

Properties

PropertyTypeDescriptionDefined in
recordsRef<CdrRecord[]>List of CDR recordssrc/types/cdr.types.ts:388
statsComputedRef<CdrStats>Current statisticssrc/types/cdr.types.ts:391
agentStatsComputedRef<Record<string, AgentCdrStats>>Statistics by agentsrc/types/cdr.types.ts:394
queueStatsComputedRef<Record<string, QueueCdrStats>>Statistics by queuesrc/types/cdr.types.ts:397
isProcessingRef<boolean>Whether currently processingsrc/types/cdr.types.ts:400
errorRef<string | null>Error message if anysrc/types/cdr.types.ts:403
totalCountRef<number>Total CDR count (may be higher than records.length due to maxRecords)src/types/cdr.types.ts:406
getRecords(filter?) => CdrRecord[]Get filtered CDR recordssrc/types/cdr.types.ts:410
getStats(startDate, endDate) => CdrStatsGet statistics for a specific periodsrc/types/cdr.types.ts:413
getAgentStats(agent, startDate?, endDate?) => AgentCdrStats | nullGet agent statisticssrc/types/cdr.types.ts:416
getQueueStats(queue, startDate?, endDate?) => QueueCdrStats | nullGet queue statisticssrc/types/cdr.types.ts:419
exportRecords(options, filter?) => stringExport CDR recordssrc/types/cdr.types.ts:422
clearRecords() => voidClear all recordssrc/types/cdr.types.ts:425
onCdrEvent(callback) => () => voidSubscribe to CDR eventssrc/types/cdr.types.ts:428
getTodayCalls() => CdrRecord[]Get calls for todaysrc/types/cdr.types.ts:431
getHourlyBreakdown(date) => Record<number, CdrStats>Get hourly breakdown for a datesrc/types/cdr.types.ts:434
calculateServiceLevel(threshold, startDate?, endDate?) => numberCalculate service level percentagesrc/types/cdr.types.ts:437
getCallDetail(uniqueId) => CdrRecord | undefinedGet call detail by unique IDsrc/types/cdr.types.ts:440

E911CivicAddress

Defined in: src/types/e911.types.ts:45

Civic address for E911 location

Properties

PropertyTypeDescriptionDefined in
houseNumberstringHouse/building numbersrc/types/e911.types.ts:47
houseNumberSuffix?stringHouse number suffix (A, B, etc.)src/types/e911.types.ts:50
preDirectional?stringPre-directional (N, S, E, W)src/types/e911.types.ts:53
streetNamestringStreet namesrc/types/e911.types.ts:56
streetSuffix?stringStreet suffix (St, Ave, Blvd, etc.)src/types/e911.types.ts:59
postDirectional?stringPost-directional (N, S, E, W)src/types/e911.types.ts:62
citystringCity/municipalitysrc/types/e911.types.ts:65
statestringState/province/regionsrc/types/e911.types.ts:68
postalCodestringPostal/ZIP codesrc/types/e911.types.ts:71
countrystringCountry code (ISO 3166-1 alpha-2)src/types/e911.types.ts:74
additionalInfo?stringAdditional location info (suite, floor, etc.)src/types/e911.types.ts:77
buildingName?stringBuilding namesrc/types/e911.types.ts:80
floor?stringFloor numbersrc/types/e911.types.ts:83
room?stringRoom/unit numbersrc/types/e911.types.ts:86

E911GeoLocation

Defined in: src/types/e911.types.ts:92

Geographic coordinates for E911 location

Properties

PropertyTypeDescriptionDefined in
latitudenumberLatitude (WGS84)src/types/e911.types.ts:94
longitudenumberLongitude (WGS84)src/types/e911.types.ts:97
altitude?numberAltitude in meters (optional)src/types/e911.types.ts:100
uncertainty?numberHorizontal uncertainty in meterssrc/types/e911.types.ts:103
method?stringLocation method (gps, wifi, manual, etc.)src/types/e911.types.ts:106
timestampDateTimestamp of location determinationsrc/types/e911.types.ts:109

E911Location

Defined in: src/types/e911.types.ts:115

Complete E911 location information

Properties

PropertyTypeDescriptionDefined in
idstringUnique location identifiersrc/types/e911.types.ts:117
namestringLocation name/labelsrc/types/e911.types.ts:120
typeE911LocationTypeLocation typesrc/types/e911.types.ts:123
civic?E911CivicAddressCivic addresssrc/types/e911.types.ts:126
geo?E911GeoLocationGeographic coordinatessrc/types/e911.types.ts:129
isDefaultbooleanIs this the default locationsrc/types/e911.types.ts:132
isVerifiedbooleanLocation is verified/validatedsrc/types/e911.types.ts:135
verifiedAt?DateVerification datesrc/types/e911.types.ts:138
extensionsstring[]Associated extension(s)src/types/e911.types.ts:141
lastUpdatedDateLast updated timestampsrc/types/e911.types.ts:144
notes?stringNotes/commentssrc/types/e911.types.ts:147

E911Call

Defined in: src/types/e911.types.ts:153

E911 emergency call record

Properties

PropertyTypeDescriptionDefined in
idstringUnique call identifiersrc/types/e911.types.ts:155
channelstringSIP channel identifiersrc/types/e911.types.ts:158
callerExtensionstringCaller extensionsrc/types/e911.types.ts:161
callerIdNumstringCaller ID numbersrc/types/e911.types.ts:164
callerIdNamestringCaller ID namesrc/types/e911.types.ts:167
dialedNumberstringDialed number (911, 933 test, etc.)src/types/e911.types.ts:170
statusE911CallStatusCall statussrc/types/e911.types.ts:173
locationE911Location | nullLocation at time of callsrc/types/e911.types.ts:176
callbackNumberstringCallback number configuredsrc/types/e911.types.ts:179
startTimeDateCall start timesrc/types/e911.types.ts:182
answerTime?DateCall answer timesrc/types/e911.types.ts:185
endTime?DateCall end timesrc/types/e911.types.ts:188
duration?numberDuration in secondssrc/types/e911.types.ts:191
notificationSentbooleanWhether notification was sentsrc/types/e911.types.ts:194
notificationSentAt?DateNotification timestampsrc/types/e911.types.ts:197
notifiedAdminsstring[]Administrators notifiedsrc/types/e911.types.ts:200
psapCallbackReceivedbooleanPSAP callback receivedsrc/types/e911.types.ts:203
recordingPath?stringCall recording path (if recorded)src/types/e911.types.ts:206
metadata?Record<string, unknown>Additional metadatasrc/types/e911.types.ts:209

E911NotificationRecipient

Defined in: src/types/e911.types.ts:215

E911 notification recipient

Properties

PropertyTypeDescriptionDefined in
idstringUnique recipient identifiersrc/types/e911.types.ts:217
namestringRecipient namesrc/types/e911.types.ts:220
email?stringEmail addresssrc/types/e911.types.ts:223
phone?stringPhone number (for SMS)src/types/e911.types.ts:226
webhookUrl?stringWebhook URLsrc/types/e911.types.ts:229
notificationTypesE911NotificationType[]Notification types to receivesrc/types/e911.types.ts:232
enabledbooleanIs this recipient activesrc/types/e911.types.ts:235
prioritynumberPriority (lower = higher priority)src/types/e911.types.ts:238

E911Notification

Defined in: src/types/e911.types.ts:244

E911 notification event

Properties

PropertyTypeDescriptionDefined in
idstringNotification IDsrc/types/e911.types.ts:246
callIdstringAssociated call IDsrc/types/e911.types.ts:249
typeE911NotificationTypeNotification typesrc/types/e911.types.ts:252
recipientE911NotificationRecipientRecipient informationsrc/types/e911.types.ts:255
contentstringNotification contentsrc/types/e911.types.ts:258
sentAtDateTimestamp sentsrc/types/e911.types.ts:261
deliveredbooleanDelivery statussrc/types/e911.types.ts:264
deliveredAt?DateDelivery confirmation timestampsrc/types/e911.types.ts:267
error?stringError message if failedsrc/types/e911.types.ts:270

E911ComplianceLog

Defined in: src/types/e911.types.ts:276

E911 compliance log entry

Properties

PropertyTypeDescriptionDefined in
idstringLog entry IDsrc/types/e911.types.ts:278
callId?stringAssociated call IDsrc/types/e911.types.ts:281
event| "call_initiated" | "call_answered" | "call_ended" | "notification_sent" | "notification_delivered" | "notification_failed" | "location_updated" | "location_verified" | "callback_received" | "config_changed" | "test_call"Event typesrc/types/e911.types.ts:284
descriptionstringEvent descriptionsrc/types/e911.types.ts:298
actorstringUser/system that triggered eventsrc/types/e911.types.ts:301
timestampDateEvent timestampsrc/types/e911.types.ts:304
details?Record<string, unknown>Additional detailssrc/types/e911.types.ts:307
severity"critical" | "info" | "warning"Severity levelsrc/types/e911.types.ts:310

E911Config

Defined in: src/types/e911.types.ts:316

E911 configuration

Properties

PropertyTypeDescriptionDefined in
enabledbooleanIs E911 enabledsrc/types/e911.types.ts:318
emergencyNumbersstring[]Emergency numbers to detect (default: ['911', '933'])src/types/e911.types.ts:321
testNumbersstring[]Test numbers (933 is standard test)src/types/e911.types.ts:324
defaultCallbackNumberstringDefault callback numbersrc/types/e911.types.ts:327
defaultLocationId?stringDefault location IDsrc/types/e911.types.ts:330
recipientsE911NotificationRecipient[]Notification recipientssrc/types/e911.types.ts:333
recordCallsbooleanEnable call recording for E911src/types/e911.types.ts:336
directDialingbooleanKari's Law: Require direct dialing (no prefix)src/types/e911.types.ts:339
onSiteNotificationbooleanKari's Law: Enable on-site notificationsrc/types/e911.types.ts:342
dispatchableLocationRequiredbooleanRAY BAUM's Act: Dispatchable location requiredsrc/types/e911.types.ts:345
autoAnswerCallbackbooleanAuto-answer PSAP callbackssrc/types/e911.types.ts:348
callbackPattern?stringCallback detection patternsrc/types/e911.types.ts:351
notificationDelaynumberHold time before notification (seconds)src/types/e911.types.ts:354
complianceLoggingbooleanCompliance logging enabledsrc/types/e911.types.ts:357
lastUpdatedDateLast updatedsrc/types/e911.types.ts:360

E911Stats

Defined in: src/types/e911.types.ts:366

E911 statistics

Properties

PropertyTypeDescriptionDefined in
totalCallsnumberTotal emergency callssrc/types/e911.types.ts:368
testCallsnumberTotal test callssrc/types/e911.types.ts:371
callsWithLocationnumberCalls with verified locationsrc/types/e911.types.ts:374
notificationsSentnumberNotifications sentsrc/types/e911.types.ts:377
notificationsDeliverednumberNotifications deliveredsrc/types/e911.types.ts:380
callbacksReceivednumberPSAP callbacks receivedsrc/types/e911.types.ts:383
avgCallDurationnumberAverage call duration (seconds)src/types/e911.types.ts:386
avgNotificationTimenumberAverage notification delivery time (seconds)src/types/e911.types.ts:389
lastEmergencyCall?DateLast emergency call timestampsrc/types/e911.types.ts:392
lastTestCall?DateLast test call timestampsrc/types/e911.types.ts:395

E911Event

Defined in: src/types/e911.types.ts:417

E911 event

Properties

PropertyTypeDescriptionDefined in
typeE911EventTypeEvent typesrc/types/e911.types.ts:419
call?E911CallAssociated callsrc/types/e911.types.ts:422
notification?E911NotificationNotification (if applicable)src/types/e911.types.ts:425
timestampDateEvent timestampsrc/types/e911.types.ts:428
data?Record<string, unknown>Additional datasrc/types/e911.types.ts:431

UseSipE911Options

Defined in: src/types/e911.types.ts:437

Options for the useSipE911 composable

Properties

PropertyTypeDescriptionDefined in
config?Partial<E911Config>E911 configurationsrc/types/e911.types.ts:439
autoStart?booleanAuto-start monitoring on creationsrc/types/e911.types.ts:442
onEmergencyCall?(call) => voidCallback when emergency call detectedsrc/types/e911.types.ts:445
onCallEnded?(call) => voidCallback when emergency call endssrc/types/e911.types.ts:448
onNotificationSent?(notification) => voidCallback when notification is sentsrc/types/e911.types.ts:451
onCallbackDetected?(call) => voidCallback when PSAP callback detectedsrc/types/e911.types.ts:454
onEvent?(event) => voidCallback on E911 eventsrc/types/e911.types.ts:457
onError?(error) => voidCallback on errorsrc/types/e911.types.ts:460

UseSipE911Return

Defined in: src/types/e911.types.ts:466

Return type for useSipE911 composable

Properties

PropertyTypeDescriptionDefined in
configRef<E911Config>Current E911 configurationsrc/types/e911.types.ts:469
locationsRef<Map<string, E911Location>>All registered locationssrc/types/e911.types.ts:472
activeCallsRef<Map<string, E911Call>>Active emergency callssrc/types/e911.types.ts:475
callHistoryRef<E911Call[]>Call historysrc/types/e911.types.ts:478
complianceLogsRef<E911ComplianceLog[]>Compliance logssrc/types/e911.types.ts:481
isMonitoringRef<boolean>Whether E911 monitoring is activesrc/types/e911.types.ts:484
isLoadingRef<boolean>Loading statesrc/types/e911.types.ts:487
errorRef<string | null>Error message if anysrc/types/e911.types.ts:490
locationListComputedRef<E911Location[]>List of all locationssrc/types/e911.types.ts:494
defaultLocationComputedRef<E911Location | null>Default locationsrc/types/e911.types.ts:497
activeCallListComputedRef<E911Call[]>List of active emergency callssrc/types/e911.types.ts:500
hasActiveEmergencyComputedRef<boolean>Whether there's an active emergency callsrc/types/e911.types.ts:503
statsComputedRef<E911Stats>E911 statisticssrc/types/e911.types.ts:506
recipientsComputedRef<E911NotificationRecipient[]>Notification recipientssrc/types/e911.types.ts:509
startMonitoring() => voidStart E911 monitoringsrc/types/e911.types.ts:513
stopMonitoring() => voidStop E911 monitoringsrc/types/e911.types.ts:516
updateConfig(config) => voidUpdate E911 configurationsrc/types/e911.types.ts:519
addLocation(location) => E911LocationAdd a locationsrc/types/e911.types.ts:522
updateLocation(locationId, updates) => booleanUpdate a locationsrc/types/e911.types.ts:525
removeLocation(locationId) => booleanRemove a locationsrc/types/e911.types.ts:528
setDefaultLocation(locationId) => booleanSet default locationsrc/types/e911.types.ts:531
getLocation(locationId) => E911Location | nullGet location by IDsrc/types/e911.types.ts:534
getLocationForExtension(extension) => E911Location | nullGet location for extensionsrc/types/e911.types.ts:537
verifyLocation(locationId) => Promise<boolean>Verify/validate a locationsrc/types/e911.types.ts:540
addRecipient(recipient) => E911NotificationRecipientAdd notification recipientsrc/types/e911.types.ts:543
updateRecipient(recipientId, updates) => booleanUpdate notification recipientsrc/types/e911.types.ts:546
removeRecipient(recipientId) => booleanRemove notification recipientsrc/types/e911.types.ts:549
sendTestNotification() => Promise<boolean>Send test notification to all recipientssrc/types/e911.types.ts:552
getCall(callId) => E911Call | nullGet call by IDsrc/types/e911.types.ts:555
getCallsInRange(start, end) => E911Call[]Get calls for date rangesrc/types/e911.types.ts:558
getLogs(limit?) => E911ComplianceLog[]Get compliance logssrc/types/e911.types.ts:561
exportLogs(format) => stringExport compliance logssrc/types/e911.types.ts:564
clearOldLogs(olderThan) => numberClear old compliance logssrc/types/e911.types.ts:567
initiateTestCall(extension) => Promise<boolean>Initiate test call (to 933 or configured test number)src/types/e911.types.ts:570
formatLocation(location) => stringFormat location for displaysrc/types/e911.types.ts:573
checkCompliance() => objectCheck E911 compliance statussrc/types/e911.types.ts:576

CallForwardStatus

Defined in: src/types/featurecodes.types.ts:43

Call forward status

Properties

PropertyTypeDescriptionDefined in
typeCallForwardTypeType of call forwardsrc/types/featurecodes.types.ts:45
enabledbooleanWhether this forward type is enabledsrc/types/featurecodes.types.ts:48
destination?stringDestination number/extensionsrc/types/featurecodes.types.ts:51
ringTimeout?numberRing timeout before forward (for noanswer type)src/types/featurecodes.types.ts:54

FeatureCode

Defined in: src/types/featurecodes.types.ts:60

Feature code definition

Properties

PropertyTypeDescriptionDefined in
idstringFeature code identifiersrc/types/featurecodes.types.ts:62
namestringDisplay namesrc/types/featurecodes.types.ts:65
categoryFeatureCodeCategoryCategorysrc/types/featurecodes.types.ts:68
activateCodestringDial code to activate (e.g., *78)src/types/featurecodes.types.ts:71
deactivateCode?stringDial code to deactivate (e.g., *79)src/types/featurecodes.types.ts:74
toggleCode?stringDial code to toggle (e.g., *76)src/types/featurecodes.types.ts:77
statusCode?stringDial code to check statussrc/types/featurecodes.types.ts:80
requiresDestinationbooleanWhether it requires a destination numbersrc/types/featurecodes.types.ts:83
description?stringDescription of the featuresrc/types/featurecodes.types.ts:86
availablebooleanWhether the feature is currently availablesrc/types/featurecodes.types.ts:89

FeatureExecutionResult

Defined in: src/types/featurecodes.types.ts:95

Feature execution result

Properties

PropertyTypeDescriptionDefined in
successbooleanWhether execution was successfulsrc/types/featurecodes.types.ts:97
featureCodestringFeature code that was executedsrc/types/featurecodes.types.ts:100
message?stringResult messagesrc/types/featurecodes.types.ts:103
newStatus?stringNew status after execution (if applicable)src/types/featurecodes.types.ts:106
executedAtDateTimestamp of executionsrc/types/featurecodes.types.ts:109

ExtensionFeatureStatus

Defined in: src/types/featurecodes.types.ts:115

Feature status for an extension

Properties

PropertyTypeDescriptionDefined in
extensionstringExtension numbersrc/types/featurecodes.types.ts:117
dndDndStatusDND statussrc/types/featurecodes.types.ts:120
callForwardCallForwardStatus[]Call forward statusessrc/types/featurecodes.types.ts:123
customFeaturesRecord<string, boolean>Custom feature statessrc/types/featurecodes.types.ts:126
lastUpdatedDateLast updated timestampsrc/types/featurecodes.types.ts:129

StandardFeatureCodes

Defined in: src/types/featurecodes.types.ts:135

Common FreePBX/Asterisk feature codes

Properties

PropertyTypeDescriptionDefined in
dndTogglestringDND togglesrc/types/featurecodes.types.ts:137
dndActivatestringDND activatesrc/types/featurecodes.types.ts:140
dndDeactivatestringDND deactivatesrc/types/featurecodes.types.ts:143
cfActivatestringCall forward unconditional activatesrc/types/featurecodes.types.ts:146
cfDeactivatestringCall forward unconditional deactivatesrc/types/featurecodes.types.ts:149
cfbActivatestringCall forward busy activatesrc/types/featurecodes.types.ts:152
cfbDeactivatestringCall forward busy deactivatesrc/types/featurecodes.types.ts:155
cfnaActivatestringCall forward no answer activatesrc/types/featurecodes.types.ts:158
cfnaDeactivatestringCall forward no answer deactivatesrc/types/featurecodes.types.ts:161
callPickupstringCall pickupsrc/types/featurecodes.types.ts:164
directedPickupstringDirected call pickupsrc/types/featurecodes.types.ts:167
voicemailstringVoicemail accesssrc/types/featurecodes.types.ts:170
directVoicemailstringDirect voicemailsrc/types/featurecodes.types.ts:173
intercomstringIntercom prefixsrc/types/featurecodes.types.ts:176
callParkstringCall parksrc/types/featurecodes.types.ts:179
attendedTransferstringAttended transfersrc/types/featurecodes.types.ts:182
blindTransferstringBlind transfersrc/types/featurecodes.types.ts:185
recordingTogglestringIn-call recording togglesrc/types/featurecodes.types.ts:188

UseAmiFeatureCodesOptions

Defined in: src/types/featurecodes.types.ts:194

Options for useAmiFeatureCodes composable

Properties

PropertyTypeDescriptionDefined in
extension?stringExtension to manage features forsrc/types/featurecodes.types.ts:196
featureCodes?Partial<StandardFeatureCodes>Custom feature codes (override defaults)src/types/featurecodes.types.ts:199
refreshInterval?numberAuto-refresh status interval in ms (0 to disable)src/types/featurecodes.types.ts:202
dbFamily?stringAstDB family for feature state storagesrc/types/featurecodes.types.ts:205
onDndChanged?(enabled) => voidCallback when DND status changessrc/types/featurecodes.types.ts:208
onCallForwardChanged?(status) => voidCallback when call forward changessrc/types/featurecodes.types.ts:211
onFeatureExecuted?(result) => voidCallback when feature execution completessrc/types/featurecodes.types.ts:214
onError?(error) => voidCallback on errorsrc/types/featurecodes.types.ts:217

UseAmiFeatureCodesReturn

Defined in: src/types/featurecodes.types.ts:223

Return type for useAmiFeatureCodes composable

Properties

PropertyTypeDescriptionDefined in
extensionRef<string>Current extensionsrc/types/featurecodes.types.ts:229
dndStatusRef<DndStatus>DND statussrc/types/featurecodes.types.ts:232
callForwardStatusRef<CallForwardStatus[]>Call forward statusessrc/types/featurecodes.types.ts:235
featureCodesRef<FeatureCode[]>Available feature codessrc/types/featurecodes.types.ts:238
customFeaturesRef<Record<string, boolean>>Custom feature statessrc/types/featurecodes.types.ts:241
executionHistoryRef<FeatureExecutionResult[]>Execution historysrc/types/featurecodes.types.ts:244
isLoadingRef<boolean>Loading statesrc/types/featurecodes.types.ts:247
errorRef<string | null>Error messagesrc/types/featurecodes.types.ts:250
isDndEnabledComputedRef<boolean>Whether DND is currently enabledsrc/types/featurecodes.types.ts:257
hasActiveCallForwardComputedRef<boolean>Whether any call forward is activesrc/types/featurecodes.types.ts:260
callForwardDestinationComputedRef<string | null>Active call forward destination (if any)src/types/featurecodes.types.ts:263
getCallForwardByType(type) => CallForwardStatus | undefinedGet call forward status by typesrc/types/featurecodes.types.ts:266
toggleDnd() => Promise<FeatureExecutionResult>Toggle DND statussrc/types/featurecodes.types.ts:273
enableDnd() => Promise<FeatureExecutionResult>Enable DNDsrc/types/featurecodes.types.ts:276
disableDnd() => Promise<FeatureExecutionResult>Disable DNDsrc/types/featurecodes.types.ts:279
enableCallForward(destination) => Promise<FeatureExecutionResult>Enable call forward unconditionalsrc/types/featurecodes.types.ts:286
disableCallForward() => Promise<FeatureExecutionResult>Disable call forward unconditionalsrc/types/featurecodes.types.ts:289
enableCallForwardBusy(destination) => Promise<FeatureExecutionResult>Enable call forward on busysrc/types/featurecodes.types.ts:292
disableCallForwardBusy() => Promise<FeatureExecutionResult>Disable call forward on busysrc/types/featurecodes.types.ts:295
enableCallForwardNoAnswer(destination, ringTimeout?) => Promise<FeatureExecutionResult>Enable call forward on no answersrc/types/featurecodes.types.ts:298
disableCallForwardNoAnswer() => Promise<FeatureExecutionResult>Disable call forward on no answersrc/types/featurecodes.types.ts:301
executeFeatureCode(code, destination?) => Promise<FeatureExecutionResult>Execute a feature codesrc/types/featurecodes.types.ts:308
executeFeature(featureName, destination?) => Promise<FeatureExecutionResult>Execute a custom feature by namesrc/types/featurecodes.types.ts:311
refreshStatus() => Promise<void>Refresh all feature statusessrc/types/featurecodes.types.ts:314
setExtension(extension) => voidSet extension to managesrc/types/featurecodes.types.ts:317
registerFeature(feature) => voidRegister a custom feature codesrc/types/featurecodes.types.ts:324
unregisterFeature(featureId) => voidUnregister a custom featuresrc/types/featurecodes.types.ts:327
getFeature(featureId) => FeatureCode | undefinedGet feature by IDsrc/types/featurecodes.types.ts:330
clearHistory() => voidClear execution historysrc/types/featurecodes.types.ts:337
getStatusSummary() => ExtensionFeatureStatusGet status summary for extensionsrc/types/featurecodes.types.ts:340

ReturnTimeSpec

Defined in: src/types/freepbx-presence.types.ts:64

Return time specification

Properties

PropertyTypeDescriptionDefined in
returnTimeDateExpected return timestamp (ISO 8601)src/types/freepbx-presence.types.ts:66
durationMinutes?numberDuration in minutes (from when set)src/types/freepbx-presence.types.ts:68
remainingMs?numberTime remaining in millisecondssrc/types/freepbx-presence.types.ts:70
isOverdue?booleanWhether the return time is overduesrc/types/freepbx-presence.types.ts:72
formattedTime?stringFormatted return time stringsrc/types/freepbx-presence.types.ts:74
formattedRemaining?stringFormatted remaining time stringsrc/types/freepbx-presence.types.ts:76

FreePBXPresenceStatus

Defined in: src/types/freepbx-presence.types.ts:82

FreePBX presence status with return time

Extends

Properties

PropertyTypeDescriptionInherited fromDefined in
presenceCodeFreePBXPresenceCodeFreePBX-specific presence code-src/types/freepbx-presence.types.ts:84
awayReason?ExtendedAwayReasonExtended away reason if applicable-src/types/freepbx-presence.types.ts:86
returnTime?ReturnTimeSpecExpected return time (for away/extended away status)-src/types/freepbx-presence.types.ts:88
awayMessage?stringCustom away message-src/types/freepbx-presence.types.ts:90
extension?stringFreePBX extension number-src/types/freepbx-presence.types.ts:92
displayName?stringDisplay name from FreePBX-src/types/freepbx-presence.types.ts:94
department?stringDepartment/group if available-src/types/freepbx-presence.types.ts:96
location?stringLocation/room if available-src/types/freepbx-presence.types.ts:98
hintState?stringFreePBX-specific hint state-src/types/freepbx-presence.types.ts:100
pidfDocument?stringRaw PIDF-LO document if available-src/types/freepbx-presence.types.ts:102
uristringUser URIPresenceStatus.urisrc/types/presence.types.ts:211
statePresenceStatePresence statePresenceStatus.statesrc/types/presence.types.ts:213
statusMessage?stringCustom status messagePresenceStatus.statusMessagesrc/types/presence.types.ts:215
lastUpdatedDateLast updated timestampPresenceStatus.lastUpdatedsrc/types/presence.types.ts:217
metadata?Record<string, any>Additional metadataPresenceStatus.metadatasrc/types/presence.types.ts:220

FreePBXPresenceEvent

Defined in: src/types/freepbx-presence.types.ts:108

FreePBX presence update event

Properties

PropertyTypeDescriptionDefined in
type| "error" | "presence_updated" | "return_time_updated" | "return_time_expired" | "status_changed"Event typesrc/types/freepbx-presence.types.ts:110
extensionstringExtension being monitoredsrc/types/freepbx-presence.types.ts:112
uristringFull SIP URIsrc/types/freepbx-presence.types.ts:114
previousStatus?FreePBXPresenceStatusPrevious statussrc/types/freepbx-presence.types.ts:116
currentStatusFreePBXPresenceStatusCurrent statussrc/types/freepbx-presence.types.ts:118
timestampDateTimestampsrc/types/freepbx-presence.types.ts:120
error?stringError message if applicablesrc/types/freepbx-presence.types.ts:122

FreePBXPresenceBridgeConfig

Defined in: src/types/freepbx-presence.types.ts:148

FreePBX presence bridge configuration

Properties

PropertyTypeDescriptionDefined in
hoststringFreePBX server hostname or IPsrc/types/freepbx-presence.types.ts:150
amiPort?numberAMI port (default: 5038)src/types/freepbx-presence.types.ts:152
restPort?numberREST API port (default: 443)src/types/freepbx-presence.types.ts:154
useRestApi?booleanUse REST API instead of AMIsrc/types/freepbx-presence.types.ts:156
amiUsername?stringAMI usernamesrc/types/freepbx-presence.types.ts:158
amiSecret?stringAMI secretsrc/types/freepbx-presence.types.ts:160
apiToken?stringREST API tokensrc/types/freepbx-presence.types.ts:162
autoReconnect?booleanEnable automatic reconnectionsrc/types/freepbx-presence.types.ts:164
reconnectInterval?numberReconnect interval in mssrc/types/freepbx-presence.types.ts:166
maxReconnectAttempts?numberMaximum reconnect attemptssrc/types/freepbx-presence.types.ts:168
parseReturnTime?booleanEnable return time parsingsrc/types/freepbx-presence.types.ts:170
returnTimeParser?(status) => ReturnTimeSpec | nullCustom return time parsersrc/types/freepbx-presence.types.ts:172
returnTimePatterns?RegExp[]Status message patterns for return time extractionsrc/types/freepbx-presence.types.ts:174

IVRMenuOption

Defined in: src/types/ivr.types.ts:43

IVR menu option definition

Properties

PropertyTypeDescriptionDefined in
digitstringDTMF digit for this option (0-9, *, #)src/types/ivr.types.ts:45
typeIVROptionTypeOption typesrc/types/ivr.types.ts:48
destinationstringDestination (extension, queue ID, menu ID, etc.)src/types/ivr.types.ts:51
labelstringOption label/descriptionsrc/types/ivr.types.ts:54
timesSelectednumberNumber of times this option was selectedsrc/types/ivr.types.ts:57
enabledbooleanWhether this option is enabledsrc/types/ivr.types.ts:60

IVRMenu

Defined in: src/types/ivr.types.ts:66

IVR menu definition

Properties

PropertyTypeDescriptionDefined in
idstringUnique menu identifiersrc/types/ivr.types.ts:68
namestringMenu name/titlesrc/types/ivr.types.ts:71
description?stringMenu descriptionsrc/types/ivr.types.ts:74
prompt?stringPrompt/announcement file to playsrc/types/ivr.types.ts:77
timeoutnumberTimeout in seconds before retry/exitsrc/types/ivr.types.ts:80
maxRetriesnumberMaximum invalid attempts before exitsrc/types/ivr.types.ts:83
optionsIVRMenuOption[]Available menu optionssrc/types/ivr.types.ts:86
isRootbooleanWhether this is the root/main menusrc/types/ivr.types.ts:89
parentMenuId?stringParent menu ID (for nested menus)src/types/ivr.types.ts:92
enabledbooleanWhether this menu is currently enabledsrc/types/ivr.types.ts:95
lastUpdatedDateLast updated timestampsrc/types/ivr.types.ts:98

IVRCaller

Defined in: src/types/ivr.types.ts:104

IVR caller information

Properties

PropertyTypeDescriptionDefined in
idstringUnique caller identifier (channel)src/types/ivr.types.ts:106
channelstringSIP channel identifiersrc/types/ivr.types.ts:109
callerIdNumstringCaller ID numbersrc/types/ivr.types.ts:112
callerIdNamestringCaller ID namesrc/types/ivr.types.ts:115
ivrIdstringCurrent IVR IDsrc/types/ivr.types.ts:118
currentMenuIdstringCurrent menu IDsrc/types/ivr.types.ts:121
stateIVRCallerStateCurrent statesrc/types/ivr.types.ts:124
enteredAtDateTime caller entered IVRsrc/types/ivr.types.ts:127
menuEnteredAtDateTime in current menusrc/types/ivr.types.ts:130
navigationHistorystring[]Navigation history (menu IDs)src/types/ivr.types.ts:133
dtmfInputstringDTMF input collectedsrc/types/ivr.types.ts:136
invalidAttemptsnumberNumber of invalid attemptssrc/types/ivr.types.ts:139
timedOutbooleanWhether caller is in timeout statesrc/types/ivr.types.ts:142
lastActivityDateLast activity timestampsrc/types/ivr.types.ts:145

IVRStats

Defined in: src/types/ivr.types.ts:151

IVR statistics

Properties

PropertyTypeDescriptionDefined in
totalCallersnumberTotal callers that entered IVRsrc/types/ivr.types.ts:153
currentCallersnumberCallers currently in IVRsrc/types/ivr.types.ts:156
successfulExitsnumberCallers that successfully exited to destinationsrc/types/ivr.types.ts:159
abandonedCallsnumberCallers that hung up in IVRsrc/types/ivr.types.ts:162
timedOutCallsnumberCallers that timed outsrc/types/ivr.types.ts:165
avgTimeInIVRnumberAverage time spent in IVR (seconds)src/types/ivr.types.ts:168
avgMenuSelectionsnumberAverage number of menu selectionssrc/types/ivr.types.ts:171
mostPopularOption?objectMost popular menu optionsrc/types/ivr.types.ts:174
mostPopularOption.menuIdstring-src/types/ivr.types.ts:175
mostPopularOption.digitstring-src/types/ivr.types.ts:176
mostPopularOption.countnumber-src/types/ivr.types.ts:177
peakCallersnumberPeak concurrent callerssrc/types/ivr.types.ts:181
lastCallTime?DateLast call timestampsrc/types/ivr.types.ts:184

IVR

Defined in: src/types/ivr.types.ts:190

IVR definition

Properties

PropertyTypeDescriptionDefined in
idstringUnique IVR identifiersrc/types/ivr.types.ts:192
namestringIVR namesrc/types/ivr.types.ts:195
extensionstringIVR extension to dialsrc/types/ivr.types.ts:198
description?stringDescriptionsrc/types/ivr.types.ts:201
rootMenuIdstringRoot menu IDsrc/types/ivr.types.ts:204
menusMap<string, IVRMenu>All menus in this IVRsrc/types/ivr.types.ts:207
callersMap<string, IVRCaller>Callers currently in this IVRsrc/types/ivr.types.ts:210
statsIVRStatsIVR statisticssrc/types/ivr.types.ts:213
enabledbooleanWhether IVR is enabledsrc/types/ivr.types.ts:216
businessHours?objectBusiness hours (if restricted)src/types/ivr.types.ts:219
businessHours.startstring-src/types/ivr.types.ts:220
businessHours.endstring-src/types/ivr.types.ts:221
businessHours.daysnumber[]-src/types/ivr.types.ts:222
afterHoursDestination?stringAfter-hours destinationsrc/types/ivr.types.ts:226
lastUpdatedDateLast updated timestampsrc/types/ivr.types.ts:229

IVREvent

Defined in: src/types/ivr.types.ts:252

IVR event

Properties

PropertyTypeDescriptionDefined in
typeIVREventTypeEvent typesrc/types/ivr.types.ts:254
ivrIdstringIVR IDsrc/types/ivr.types.ts:257
callerId?stringCaller ID (channel)src/types/ivr.types.ts:260
menuId?stringMenu ID (if applicable)src/types/ivr.types.ts:263
digit?stringDTMF digit (if applicable)src/types/ivr.types.ts:266
destination?stringDestination (if applicable)src/types/ivr.types.ts:269
timestampDateEvent timestampsrc/types/ivr.types.ts:272
data?Record<string, unknown>Additional event datasrc/types/ivr.types.ts:275

BreakoutResult

Defined in: src/types/ivr.types.ts:281

Breakout result

Properties

PropertyTypeDescriptionDefined in
successbooleanWhether breakout was successfulsrc/types/ivr.types.ts:283
channelstringCaller channelsrc/types/ivr.types.ts:286
destination?stringDestination transferred tosrc/types/ivr.types.ts:289
error?stringError message if failedsrc/types/ivr.types.ts:292

UseAmiIVROptions

Defined in: src/types/ivr.types.ts:298

Options for the useAmiIVR composable

Properties

PropertyTypeDescriptionDefined in
autoStart?booleanAuto-start monitoring on creationsrc/types/ivr.types.ts:300
refreshInterval?numberRefresh interval in millisecondssrc/types/ivr.types.ts:303
ivrIds?string[]IVR IDs to monitor (empty = all)src/types/ivr.types.ts:306
onEvent?(event) => voidCallback when IVR event occurssrc/types/ivr.types.ts:309
onCallerEntered?(ivrId, caller) => voidCallback when caller enters IVRsrc/types/ivr.types.ts:312
onCallerExited?(ivrId, callerId, destination?) => voidCallback when caller exits IVRsrc/types/ivr.types.ts:315
onTimeout?(ivrId, caller) => voidCallback when caller times outsrc/types/ivr.types.ts:318
onError?(error) => voidCallback on errorsrc/types/ivr.types.ts:321

UseAmiIVRReturn

Defined in: src/types/ivr.types.ts:327

Return type for useAmiIVR composable

Properties

PropertyTypeDescriptionDefined in
ivrsRef<Map<string, IVR>>All monitored IVRssrc/types/ivr.types.ts:330
selectedIVRRef<IVR | null>Currently selected IVRsrc/types/ivr.types.ts:333
isMonitoringRef<boolean>Whether monitoring is activesrc/types/ivr.types.ts:336
isLoadingRef<boolean>Loading statesrc/types/ivr.types.ts:339
errorRef<string | null>Error message if anysrc/types/ivr.types.ts:342
ivrListComputedRef<IVR[]>List of all IVRssrc/types/ivr.types.ts:346
totalCallersComputedRef<number>Total callers across all IVRssrc/types/ivr.types.ts:349
allCallersComputedRef<IVRCaller[]>All callers across all IVRssrc/types/ivr.types.ts:352
activeIVRsComputedRef<IVR[]>IVRs with active callerssrc/types/ivr.types.ts:355
disabledIVRsComputedRef<IVR[]>Disabled IVRssrc/types/ivr.types.ts:358
startMonitoring() => voidStart monitoring IVRssrc/types/ivr.types.ts:362
stopMonitoring() => voidStop monitoring IVRssrc/types/ivr.types.ts:365
refresh() => Promise<void>Refresh IVR datasrc/types/ivr.types.ts:368
getIVR(ivrId) => IVR | nullGet a specific IVR by IDsrc/types/ivr.types.ts:371
selectIVR(ivrId) => voidSelect an IVR for detailed viewsrc/types/ivr.types.ts:374
getCallers(ivrId) => IVRCaller[]Get callers in a specific IVRsrc/types/ivr.types.ts:377
getCaller(ivrId, callerId) => IVRCaller | nullGet a specific callersrc/types/ivr.types.ts:380
breakoutCaller(ivrId, callerId, destination) => Promise<BreakoutResult>Breakout a caller from IVR to a destinationsrc/types/ivr.types.ts:383
breakoutAllCallers(ivrId, destination) => Promise<BreakoutResult[]>Breakout all callers from an IVRsrc/types/ivr.types.ts:390
enableIVR(ivrId) => Promise<boolean>Enable an IVRsrc/types/ivr.types.ts:393
disableIVR(ivrId) => Promise<boolean>Disable an IVRsrc/types/ivr.types.ts:396
getStats(ivrId) => IVRStats | nullGet IVR statisticssrc/types/ivr.types.ts:399
clearStats(ivrId) => voidClear statistics for an IVRsrc/types/ivr.types.ts:402
getMenuStats(ivrId, menuId) => IVRMenuOption[] | nullGet menu option statisticssrc/types/ivr.types.ts:405
trackDTMF(channel, digit) => voidTrack DTMF input for a callersrc/types/ivr.types.ts:408

JsSIPRemoteIdentity

Defined in: src/types/jssip.types.ts:52

Remote identity from JsSIP

Properties

PropertyTypeDefined in
uri?JsSIPUrisrc/types/jssip.types.ts:53
display_name?stringsrc/types/jssip.types.ts:54

JsSIPUri

Defined in: src/types/jssip.types.ts:60

JsSIP URI interface

Properties

PropertyTypeDefined in
scheme?stringsrc/types/jssip.types.ts:61
user?stringsrc/types/jssip.types.ts:62
host?stringsrc/types/jssip.types.ts:63
port?numbersrc/types/jssip.types.ts:64
toString() => stringsrc/types/jssip.types.ts:65

JsSIPAnswerOptions

Defined in: src/types/jssip.types.ts:71

Options for answering a call

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
mediaConstraints?MediaStreamConstraintssrc/types/jssip.types.ts:72
rtcConfiguration?RTCConfigurationsrc/types/jssip.types.ts:73
extraHeaders?string[]src/types/jssip.types.ts:74

JsSIPTerminateOptions

Defined in: src/types/jssip.types.ts:81

Options for terminating a call

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
status_code?numbersrc/types/jssip.types.ts:82
reason_phrase?stringsrc/types/jssip.types.ts:83
extraHeaders?string[]src/types/jssip.types.ts:84

JsSIPHoldOptions

Defined in: src/types/jssip.types.ts:91

Options for hold/unhold operations

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
useUpdate?booleansrc/types/jssip.types.ts:92
extraHeaders?string[]src/types/jssip.types.ts:93

JsSIPMuteOptions

Defined in: src/types/jssip.types.ts:100

Options for mute/unmute operations

Properties

PropertyTypeDefined in
audio?booleansrc/types/jssip.types.ts:101
video?booleansrc/types/jssip.types.ts:102

JsSIPDTMFOptions

Defined in: src/types/jssip.types.ts:108

Options for DTMF sending

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
duration?numbersrc/types/jssip.types.ts:109
interToneGap?numbersrc/types/jssip.types.ts:110
transportType?"INFO" | "RFC2833"src/types/jssip.types.ts:111

JsSIPReferOptions

Defined in: src/types/jssip.types.ts:118

Options for REFER (transfer) operations

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
extraHeaders?string[]src/types/jssip.types.ts:119
replaces?stringsrc/types/jssip.types.ts:120

JsSIPSession

Defined in: src/types/jssip.types.ts:281

JsSIP Session interface (extended from RTCSession)

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDescriptionDefined in
idstringSession unique identifiersrc/types/jssip.types.ts:283
connection?RTCPeerConnectionRTCPeerConnection instancesrc/types/jssip.types.ts:285
remote_identity?JsSIPRemoteIdentityRemote identity informationsrc/types/jssip.types.ts:287
direction?"outgoing" | "incoming"Session directionsrc/types/jssip.types.ts:289
status?numberSession statussrc/types/jssip.types.ts:291
start_time?DateStart timesrc/types/jssip.types.ts:293
end_time?DateEnd timesrc/types/jssip.types.ts:295
answer(options?) => voidAnswer the sessionsrc/types/jssip.types.ts:297
terminate(options?) => voidTerminate the sessionsrc/types/jssip.types.ts:299
hold(options?) => voidPut session on holdsrc/types/jssip.types.ts:301
unhold(options?) => voidResume from holdsrc/types/jssip.types.ts:303
mute(options?) => voidMute audio/videosrc/types/jssip.types.ts:305
unmute(options?) => voidUnmute audio/videosrc/types/jssip.types.ts:307
sendDTMF(tone, options?) => voidSend DTMF tonesrc/types/jssip.types.ts:309
refer(target, options?) => voidRefer (transfer) the sessionsrc/types/jssip.types.ts:311
on(event, handler) => voidAdd event listenersrc/types/jssip.types.ts:313
off(event, handler) => voidRemove event listenersrc/types/jssip.types.ts:315
removeAllListeners() => voidRemove all event listenerssrc/types/jssip.types.ts:317
isOnHold() => objectCheck if session is on holdsrc/types/jssip.types.ts:319
isMuted() => objectCheck if session is mutedsrc/types/jssip.types.ts:321
data?Record<string, unknown>Session datasrc/types/jssip.types.ts:323

PresenceSubscriptionState

Defined in: src/types/jssip.types.ts:429

Stored presence subscription state

Properties

PropertyTypeDefined in
uristringsrc/types/jssip.types.ts:430
options?objectsrc/types/jssip.types.ts:431
options.expires?numbersrc/types/jssip.types.ts:432
options.extraHeaders?string[]src/types/jssip.types.ts:433
activebooleansrc/types/jssip.types.ts:435
expiresnumbersrc/types/jssip.types.ts:436

JsSIPSendMessageOptions

Defined in: src/types/jssip.types.ts:458

JsSIP send message options

Indexable

ts
[key: string]: unknown

Properties

PropertyTypeDefined in
contentType?stringsrc/types/jssip.types.ts:459
extraHeaders?string[]src/types/jssip.types.ts:460
eventHandlers?objectsrc/types/jssip.types.ts:461
eventHandlers.onSuccessResponse?(response) => voidsrc/types/jssip.types.ts:462
eventHandlers.onErrorResponse?(response) => voidsrc/types/jssip.types.ts:463
eventHandlers.onTransportError?() => voidsrc/types/jssip.types.ts:464
eventHandlers.onRequestTimeout?() => voidsrc/types/jssip.types.ts:465
eventHandlers.onDialogError?() => voidsrc/types/jssip.types.ts:466

LineConfig

Defined in: src/types/multiline.types.ts:27

Individual line configuration

Properties

PropertyTypeDescriptionDefined in
lineNumbernumberLine number (1-indexed)src/types/multiline.types.ts:29
label?stringCustom label for this linesrc/types/multiline.types.ts:32
enabledbooleanWhether this line is enabledsrc/types/multiline.types.ts:35
defaultAudio?booleanDefault audio setting for calls on this linesrc/types/multiline.types.ts:38
defaultVideo?booleanDefault video setting for calls on this linesrc/types/multiline.types.ts:41
ringtone?stringCustom ringtone for this linesrc/types/multiline.types.ts:44
autoAnswer?booleanAuto-answer settings for this linesrc/types/multiline.types.ts:47
autoAnswerDelay?numberAuto-answer delay in millisecondssrc/types/multiline.types.ts:50

LineState

Defined in: src/types/multiline.types.ts:56

Line state representing current call information

Properties

PropertyTypeDescriptionDefined in
lineNumbernumberLine number (1-indexed)src/types/multiline.types.ts:58
statusLineStatusCurrent status of the linesrc/types/multiline.types.ts:61
callIdstring | nullCall ID if there's an active callsrc/types/multiline.types.ts:64
callStateCallState | nullCall state if there's an active callsrc/types/multiline.types.ts:67
directionCallDirection | nullCall directionsrc/types/multiline.types.ts:70
remoteUristring | nullRemote party URIsrc/types/multiline.types.ts:73
remoteDisplayNamestring | nullRemote party display namesrc/types/multiline.types.ts:76
isOnHoldbooleanWhether this line is currently on holdsrc/types/multiline.types.ts:79
isMutedbooleanWhether this line is currently mutedsrc/types/multiline.types.ts:82
hasVideobooleanWhether this line has videosrc/types/multiline.types.ts:85
timingCallTimingInfo | nullCall timing informationsrc/types/multiline.types.ts:88
durationnumberCall duration in secondssrc/types/multiline.types.ts:91
errorstring | nullError message if status is 'error'src/types/multiline.types.ts:94
configLineConfigLine configurationsrc/types/multiline.types.ts:97

LineCallOptions

Defined in: src/types/multiline.types.ts:103

Options for making a call on a specific line

Properties

PropertyTypeDescriptionDefined in
lineNumber?numberTarget line number (auto-selects if not specified)src/types/multiline.types.ts:105
audio?booleanEnable audiosrc/types/multiline.types.ts:108
video?booleanEnable videosrc/types/multiline.types.ts:111
extraHeaders?string[]Custom SIP headerssrc/types/multiline.types.ts:114
data?Record<string, unknown>Custom call datasrc/types/multiline.types.ts:117

LineAnswerOptions

Defined in: src/types/multiline.types.ts:123

Options for answering a call on a specific line

Properties

PropertyTypeDescriptionDefined in
audio?booleanEnable audiosrc/types/multiline.types.ts:125
video?booleanEnable videosrc/types/multiline.types.ts:128
extraHeaders?string[]Custom SIP headerssrc/types/multiline.types.ts:131

LineTransferOptions

Defined in: src/types/multiline.types.ts:137

Options for transferring a call

Properties

PropertyTypeDescriptionDefined in
fromLinenumberSource line numbersrc/types/multiline.types.ts:139
targetstring | numberTarget for transfer (can be another line or external target)src/types/multiline.types.ts:142
attended?booleanWhether to perform attended transfersrc/types/multiline.types.ts:145
extraHeaders?string[]Custom SIP headerssrc/types/multiline.types.ts:148

LineConferenceOptions

Defined in: src/types/multiline.types.ts:154

Options for conference between lines

Properties

PropertyTypeDescriptionDefined in
linesnumber[]Lines to include in conferencesrc/types/multiline.types.ts:156
allowAdd?booleanWhether to allow adding more participants latersrc/types/multiline.types.ts:159

LineEvent

Defined in: src/types/multiline.types.ts:165

Line event types

Extended by

Properties

PropertyTypeDescriptionDefined in
typestringEvent typesrc/types/multiline.types.ts:167
lineNumbernumberLine numbersrc/types/multiline.types.ts:170
timestampDateTimestampsrc/types/multiline.types.ts:173
previousState?LineStatePrevious statesrc/types/multiline.types.ts:176
currentStateLineStateCurrent statesrc/types/multiline.types.ts:179

LineStateChangeEvent

Defined in: src/types/multiline.types.ts:185

Line state change event

Extends

Properties

PropertyTypeDescriptionOverridesInherited fromDefined in
lineNumbernumberLine number-LineEvent.lineNumbersrc/types/multiline.types.ts:170
timestampDateTimestamp-LineEvent.timestampsrc/types/multiline.types.ts:173
previousState?LineStatePrevious state-LineEvent.previousStatesrc/types/multiline.types.ts:176
currentStateLineStateCurrent state-LineEvent.currentStatesrc/types/multiline.types.ts:179
type"stateChange"Event typeLineEvent.type-src/types/multiline.types.ts:186

LineIncomingCallEvent

Defined in: src/types/multiline.types.ts:192

Line incoming call event

Extends

Properties

PropertyTypeDescriptionOverridesInherited fromDefined in
lineNumbernumberLine number-LineEvent.lineNumbersrc/types/multiline.types.ts:170
timestampDateTimestamp-LineEvent.timestampsrc/types/multiline.types.ts:173
previousState?LineStatePrevious state-LineEvent.previousStatesrc/types/multiline.types.ts:176
currentStateLineStateCurrent state-LineEvent.currentStatesrc/types/multiline.types.ts:179
type"incomingCall"Event typeLineEvent.type-src/types/multiline.types.ts:193
remoteUristringRemote party URI--src/types/multiline.types.ts:196
remoteDisplayName?stringRemote party display name--src/types/multiline.types.ts:199

LineCallEndedEvent

Defined in: src/types/multiline.types.ts:205

Line call ended event

Extends

Properties

PropertyTypeDescriptionOverridesInherited fromDefined in
lineNumbernumberLine number-LineEvent.lineNumbersrc/types/multiline.types.ts:170
timestampDateTimestamp-LineEvent.timestampsrc/types/multiline.types.ts:173
previousState?LineStatePrevious state-LineEvent.previousStatesrc/types/multiline.types.ts:176
currentStateLineStateCurrent state-LineEvent.currentStatesrc/types/multiline.types.ts:179
type"callEnded"Event typeLineEvent.type-src/types/multiline.types.ts:206
causeTerminationCauseTermination cause--src/types/multiline.types.ts:209
durationnumberCall duration in seconds--src/types/multiline.types.ts:212

LineSelectionChangeEvent

Defined in: src/types/multiline.types.ts:218

Line selection change event

Extends

Properties

PropertyTypeDescriptionOverridesInherited fromDefined in
lineNumbernumberLine number-LineEvent.lineNumbersrc/types/multiline.types.ts:170
timestampDateTimestamp-LineEvent.timestampsrc/types/multiline.types.ts:173
previousState?LineStatePrevious state-LineEvent.previousStatesrc/types/multiline.types.ts:176
currentStateLineStateCurrent state-LineEvent.currentStatesrc/types/multiline.types.ts:179
type"selectionChange"Event typeLineEvent.type-src/types/multiline.types.ts:219
previousLinenumber | nullPrevious selected line--src/types/multiline.types.ts:222
newLinenumberNew selected line--src/types/multiline.types.ts:225

UseSipSecondLineOptions

Defined in: src/types/multiline.types.ts:231

Options for useSipSecondLine composable

Properties

PropertyTypeDescriptionDefined in
lineCount?numberNumber of lines to support (default: 2)src/types/multiline.types.ts:233
maxConcurrentCalls?numberMaximum concurrent calls allowed (default: lineCount)src/types/multiline.types.ts:236
autoHoldOnNewCall?booleanAuto-hold other lines when making/answering call (default: true)src/types/multiline.types.ts:239
autoSelectLine?booleanAuto-select next available line for incoming calls (default: true)src/types/multiline.types.ts:242
lineConfigs?Partial<LineConfig>[]Line configurationssrc/types/multiline.types.ts:245
onLineStateChange?(event) => voidCallback when line state changessrc/types/multiline.types.ts:248
onLineIncomingCall?(event) => voidCallback when incoming call on a linesrc/types/multiline.types.ts:251
onLineCallEnded?(event) => voidCallback when call ends on a linesrc/types/multiline.types.ts:254
onSelectionChange?(event) => voidCallback when selected line changessrc/types/multiline.types.ts:257

UseSipSecondLineReturn

Defined in: src/types/multiline.types.ts:263

Return type for useSipSecondLine composable

Properties

PropertyTypeDescriptionDefined in
linesRef<LineState[]>Array of all line statessrc/types/multiline.types.ts:269
selectedLineRef<number>Currently selected/active line numbersrc/types/multiline.types.ts:272
selectedLineStateComputedRef<LineState | null>Currently selected line statesrc/types/multiline.types.ts:275
activeCallCountComputedRef<number>Number of active calls across all linessrc/types/multiline.types.ts:278
incomingCallCountComputedRef<number>Number of lines with incoming callssrc/types/multiline.types.ts:281
allLinesBusyComputedRef<boolean>Whether all lines are busysrc/types/multiline.types.ts:284
availableLinesComputedRef<LineState[]>Available (idle) linessrc/types/multiline.types.ts:287
activeLinesComputedRef<LineState[]>Lines with active callssrc/types/multiline.types.ts:290
ringingLinesComputedRef<LineState[]>Lines with incoming calls (ringing)src/types/multiline.types.ts:293
heldLinesComputedRef<LineState[]>Lines on holdsrc/types/multiline.types.ts:296
isLoadingRef<boolean>Loading statesrc/types/multiline.types.ts:299
errorRef<string | null>Error messagesrc/types/multiline.types.ts:302
selectLine(lineNumber) => voidSelect a specific linesrc/types/multiline.types.ts:309
selectNextAvailable() => number | nullSelect next available linesrc/types/multiline.types.ts:312
selectRingingLine() => number | nullSelect line with incoming callsrc/types/multiline.types.ts:315
makeCall(target, options?) => Promise<number>Make a call on a specific line (or auto-select)src/types/multiline.types.ts:322
answerCall(lineNumber, options?) => Promise<void>Answer incoming call on a specific linesrc/types/multiline.types.ts:325
rejectCall(lineNumber, statusCode?) => Promise<void>Reject incoming call on a specific linesrc/types/multiline.types.ts:328
hangupCall(lineNumber) => Promise<void>Hangup call on a specific linesrc/types/multiline.types.ts:331
hangupAll() => Promise<void>Hangup all callssrc/types/multiline.types.ts:334
holdLine(lineNumber) => Promise<void>Put a line on holdsrc/types/multiline.types.ts:341
unholdLine(lineNumber) => Promise<void>Resume a held linesrc/types/multiline.types.ts:344
toggleHoldLine(lineNumber) => Promise<void>Toggle hold state on a linesrc/types/multiline.types.ts:347
muteLine(lineNumber) => voidMute a linesrc/types/multiline.types.ts:350
unmuteLine(lineNumber) => voidUnmute a linesrc/types/multiline.types.ts:353
toggleMuteLine(lineNumber) => voidToggle mute on a linesrc/types/multiline.types.ts:356
sendDTMF(lineNumber, tone) => Promise<void>Send DTMF on a linesrc/types/multiline.types.ts:359
transferCall(options) => Promise<void>Transfer call from one line to another or external targetsrc/types/multiline.types.ts:366
swapLines(line1, line2) => Promise<void>Swap between two active/held linessrc/types/multiline.types.ts:369
mergeLines(options) => Promise<void>Merge lines into conference (if supported)src/types/multiline.types.ts:372
parkCall(lineNumber, parkingLot?) => Promise<string>Park a call from a specific linesrc/types/multiline.types.ts:375
getLineState(lineNumber) => LineState | nullGet line state by numbersrc/types/multiline.types.ts:382
getLineByCallId(callId) => LineState | nullGet line by call IDsrc/types/multiline.types.ts:385
isLineAvailable(lineNumber) => booleanCheck if a line is availablesrc/types/multiline.types.ts:388
getLineStats(lineNumber) => Promise<CallStatistics | null>Get call statistics for a linesrc/types/multiline.types.ts:391
configureLine(lineNumber, config) => voidConfigure a specific linesrc/types/multiline.types.ts:394
resetLine(lineNumber) => voidReset a line to idle statesrc/types/multiline.types.ts:397
resetAllLines() => voidReset all linessrc/types/multiline.types.ts:400

PageGroup

Defined in: src/types/paging.types.ts:25

Page group configuration

Properties

PropertyTypeDescriptionDefined in
idstringUnique group identifiersrc/types/paging.types.ts:27
namestringGroup name for displaysrc/types/paging.types.ts:30
extensionsstring[]Extensions included in this groupsrc/types/paging.types.ts:33
modePagingModeDefault paging mode for this groupsrc/types/paging.types.ts:36
enabledbooleanWhether group is enabledsrc/types/paging.types.ts:39
description?stringOptional descriptionsrc/types/paging.types.ts:42
callerId?stringCaller ID to display when paging this groupsrc/types/paging.types.ts:45
timeout?numberCustom timeout in secondssrc/types/paging.types.ts:48

PagingSession

Defined in: src/types/paging.types.ts:54

Active paging session

Properties

PropertyTypeDescriptionDefined in
sessionIdstringUnique session IDsrc/types/paging.types.ts:56
targetstringTarget extension or group IDsrc/types/paging.types.ts:59
isGroupbooleanWhether target is a groupsrc/types/paging.types.ts:62
modePagingModePaging modesrc/types/paging.types.ts:65
statusPagingStatusCurrent statussrc/types/paging.types.ts:68
channel?stringChannel identifier from AMIsrc/types/paging.types.ts:71
startTimeDateStart timestampsrc/types/paging.types.ts:74
endTime?DateEnd timestamp if completedsrc/types/paging.types.ts:77
durationnumberDuration in secondssrc/types/paging.types.ts:80
error?stringError message if status is errorsrc/types/paging.types.ts:83
answeredExtensions?string[]Extensions that answered (for group paging)src/types/paging.types.ts:86

PageOptions

Defined in: src/types/paging.types.ts:106

Options for initiating a page

Extended by

Properties

PropertyTypeDescriptionDefined in
mode?PagingModePaging mode (default: simplex)src/types/paging.types.ts:108
callerId?stringCaller ID to displaysrc/types/paging.types.ts:111
timeout?numberTimeout in seconds (default: 30)src/types/paging.types.ts:114
context?stringContext for paging (default: from config)src/types/paging.types.ts:117
variables?Record<string, string>Channel variablessrc/types/paging.types.ts:120
autoAnswer?booleanWhether to auto-answer (for supported endpoints)src/types/paging.types.ts:123

GroupPageOptions

Defined in: src/types/paging.types.ts:129

Options for group paging

Extends

Properties

PropertyTypeDescriptionInherited fromDefined in
mode?PagingModePaging mode (default: simplex)PageOptions.modesrc/types/paging.types.ts:108
callerId?stringCaller ID to displayPageOptions.callerIdsrc/types/paging.types.ts:111
timeout?numberTimeout in seconds (default: 30)PageOptions.timeoutsrc/types/paging.types.ts:114
context?stringContext for paging (default: from config)PageOptions.contextsrc/types/paging.types.ts:117
variables?Record<string, string>Channel variablesPageOptions.variablessrc/types/paging.types.ts:120
autoAnswer?booleanWhether to auto-answer (for supported endpoints)PageOptions.autoAnswersrc/types/paging.types.ts:123
filterExtensions?string[]Only page specific extensions from the group-src/types/paging.types.ts:131
maxChannels?numberMaximum concurrent calls in group page-src/types/paging.types.ts:134
skipBusy?booleanSkip busy extensions-src/types/paging.types.ts:137

UseAmiPagingOptions

Defined in: src/types/paging.types.ts:143

Options for useAmiPaging composable

Properties

PropertyTypeDescriptionDefined in
defaultMode?PagingModeDefault paging modesrc/types/paging.types.ts:145
defaultTimeout?numberDefault timeout in secondssrc/types/paging.types.ts:148
defaultContext?stringDefault context for pagingsrc/types/paging.types.ts:151
defaultCallerId?stringDefault caller IDsrc/types/paging.types.ts:154
pageGroups?PageGroup[]Initial page groupssrc/types/paging.types.ts:157
autoAnswerHeader?stringAuto-answer header for SIP (e.g., 'Call-Info: answer-after=0')src/types/paging.types.ts:160
onPageStart?(session) => voidCallback when paging startssrc/types/paging.types.ts:163
onPageConnect?(session) => voidCallback when paging connects (duplex mode)src/types/paging.types.ts:166
onPageEnd?(session) => voidCallback when paging endssrc/types/paging.types.ts:169
onError?(error, session?) => voidCallback on errorsrc/types/paging.types.ts:172

UseAmiPagingReturn

Defined in: src/types/paging.types.ts:178

Return type for useAmiPaging composable

Properties

PropertyTypeDescriptionDefined in
statusRef<PagingStatus>Current paging statussrc/types/paging.types.ts:184
activeSessionRef<PagingSession | null>Active paging sessionsrc/types/paging.types.ts:187
pageGroupsRef<PageGroup[]>Page groupssrc/types/paging.types.ts:190
isLoadingRef<boolean>Loading statesrc/types/paging.types.ts:193
errorRef<string | null>Error messagesrc/types/paging.types.ts:196
historyRef<PagingSession[]>Paging historysrc/types/paging.types.ts:199
isPagingComputedRef<boolean>Whether currently pagingsrc/types/paging.types.ts:206
isConnectedComputedRef<boolean>Whether connected (duplex mode)src/types/paging.types.ts:209
currentDurationComputedRef<number>Current session duration in secondssrc/types/paging.types.ts:212
enabledGroupsComputedRef<PageGroup[]>Enabled page groupssrc/types/paging.types.ts:215
groupCountComputedRef<number>Group countsrc/types/paging.types.ts:218
pageExtension(extension, options?) => Promise<PagingSession>Page a single extensionsrc/types/paging.types.ts:225
pageGroup(groupId, options?) => Promise<PagingSession>Page a groupsrc/types/paging.types.ts:228
pageExtensions(extensions, options?) => Promise<PagingSession>Page multiple extensions directlysrc/types/paging.types.ts:231
endPage() => Promise<void>End active paging sessionsrc/types/paging.types.ts:234
togglePage(target, isGroup?, options?) => Promise<void>Toggle page (start/stop)src/types/paging.types.ts:237
addGroup(group) => voidAdd a page groupsrc/types/paging.types.ts:244
updateGroup(groupId, updates) => voidUpdate a page groupsrc/types/paging.types.ts:247
removeGroup(groupId) => voidRemove a page groupsrc/types/paging.types.ts:250
getGroup(groupId) => PageGroup | undefinedGet a page group by IDsrc/types/paging.types.ts:253
toggleGroupEnabled(groupId) => voidEnable/disable a groupsrc/types/paging.types.ts:256
clearHistory() => voidClear paging historysrc/types/paging.types.ts:263
getHistoryForTarget(target) => PagingSession[]Get history for specific targetsrc/types/paging.types.ts:266

ParkedCall

Defined in: src/types/parking.types.ts:16

Parked call information

Properties

PropertyTypeDescriptionDefined in
parkingSpacenumberParking space numbersrc/types/parking.types.ts:18
parkingLotstringParking lot namesrc/types/parking.types.ts:20
channelstringParked channelsrc/types/parking.types.ts:22
uniqueIdstringUnique IDsrc/types/parking.types.ts:24
linkedIdstringLinked IDsrc/types/parking.types.ts:26
callerIdNumstringCaller ID numbersrc/types/parking.types.ts:28
callerIdNamestringCaller ID namesrc/types/parking.types.ts:30
connectedLineNumstringConnected line numbersrc/types/parking.types.ts:32
connectedLineNamestringConnected line namesrc/types/parking.types.ts:34
parkerChannel?stringParker channel (who parked the call)src/types/parking.types.ts:36
parkerDialString?stringParker dial stringsrc/types/parking.types.ts:38
parkedTimeDateTime the call was parkedsrc/types/parking.types.ts:40
timeoutnumberTimeout in secondssrc/types/parking.types.ts:42
timeRemainingnumberTime remaining until timeout (seconds)src/types/parking.types.ts:44
serverId?numberServer ID for multi-server setupssrc/types/parking.types.ts:46

ParkingLot

Defined in: src/types/parking.types.ts:52

Parking lot configuration

Properties

PropertyTypeDescriptionDefined in
namestringLot namesrc/types/parking.types.ts:54
startSpacenumberStarting space numbersrc/types/parking.types.ts:56
endSpacenumberEnding space numbersrc/types/parking.types.ts:58
timeoutnumberDefault timeout in secondssrc/types/parking.types.ts:60
parkedCallsnumberNumber of parked callssrc/types/parking.types.ts:62
availableSpacesnumberAvailable spacessrc/types/parking.types.ts:64
totalSpacesnumberTotal spacessrc/types/parking.types.ts:66
serverId?numberServer IDsrc/types/parking.types.ts:68

ParkingLotStatus

Defined in: src/types/parking.types.ts:74

Parking lot status (summary)

Properties

PropertyTypeDescriptionDefined in
namestringLot namesrc/types/parking.types.ts:76
callsParkedCall[]List of parked callssrc/types/parking.types.ts:78
occupiednumberNumber of occupied spacessrc/types/parking.types.ts:80
capacitynumberTotal capacitysrc/types/parking.types.ts:82
lastUpdatedDateLast updatedsrc/types/parking.types.ts:84
serverId?numberServer IDsrc/types/parking.types.ts:86

UseAmiParkingOptions

Defined in: src/types/parking.types.ts:242

Options for useAmiParking composable

Properties

PropertyTypeDescriptionDefined in
pollInterval?numberPolling interval for parking status in ms (0 = events only)src/types/parking.types.ts:244
useEvents?booleanUse real-time parking eventssrc/types/parking.types.ts:246
autoRefresh?booleanAuto-refresh parking lots on reconnectsrc/types/parking.types.ts:248
defaultParkingLot?stringDefault parking lot namesrc/types/parking.types.ts:250
parkingLotFilter?(lot) => booleanParking lot filter functionsrc/types/parking.types.ts:252
parkedCallFilter?(call) => booleanParked call filter functionsrc/types/parking.types.ts:254
onCallParked?(call) => voidParked call callbacksrc/types/parking.types.ts:256
onCallRetrieved?(call, retrieverChannel) => voidCall retrieved callbacksrc/types/parking.types.ts:258
onCallTimeout?(call) => voidCall timeout callbacksrc/types/parking.types.ts:260
onCallGiveUp?(call) => voidCall give-up callback (caller hung up)src/types/parking.types.ts:262
transformParkedCall?(call) => ParkedCallTransform parked call functionsrc/types/parking.types.ts:264

PluginManager

Defined in: src/types/plugin.types.ts:292

Plugin manager interface

Methods

register()
ts
register<TConfig>(plugin, config?): Promise<void>;

Defined in: src/types/plugin.types.ts:294

Register a plugin

Type Parameters
Type ParameterDefault type
TConfig extends PluginConfigPluginConfig
Parameters
ParameterType
pluginPlugin<TConfig>
config?TConfig
Returns

Promise<void>

unregister()
ts
unregister(pluginName): Promise<void>;

Defined in: src/types/plugin.types.ts:300

Unregister a plugin

Parameters
ParameterType
pluginNamestring
Returns

Promise<void>

get()
ts
get(pluginName): 
  | PluginEntry<PluginConfig>
  | undefined;

Defined in: src/types/plugin.types.ts:303

Get a registered plugin

Parameters
ParameterType
pluginNamestring
Returns

| PluginEntry<PluginConfig> | undefined

has()
ts
has(pluginName): boolean;

Defined in: src/types/plugin.types.ts:306

Check if a plugin is registered

Parameters
ParameterType
pluginNamestring
Returns

boolean

getAll()
ts
getAll(): Map<string, PluginEntry<PluginConfig>>;

Defined in: src/types/plugin.types.ts:309

Get all registered plugins

Returns

Map<string, PluginEntry<PluginConfig>>

updateConfig()
ts
updateConfig<TConfig>(pluginName, config): Promise<void>;

Defined in: src/types/plugin.types.ts:312

Update a plugin's configuration

Type Parameters
Type ParameterDefault type
TConfig extends PluginConfigPluginConfig
Parameters
ParameterType
pluginNamestring
configTConfig
Returns

Promise<void>

destroy()
ts
destroy(): Promise<void>;

Defined in: src/types/plugin.types.ts:318

Destroy the plugin manager and uninstall all plugins

Returns

Promise<void>


AmiRecordingOptions

Defined in: src/types/recording.types.ts:43

AMI Recording options for MixMonitor

Properties

PropertyTypeDescriptionDefined in
format?AmiRecordingFormatRecording file format (default: 'wav')src/types/recording.types.ts:45
filename?stringFile path/name (without extension). If not provided, auto-generatedsrc/types/recording.types.ts:48
directory?stringDirectory to store recordings (default: Asterisk's monitor directory)src/types/recording.types.ts:51
mixMode?AmiRecordingMixModeMix mode - which audio to record (default: 'both')src/types/recording.types.ts:54
append?booleanWhether to append to existing file (default: false)src/types/recording.types.ts:57
postCommand?stringPost-recording command to executesrc/types/recording.types.ts:60
readVolume?numberVolume adjustment for read direction (-4 to 4)src/types/recording.types.ts:63
writeVolume?numberVolume adjustment for write direction (-4 to 4)src/types/recording.types.ts:66
toggleDtmf?stringDTMF to toggle recording on/off (e.g., '#')src/types/recording.types.ts:69
pauseDtmf?stringDTMF to pause/resume recording (e.g., '*')src/types/recording.types.ts:72
customOptions?stringCustom MixMonitor options stringsrc/types/recording.types.ts:75

AmiRecordingSession

Defined in: src/types/recording.types.ts:81

Active AMI recording session information

Properties

PropertyTypeDescriptionDefined in
idstringUnique recording IDsrc/types/recording.types.ts:83
channelstringChannel being recordedsrc/types/recording.types.ts:86
filePathstringRecording file path (full path with extension)src/types/recording.types.ts:89
filenamestringRecording filename (without path)src/types/recording.types.ts:92
stateAmiRecordingStateCurrent recording statesrc/types/recording.types.ts:95
startedAtDateRecording start timesrc/types/recording.types.ts:98
pausedAt?DateRecording pause time (if paused)src/types/recording.types.ts:101
totalPauseDurationnumberTotal pause duration in millisecondssrc/types/recording.types.ts:104
durationnumberRecording duration in seconds (excluding pauses)src/types/recording.types.ts:107
formatAmiRecordingFormatRecording formatsrc/types/recording.types.ts:110
mixModeAmiRecordingMixModeMix modesrc/types/recording.types.ts:113
fileSize?numberFile size in bytes (if available)src/types/recording.types.ts:116
serverId?numberAMI server ID (for multi-server setups)src/types/recording.types.ts:119
callUniqueId?stringAssociated call unique IDsrc/types/recording.types.ts:122
options?AmiRecordingOptionsRecording options usedsrc/types/recording.types.ts:125

AmiRecordingEvent

Defined in: src/types/recording.types.ts:236

AMI Recording event payload

Properties

PropertyTypeDescriptionDefined in
typeAmiRecordingEventTypeEvent typesrc/types/recording.types.ts:238
recordingAmiRecordingSessionRecording sessionsrc/types/recording.types.ts:241
error?stringError message (for 'failed' events)src/types/recording.types.ts:244
timestampDateEvent timestampsrc/types/recording.types.ts:247

AmiRecordingStats

Defined in: src/types/recording.types.ts:253

AMI Recording statistics

Properties

PropertyTypeDescriptionDefined in
totalRecordingsnumberTotal number of recordingssrc/types/recording.types.ts:255
totalDurationnumberTotal duration of all recordings in secondssrc/types/recording.types.ts:258
totalSizenumberTotal file size in bytessrc/types/recording.types.ts:261
averageDurationnumberAverage recording duration in secondssrc/types/recording.types.ts:264
byFormatRecord<AmiRecordingFormat, number>Recordings by formatsrc/types/recording.types.ts:267
recordingsTodaynumberRecordings todaysrc/types/recording.types.ts:270
durationTodaynumberDuration today in secondssrc/types/recording.types.ts:273

UseAmiRecordingOptions

Defined in: src/types/recording.types.ts:279

Options for useAmiRecording composable

Properties

PropertyTypeDescriptionDefined in
defaultFormat?AmiRecordingFormatDefault recording format (default: 'wav')src/types/recording.types.ts:281
defaultMixMode?AmiRecordingMixModeDefault mix mode (default: 'both')src/types/recording.types.ts:284
defaultDirectory?stringDefault recording directorysrc/types/recording.types.ts:287
autoRecord?booleanAuto-start recording on call connectsrc/types/recording.types.ts:290
autoStop?booleanAuto-stop recording on call disconnectsrc/types/recording.types.ts:293
trackDuration?booleanEnable real-time duration updatessrc/types/recording.types.ts:296
durationInterval?numberDuration update interval in ms (default: 1000)src/types/recording.types.ts:299
onRecordingStart?(recording) => voidCallback when recording startssrc/types/recording.types.ts:302
onRecordingStop?(recording) => voidCallback when recording stopssrc/types/recording.types.ts:305
onRecordingPause?(recording) => voidCallback when recording is pausedsrc/types/recording.types.ts:308
onRecordingResume?(recording) => voidCallback when recording is resumedsrc/types/recording.types.ts:311
onRecordingError?(recording, error) => voidCallback when recording failssrc/types/recording.types.ts:314
transformRecording?(recording) => AmiRecordingSessionTransform recording datasrc/types/recording.types.ts:317

UseAmiRecordingReturn

Defined in: src/types/recording.types.ts:323

Return type for useAmiRecording composable

Properties

PropertyTypeDescriptionDefined in
recordingsRef<Map<string, AmiRecordingSession>, Map<string, AmiRecordingSession>>Map of active recording sessions by channelsrc/types/recording.types.ts:326
currentRecordingComputedRef<AmiRecordingSession | null>Currently selected/focused recordingsrc/types/recording.types.ts:329
isRecordingComputedRef<boolean>Whether any recording is activesrc/types/recording.types.ts:332
activeCountComputedRef<number>Total number of active recordingssrc/types/recording.types.ts:335
isLoadingRef<boolean, boolean>Loading statesrc/types/recording.types.ts:338
errorRef<string | null, string | null>Error messagesrc/types/recording.types.ts:341
startRecording(channel, options?) => Promise<AmiRecordingSession>Start recording a channelsrc/types/recording.types.ts:345
stopRecording(channel) => Promise<void>Stop recording a channelsrc/types/recording.types.ts:348
pauseRecording(channel) => Promise<void>Pause recording on a channelsrc/types/recording.types.ts:351
resumeRecording(channel) => Promise<void>Resume recording on a channelsrc/types/recording.types.ts:354
toggleRecording(channel, options?) => Promise<void>Toggle recording state (start/stop)src/types/recording.types.ts:357
togglePause(channel) => Promise<void>Toggle pause statesrc/types/recording.types.ts:360
getRecording(channel) => AmiRecordingSession | undefinedGet recording session for a channelsrc/types/recording.types.ts:363
isChannelRecording(channel) => booleanCheck if channel is being recordedsrc/types/recording.types.ts:366
onRecordingEvent(callback) => () => voidListen for recording eventssrc/types/recording.types.ts:369
getStats() => AmiRecordingStatsGet recording statisticssrc/types/recording.types.ts:372
clearRecordings() => voidClear all recordings statesrc/types/recording.types.ts:375
generateFilename(channel, options?) => stringGenerate recording filenamesrc/types/recording.types.ts:378

RingGroupMember

Defined in: src/types/ringgroup.types.ts:48

Ring group member definition

Properties

PropertyTypeDescriptionDefined in
extensionstringMember extension or interface (e.g., "1001" or "PJSIP/1001")src/types/ringgroup.types.ts:50
interfacestringFull interface string (e.g., "PJSIP/1001")src/types/ringgroup.types.ts:53
namestringDisplay name for the membersrc/types/ringgroup.types.ts:56
statusRingGroupMemberStatusCurrent statussrc/types/ringgroup.types.ts:59
prioritynumberPriority/order in the ring group (lower = higher priority)src/types/ringgroup.types.ts:62
enabledbooleanWhether member is currently enabled in the groupsrc/types/ringgroup.types.ts:65
addedAt?DateTime member was added to the ring groupsrc/types/ringgroup.types.ts:68
lastStatusChange?DateLast time member's status changedsrc/types/ringgroup.types.ts:71
callsAnswerednumberNumber of calls answered in this ring groupsrc/types/ringgroup.types.ts:74
callsMissednumberNumber of calls missed/not answeredsrc/types/ringgroup.types.ts:77

RingGroupStats

Defined in: src/types/ringgroup.types.ts:83

Ring group call statistics

Properties

PropertyTypeDescriptionDefined in
totalCallsnumberTotal calls to this ring groupsrc/types/ringgroup.types.ts:85
answeredCallsnumberCalls answered by any membersrc/types/ringgroup.types.ts:88
unansweredCallsnumberCalls that went unanswered/abandonedsrc/types/ringgroup.types.ts:91
timedOutCallsnumberCalls that timed outsrc/types/ringgroup.types.ts:94
avgRingTimenumberAverage ring time before answer (seconds)src/types/ringgroup.types.ts:97
avgTalkTimenumberAverage talk time (seconds)src/types/ringgroup.types.ts:100
currentCallsnumberCurrent calls in queue/ringingsrc/types/ringgroup.types.ts:103
serviceLevelnumberService level percentagesrc/types/ringgroup.types.ts:106
lastCallTime?DateLast call timestampsrc/types/ringgroup.types.ts:109

RingGroup

Defined in: src/types/ringgroup.types.ts:115

Ring group definition

Properties

PropertyTypeDescriptionDefined in
idstringUnique ring group identifier/numbersrc/types/ringgroup.types.ts:117
namestringRing group name/descriptionsrc/types/ringgroup.types.ts:120
extensionstringRing group extension to dialsrc/types/ringgroup.types.ts:123
strategyRingStrategyRing strategysrc/types/ringgroup.types.ts:126
ringTimeoutnumberRing timeout per member (seconds)src/types/ringgroup.types.ts:129
totalTimeoutnumberTotal ring timeout before failover (seconds)src/types/ringgroup.types.ts:132
stateRingGroupStateCurrent statesrc/types/ringgroup.types.ts:135
enabledbooleanWhether ring group is enabledsrc/types/ringgroup.types.ts:138
membersRingGroupMember[]Members in this ring groupsrc/types/ringgroup.types.ts:141
statsRingGroupStatsRing group statisticssrc/types/ringgroup.types.ts:144
failoverDestination?stringFailover destination if no answersrc/types/ringgroup.types.ts:147
cidNamePrefix?stringCID name prefix for calls to this groupsrc/types/ringgroup.types.ts:150
skipBusybooleanWhether to skip busy memberssrc/types/ringgroup.types.ts:153
confirmAnswerbooleanWhether to confirm answer (requires digit press)src/types/ringgroup.types.ts:156
announcement?stringAnnouncement to play to callersrc/types/ringgroup.types.ts:159
musicOnHold?stringMusic on hold classsrc/types/ringgroup.types.ts:162
lastUpdatedDateLast updated timestampsrc/types/ringgroup.types.ts:165

RingGroupEvent

Defined in: src/types/ringgroup.types.ts:188

Ring group event

Properties

PropertyTypeDescriptionDefined in
typeRingGroupEventTypeEvent typesrc/types/ringgroup.types.ts:190
groupIdstringRing group IDsrc/types/ringgroup.types.ts:193
member?stringMember extension (if applicable)src/types/ringgroup.types.ts:196
callerId?stringCaller IDsrc/types/ringgroup.types.ts:199
channel?stringChannel identifiersrc/types/ringgroup.types.ts:202
timestampDateEvent timestampsrc/types/ringgroup.types.ts:205
data?Record<string, unknown>Additional event datasrc/types/ringgroup.types.ts:208

UseAmiRingGroupsOptions

Defined in: src/types/ringgroup.types.ts:259

Options for the useAmiRingGroups composable

Properties

PropertyTypeDescriptionDefined in
autoStart?booleanAuto-start monitoring on creationsrc/types/ringgroup.types.ts:261
refreshInterval?numberRefresh interval in millisecondssrc/types/ringgroup.types.ts:264
groupIds?string[]Ring group IDs to monitor (empty = all)src/types/ringgroup.types.ts:267
onEvent?(event) => voidCallback when ring group event occurssrc/types/ringgroup.types.ts:270
onStatsUpdate?(groupId, stats) => voidCallback when ring group stats updatesrc/types/ringgroup.types.ts:273
onMemberStatusChange?(groupId, member, status) => voidCallback when member status changessrc/types/ringgroup.types.ts:276
onError?(error) => voidCallback on errorsrc/types/ringgroup.types.ts:283

AddMemberResult

Defined in: src/types/ringgroup.types.ts:289

Result of adding a member to a ring group

Properties

PropertyTypeDefined in
successbooleansrc/types/ringgroup.types.ts:290
groupIdstringsrc/types/ringgroup.types.ts:291
memberstringsrc/types/ringgroup.types.ts:292
error?stringsrc/types/ringgroup.types.ts:293

RemoveMemberResult

Defined in: src/types/ringgroup.types.ts:299

Result of removing a member from a ring group

Properties

PropertyTypeDefined in
successbooleansrc/types/ringgroup.types.ts:300
groupIdstringsrc/types/ringgroup.types.ts:301
memberstringsrc/types/ringgroup.types.ts:302
error?stringsrc/types/ringgroup.types.ts:303

UpdateStrategyResult

Defined in: src/types/ringgroup.types.ts:309

Result of updating ring group strategy

Properties

PropertyTypeDefined in
successbooleansrc/types/ringgroup.types.ts:310
groupIdstringsrc/types/ringgroup.types.ts:311
strategyRingStrategysrc/types/ringgroup.types.ts:312
error?stringsrc/types/ringgroup.types.ts:313

UseAmiRingGroupsReturn

Defined in: src/types/ringgroup.types.ts:319

Return type for useAmiRingGroups composable

Properties

PropertyTypeDescriptionDefined in
ringGroupsRef<Map<string, RingGroup>>All monitored ring groupssrc/types/ringgroup.types.ts:322
selectedGroupRef<RingGroup | null>Currently selected ring groupsrc/types/ringgroup.types.ts:325
isMonitoringRef<boolean>Whether monitoring is activesrc/types/ringgroup.types.ts:328
isLoadingRef<boolean>Loading statesrc/types/ringgroup.types.ts:331
errorRef<string | null>Error message if anysrc/types/ringgroup.types.ts:334
groupListComputedRef<RingGroup[]>List of all ring groupssrc/types/ringgroup.types.ts:338
totalMembersComputedRef<number>Total members across all groupssrc/types/ringgroup.types.ts:341
availableMembersComputedRef<number>Available members countsrc/types/ringgroup.types.ts:344
activeGroupsComputedRef<RingGroup[]>Groups with active callssrc/types/ringgroup.types.ts:347
disabledGroupsComputedRef<RingGroup[]>Groups with disabled statussrc/types/ringgroup.types.ts:350
startMonitoring() => voidStart monitoring ring groupssrc/types/ringgroup.types.ts:354
stopMonitoring() => voidStop monitoring ring groupssrc/types/ringgroup.types.ts:357
refresh() => Promise<void>Refresh ring group datasrc/types/ringgroup.types.ts:360
getRingGroup(groupId) => RingGroup | nullGet a specific ring group by IDsrc/types/ringgroup.types.ts:363
selectGroup(groupId) => voidSelect a ring group for detailed viewsrc/types/ringgroup.types.ts:366
addMember(groupId, extension, options?) => Promise<AddMemberResult>Add a member to a ring groupsrc/types/ringgroup.types.ts:369
removeMember(groupId, extension) => Promise<RemoveMemberResult>Remove a member from a ring groupsrc/types/ringgroup.types.ts:376
enableMember(groupId, extension) => Promise<boolean>Enable a member in a ring groupsrc/types/ringgroup.types.ts:379
disableMember(groupId, extension) => Promise<boolean>Disable a member in a ring groupsrc/types/ringgroup.types.ts:382
setMemberPriority(groupId, extension, priority) => Promise<boolean>Update member prioritysrc/types/ringgroup.types.ts:385
setStrategy(groupId, strategy) => Promise<UpdateStrategyResult>Update ring group strategysrc/types/ringgroup.types.ts:392
setRingTimeout(groupId, timeout) => Promise<boolean>Update ring timeoutsrc/types/ringgroup.types.ts:398
enableGroup(groupId) => Promise<boolean>Enable a ring groupsrc/types/ringgroup.types.ts:401
disableGroup(groupId) => Promise<boolean>Disable a ring groupsrc/types/ringgroup.types.ts:404
getMemberStatus(groupId, extension) => RingGroupMemberStatus | nullGet member statussrc/types/ringgroup.types.ts:407
getStats(groupId) => RingGroupStats | nullGet ring group statisticssrc/types/ringgroup.types.ts:413
clearStats(groupId) => voidClear statistics for a ring groupsrc/types/ringgroup.types.ts:416

TimeRange

Defined in: src/types/timeconditions.types.ts:28

Time range for business hours

Properties

PropertyTypeDescriptionDefined in
startstringStart time in HH:MM format (24-hour)src/types/timeconditions.types.ts:30
endstringEnd time in HH:MM format (24-hour)src/types/timeconditions.types.ts:32

DailySchedule

Defined in: src/types/timeconditions.types.ts:38

Daily schedule

Properties

PropertyTypeDescriptionDefined in
dayDayOfWeekDay of the weeksrc/types/timeconditions.types.ts:40
enabledbooleanWhether business is open on this daysrc/types/timeconditions.types.ts:42
rangesTimeRange[]Time ranges when business is opensrc/types/timeconditions.types.ts:44

Holiday

Defined in: src/types/timeconditions.types.ts:50

Holiday entry

Properties

PropertyTypeDescriptionDefined in
idstringUnique identifiersrc/types/timeconditions.types.ts:52
namestringHoliday namesrc/types/timeconditions.types.ts:54
datestringDate in YYYY-MM-DD formatsrc/types/timeconditions.types.ts:56
recurringbooleanWhether this is a recurring annual holidaysrc/types/timeconditions.types.ts:58
destination?stringOptional alternative message or destinationsrc/types/timeconditions.types.ts:60
description?stringOptional descriptionsrc/types/timeconditions.types.ts:62

TimeCondition

Defined in: src/types/timeconditions.types.ts:68

Time condition definition

Properties

PropertyTypeDescriptionDefined in
idstringUnique identifiersrc/types/timeconditions.types.ts:70
namestringDisplay namesrc/types/timeconditions.types.ts:72
description?stringDescriptionsrc/types/timeconditions.types.ts:74
scheduleDailySchedule[]Weekly schedulesrc/types/timeconditions.types.ts:76
holidaysHoliday[]Holiday listsrc/types/timeconditions.types.ts:78
overrideModeOverrideModeCurrent override modesrc/types/timeconditions.types.ts:80
overrideExpires?DateOverride expiration (for temporary overrides)src/types/timeconditions.types.ts:82
timezone?stringTimezone (e.g., 'America/New_York')src/types/timeconditions.types.ts:84
enabledbooleanWhether this time condition is activesrc/types/timeconditions.types.ts:86
openDestination?stringOptional open destination (dialplan context/extension)src/types/timeconditions.types.ts:88
closedDestination?stringOptional closed destinationsrc/types/timeconditions.types.ts:90
holidayDestination?stringOptional holiday destinationsrc/types/timeconditions.types.ts:92

TimeConditionStatus

Defined in: src/types/timeconditions.types.ts:98

Time condition status at a point in time

Properties

PropertyTypeDescriptionDefined in
conditionIdstringTime condition IDsrc/types/timeconditions.types.ts:100
stateTimeConditionStateCurrent statesrc/types/timeconditions.types.ts:102
statusTextstringHuman-readable statussrc/types/timeconditions.types.ts:104
isScheduledOpenbooleanWhether currently in scheduled hourssrc/types/timeconditions.types.ts:106
isOverrideActivebooleanWhether override is activesrc/types/timeconditions.types.ts:108
overrideModeOverrideModeCurrent override modesrc/types/timeconditions.types.ts:110
overrideExpires?DateOverride expiration if temporarysrc/types/timeconditions.types.ts:112
currentHoliday?HolidayToday's holiday if anysrc/types/timeconditions.types.ts:114
nextChange?objectNext state changesrc/types/timeconditions.types.ts:116
nextChange.stateTimeConditionState-src/types/timeconditions.types.ts:117
nextChange.atDate-src/types/timeconditions.types.ts:118
nextChange.reasonstring-src/types/timeconditions.types.ts:119
checkedAtDateChecked at timestampsrc/types/timeconditions.types.ts:122

OverrideResult

Defined in: src/types/timeconditions.types.ts:128

Override result

Properties

PropertyTypeDefined in
successbooleansrc/types/timeconditions.types.ts:129
conditionIdstringsrc/types/timeconditions.types.ts:130
modeOverrideModesrc/types/timeconditions.types.ts:131
message?stringsrc/types/timeconditions.types.ts:132
expiresAt?Datesrc/types/timeconditions.types.ts:133

HolidayResult

Defined in: src/types/timeconditions.types.ts:139

Holiday management result

Properties

PropertyTypeDefined in
successbooleansrc/types/timeconditions.types.ts:140
holiday?Holidaysrc/types/timeconditions.types.ts:141
message?stringsrc/types/timeconditions.types.ts:142

ScheduleResult

Defined in: src/types/timeconditions.types.ts:148

Schedule update result

Properties

PropertyTypeDefined in
successbooleansrc/types/timeconditions.types.ts:149
conditionIdstringsrc/types/timeconditions.types.ts:150
message?stringsrc/types/timeconditions.types.ts:151

UseAmiTimeConditionsOptions

Defined in: src/types/timeconditions.types.ts:157

Configuration options for useAmiTimeConditions

Properties

PropertyTypeDescriptionDefined in
dbFamily?stringAstDB family for time condition storage (default: 'timeconditions')src/types/timeconditions.types.ts:159
timezone?stringDefault timezone (default: system timezone)src/types/timeconditions.types.ts:161
refreshInterval?numberAuto-refresh interval in milliseconds (default: 60000 = 1 minute)src/types/timeconditions.types.ts:163
autoRefresh?booleanEnable auto-refresh (default: true)src/types/timeconditions.types.ts:165
onStateChange?(conditionId, status) => voidCallback when state changessrc/types/timeconditions.types.ts:167
onOverrideSet?(conditionId, mode) => voidCallback when override is setsrc/types/timeconditions.types.ts:169
onOverrideCleared?(conditionId) => voidCallback when override is clearedsrc/types/timeconditions.types.ts:171
onError?(error) => voidCallback on errorsrc/types/timeconditions.types.ts:173

UseAmiTimeConditionsReturn

Defined in: src/types/timeconditions.types.ts:179

Return type for useAmiTimeConditions composable

Properties

PropertyTypeDescriptionDefined in
conditionsRef<TimeCondition[], TimeCondition[]>All time conditionssrc/types/timeconditions.types.ts:182
statusesRef<Map<string, TimeConditionStatus>, Map<string, TimeConditionStatus>>Status for each conditionsrc/types/timeconditions.types.ts:184
isLoadingRef<boolean, boolean>Loading statesrc/types/timeconditions.types.ts:186
errorRef<string | null, string | null>Error statesrc/types/timeconditions.types.ts:188
openConditionsComputedRef<TimeCondition[]>All conditions that are currently opensrc/types/timeconditions.types.ts:192
closedConditionsComputedRef<TimeCondition[]>All conditions that are currently closedsrc/types/timeconditions.types.ts:194
overriddenConditionsComputedRef<TimeCondition[]>All conditions with active overridessrc/types/timeconditions.types.ts:196
getStatus(conditionId) => TimeConditionStatus | undefinedGet status for a specific conditionsrc/types/timeconditions.types.ts:200
isOpen(conditionId) => booleanCheck if a condition is currently opensrc/types/timeconditions.types.ts:202
isClosed(conditionId) => booleanCheck if a condition is currently closedsrc/types/timeconditions.types.ts:204
isHoliday(conditionId) => booleanCheck if today is a holiday for a conditionsrc/types/timeconditions.types.ts:206
hasOverride(conditionId) => booleanCheck if override is active for a conditionsrc/types/timeconditions.types.ts:208
setOverride(conditionId, mode, expiresIn?) => Promise<OverrideResult>Set override mode for a conditionsrc/types/timeconditions.types.ts:212
clearOverride(conditionId) => Promise<OverrideResult>Clear override for a conditionsrc/types/timeconditions.types.ts:214
toggleOverride(conditionId) => Promise<OverrideResult>Toggle between force_open and force_closedsrc/types/timeconditions.types.ts:216
addHoliday(conditionId, holiday) => Promise<HolidayResult>Add a holidaysrc/types/timeconditions.types.ts:220
removeHoliday(conditionId, holidayId) => Promise<HolidayResult>Remove a holidaysrc/types/timeconditions.types.ts:222
updateHoliday(conditionId, holidayId, updates) => Promise<HolidayResult>Update a holidaysrc/types/timeconditions.types.ts:224
getHolidays(conditionId) => Holiday[]Get holidays for a conditionsrc/types/timeconditions.types.ts:226
getUpcomingHolidays(conditionId, days?) => Holiday[]Get upcoming holidayssrc/types/timeconditions.types.ts:228
updateDaySchedule(conditionId, day, schedule) => Promise<ScheduleResult>Update schedule for a daysrc/types/timeconditions.types.ts:232
setWeeklySchedule(conditionId, schedule) => Promise<ScheduleResult>Set full weekly schedulesrc/types/timeconditions.types.ts:234
getDaySchedule(conditionId, day) => DailySchedule | undefinedGet schedule for a daysrc/types/timeconditions.types.ts:236
createCondition(condition) => Promise<{ success: boolean; condition?: TimeCondition; message?: string; }>Create a new time conditionsrc/types/timeconditions.types.ts:240
deleteCondition(conditionId) => Promise<{ success: boolean; message?: string; }>Delete a time conditionsrc/types/timeconditions.types.ts:242
updateCondition(conditionId, updates) => Promise<{ success: boolean; message?: string; }>Update a time conditionsrc/types/timeconditions.types.ts:244
refresh() => Promise<void>Refresh all conditions from storagesrc/types/timeconditions.types.ts:248
getNextChange(conditionId) => | { state: TimeConditionState; at: Date; reason: string; } | undefinedGet next state change for a conditionsrc/types/timeconditions.types.ts:250
checkStatusAt(conditionId, date) => TimeConditionStatus | undefinedCheck status at a specific timesrc/types/timeconditions.types.ts:252

MailboxInfo

Defined in: src/types/voicemail.types.ts:46

Mailbox information

Properties

PropertyTypeDescriptionDefined in
mailboxstringMailbox numbersrc/types/voicemail.types.ts:48
contextstringVoicemail contextsrc/types/voicemail.types.ts:50
newMessagesnumberNumber of new messagessrc/types/voicemail.types.ts:52
oldMessagesnumberNumber of old messagessrc/types/voicemail.types.ts:54
urgentMessagesnumberNumber of urgent messagessrc/types/voicemail.types.ts:56
fullName?stringMailbox full namesrc/types/voicemail.types.ts:58
email?stringEmail address for notificationssrc/types/voicemail.types.ts:60
pager?stringPager addresssrc/types/voicemail.types.ts:62
lastMessageTime?DateLast message timestampsrc/types/voicemail.types.ts:64
serverId?numberServer IDsrc/types/voicemail.types.ts:66

MwiState

Defined in: src/types/voicemail.types.ts:72

MWI (Message Waiting Indicator) state

Properties

PropertyTypeDescriptionDefined in
mailboxstringMailbox with context (e.g., "1000@default")src/types/voicemail.types.ts:74
waitingbooleanWhether there are waiting messagessrc/types/voicemail.types.ts:76
newMessagesnumberNumber of new messagessrc/types/voicemail.types.ts:78
oldMessagesnumberNumber of old messagessrc/types/voicemail.types.ts:80
urgentMessages?numberNumber of urgent messagessrc/types/voicemail.types.ts:82
lastUpdatedDateLast updated timestampsrc/types/voicemail.types.ts:84
serverId?numberServer IDsrc/types/voicemail.types.ts:86

UseAmiVoicemailOptions

Defined in: src/types/voicemail.types.ts:163

Options for useAmiVoicemail composable

Properties

PropertyTypeDescriptionDefined in
pollInterval?numberPolling interval for MWI in ms (0 = events only)src/types/voicemail.types.ts:165
useEvents?booleanUse real-time MWI eventssrc/types/voicemail.types.ts:167
autoRefresh?booleanAuto-refresh mailbox on reconnectsrc/types/voicemail.types.ts:169
defaultContext?stringDefault voicemail contextsrc/types/voicemail.types.ts:171
mailboxFilter?(mailbox) => booleanMailbox filter functionsrc/types/voicemail.types.ts:173
onMwiChange?(mwi) => voidMWI change callbacksrc/types/voicemail.types.ts:175
onNewMessage?(mailbox, count) => voidNew message callbacksrc/types/voicemail.types.ts:177
transformMailbox?(mailbox) => MailboxInfoTransform mailbox functionsrc/types/voicemail.types.ts:179

AudioCodecInfo

Defined in: src/types/webrtc-stats.types.ts:9

Audio codec information

Properties

PropertyTypeDescriptionDefined in
namestringCodec name (e.g., 'opus', 'PCMU', 'PCMA')src/types/webrtc-stats.types.ts:11
payloadTypenumberPayload typesrc/types/webrtc-stats.types.ts:13
clockRatenumberClock rate (Hz)src/types/webrtc-stats.types.ts:15
channels?numberNumber of channelssrc/types/webrtc-stats.types.ts:17
mimeTypestringMIME typesrc/types/webrtc-stats.types.ts:19

VideoCodecInfo

Defined in: src/types/webrtc-stats.types.ts:25

Video codec information

Properties

PropertyTypeDescriptionDefined in
namestringCodec name (e.g., 'VP8', 'VP9', 'H264')src/types/webrtc-stats.types.ts:27
payloadTypenumberPayload typesrc/types/webrtc-stats.types.ts:29
clockRatenumberClock rate (Hz)src/types/webrtc-stats.types.ts:31
mimeTypestringMIME typesrc/types/webrtc-stats.types.ts:33
profileLevelId?stringProfile level ID (for H.264)src/types/webrtc-stats.types.ts:35

InboundRtpStats

Defined in: src/types/webrtc-stats.types.ts:41

Inbound RTP stream statistics

Properties

PropertyTypeDescriptionDefined in
ssrcnumberSSRC identifiersrc/types/webrtc-stats.types.ts:43
kind"audio" | "video"Media type ('audio' or 'video')src/types/webrtc-stats.types.ts:45
codec?AudioCodecInfo | VideoCodecInfoCodec infosrc/types/webrtc-stats.types.ts:47
packetsReceivednumberPackets receivedsrc/types/webrtc-stats.types.ts:49
packetsLostnumberPackets lostsrc/types/webrtc-stats.types.ts:51
packetLossPercentnumberPacket loss percentage (0-100)src/types/webrtc-stats.types.ts:53
bytesReceivednumberBytes receivedsrc/types/webrtc-stats.types.ts:55
jitternumberJitter in secondssrc/types/webrtc-stats.types.ts:57
jitterMsnumberJitter in millisecondssrc/types/webrtc-stats.types.ts:59
roundTripTime?numberRound-trip time in seconds (if available)src/types/webrtc-stats.types.ts:61
roundTripTimeMs?numberRound-trip time in millisecondssrc/types/webrtc-stats.types.ts:63
framesDecoded?numberFrames decoded (video only)src/types/webrtc-stats.types.ts:65
framesDropped?numberFrames dropped (video only)src/types/webrtc-stats.types.ts:67
frameWidth?numberFrame width (video only)src/types/webrtc-stats.types.ts:69
frameHeight?numberFrame height (video only)src/types/webrtc-stats.types.ts:71
framesPerSecond?numberFrames per second (video only)src/types/webrtc-stats.types.ts:73
bitratenumberBitrate in bits per secondsrc/types/webrtc-stats.types.ts:75
timestampnumberTimestamp of these statssrc/types/webrtc-stats.types.ts:77

OutboundRtpStats

Defined in: src/types/webrtc-stats.types.ts:83

Outbound RTP stream statistics

Properties

PropertyTypeDescriptionDefined in
ssrcnumberSSRC identifiersrc/types/webrtc-stats.types.ts:85
kind"audio" | "video"Media type ('audio' or 'video')src/types/webrtc-stats.types.ts:87
codec?AudioCodecInfo | VideoCodecInfoCodec infosrc/types/webrtc-stats.types.ts:89
packetsSentnumberPackets sentsrc/types/webrtc-stats.types.ts:91
bytesSentnumberBytes sentsrc/types/webrtc-stats.types.ts:93
retransmittedPacketsSent?numberRetransmitted packetssrc/types/webrtc-stats.types.ts:95
targetBitrate?numberTarget bitratesrc/types/webrtc-stats.types.ts:97
framesEncoded?numberFrames encoded (video only)src/types/webrtc-stats.types.ts:99
frameWidth?numberFrame width (video only)src/types/webrtc-stats.types.ts:101
frameHeight?numberFrame height (video only)src/types/webrtc-stats.types.ts:103
framesPerSecond?numberFrames per second (video only)src/types/webrtc-stats.types.ts:105
qualityLimitationReason?"other" | "none" | "cpu" | "bandwidth"Quality limitation reason (video only)src/types/webrtc-stats.types.ts:107
bitratenumberBitrate in bits per secondsrc/types/webrtc-stats.types.ts:109
timestampnumberTimestamp of these statssrc/types/webrtc-stats.types.ts:111

IceCandidatePairStats

Defined in: src/types/webrtc-stats.types.ts:117

ICE candidate pair statistics

Properties

PropertyTypeDescriptionDefined in
idstringCandidate pair IDsrc/types/webrtc-stats.types.ts:119
stateRTCStatsIceCandidatePairStateState of the candidate pairsrc/types/webrtc-stats.types.ts:121
nominatedbooleanWhether this is the nominated pairsrc/types/webrtc-stats.types.ts:123
priority?numberPrioritysrc/types/webrtc-stats.types.ts:125
localCandidateTypeRTCIceCandidateTypeLocal candidate typesrc/types/webrtc-stats.types.ts:127
remoteCandidateTypeRTCIceCandidateTypeRemote candidate typesrc/types/webrtc-stats.types.ts:129
localAddress?stringLocal addresssrc/types/webrtc-stats.types.ts:131
remoteAddress?stringRemote addresssrc/types/webrtc-stats.types.ts:133
currentRoundTripTime?numberCurrent round-trip time in secondssrc/types/webrtc-stats.types.ts:135
currentRoundTripTimeMs?numberCurrent round-trip time in millisecondssrc/types/webrtc-stats.types.ts:137
availableOutgoingBitrate?numberAvailable outgoing bitratesrc/types/webrtc-stats.types.ts:139
availableIncomingBitrate?numberAvailable incoming bitratesrc/types/webrtc-stats.types.ts:141
bytesSentnumberBytes sentsrc/types/webrtc-stats.types.ts:143
bytesReceivednumberBytes receivedsrc/types/webrtc-stats.types.ts:145
requestsSentnumberRequests sentsrc/types/webrtc-stats.types.ts:147
responsesReceivednumberResponses receivedsrc/types/webrtc-stats.types.ts:149
consentRequestsSent?numberConsent requests sentsrc/types/webrtc-stats.types.ts:151
timestampnumberTimestampsrc/types/webrtc-stats.types.ts:153

MosScore

Defined in: src/types/webrtc-stats.types.ts:165

MOS (Mean Opinion Score) rating 1 = Bad, 2 = Poor, 3 = Fair, 4 = Good, 5 = Excellent

Properties

PropertyTypeDescriptionDefined in
valuenumberMOS value (1.0 - 5.0)src/types/webrtc-stats.types.ts:167
qualityConnectionQualityQuality labelsrc/types/webrtc-stats.types.ts:169
timestampnumberTimestampsrc/types/webrtc-stats.types.ts:171

CallQualityStats

Defined in: src/types/webrtc-stats.types.ts:177

Comprehensive call quality statistics

Properties

PropertyTypeDescriptionDefined in
qualityConnectionQualityOverall quality assessmentsrc/types/webrtc-stats.types.ts:179
mosMosScoreEstimated MOS scoresrc/types/webrtc-stats.types.ts:181
audioobjectAudio statisticssrc/types/webrtc-stats.types.ts:183
audio.inbound?InboundRtpStatsInbound audio statssrc/types/webrtc-stats.types.ts:185
audio.outbound?OutboundRtpStatsOutbound audio statssrc/types/webrtc-stats.types.ts:187
video?objectVideo statistics (if video call)src/types/webrtc-stats.types.ts:190
video.inbound?InboundRtpStatsInbound video statssrc/types/webrtc-stats.types.ts:192
video.outbound?OutboundRtpStatsOutbound video statssrc/types/webrtc-stats.types.ts:194
connection?IceCandidatePairStatsICE candidate pair statssrc/types/webrtc-stats.types.ts:197
networkobjectNetwork statisticssrc/types/webrtc-stats.types.ts:199
network.rtt?numberRound-trip time in millisecondssrc/types/webrtc-stats.types.ts:201
network.jitter?numberJitter in millisecondssrc/types/webrtc-stats.types.ts:203
network.packetLoss?numberPacket loss percentagesrc/types/webrtc-stats.types.ts:205
network.bandwidth?numberAvailable bandwidth (kbps)src/types/webrtc-stats.types.ts:207
timestampnumberTimestamp of these statssrc/types/webrtc-stats.types.ts:210
callDuration?numberDuration since call start (seconds)src/types/webrtc-stats.types.ts:212

QualityAlert

Defined in: src/types/webrtc-stats.types.ts:230

Quality alert

Properties

PropertyTypeDescriptionDefined in
typeQualityAlertTypeAlert typesrc/types/webrtc-stats.types.ts:232
severity"critical" | "warning"Alert severitysrc/types/webrtc-stats.types.ts:234
messagestringAlert messagesrc/types/webrtc-stats.types.ts:236
valuenumberCurrent value that triggered the alertsrc/types/webrtc-stats.types.ts:238
thresholdnumberThreshold that was exceededsrc/types/webrtc-stats.types.ts:240
timestampDateTimestampsrc/types/webrtc-stats.types.ts:242

QualityThresholds

Defined in: src/types/webrtc-stats.types.ts:248

Quality thresholds for alerts

Properties

PropertyTypeDescriptionDefined in
packetLossWarningnumberPacket loss warning threshold (percentage)src/types/webrtc-stats.types.ts:250
packetLossCriticalnumberPacket loss critical threshold (percentage)src/types/webrtc-stats.types.ts:252
jitterWarningnumberJitter warning threshold (ms)src/types/webrtc-stats.types.ts:254
jitterCriticalnumberJitter critical threshold (ms)src/types/webrtc-stats.types.ts:256
rttWarningnumberRTT warning threshold (ms)src/types/webrtc-stats.types.ts:258
rttCriticalnumberRTT critical threshold (ms)src/types/webrtc-stats.types.ts:260
mosWarningnumberMOS warning thresholdsrc/types/webrtc-stats.types.ts:262
mosCriticalnumberMOS critical thresholdsrc/types/webrtc-stats.types.ts:264

StatsHistoryEntry

Defined in: src/types/webrtc-stats.types.ts:284

Stats history entry

Properties

PropertyTypeDescriptionDefined in
timestampnumberTimestampsrc/types/webrtc-stats.types.ts:286
mosnumberMOS scoresrc/types/webrtc-stats.types.ts:288
packetLossnumberPacket loss percentagesrc/types/webrtc-stats.types.ts:290
jitternumberJitter in mssrc/types/webrtc-stats.types.ts:292
rtt?numberRTT in mssrc/types/webrtc-stats.types.ts:294
bitratenumberBitrate in kbpssrc/types/webrtc-stats.types.ts:296

UseSipWebRTCStatsOptions

Defined in: src/types/webrtc-stats.types.ts:302

Options for useSipWebRTCStats composable

Properties

PropertyTypeDescriptionDefined in
pollInterval?numberStats collection interval in ms (default: 1000)src/types/webrtc-stats.types.ts:304
autoStart?booleanEnable automatic stats collectionsrc/types/webrtc-stats.types.ts:306
maxHistoryEntries?numberMaximum history entries to keepsrc/types/webrtc-stats.types.ts:308
thresholds?Partial<QualityThresholds>Quality thresholds for alertssrc/types/webrtc-stats.types.ts:310
onStatsUpdate?(stats) => voidStats update callbacksrc/types/webrtc-stats.types.ts:312
onQualityAlert?(alert) => voidQuality alert callbacksrc/types/webrtc-stats.types.ts:314
onQualityChange?(newQuality, oldQuality) => voidQuality change callbacksrc/types/webrtc-stats.types.ts:316
includeVideo?booleanInclude video stats (default: true)src/types/webrtc-stats.types.ts:318
calculateMos?booleanEnable MOS calculation (default: true)src/types/webrtc-stats.types.ts:320

LoggerConfig

Defined in: src/utils/logger.ts:66

Global logger configuration

Properties

PropertyTypeDescriptionDefined in
level"error" | "debug" | "info" | "warn"Minimum log level to outputsrc/utils/logger.ts:68
enabledbooleanWhether logging is enabledsrc/utils/logger.ts:70
showTimestampbooleanWhether to show timestampssrc/utils/logger.ts:72
handler?LogHandlerCustom log handler (for testing or custom output)src/utils/logger.ts:74

StorageQuotaInfo

Defined in: src/utils/storageQuota.ts:18

Storage quota information

Properties

PropertyTypeDescriptionDefined in
quotanumberTotal quota in bytes (0 if unavailable)src/utils/storageQuota.ts:20
usagenumberCurrent usage in bytes (0 if unavailable)src/utils/storageQuota.ts:22
availablenumberAvailable space in bytessrc/utils/storageQuota.ts:24
usagePercentnumberUsage percentage (0-100)src/utils/storageQuota.ts:26
supportedbooleanWhether quota API is supportedsrc/utils/storageQuota.ts:28

Type Aliases

ParkingEventType

ts
type ParkingEventType = "parked" | "retrieved" | "timeout" | "giveup";

Defined in: src/composables/useAmiParking.ts:64

Parking event types for listeners


SupervisionMode

ts
type SupervisionMode = "monitor" | "whisper" | "barge";

Defined in: src/composables/useAmiSupervisor.ts:23

Supervision mode


RingPolicy

ts
type RingPolicy = "sequential" | "parallel" | "round-robin";

Defined in: src/core/MultiLineManager.ts:30

Ring policy for handling incoming calls


TransportEventHandler()

ts
type TransportEventHandler = (event) => void;

Defined in: src/core/TransportManager.ts:58

Transport event handler type

Parameters

ParameterType
eventTransportEventData | string

Returns

void


ProviderFactory()

ts
type ProviderFactory = () => TranscriptionProvider;

Defined in: src/transcription/providers/registry.ts:14

Factory function type for creating provider instances

Returns

TranscriptionProvider


ConnectionState

ts
type ConnectionState = "disconnected" | "connecting" | "connected" | "error";

Defined in: src/transcription/providers/whisper.ts:57

Connection state


AgentLoginStatus

ts
type AgentLoginStatus = "logged_out" | "logged_in" | "paused" | "on_call";

Defined in: src/types/agent.types.ts:15

Agent login status


AgentStatsPeriod

ts
type AgentStatsPeriod = "today" | "week" | "month" | "custom";

Defined in: src/types/agentstats.types.ts:15

Time period for statistics aggregation


AgentPerformanceLevel

ts
type AgentPerformanceLevel = "excellent" | "good" | "average" | "needs_improvement" | "critical";

Defined in: src/types/agentstats.types.ts:20

Agent performance level based on KPIs


AgentCallDirection

ts
type AgentCallDirection = "inbound" | "outbound" | "internal";

Defined in: src/types/agentstats.types.ts:25

Call direction for agent statistics


PeerStatus

ts
type PeerStatus = "OK" | "LAGGED" | "UNKNOWN" | "UNREACHABLE" | "Unmonitored";

Defined in: src/types/ami.types.ts:673

Peer status values


AudioPermissionState

ts
type AudioPermissionState = "granted" | "denied" | "prompt";

Defined in: src/types/audio.types.ts:151

Permission states for audio/video access


AutoAnswerMode

ts
type AutoAnswerMode = "disabled" | "all" | "whitelist" | "intercom";

Defined in: src/types/autoanswer.types.ts:13

Auto-answer mode


IntercomMode

ts
type IntercomMode = "simplex" | "duplex";

Defined in: src/types/autoanswer.types.ts:18

Intercom mode type


AutoAnswerTrigger

ts
type AutoAnswerTrigger = "header" | "whitelist" | "intercom" | "all_calls" | "manual";

Defined in: src/types/autoanswer.types.ts:23

Auto-answer trigger source


BlockStatus

ts
type BlockStatus = "active" | "disabled" | "expired";

Defined in: src/types/blacklist.types.ts:31

Status of a blocked number entry


BlacklistFormat

ts
type BlacklistFormat = "json" | "csv" | "txt";

Defined in: src/types/blacklist.types.ts:147

Import/export format


CallbackStatus

ts
type CallbackStatus = 
  | "pending"
  | "scheduled"
  | "in_progress"
  | "completed"
  | "failed"
  | "cancelled";

Defined in: src/types/callback.types.ts:15

Callback status


CdrDisposition

ts
type CdrDisposition = "ANSWERED" | "NO ANSWER" | "BUSY" | "FAILED" | "CONGESTION" | "CANCEL";

Defined in: src/types/cdr.types.ts:16

Call disposition (final status)


CdrDirection

ts
type CdrDirection = "inbound" | "outbound" | "internal" | "unknown";

Defined in: src/types/cdr.types.ts:27

Call direction


CdrAggregationPeriod

ts
type CdrAggregationPeriod = "hour" | "day" | "week" | "month";

Defined in: src/types/cdr.types.ts:32

CDR aggregation period


E911LocationType

ts
type E911LocationType = "civic" | "geo" | "combined";

Defined in: src/types/e911.types.ts:15

E911 location type


E911CallStatus

ts
type E911CallStatus = 
  | "detecting"
  | "alerting"
  | "in_progress"
  | "completed"
  | "callback_pending"
  | "callback_active";

Defined in: src/types/e911.types.ts:23

E911 call status


E911NotificationType

ts
type E911NotificationType = "email" | "sms" | "push" | "webhook" | "paging" | "popup";

Defined in: src/types/e911.types.ts:34

E911 notification type


E911EventType

ts
type E911EventType = 
  | "call_detected"
  | "call_started"
  | "call_answered"
  | "call_ended"
  | "notification_sent"
  | "notification_delivered"
  | "notification_failed"
  | "callback_detected"
  | "callback_answered"
  | "location_updated"
  | "config_changed";

Defined in: src/types/e911.types.ts:401

E911 event types


FeatureCodeCategory

ts
type FeatureCodeCategory = 
  | "dnd"
  | "callforward"
  | "voicemail"
  | "recording"
  | "transfer"
  | "parking"
  | "pickup"
  | "intercom"
  | "custom";

Defined in: src/types/featurecodes.types.ts:15

Feature code categories


DndStatus

ts
type DndStatus = "enabled" | "disabled" | "unknown";

Defined in: src/types/featurecodes.types.ts:29

DND (Do Not Disturb) status


CallForwardType

ts
type CallForwardType = "unconditional" | "busy" | "noanswer" | "unavailable";

Defined in: src/types/featurecodes.types.ts:34

Call forward types


IVRCallerState

ts
type IVRCallerState = 
  | "entering"
  | "listening"
  | "inputting"
  | "navigating"
  | "transferring"
  | "exiting"
  | "timeout"
  | "error";

Defined in: src/types/ivr.types.ts:15

IVR caller state


IVROptionType

ts
type IVROptionType = 
  | "menu"
  | "extension"
  | "queue"
  | "ringgroup"
  | "voicemail"
  | "external"
  | "hangup"
  | "repeat"
  | "previous"
  | "custom";

Defined in: src/types/ivr.types.ts:28

IVR menu option type


IVREventType

ts
type IVREventType = 
  | "caller_entered"
  | "menu_entered"
  | "dtmf_received"
  | "option_selected"
  | "invalid_input"
  | "timeout"
  | "caller_transferred"
  | "caller_exited"
  | "caller_abandoned"
  | "breakout_initiated"
  | "ivr_enabled"
  | "ivr_disabled";

Defined in: src/types/ivr.types.ts:235

IVR event types


LineStatus

ts
type LineStatus = "idle" | "ringing" | "active" | "held" | "busy" | "error";

Defined in: src/types/multiline.types.ts:17

Line status representing current state


PagingMode

ts
type PagingMode = "simplex" | "duplex";

Defined in: src/types/paging.types.ts:15

Paging mode


PagingStatus

ts
type PagingStatus = "idle" | "paging" | "connected" | "error";

Defined in: src/types/paging.types.ts:20

Paging status


AmiRecordingFormat

ts
type AmiRecordingFormat = 
  | "wav"
  | "wav49"
  | "gsm"
  | "ulaw"
  | "alaw"
  | "sln"
  | "g722"
  | "siren7"
  | "siren14";

Defined in: src/types/recording.types.ts:30

AMI Recording format options


AmiRecordingMixMode

ts
type AmiRecordingMixMode = "both" | "read" | "write";

Defined in: src/types/recording.types.ts:35

AMI Recording mix mode - which audio streams to record


AmiRecordingEventType

ts
type AmiRecordingEventType = "started" | "stopped" | "paused" | "resumed" | "failed" | "completed";

Defined in: src/types/recording.types.ts:225

AMI Recording event types


RingStrategy

ts
type RingStrategy = 
  | "ringall"
  | "hunt"
  | "memoryhunt"
  | "firstunavailable"
  | "firstnotonphone"
  | "random"
  | "linear"
  | "rrmemory"
  | "rrordered";

Defined in: src/types/ringgroup.types.ts:15

Ring strategy for determining how members are called


RingGroupMemberStatus

ts
type RingGroupMemberStatus = "available" | "busy" | "unavailable" | "ringing" | "unknown";

Defined in: src/types/ringgroup.types.ts:29

Member status in a ring group


RingGroupState

ts
type RingGroupState = "idle" | "ringing" | "connected" | "disabled";

Defined in: src/types/ringgroup.types.ts:39

Ring group state


RingGroupEventType

ts
type RingGroupEventType = 
  | "ring_start"
  | "member_ring"
  | "member_answer"
  | "member_busy"
  | "member_noanswer"
  | "call_complete"
  | "call_abandoned"
  | "failover"
  | "member_added"
  | "member_removed"
  | "group_enabled"
  | "group_disabled";

Defined in: src/types/ringgroup.types.ts:171

Ring group event types


DayOfWeek

ts
type DayOfWeek = 
  | "sunday"
  | "monday"
  | "tuesday"
  | "wednesday"
  | "thursday"
  | "friday"
  | "saturday";

Defined in: src/types/timeconditions.types.ts:13

Days of the week


TimeConditionState

ts
type TimeConditionState = "open" | "closed" | "holiday" | "override_open" | "override_closed";

Defined in: src/types/timeconditions.types.ts:18

Time condition state


OverrideMode

ts
type OverrideMode = "none" | "force_open" | "force_closed" | "temporary";

Defined in: src/types/timeconditions.types.ts:23

Override mode


ConnectionQuality

ts
type ConnectionQuality = "excellent" | "good" | "fair" | "poor" | "bad" | "unknown";

Defined in: src/types/webrtc-stats.types.ts:159

Connection quality level


QualityAlertType

ts
type QualityAlertType = 
  | "high_packet_loss"
  | "high_jitter"
  | "high_rtt"
  | "low_bandwidth"
  | "codec_change"
  | "quality_degradation"
  | "connection_change";

Defined in: src/types/webrtc-stats.types.ts:218

Quality alert types


EventHandler()

ts
type EventHandler<T> = (data) => void;

Defined in: src/utils/EventEmitter.ts:8

EventEmitter - Simple type-safe event emitter

Provides a lightweight event emitter implementation with TypeScript support. Used as a base for adapters and other event-driven components.

Type Parameters

Type ParameterDefault type
Tunknown

Parameters

ParameterType
dataT

Returns

void

Variables

LOG_LEVELS

ts
const LOG_LEVELS: readonly ["debug", "info", "warn", "error"];

Defined in: src/utils/constants.ts:436

Valid log levels

Released under the MIT License.