VueSip API Reference / <internal>
<internal>
Enumerations
LineState
Defined in: src/core/MultiLineManager.ts:12
Represents the current state of a line
Enumeration Members
| Enumeration Member | Value | Description | Defined in |
|---|---|---|---|
IDLE | "idle" | Line is available and not in use | src/core/MultiLineManager.ts:14 |
RINGING | "ringing" | Incoming call ringing on this line | src/core/MultiLineManager.ts:16 |
ACTIVE | "active" | Active call in progress on this line | src/core/MultiLineManager.ts:18 |
HELD | "held" | Call is on hold on this line | src/core/MultiLineManager.ts:20 |
TRANSFERRING | "transferring" | Call transfer in progress on this line | src/core/MultiLineManager.ts:22 |
PARKED | "parked" | Call is parked on this line | src/core/MultiLineManager.ts:24 |
TransportEvent
Defined in: src/core/TransportManager.ts:15
Transport event types
Enumeration Members
| Enumeration Member | Value | Defined 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 Member | Value | Description | Defined in |
|---|---|---|---|
Unknown | 0 | Unknown message type | src/types/ami.types.ts:28 |
ProtocolID | 1 | AMI protocol ID message | src/types/ami.types.ts:30 |
PeerStatus | 2 | Peer connection status | src/types/ami.types.ts:32 |
Event | 3 | AMI Event | src/types/ami.types.ts:34 |
Response | 4 | AMI Response | src/types/ami.types.ts:36 |
Queue | 5 | Queue update | src/types/ami.types.ts:38 |
Disconnect | 6 | Disconnect notification | src/types/ami.types.ts:40 |
AmiConnectionState
Defined in: src/types/ami.types.ts:144
AMI connection state
Enumeration Members
| Enumeration Member | Value | Defined 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 Member | Value | Defined in |
|---|---|---|
Unknown | 0 | src/types/ami.types.ts:187 |
NotInUse | 1 | src/types/ami.types.ts:188 |
InUse | 2 | src/types/ami.types.ts:189 |
Busy | 3 | src/types/ami.types.ts:190 |
Invalid | 4 | src/types/ami.types.ts:191 |
Unavailable | 5 | src/types/ami.types.ts:192 |
Ringing | 6 | src/types/ami.types.ts:193 |
RingInUse | 7 | src/types/ami.types.ts:194 |
OnHold | 8 | src/types/ami.types.ts:195 |
ChannelState
Defined in: src/types/ami.types.ts:465
Channel state codes
Enumeration Members
| Enumeration Member | Value | Defined in |
|---|---|---|
Down | 0 | src/types/ami.types.ts:466 |
Reserved | 1 | src/types/ami.types.ts:467 |
OffHook | 2 | src/types/ami.types.ts:468 |
Dialing | 3 | src/types/ami.types.ts:469 |
Ring | 4 | src/types/ami.types.ts:470 |
Ringing | 5 | src/types/ami.types.ts:471 |
Up | 6 | src/types/ami.types.ts:472 |
Busy | 7 | src/types/ami.types.ts:473 |
DialingOffHook | 8 | src/types/ami.types.ts:474 |
PreRing | 9 | src/types/ami.types.ts:475 |
Unknown | 10 | src/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 Member | Value | Description | Defined in |
|---|---|---|---|
Available | "available" | Available - Green | src/types/freepbx-presence.types.ts:16 |
OnPhone | "on_phone" | On the phone - Red | src/types/freepbx-presence.types.ts:18 |
Busy | "busy" | Busy - Do not disturb | src/types/freepbx-presence.types.ts:20 |
Away | "away" | Away - Yellow | src/types/freepbx-presence.types.ts:22 |
ExtendedAway | "extended_away" | Extended Away - Custom time | src/types/freepbx-presence.types.ts:24 |
Lunch | "lunch" | Out to lunch | src/types/freepbx-presence.types.ts:26 |
InMeeting | "in_meeting" | In a meeting | src/types/freepbx-presence.types.ts:28 |
Offline | "offline" | Offline/Unavailable | src/types/freepbx-presence.types.ts:30 |
Custom | "custom" | Custom status | src/types/freepbx-presence.types.ts:32 |
ExtendedAwayReason
Defined in: src/types/freepbx-presence.types.ts:38
Extended away reasons for FreePBX
Enumeration Members
| Enumeration Member | Value | Description | Defined in |
|---|---|---|---|
Away | "away" | Generic away | src/types/freepbx-presence.types.ts:40 |
Break | "break" | On break | src/types/freepbx-presence.types.ts:42 |
Lunch | "lunch" | At lunch | src/types/freepbx-presence.types.ts:44 |
Meeting | "meeting" | In a meeting | src/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 office | src/types/freepbx-presence.types.ts:54 |
Vacation | "vacation" | Vacation | src/types/freepbx-presence.types.ts:56 |
Custom | "custom" | Custom reason | src/types/freepbx-presence.types.ts:58 |
AmiRecordingState
Defined in: src/types/recording.types.ts:14
AMI Recording state enumeration
Enumeration Members
| Enumeration Member | Value | Description | Defined in |
|---|---|---|---|
Idle | "idle" | Not recording | src/types/recording.types.ts:16 |
Recording | "recording" | Recording in progress | src/types/recording.types.ts:18 |
Paused | "paused" | Recording paused | src/types/recording.types.ts:20 |
Stopped | "stopped" | Recording stopped | src/types/recording.types.ts:22 |
Failed | "failed" | Recording failed | src/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
new MultiLineManager(config?, eventBus?): MultiLineManager;Defined in: src/core/MultiLineManager.ts:247
Parameters
| Parameter | Type |
|---|---|
config? | Partial<MultiLineConfig> |
eventBus? | EventBus |
Returns
Methods
getLine()
getLine(lineId): Line | undefined;Defined in: src/core/MultiLineManager.ts:280
Get a specific line by ID
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Line | undefined
getAllLines()
getAllLines(): Line[];Defined in: src/core/MultiLineManager.ts:287
Get all lines
Returns
Line[]
getActiveLine()
getActiveLine(): Line | undefined;Defined in: src/core/MultiLineManager.ts:294
Get the currently active line
Returns
Line | undefined
getActiveLineId()
getActiveLineId(): number;Defined in: src/core/MultiLineManager.ts:301
Get the active line ID
Returns
number
getAvailableLine()
getAvailableLine(criteria?): Line | undefined;Defined in: src/core/MultiLineManager.ts:308
Find an available line based on criteria
Parameters
| Parameter | Type |
|---|---|
criteria? | LineSelectionCriteria |
Returns
Line | undefined
assignCallToLine()
assignCallToLine(callSession, lineId?): Promise<number>;Defined in: src/core/MultiLineManager.ts:349
Assign a call to a specific line or auto-select
Parameters
| Parameter | Type |
|---|---|
callSession | CallSession |
lineId? | number |
Returns
Promise<number>
switchToLine()
switchToLine(lineId): Promise<void>;Defined in: src/core/MultiLineManager.ts:405
Switch to a different line
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Promise<void>
holdLine()
holdLine(lineId): Promise<void>;Defined in: src/core/MultiLineManager.ts:441
Hold a call on a specific line
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Promise<void>
resumeLine()
resumeLine(lineId): Promise<void>;Defined in: src/core/MultiLineManager.ts:476
Resume a held call on a specific line
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Promise<void>
parkLine()
parkLine(lineId): Promise<string>;Defined in: src/core/MultiLineManager.ts:511
Park a call from a specific line
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Promise<string>
retrieveParked()
retrieveParked(parkSlot): Promise<number>;Defined in: src/core/MultiLineManager.ts:566
Retrieve a parked call
Parameters
| Parameter | Type |
|---|---|
parkSlot | string |
Returns
Promise<number>
createConference()
createConference(lineIds): Promise<string>;Defined in: src/core/MultiLineManager.ts:603
Create a conference from multiple lines
Parameters
| Parameter | Type |
|---|---|
lineIds | number[] |
Returns
Promise<string>
addToConference()
addToConference(lineId, conferenceId?): Promise<void>;Defined in: src/core/MultiLineManager.ts:666
Add a line to an existing conference
Parameters
| Parameter | Type |
|---|---|
lineId | number |
conferenceId? | string |
Returns
Promise<void>
removeFromConference()
removeFromConference(lineId): Promise<void>;Defined in: src/core/MultiLineManager.ts:714
Remove a line from a conference
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
Promise<void>
getConference()
getConference(conferenceId): ConferenceState | undefined;Defined in: src/core/MultiLineManager.ts:781
Get conference state
Parameters
| Parameter | Type |
|---|---|
conferenceId | string |
Returns
ConferenceState | undefined
getActiveConferences()
getActiveConferences(): ConferenceState[];Defined in: src/core/MultiLineManager.ts:788
Get all active conferences
Returns
releaseCall()
releaseCall(lineId): void;Defined in: src/core/MultiLineManager.ts:795
Release a call from a line
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
void
releaseLine()
releaseLine(lineId): void;Defined in: src/core/MultiLineManager.ts:830
Release a line (alias for releaseCall)
Parameters
| Parameter | Type |
|---|---|
lineId | number |
Returns
void
getStats()
getStats(): MultiLineStats;Defined in: src/core/MultiLineManager.ts:883
Get statistics about line usage
Returns
getParkedCalls()
getParkedCalls(): ParkSlot[];Defined in: src/core/MultiLineManager.ts:899
Get all parked calls
Returns
ParkSlot[]
updateDurations()
updateDurations(): void;Defined in: src/core/MultiLineManager.ts:906
Update call duration for active lines
Returns
void
reset()
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
new TokenStorageManager(type, prefix): TokenStorageManager;Defined in: src/services/OAuth2Service.ts:100
Parameters
| Parameter | Type |
|---|---|
type | "localStorage" | "sessionStorage" | "memory" |
prefix | string |
Returns
Methods
store()
store(key, data): Promise<void>;Defined in: src/services/OAuth2Service.ts:109
Parameters
| Parameter | Type |
|---|---|
key | string |
data | OAuth2StoredData |
Returns
Promise<void>
retrieve()
retrieve(key): Promise<OAuth2StoredData | null>;Defined in: src/services/OAuth2Service.ts:119
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
Promise<OAuth2StoredData | null>
remove()
remove(key): Promise<void>;Defined in: src/services/OAuth2Service.ts:135
Parameters
| Parameter | Type |
|---|---|
key | string |
Returns
Promise<void>
clear()
clear(): Promise<void>;Defined in: src/services/OAuth2Service.ts:144
Returns
Promise<void>
storePKCE()
storePKCE(state, pkce): Promise<void>;Defined in: src/services/OAuth2Service.ts:164
Parameters
| Parameter | Type |
|---|---|
state | string |
pkce | PKCEParams |
Returns
Promise<void>
retrievePKCE()
retrievePKCE(state): Promise<string | null>;Defined in: src/services/OAuth2Service.ts:176
Parameters
| Parameter | Type |
|---|---|
state | string |
Returns
Promise<string | null>
removePKCE()
removePKCE(state): Promise<void>;Defined in: src/services/OAuth2Service.ts:187
Parameters
| Parameter | Type |
|---|---|
state | string |
Returns
Promise<void>
StorePersistenceManager
Defined in: src/stores/persistence.ts:51
Store persistence manager
Constructors
Constructor
new StorePersistenceManager(): StorePersistenceManager;Returns
Methods
initialize()
initialize(config): Promise<void>;Defined in: src/stores/persistence.ts:62
Initialize persistence for all stores
Parameters
| Parameter | Type | Description |
|---|---|---|
config | PersistenceConfig | Persistence configuration |
Returns
Promise<void>
saveAll()
saveAll(): Promise<void>;Defined in: src/stores/persistence.ts:317
Manually save all store states
Returns
Promise<void>
loadAll()
loadAll(): Promise<void>;Defined in: src/stores/persistence.ts:335
Manually load all store states
Returns
Promise<void>
clearAll()
clearAll(): Promise<void>;Defined in: src/stores/persistence.ts:353
Clear all persisted data
Returns
Promise<void>
destroy()
destroy(): void;Defined in: src/stores/persistence.ts:371
Destroy all persistence managers
Returns
void
getStatistics()
getStatistics(): object;Defined in: src/stores/persistence.ts:389
Get statistics about persistence
Returns
object
| Name | Type | Defined in |
|---|---|---|
enabled | boolean | src/stores/persistence.ts:391 |
managersCount | number | src/stores/persistence.ts:392 |
managers | string[] | src/stores/persistence.ts:393 |
hasLocalStorage | boolean | src/stores/persistence.ts:394 |
hasIndexedDB | boolean | src/stores/persistence.ts:395 |
getStorageQuota()
getStorageQuota(): Promise<StorageQuotaInfo>;Defined in: src/stores/persistence.ts:404
Get storage quota information
Returns
Promise<StorageQuotaInfo>
Promise resolving to storage quota info
getStorageUsageSummary()
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()
checkStorageWarning(threshold): Promise<boolean>;Defined in: src/stores/persistence.ts:425
Check if storage quota is running low
Parameters
| Parameter | Type | Default value | Description |
|---|---|---|---|
threshold | number | 80 | Warning threshold percentage (default: 80) |
Returns
Promise<boolean>
Promise resolving to true if usage is above threshold
clearOldCallHistory()
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
| Parameter | Type | Default value | Description |
|---|---|---|---|
targetReduction | number | 20 | Target 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 Parameter | Default type |
|---|---|
TEvents extends Record<string, unknown> | Record<string, unknown> |
Constructors
Constructor
new EventEmitter<TEvents>(): EventEmitter<TEvents>;Returns
EventEmitter<TEvents>
Properties
| Property | Modifier | Type | Defined in |
|---|---|---|---|
listeners | protected | Map<string, Set<EventHandler<unknown>>> | src/utils/EventEmitter.ts:16 |
Methods
on()
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
| Parameter | Type | Description |
|---|---|---|
event | K | Event name |
handler | EventHandler<TEvents[K]> | Event handler function |
Returns
Unsubscribe function
(): void;Returns
void
once()
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
| Parameter | Type | Description |
|---|---|---|
event | K | Event name |
handler | EventHandler<TEvents[K]> | Event handler function |
Returns
Unsubscribe function
(): void;Returns
void
off()
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
| Parameter | Type | Description |
|---|---|---|
event | K | Event name |
handler? | EventHandler<TEvents[K]> | Event handler function to remove (optional - removes all if not specified) |
Returns
void
emit()
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
| Parameter | Type | Description |
|---|---|---|
event | K | Event name |
data | TEvents[K] | Event data |
Returns
void
removeAllListeners()
removeAllListeners(): void;Defined in: src/utils/EventEmitter.ts:112
Remove all event listeners
Returns
void
listenerCount()
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
| Parameter | Type | Description |
|---|---|---|
event | K | Event name |
Returns
number
Number of listeners
eventNames()
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
| Property | Type | Description | Defined in |
|---|---|---|---|
extension | string | Extension number | src/composables/useAmi.ts:28 |
state | string | Current state (available, away, dnd, etc.) | src/composables/useAmi.ts:30 |
subtype? | string | Optional subtype | src/composables/useAmi.ts:32 |
message? | string | Optional message | src/composables/useAmi.ts:34 |
lastUpdated | Date | Last updated timestamp | src/composables/useAmi.ts:36 |
ClickToCallOptions
Defined in: src/composables/useAmiCalls.ts:79
Options for click-to-call
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
context? | string | Context for dial-out (default from config) | src/composables/useAmiCalls.ts:81 |
callerId? | string | Caller ID to present | src/composables/useAmiCalls.ts:83 |
timeout? | number | Timeout in ms for agent to answer | src/composables/useAmiCalls.ts:85 |
variables? | Record<string, string> | Variables to set on the channel | src/composables/useAmiCalls.ts:87 |
accountCode? | string | Account code | src/composables/useAmiCalls.ts:89 |
ContactGroup
Defined in: src/composables/useAmiDatabase.ts:25
Contact group with contacts
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Group name | src/composables/useAmiDatabase.ts:27 |
contacts | AmiContact[] | Contacts in this group | src/composables/useAmiDatabase.ts:29 |
count | number | Contact count | src/composables/useAmiDatabase.ts:31 |
ParkingEvent
Defined in: src/composables/useAmiParking.ts:66
Properties
| Property | Type | Defined in |
|---|---|---|
type | ParkingEventType | src/composables/useAmiParking.ts:67 |
call | ParkedCall | src/composables/useAmiParking.ts:68 |
retrieverChannel? | string | src/composables/useAmiParking.ts:69 |
PeerStatusSummary
Defined in: src/composables/useAmiPeers.ts:26
Peer status summary
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
total | number | Total number of peers | src/composables/useAmiPeers.ts:28 |
online | number | Number of online/OK peers | src/composables/useAmiPeers.ts:30 |
offline | number | Number of offline/unreachable peers | src/composables/useAmiPeers.ts:32 |
unknown | number | Number of peers in unknown state | src/composables/useAmiPeers.ts:34 |
SupervisionSession
Defined in: src/composables/useAmiSupervisor.ts:28
Active supervision session
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique session ID | src/composables/useAmiSupervisor.ts:30 |
supervisorChannel | string | Supervisor channel | src/composables/useAmiSupervisor.ts:32 |
targetChannel | string | Target channel being supervised | src/composables/useAmiSupervisor.ts:34 |
mode | SupervisionMode | Supervision mode | src/composables/useAmiSupervisor.ts:36 |
startTime | Date | Start time | src/composables/useAmiSupervisor.ts:38 |
serverId? | number | Server ID for multi-server setups | src/composables/useAmiSupervisor.ts:40 |
UseAudioDevicesReturn
Defined in: src/composables/useAudioDevices.ts:15
Properties
UseCallHoldReturn
Defined in: src/composables/useCallHold.ts:22
Return type for useCallHold composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
holdState | Ref<HoldState> | Current hold state | src/composables/useCallHold.ts:28 |
isOnHold | ComputedRef<boolean> | Is call on hold (local) | src/composables/useCallHold.ts:30 |
isLocalHold | ComputedRef<boolean> | Is call on hold by local party | src/composables/useCallHold.ts:32 |
isRemoteHold | ComputedRef<boolean> | Is call on hold by remote party | src/composables/useCallHold.ts:34 |
isHolding | ComputedRef<boolean> | Is hold operation in progress | src/composables/useCallHold.ts:36 |
isResuming | ComputedRef<boolean> | Is resume operation in progress | src/composables/useCallHold.ts:38 |
holdError | Ref<string | null> | Hold error message | src/composables/useCallHold.ts:40 |
holdCall | (options?) => Promise<HoldResult> | Place call on hold | src/composables/useCallHold.ts:47 |
resumeCall | () => Promise<HoldResult> | Resume call from hold | src/composables/useCallHold.ts:49 |
toggleHold | () => Promise<HoldResult> | Toggle hold state | src/composables/useCallHold.ts:51 |
clearHold | () => void | Clear hold state and errors | src/composables/useCallHold.ts:53 |
TransferResult
Defined in: src/composables/useCallTransfer.ts:32
Transfer result interface
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
success | boolean | Whether transfer was successful | src/composables/useCallTransfer.ts:34 |
transferId? | string | Transfer ID | src/composables/useCallTransfer.ts:36 |
error? | string | Error message if failed | src/composables/useCallTransfer.ts:38 |
state | TransferState | Transfer state | src/composables/useCallTransfer.ts:40 |
UseCallTransferReturn
Defined in: src/composables/useCallTransfer.ts:46
Return type for useCallTransfer composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
transferState | Ref<TransferState> | Current transfer state | src/composables/useCallTransfer.ts:52 |
transferType | Ref<TransferType | null> | Current transfer type | src/composables/useCallTransfer.ts:54 |
transferTarget | Ref<string | null> | Transfer target URI | src/composables/useCallTransfer.ts:56 |
transferError | Ref<string | null> | Transfer error message | src/composables/useCallTransfer.ts:58 |
transferProgress | Ref<TransferProgress | null> | Transfer progress information | src/composables/useCallTransfer.ts:60 |
isTransferring | ComputedRef<boolean> | Is transfer currently in progress | src/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 request | src/composables/useCallTransfer.ts:71 |
rejectTransfer | (reason?) => Promise<void> | Reject incoming transfer request | src/composables/useCallTransfer.ts:73 |
clearTransfer | () => void | Clear transfer state | src/composables/useCallTransfer.ts:75 |
UseDialogReturn
Defined in: src/composables/useDialog.ts:31
Return type for useDialog composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
watchedExtensions | Ref<Map<string, DialogStatus>> | Map of watched extensions and their dialog status | src/composables/useDialog.ts:37 |
subscriptions | Ref<Map<string, DialogSubscription>> | Active subscriptions | src/composables/useDialog.ts:39 |
subscriptionCount | ComputedRef<number> | Number of active subscriptions | src/composables/useDialog.ts:41 |
displayConfig | Ref<PresenceDisplayConfig> | Display configuration | src/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 state | src/composables/useDialog.ts:52 |
subscribeMany | (uris, options?) => Promise<string[]> | Subscribe to multiple extensions at once | src/composables/useDialog.ts:54 |
unsubscribeAll | () => Promise<void> | Unsubscribe from all extensions | src/composables/useDialog.ts:56 |
getStatus | (uri) => DialogStatus | undefined | Get dialog status for a specific extension | src/composables/useDialog.ts:58 |
getDisplayOptions | (state) => StateDisplayOptions | Get display options for a dialog state | src/composables/useDialog.ts:60 |
setDisplayConfig | (config) => void | Set custom display configuration | src/composables/useDialog.ts:62 |
onDialogEvent | (callback) => () => void | Listen for dialog events | src/composables/useDialog.ts:64 |
ExtensionPresence
Defined in: src/composables/useFreePBXPresence.ts:28
Extension presence status with computed helpers
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
extension | string | Extension number | src/composables/useFreePBXPresence.ts:30 |
status | FreePBXPresenceStatus | Current presence status | src/composables/useFreePBXPresence.ts:32 |
isAvailable | boolean | Is the extension available | src/composables/useFreePBXPresence.ts:34 |
isBusy | boolean | Is the extension busy (on phone or in meeting) | src/composables/useFreePBXPresence.ts:36 |
isAway | boolean | Is the extension away | src/composables/useFreePBXPresence.ts:38 |
hasReturnTime | boolean | Has an expected return time | src/composables/useFreePBXPresence.ts:40 |
isOverdue | boolean | Is return time overdue | src/composables/useFreePBXPresence.ts:42 |
returnTimeDisplay | string | null | Formatted return time string | src/composables/useFreePBXPresence.ts:44 |
remainingTimeDisplay | string | null | Formatted remaining time string | src/composables/useFreePBXPresence.ts:46 |
UseFreePBXPresenceReturn
Defined in: src/composables/useFreePBXPresence.ts:52
Return type for useFreePBXPresence composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
presenceMap | Ref<Map<string, FreePBXPresenceStatus>> | Map of all presence statuses by extension | src/composables/useFreePBXPresence.ts:58 |
presenceList | ComputedRef<ExtensionPresence[]> | Array of presence statuses for iteration | src/composables/useFreePBXPresence.ts:61 |
selectedExtension | Ref<string | null> | Currently selected/focused extension | src/composables/useFreePBXPresence.ts:64 |
selectedPresence | ComputedRef<ExtensionPresence | null> | Presence status of selected extension | src/composables/useFreePBXPresence.ts:67 |
isSubscribed | Ref<boolean> | Is currently subscribed to presence updates | src/composables/useFreePBXPresence.ts:70 |
lastEvent | Ref<FreePBXPresenceEvent | null> | Last presence event received | src/composables/useFreePBXPresence.ts:73 |
error | Ref<string | null> | Connection/subscription error if any | src/composables/useFreePBXPresence.ts:76 |
availableCount | ComputedRef<number> | Count of available extensions | src/composables/useFreePBXPresence.ts:83 |
busyCount | ComputedRef<number> | Count of busy extensions | src/composables/useFreePBXPresence.ts:86 |
awayCount | ComputedRef<number> | Count of away extensions | src/composables/useFreePBXPresence.ts:89 |
withReturnTimeCount | ComputedRef<number> | Count of extensions with return time set | src/composables/useFreePBXPresence.ts:92 |
overdueCount | ComputedRef<number> | Count of overdue extensions | src/composables/useFreePBXPresence.ts:95 |
overdueExtensions | ComputedRef<ExtensionPresence[]> | List of overdue extensions | src/composables/useFreePBXPresence.ts:98 |
initialize | (config) => void | Initialize the presence bridge with configuration | src/composables/useFreePBXPresence.ts:105 |
setUserAgent | (ua) => void | Set the JsSIP User Agent for SIP subscriptions | src/composables/useFreePBXPresence.ts:108 |
subscribe | (extensions) => Promise<void> | Subscribe to presence updates for extensions | src/composables/useFreePBXPresence.ts:111 |
unsubscribe | (extension) => void | Unsubscribe from specific extension | src/composables/useFreePBXPresence.ts:114 |
unsubscribeAll | () => void | Unsubscribe from all extensions | src/composables/useFreePBXPresence.ts:117 |
getPresence | (extension) => ExtensionPresence | null | Get presence status for an extension | src/composables/useFreePBXPresence.ts:120 |
setReturnTime | (extension, returnTime) => void | Set return time for an extension | src/composables/useFreePBXPresence.ts:123 |
clearReturnTime | (extension) => void | Clear return time for an extension | src/composables/useFreePBXPresence.ts:126 |
selectExtension | (extension) => void | Select/focus an extension | src/composables/useFreePBXPresence.ts:129 |
isExtensionAvailable | (extension) => boolean | Check if extension is available | src/composables/useFreePBXPresence.ts:132 |
isExtensionBusy | (extension) => boolean | Check if extension is busy | src/composables/useFreePBXPresence.ts:135 |
filterByState | (state) => ExtensionPresence[] | Filter extensions by presence state | src/composables/useFreePBXPresence.ts:138 |
destroy | () => void | Destroy and cleanup | src/composables/useFreePBXPresence.ts:141 |
UseMultiLineReturn
Defined in: src/composables/useMultiLine.ts:24
Properties
UseSipDtmfReturn
Defined in: src/composables/useSipDtmf.ts:17
Properties
| Property | Type | Defined 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
| Property | Type | Defined in |
|---|---|---|
state | RegistrationState | src/composables/useSipRegistration.ts:90 |
registeredUri | string | null | src/composables/useSipRegistration.ts:91 |
isRegistered | boolean | src/composables/useSipRegistration.ts:92 |
expires | number | src/composables/useSipRegistration.ts:93 |
secondsUntilExpiry | number | src/composables/useSipRegistration.ts:94 |
retryCount | number | src/composables/useSipRegistration.ts:95 |
hasAutoRefreshTimer | boolean | src/composables/useSipRegistration.ts:96 |
lastError | string | null | src/composables/useSipRegistration.ts:97 |
lastRegistrationTime | Date | null | src/composables/useSipRegistration.ts:98 |
expiryTime | Date | null | src/composables/useSipRegistration.ts:99 |
UseSipWebRTCStatsReturn
Defined in: src/composables/useSipWebRTCStats.ts:34
Return type for useSipWebRTCStats composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
stats | Ref<CallQualityStats | null> | Current call quality statistics | src/composables/useSipWebRTCStats.ts:37 |
quality | ComputedRef<ConnectionQuality> | Current connection quality level | src/composables/useSipWebRTCStats.ts:39 |
mosScore | ComputedRef<MosScore | null> | Current MOS score | src/composables/useSipWebRTCStats.ts:41 |
history | Ref<StatsHistoryEntry[]> | Stats collection history | src/composables/useSipWebRTCStats.ts:43 |
alerts | Ref<QualityAlert[]> | Active quality alerts | src/composables/useSipWebRTCStats.ts:45 |
isCollecting | Ref<boolean> | Whether stats collection is active | src/composables/useSipWebRTCStats.ts:47 |
error | Ref<string | null> | Error message if any | src/composables/useSipWebRTCStats.ts:49 |
avgPacketLoss | ComputedRef<number> | Average packet loss (percentage) | src/composables/useSipWebRTCStats.ts:53 |
avgJitter | ComputedRef<number> | Average jitter (ms) | src/composables/useSipWebRTCStats.ts:55 |
avgRtt | ComputedRef<number | null> | Average round-trip time (ms) | src/composables/useSipWebRTCStats.ts:57 |
currentBitrate | ComputedRef<number> | Current bitrate (kbps) | src/composables/useSipWebRTCStats.ts:59 |
start | () => void | Start collecting stats | src/composables/useSipWebRTCStats.ts:63 |
stop | () => void | Stop collecting stats | src/composables/useSipWebRTCStats.ts:65 |
getSnapshot | () => Promise<CallQualityStats | null> | Get current stats snapshot | src/composables/useSipWebRTCStats.ts:67 |
clearHistory | () => void | Clear stats history | src/composables/useSipWebRTCStats.ts:69 |
clearAlerts | () => void | Clear alerts | src/composables/useSipWebRTCStats.ts:71 |
setThresholds | (thresholds) => void | Update quality thresholds | src/composables/useSipWebRTCStats.ts:73 |
onAlert | (callback) => () => void | Listen for quality alerts | src/composables/useSipWebRTCStats.ts:75 |
onQualityChange | (callback) => () => void | Listen for quality changes | src/composables/useSipWebRTCStats.ts:77 |
CallSessionEvents
Defined in: src/core/CallSession.ts:31
Call session event types
Indexable
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
progress | unknown | src/core/CallSession.ts:32 |
accepted | void | src/core/CallSession.ts:33 |
confirmed | void | src/core/CallSession.ts:34 |
ended | unknown | src/core/CallSession.ts:35 |
failed | unknown | src/core/CallSession.ts:36 |
hold | void | src/core/CallSession.ts:37 |
unhold | void | src/core/CallSession.ts:38 |
muted | void | src/core/CallSession.ts:39 |
unmuted | void | src/core/CallSession.ts:40 |
sdp | unknown | src/core/CallSession.ts:41 |
icecandidate | unknown | src/core/CallSession.ts:42 |
getusermediafailed | unknown | src/core/CallSession.ts:43 |
peerconnection | unknown | src/core/CallSession.ts:44 |
connecting | void | src/core/CallSession.ts:45 |
sending | void | src/core/CallSession.ts:46 |
newDTMF | unknown | src/core/CallSession.ts:47 |
newInfo | unknown | src/core/CallSession.ts:48 |
refer | unknown | src/core/CallSession.ts:49 |
replaces | unknown | src/core/CallSession.ts:50 |
update | unknown | src/core/CallSession.ts:51 |
CallSessionOptions
Defined in: src/core/CallSession.ts:59
Call session options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Call ID | src/core/CallSession.ts:61 |
direction | CallDirection | Call direction | src/core/CallSession.ts:63 |
localUri | string | Local SIP URI | src/core/CallSession.ts:65 |
remoteUri | string | Remote SIP URI | src/core/CallSession.ts:67 |
remoteDisplayName? | string | Remote display name | src/core/CallSession.ts:69 |
rtcSession | any | JsSIP RTCSession instance | src/core/CallSession.ts:71 |
eventBus | EventBus | Event bus for emitting events | src/core/CallSession.ts:73 |
data? | Record<string, any> | Custom data | src/core/CallSession.ts:75 |
EventListener
Defined in: src/core/EventBus.ts:19
Internal event listener structure
Type Parameters
| Type Parameter | Default type |
|---|---|
T | unknown |
Properties
| Property | Type | Defined in |
|---|---|---|
handler | EventHandler<T> | src/core/EventBus.ts:20 |
once | boolean | src/core/EventBus.ts:21 |
priority | number | src/core/EventBus.ts:22 |
id | string | src/core/EventBus.ts:23 |
MediaManagerOptions
Defined in: src/core/MediaManager.ts:81
Media manager options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
eventBus | EventBus | Event bus for emitting events | src/core/MediaManager.ts:83 |
rtcConfiguration? | ExtendedRTCConfiguration | RTC configuration | src/core/MediaManager.ts:85 |
mediaConfiguration? | MediaConfiguration | Media configuration | src/core/MediaManager.ts:87 |
autoQualityAdjustment? | boolean | Enable auto-quality adjustment | src/core/MediaManager.ts:89 |
DeviceTestResult
Defined in: src/core/MediaManager.ts:95
Device test result
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
deviceId | string | Device ID | src/core/MediaManager.ts:97 |
success | boolean | Success status | src/core/MediaManager.ts:99 |
error? | string | Error message if failed | src/core/MediaManager.ts:101 |
audioLevel? | number | Audio level (0-1) if applicable | src/core/MediaManager.ts:103 |
Line
Defined in: src/core/MultiLineManager.ts:35
Represents a single line in the multi-line system
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | number | Unique line identifier (1-based) | src/core/MultiLineManager.ts:37 |
state | LineState | Current state of the line | src/core/MultiLineManager.ts:39 |
callSession | CallSession | null | Associated call session if active | src/core/MultiLineManager.ts:41 |
remoteParty | string | null | Remote party identifier (phone number or SIP URI) | src/core/MultiLineManager.ts:43 |
duration | number | Call duration in seconds | src/core/MultiLineManager.ts:45 |
startTime | Date | null | Call start timestamp | src/core/MultiLineManager.ts:47 |
isConference | boolean | Whether this line is part of a conference | src/core/MultiLineManager.ts:49 |
conferenceId? | string | Conference ID if part of a conference | src/core/MultiLineManager.ts:51 |
parkSlot? | string | Park slot identifier if parked | src/core/MultiLineManager.ts:53 |
MultiLineConfig
Defined in: src/core/MultiLineManager.ts:59
Configuration options for multi-line manager
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
maxLines | number | Maximum number of lines to support | src/core/MultiLineManager.ts:61 |
autoAnswer | boolean | Automatically answer incoming calls | src/core/MultiLineManager.ts:63 |
ringPolicy | RingPolicy | Policy for distributing incoming calls | src/core/MultiLineManager.ts:65 |
defaultLine | number | Default line to use for outgoing calls | src/core/MultiLineManager.ts:67 |
conferenceEnabled | boolean | Enable conference bridging | src/core/MultiLineManager.ts:69 |
parkingEnabled | boolean | Enable call parking | src/core/MultiLineManager.ts:71 |
ConferenceState
Defined in: src/core/MultiLineManager.ts:77
Conference state tracking
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique conference identifier | src/core/MultiLineManager.ts:79 |
lines | number[] | Lines participating in the conference | src/core/MultiLineManager.ts:81 |
active | boolean | Whether the conference is active | src/core/MultiLineManager.ts:83 |
bridged | boolean | Whether all lines are bridged together | src/core/MultiLineManager.ts:85 |
startTime | Date | Conference start time | src/core/MultiLineManager.ts:87 |
participantCount | number | Number of participants | src/core/MultiLineManager.ts:89 |
LineSelectionCriteria
Defined in: src/core/MultiLineManager.ts:127
Line selection criteria
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
preferredLine? | number | Prefer specific line ID | src/core/MultiLineManager.ts:129 |
requireIdle? | boolean | Require idle line | src/core/MultiLineManager.ts:131 |
excludeLines? | number[] | Exclude specific lines | src/core/MultiLineManager.ts:133 |
allowHeld? | boolean | Allow held lines | src/core/MultiLineManager.ts:135 |
ParkSlot
Defined in: src/core/MultiLineManager.ts:141
Park slot information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Slot identifier | src/core/MultiLineManager.ts:143 |
lineId | number | Line ID that is parked | src/core/MultiLineManager.ts:145 |
remoteParty | string | Remote party information | src/core/MultiLineManager.ts:147 |
parkedAt | Date | Park timestamp | src/core/MultiLineManager.ts:149 |
retrievalCode? | string | Retrieval code | src/core/MultiLineManager.ts:151 |
MultiLineStats
Defined in: src/core/MultiLineManager.ts:157
Multi-line statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalLines | number | Total number of lines | src/core/MultiLineManager.ts:159 |
activeLines | number | Number of active lines | src/core/MultiLineManager.ts:161 |
heldLines | number | Number of held lines | src/core/MultiLineManager.ts:163 |
idleLines | number | Number of idle lines | src/core/MultiLineManager.ts:165 |
activeConferences | number | Active conferences | src/core/MultiLineManager.ts:167 |
parkedCalls | number | Parked calls | src/core/MultiLineManager.ts:169 |
totalCallsHandled | number | Total calls handled | src/core/MultiLineManager.ts:171 |
SipClientState
Defined in: src/core/SipClient.ts:106
SIP Client state
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
connectionState | ConnectionState | Current connection state | src/core/SipClient.ts:108 |
registrationState | RegistrationState | Current registration state | src/core/SipClient.ts:110 |
registeredUri? | string | Registered SIP URI | src/core/SipClient.ts:112 |
registrationExpiry? | number | Registration expiry time in seconds | src/core/SipClient.ts:114 |
lastRegistrationTime? | Date | Last registration timestamp | src/core/SipClient.ts:116 |
TransportConfig
Defined in: src/core/TransportManager.ts:27
Transport configuration options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
url | string | WebSocket server URL | src/core/TransportManager.ts:29 |
protocols? | string | string[] | WebSocket protocols | src/core/TransportManager.ts:31 |
connectionTimeout? | number | Connection timeout in milliseconds (default: 10000) | src/core/TransportManager.ts:33 |
maxReconnectionAttempts? | number | Maximum reconnection attempts (default: 5) | src/core/TransportManager.ts:35 |
initialReconnectionDelay? | number | Initial reconnection delay in milliseconds (default: 2000) | src/core/TransportManager.ts:37 |
keepAliveInterval? | number | Keep-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? | boolean | Enable automatic reconnection (default: true) | src/core/TransportManager.ts:43 |
TransportEventData
Defined in: src/core/TransportManager.ts:49
Transport event data types
Properties
| Property | Type | Defined in |
|---|---|---|
state? | ConnectionState | src/core/TransportManager.ts:50 |
attempt? | number | src/core/TransportManager.ts:51 |
data? | string | Blob | ArrayBuffer | src/core/TransportManager.ts:52 |
OAuth2ServiceReturn
Defined in: src/services/OAuth2Service.ts:313
OAuth2 service return type (for composable)
Extends
Properties
BasePersistenceManager
Defined in: src/stores/persistence.ts:41
Base persistence manager interface for storing in collections
Methods
load()
load(): Promise<void>;Defined in: src/stores/persistence.ts:42
Returns
Promise<void>
save()
save(): Promise<void>;Defined in: src/stores/persistence.ts:43
Returns
Promise<void>
clear()
clear(): Promise<void>;Defined in: src/stores/persistence.ts:44
Returns
Promise<void>
destroy()
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
| Property | Type | Defined in |
|---|---|---|
lang | string | src/transcription/providers/web-speech.ts:22 |
continuous | boolean | src/transcription/providers/web-speech.ts:23 |
interimResults | boolean | src/transcription/providers/web-speech.ts:24 |
onresult | (event) => void | null | src/transcription/providers/web-speech.ts:25 |
onerror | (event) => void | null | src/transcription/providers/web-speech.ts:26 |
onend | () => void | null | src/transcription/providers/web-speech.ts:27 |
Methods
start()
start(): void;Defined in: src/transcription/providers/web-speech.ts:28
Returns
void
stop()
stop(): void;Defined in: src/transcription/providers/web-speech.ts:29
Returns
void
abort()
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
| Property | Type | Defined in |
|---|---|---|
resultIndex | number | src/transcription/providers/web-speech.ts:44 |
results | SpeechRecognitionResultList | src/transcription/providers/web-speech.ts:45 |
AgentQueueMembership
Defined in: src/types/agent.types.ts:20
Queue membership state for an agent
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/agent.types.ts:22 |
interface | string | Agent interface (e.g., PJSIP/1001) | src/types/agent.types.ts:25 |
isMember | boolean | Whether agent is currently a member of this queue | src/types/agent.types.ts:28 |
isPaused | boolean | Whether agent is paused in this queue | src/types/agent.types.ts:31 |
pauseReason? | string | Pause reason if paused | src/types/agent.types.ts:34 |
penalty | number | Agent penalty in this queue | src/types/agent.types.ts:37 |
callsTaken | number | Number of calls taken in this queue | src/types/agent.types.ts:40 |
lastCall | number | Timestamp of last call in this queue (Unix time) | src/types/agent.types.ts:43 |
loginTime | number | Login timestamp for this queue (Unix time) | src/types/agent.types.ts:46 |
inCall | boolean | Whether agent is currently on a call from this queue | src/types/agent.types.ts:49 |
AgentSession
Defined in: src/types/agent.types.ts:55
Agent session information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
agentId | string | Agent identifier | src/types/agent.types.ts:57 |
interface | string | Agent interface (e.g., PJSIP/1001) | src/types/agent.types.ts:60 |
name | string | Display name | src/types/agent.types.ts:63 |
status | AgentLoginStatus | Current login status | src/types/agent.types.ts:66 |
queues | AgentQueueMembership[] | Queues the agent is logged into | src/types/agent.types.ts:69 |
loginTime | Date | null | Overall login time (first queue login) | src/types/agent.types.ts:72 |
sessionDuration | number | Session duration in seconds | src/types/agent.types.ts:75 |
totalCallsHandled | number | Total calls handled this session | src/types/agent.types.ts:78 |
totalTalkTime | number | Total talk time this session (seconds) | src/types/agent.types.ts:81 |
isPaused | boolean | Whether agent is globally paused | src/types/agent.types.ts:84 |
pauseReason? | string | Global pause reason | src/types/agent.types.ts:87 |
shiftStart? | Date | Shift start time (if configured) | src/types/agent.types.ts:90 |
shiftEnd? | Date | Shift end time (if configured) | src/types/agent.types.ts:93 |
isOnShift | boolean | Whether agent is within shift hours | src/types/agent.types.ts:96 |
serverId? | number | Server ID for multi-server setups | src/types/agent.types.ts:99 |
ShiftConfig
Defined in: src/types/agent.types.ts:119
Shift configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
startHour | number | Shift start hour (0-23) | src/types/agent.types.ts:121 |
startMinute | number | Shift start minute (0-59) | src/types/agent.types.ts:124 |
endHour | number | Shift end hour (0-23) | src/types/agent.types.ts:127 |
endMinute | number | Shift end minute (0-59) | src/types/agent.types.ts:130 |
daysOfWeek | number[] | Days of week (0=Sunday, 6=Saturday) | src/types/agent.types.ts:133 |
timezone? | string | Timezone (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
| Property | Type | Description | Defined in |
|---|---|---|---|
queues | string[] | Queues to log into | src/types/agent.types.ts:144 |
defaultPenalty? | number | Default penalty for all queues | src/types/agent.types.ts:147 |
penalties? | Record<string, number> | Queue-specific penalties | src/types/agent.types.ts:150 |
memberName? | string | Agent display name | src/types/agent.types.ts:153 |
persist? | boolean | Whether to persist login state in storage | src/types/agent.types.ts:156 |
AgentLogoutOptions
Defined in: src/types/agent.types.ts:162
Agent logout options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queues? | string[] | Queues to log out from (empty = all queues) | src/types/agent.types.ts:164 |
reason? | string | Reason for logout | src/types/agent.types.ts:167 |
clearPersistence? | boolean | Whether to clear persisted state | src/types/agent.types.ts:170 |
AgentPauseOptions
Defined in: src/types/agent.types.ts:176
Agent pause options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queues? | string[] | Queues to pause in (empty = all queues) | src/types/agent.types.ts:178 |
reason | string | Pause reason | src/types/agent.types.ts:181 |
duration? | number | Duration in seconds (0 = indefinite) | src/types/agent.types.ts:184 |
UseAmiAgentLoginOptions
Defined in: src/types/agent.types.ts:190
Options for useAmiAgentLogin composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
agentId | string | Agent identifier | src/types/agent.types.ts:192 |
interface | string | Agent interface (e.g., PJSIP/1001) | src/types/agent.types.ts:195 |
name? | string | Agent display name | src/types/agent.types.ts:198 |
availableQueues? | string[] | Available queues for this agent | src/types/agent.types.ts:201 |
defaultQueues? | string[] | Default queues to auto-login | src/types/agent.types.ts:204 |
defaultPenalty? | number | Default penalty | src/types/agent.types.ts:207 |
shift? | ShiftConfig | Shift configuration | src/types/agent.types.ts:210 |
autoLogoutAfterShift? | boolean | Auto-logout after shift end | src/types/agent.types.ts:213 |
pauseReasons? | string[] | Available pause reasons | src/types/agent.types.ts:216 |
persistState? | boolean | Persist login state to localStorage | src/types/agent.types.ts:219 |
storageKeyPrefix? | string | Storage key prefix for persistence | src/types/agent.types.ts:222 |
onStatusChange? | (status, session) => void | Callback when login status changes | src/types/agent.types.ts:225 |
onQueueChange? | (queue, isMember) => void | Callback when queue membership changes | src/types/agent.types.ts:228 |
onShiftStart? | () => void | Callback when shift starts | src/types/agent.types.ts:231 |
onShiftEnd? | () => void | Callback when shift ends | src/types/agent.types.ts:234 |
sessionUpdateInterval? | number | Update 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
| Property | Type | Description | Defined in |
|---|---|---|---|
session | Ref<AgentSession> | Current agent session | src/types/agent.types.ts:246 |
status | ComputedRef<AgentLoginStatus> | Current login status | src/types/agent.types.ts:249 |
isLoggedIn | ComputedRef<boolean> | Whether agent is logged in to any queue | src/types/agent.types.ts:252 |
isPaused | ComputedRef<boolean> | Whether agent is paused | src/types/agent.types.ts:255 |
isOnCall | ComputedRef<boolean> | Whether agent is on a call | src/types/agent.types.ts:258 |
isOnShift | ComputedRef<boolean> | Whether currently within shift hours | src/types/agent.types.ts:261 |
loggedInQueues | ComputedRef<string[]> | List of queues agent is logged into | src/types/agent.types.ts:264 |
sessionDurationFormatted | ComputedRef<string> | Session duration in formatted string | src/types/agent.types.ts:267 |
isLoading | Ref<boolean> | Loading state | src/types/agent.types.ts:270 |
error | Ref<string | null> | Error message if any | src/types/agent.types.ts:273 |
login | (options) => Promise<void> | Log in to queues | src/types/agent.types.ts:277 |
logout | (options?) => Promise<void> | Log out from queues | src/types/agent.types.ts:280 |
pause | (options) => Promise<void> | Pause in queues | src/types/agent.types.ts:283 |
unpause | (queues?) => Promise<void> | Unpause in queues | src/types/agent.types.ts:286 |
toggleQueue | (queue, penalty?) => Promise<void> | Toggle login state for a queue | src/types/agent.types.ts:289 |
setPenalty | (queue, penalty) => Promise<void> | Set penalty for a queue | src/types/agent.types.ts:292 |
refresh | () => Promise<void> | Refresh session state from AMI | src/types/agent.types.ts:295 |
getAvailableQueues | () => string[] | Get available queues | src/types/agent.types.ts:298 |
getPauseReasons | () => string[] | Get pause reasons | src/types/agent.types.ts:301 |
isLoggedIntoQueue | (queue) => boolean | Check if logged into specific queue | src/types/agent.types.ts:304 |
getQueueMembership | (queue) => AgentQueueMembership | null | Get queue membership details | src/types/agent.types.ts:307 |
startSession | () => void | Start session timer (for persistence) | src/types/agent.types.ts:310 |
endSession | () => Promise<void> | End session | src/types/agent.types.ts:313 |
AgentCallRecord
Defined in: src/types/agentstats.types.ts:30
Individual call record for agent
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
callId | string | Unique call identifier | src/types/agentstats.types.ts:32 |
queue? | string | Queue name (for inbound) | src/types/agentstats.types.ts:35 |
remoteParty | string | Caller/callee identifier | src/types/agentstats.types.ts:38 |
direction | AgentCallDirection | Call direction | src/types/agentstats.types.ts:41 |
startTime | Date | Call start timestamp | src/types/agentstats.types.ts:44 |
answerTime? | Date | Call answer timestamp | src/types/agentstats.types.ts:47 |
endTime? | Date | Call end timestamp | src/types/agentstats.types.ts:50 |
waitTime | number | Wait time before answer (seconds) - for queue calls | src/types/agentstats.types.ts:53 |
talkTime | number | Talk time (seconds) | src/types/agentstats.types.ts:56 |
holdTime | number | Hold time during call (seconds) | src/types/agentstats.types.ts:59 |
wrapTime | number | Wrap/ACW time after call (seconds) | src/types/agentstats.types.ts:62 |
disposition | "answered" | "voicemail" | "missed" | "abandoned" | "transferred" | Call disposition | src/types/agentstats.types.ts:65 |
transferredTo? | string | Transfer destination if transferred | src/types/agentstats.types.ts:68 |
recorded | boolean | Whether call was recorded | src/types/agentstats.types.ts:71 |
qualityScore? | number | Call quality score (MOS) if available | src/types/agentstats.types.ts:74 |
tags? | string[] | Custom tags | src/types/agentstats.types.ts:77 |
HourlyStats
Defined in: src/types/agentstats.types.ts:83
Hourly statistics bucket
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
hour | number | Hour (0-23) | src/types/agentstats.types.ts:85 |
callCount | number | Number of calls | src/types/agentstats.types.ts:88 |
talkTime | number | Total talk time (seconds) | src/types/agentstats.types.ts:91 |
avgHandleTime | number | Average handle time (seconds) | src/types/agentstats.types.ts:94 |
serviceLevel | number | Service level percentage | src/types/agentstats.types.ts:97 |
AgentQueueStats
Defined in: src/types/agentstats.types.ts:103
Queue-specific agent statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/agentstats.types.ts:105 |
callsHandled | number | Calls handled from this queue | src/types/agentstats.types.ts:108 |
callsMissed | number | Calls missed from this queue | src/types/agentstats.types.ts:111 |
talkTime | number | Total talk time in this queue (seconds) | src/types/agentstats.types.ts:114 |
avgHandleTime | number | Average handle time for this queue (seconds) | src/types/agentstats.types.ts:117 |
avgWaitTime | number | Average wait time for calls from this queue (seconds) | src/types/agentstats.types.ts:120 |
serviceLevel | number | Service level for this queue (percentage) | src/types/agentstats.types.ts:123 |
loginTime | number | Time spent logged into this queue (seconds) | src/types/agentstats.types.ts:126 |
availableTime | number | Time spent available in this queue (seconds) | src/types/agentstats.types.ts:129 |
pausedTime | number | Time 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
| Property | Type | Description | Defined in |
|---|---|---|---|
callsPerHour | number | Calls per hour | src/types/agentstats.types.ts:140 |
avgHandleTime | number | Average handle time (seconds) | src/types/agentstats.types.ts:143 |
avgTalkTime | number | Average talk time (seconds) | src/types/agentstats.types.ts:146 |
avgWrapTime | number | Average wrap time (seconds) | src/types/agentstats.types.ts:149 |
avgHoldTime | number | Average hold time per call (seconds) | src/types/agentstats.types.ts:152 |
fcrRate | number | First call resolution rate (percentage) | src/types/agentstats.types.ts:155 |
serviceLevel | number | Service level percentage (calls answered within threshold) | src/types/agentstats.types.ts:158 |
occupancy | number | Occupancy rate (talk time / logged in time) | src/types/agentstats.types.ts:161 |
utilization | number | Utilization rate ((talk + wrap) / logged in time) | src/types/agentstats.types.ts:164 |
avgQualityScore | number | Average quality score (MOS) | src/types/agentstats.types.ts:167 |
transferRate | number | Transfer rate (percentage) | src/types/agentstats.types.ts:170 |
holdRate | number | Hold 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
| Property | Type | Description | Defined in |
|---|---|---|---|
agentId | string | Agent identifier | src/types/agentstats.types.ts:181 |
interface | string | Agent interface (e.g., PJSIP/1001) | src/types/agentstats.types.ts:184 |
name | string | Agent display name | src/types/agentstats.types.ts:187 |
period | AgentStatsPeriod | Statistics period | src/types/agentstats.types.ts:190 |
periodStart | Date | Period start date | src/types/agentstats.types.ts:193 |
periodEnd | Date | Period end date | src/types/agentstats.types.ts:196 |
totalCalls | number | Total calls handled | src/types/agentstats.types.ts:199 |
inboundCalls | number | Inbound calls | src/types/agentstats.types.ts:202 |
outboundCalls | number | Outbound calls | src/types/agentstats.types.ts:205 |
internalCalls | number | Internal calls | src/types/agentstats.types.ts:208 |
missedCalls | number | Missed calls | src/types/agentstats.types.ts:211 |
transferredCalls | number | Transferred calls | src/types/agentstats.types.ts:214 |
voicemailCalls | number | Calls sent to voicemail | src/types/agentstats.types.ts:217 |
totalTalkTime | number | Total talk time (seconds) | src/types/agentstats.types.ts:220 |
totalHoldTime | number | Total hold time (seconds) | src/types/agentstats.types.ts:223 |
totalWrapTime | number | Total wrap/ACW time (seconds) | src/types/agentstats.types.ts:226 |
totalHandleTime | number | Total handle time (talk + hold + wrap) (seconds) | src/types/agentstats.types.ts:229 |
totalLoginTime | number | Total login time (seconds) | src/types/agentstats.types.ts:232 |
totalAvailableTime | number | Total available time (seconds) | src/types/agentstats.types.ts:235 |
totalPausedTime | number | Total paused time (seconds) | src/types/agentstats.types.ts:238 |
totalOnCallTime | number | Total on-call time (seconds) | src/types/agentstats.types.ts:241 |
performance | AgentPerformanceMetrics | Performance metrics | src/types/agentstats.types.ts:244 |
queueStats | AgentQueueStats[] | Per-queue statistics | src/types/agentstats.types.ts:247 |
hourlyStats | HourlyStats[] | Hourly breakdown (24 hours) | src/types/agentstats.types.ts:250 |
recentCalls | AgentCallRecord[] | Recent call records | src/types/agentstats.types.ts:253 |
performanceLevel | AgentPerformanceLevel | Performance level assessment | src/types/agentstats.types.ts:256 |
lastUpdated | Date | Last updated timestamp | src/types/agentstats.types.ts:259 |
AgentStatsComparison
Defined in: src/types/agentstats.types.ts:265
Agent statistics comparison
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
agent | AgentStats | Agent being compared | src/types/agentstats.types.ts:267 |
teamAverage | AgentPerformanceMetrics | Team/queue average for comparison | src/types/agentstats.types.ts:270 |
percentileRank | number | Percentile rank (0-100) | src/types/agentstats.types.ts:273 |
strengths | string[] | Areas where agent excels | src/types/agentstats.types.ts:276 |
improvementAreas | string[] | Areas for improvement | src/types/agentstats.types.ts:279 |
StatsThreshold
Defined in: src/types/agentstats.types.ts:285
Statistics threshold for alerts
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
metric | keyof AgentPerformanceMetrics | Metric name | src/types/agentstats.types.ts:287 |
warningThreshold | number | Warning threshold | src/types/agentstats.types.ts:290 |
criticalThreshold | number | Critical threshold | src/types/agentstats.types.ts:293 |
higherIsBetter | boolean | Whether higher is better | src/types/agentstats.types.ts:296 |
StatsAlert
Defined in: src/types/agentstats.types.ts:302
Statistics alert
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Alert ID | src/types/agentstats.types.ts:304 |
agentId | string | Agent ID | src/types/agentstats.types.ts:307 |
metric | keyof AgentPerformanceMetrics | Metric that triggered alert | src/types/agentstats.types.ts:310 |
currentValue | number | Current value | src/types/agentstats.types.ts:313 |
thresholdValue | number | Threshold value | src/types/agentstats.types.ts:316 |
level | "critical" | "warning" | Alert level | src/types/agentstats.types.ts:319 |
message | string | Alert message | src/types/agentstats.types.ts:322 |
timestamp | Date | Alert timestamp | src/types/agentstats.types.ts:325 |
acknowledged | boolean | Whether alert has been acknowledged | src/types/agentstats.types.ts:328 |
UseAmiAgentStatsOptions
Defined in: src/types/agentstats.types.ts:334
Options for useAmiAgentStats composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
agentId? | string | Agent ID to track (optional, track all if not specified) | src/types/agentstats.types.ts:336 |
interfacePattern? | string | Agent 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? | AgentStatsPeriod | Statistics period | src/types/agentstats.types.ts:345 |
customStart? | Date | Custom period start (for period='custom') | src/types/agentstats.types.ts:348 |
customEnd? | Date | Custom period end (for period='custom') | src/types/agentstats.types.ts:351 |
serviceLevelThreshold? | number | Service level threshold in seconds (default: 20) | src/types/agentstats.types.ts:354 |
maxRecentCalls? | number | Maximum recent calls to keep (default: 50) | src/types/agentstats.types.ts:357 |
refreshInterval? | number | Stats refresh interval in ms (default: 30000) | src/types/agentstats.types.ts:360 |
realTimeUpdates? | boolean | Enable real-time updates via AMI events | src/types/agentstats.types.ts:363 |
thresholds? | StatsThreshold[] | Performance thresholds for alerts | src/types/agentstats.types.ts:366 |
onStatsUpdate? | (stats) => void | Callback when stats are updated | src/types/agentstats.types.ts:369 |
onAlert? | (alert) => void | Callback when alert is triggered | src/types/agentstats.types.ts:372 |
onError? | (error) => void | Callback on error | src/types/agentstats.types.ts:375 |
persist? | boolean | Persist stats to localStorage | src/types/agentstats.types.ts:378 |
storageKey? | string | Storage key for persistence | src/types/agentstats.types.ts:381 |
UseAmiAgentStatsReturn
Defined in: src/types/agentstats.types.ts:387
Return type for useAmiAgentStats composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
stats | Ref<AgentStats | null> | Current agent statistics | src/types/agentstats.types.ts:390 |
allAgentStats | Ref<Map<string, AgentStats>> | All tracked agents statistics (when tracking multiple) | src/types/agentstats.types.ts:393 |
alerts | Ref<StatsAlert[]> | Active alerts | src/types/agentstats.types.ts:396 |
isLoading | Ref<boolean> | Loading state | src/types/agentstats.types.ts:399 |
error | Ref<string | null> | Error message | src/types/agentstats.types.ts:402 |
isTracking | Ref<boolean> | Whether real-time tracking is active | src/types/agentstats.types.ts:405 |
performanceLevel | ComputedRef<AgentPerformanceLevel | null> | Current performance level | src/types/agentstats.types.ts:409 |
callsPerHour | ComputedRef<number> | Calls per hour (current) | src/types/agentstats.types.ts:412 |
avgHandleTime | ComputedRef<number> | Average handle time | src/types/agentstats.types.ts:415 |
serviceLevel | ComputedRef<number> | Service level percentage | src/types/agentstats.types.ts:418 |
occupancy | ComputedRef<number> | Occupancy rate | src/types/agentstats.types.ts:421 |
utilization | ComputedRef<number> | Utilization rate | src/types/agentstats.types.ts:424 |
formattedTalkTime | ComputedRef<string> | Formatted talk time (HH:MM:SS) | src/types/agentstats.types.ts:427 |
formattedLoginTime | ComputedRef<string> | Formatted login time (HH:MM:SS) | src/types/agentstats.types.ts:430 |
alertCount | ComputedRef<number> | Unacknowledged alerts count | src/types/agentstats.types.ts:433 |
topQueues | ComputedRef<AgentQueueStats[]> | Top performing queues for agent | src/types/agentstats.types.ts:436 |
peakHours | ComputedRef<number[]> | Peak hours based on call volume | src/types/agentstats.types.ts:439 |
startTracking | () => void | Start tracking agent statistics | src/types/agentstats.types.ts:443 |
stopTracking | () => void | Stop tracking agent statistics | src/types/agentstats.types.ts:446 |
refresh | () => Promise<void> | Refresh statistics from AMI | src/types/agentstats.types.ts:449 |
setPeriod | (period, customStart?, customEnd?) => void | Set statistics period | src/types/agentstats.types.ts:452 |
getAgentStats | (agentId) => AgentStats | null | Get statistics for specific agent | src/types/agentstats.types.ts:455 |
compareToTeam | (agentId?) => AgentStatsComparison | null | Compare agent to team average | src/types/agentstats.types.ts:458 |
getCallHistory | (agentId?, limit?) => AgentCallRecord[] | Get call history for agent | src/types/agentstats.types.ts:461 |
getHourlyBreakdown | (agentId?) => HourlyStats[] | Get hourly breakdown | src/types/agentstats.types.ts:464 |
getQueueStats | (agentId?, queue?) => AgentQueueStats[] | Get queue-specific stats | src/types/agentstats.types.ts:467 |
exportCsv | (agentId?) => string | Export statistics as CSV | src/types/agentstats.types.ts:470 |
exportJson | (agentId?) => string | Export statistics as JSON | src/types/agentstats.types.ts:473 |
acknowledgeAlert | (alertId) => void | Acknowledge an alert | src/types/agentstats.types.ts:476 |
acknowledgeAllAlerts | () => void | Acknowledge all alerts | src/types/agentstats.types.ts:479 |
clearHistory | (agentId?) => void | Clear old call records | src/types/agentstats.types.ts:482 |
resetStats | (agentId?) => void | Reset statistics for current period | src/types/agentstats.types.ts:485 |
recordCall | (call) => void | Register a call completion (for manual tracking) | src/types/agentstats.types.ts:488 |
recordWrapTime | (callId, wrapTime) => void | Update wrap time for last call | src/types/agentstats.types.ts:491 |
AmiConfig
Defined in: src/types/ami.types.ts:10
AMI WebSocket connection configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
url | string | WebSocket URL to amiws proxy (e.g., 'ws://pbx.example.com:8080') | src/types/ami.types.ts:12 |
autoReconnect? | boolean | Auto-reconnect on disconnect (default: true) | src/types/ami.types.ts:14 |
reconnectDelay? | number | Reconnect delay in ms (default: 3000) | src/types/ami.types.ts:16 |
maxReconnectAttempts? | number | Max reconnect attempts (default: 5, 0 = infinite) | src/types/ami.types.ts:18 |
connectionTimeout? | number | Connection 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
[key: string]: string | number | string[] | undefinedAdditional action parameters
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
Action | string | AMI action name | src/types/ami.types.ts:48 |
ActionID? | string | Optional action ID for tracking responses | src/types/ami.types.ts:50 |
AMIServerID? | number | Target 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 Parameter | Default type |
|---|---|
T | Record<string, string> |
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | AmiMessageType | Message type (see AmiMessageType) | src/types/ami.types.ts:62 |
server_id | number | Server ID in multi-server setup | src/types/ami.types.ts:64 |
server_name | string | Server hostname | src/types/ami.types.ts:66 |
ssl | boolean | Whether SSL is enabled | src/types/ami.types.ts:68 |
data | T | AMI event/response data | src/types/ami.types.ts:70 |
AmiResponseData
Defined in: src/types/ami.types.ts:76
AMI Response data
Indexable
[key: string]: string | undefinedAdditional response fields
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
Response | string | Response status (Success, Error, etc.) | src/types/ami.types.ts:78 |
ActionID? | string | Action ID if provided | src/types/ami.types.ts:80 |
Message? | string | Error message if failed | src/types/ami.types.ts:82 |
AmiEventData
Defined in: src/types/ami.types.ts:90
AMI Event data
Extended by
AmiQueueMemberEventAmiQueueEntryEventAmiCoreShowChannelEventAmiPeerEntryEventAmiPresenceStateChangeEventAmiQueueMemberStatusEventAmiQueueCallerJoinEventAmiQueueCallerLeaveEventAmiQueueCallerAbandonEventAmiNewChannelEventAmiHangupEventAmiNewStateEventAmiPeerStatusEvent
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
Event | string | Event name | src/types/ami.types.ts:92 |
AmiPresenceStateChangeEvent
Defined in: src/types/ami.types.ts:112
Presence state change event
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "PresenceStateChange" | Event name | AmiEventData.Event | src/types/ami.types.ts:113 |
Presentity | string | Presence provider (e.g., CustomPresence:1000) | - | src/types/ami.types.ts:115 |
State | string | New state | - | src/types/ami.types.ts:117 |
Subtype? | string | Subtype | - | src/types/ami.types.ts:119 |
Message? | string | Custom message | - | src/types/ami.types.ts:121 |
AmiClientEvents
Defined in: src/types/ami.types.ts:155
AMI client events
Properties
| Property | Type | Defined in |
|---|---|---|
connected | () => void | src/types/ami.types.ts:156 |
disconnected | (reason?) => void | src/types/ami.types.ts:157 |
error | (error) => void | src/types/ami.types.ts:158 |
message | (message) => void | src/types/ami.types.ts:159 |
event | (event) => void | src/types/ami.types.ts:160 |
response | (response) => void | src/types/ami.types.ts:161 |
presenceChange | (event) => void | src/types/ami.types.ts:162 |
queueMemberStatus | (event) => void | src/types/ami.types.ts:164 |
queueMemberAdded | (event) => void | src/types/ami.types.ts:165 |
queueMemberRemoved | (event) => void | src/types/ami.types.ts:166 |
queueMemberPause | (event) => void | src/types/ami.types.ts:167 |
queueCallerJoin | (event) => void | src/types/ami.types.ts:168 |
queueCallerLeave | (event) => void | src/types/ami.types.ts:169 |
queueCallerAbandon | (event) => void | src/types/ami.types.ts:170 |
newChannel | (event) => void | src/types/ami.types.ts:172 |
hangup | (event) => void | src/types/ami.types.ts:173 |
newState | (event) => void | src/types/ami.types.ts:174 |
peerStatus | (event) => void | src/types/ami.types.ts:176 |
QueueInfo
Defined in: src/types/ami.types.ts:227
Queue information from QueueParams event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Queue name | src/types/ami.types.ts:229 |
strategy | string | Queue strategy (ringall, leastrecent, fewestcalls, etc.) | src/types/ami.types.ts:231 |
calls | number | Number of calls waiting | src/types/ami.types.ts:233 |
holdtime | number | Average hold time in seconds | src/types/ami.types.ts:235 |
talktime | number | Average talk time in seconds | src/types/ami.types.ts:237 |
completed | number | Completed calls | src/types/ami.types.ts:239 |
abandoned | number | Abandoned calls | src/types/ami.types.ts:241 |
serviceLevelPerf | number | Service level performance (percentage) | src/types/ami.types.ts:243 |
serviceLevelPerf2 | number | Secondary service level performance | src/types/ami.types.ts:245 |
weight | number | Queue weight | src/types/ami.types.ts:247 |
members | QueueMember[] | Queue members | src/types/ami.types.ts:249 |
entries | QueueEntry[] | Callers waiting in queue | src/types/ami.types.ts:251 |
serverId? | number | Server ID (for multi-server) | src/types/ami.types.ts:253 |
lastUpdated | Date | Last updated timestamp | src/types/ami.types.ts:255 |
QueueMember
Defined in: src/types/ami.types.ts:261
Queue member information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/ami.types.ts:263 |
name | string | Member name | src/types/ami.types.ts:265 |
interface | string | Member interface (e.g., SIP/1001) | src/types/ami.types.ts:267 |
stateInterface | string | State interface for device state | src/types/ami.types.ts:269 |
membership | "static" | "dynamic" | "realtime" | Membership type | src/types/ami.types.ts:271 |
penalty | number | Penalty (lower = higher priority) | src/types/ami.types.ts:273 |
callsTaken | number | Calls taken | src/types/ami.types.ts:275 |
lastCall | number | Last call timestamp (Unix epoch seconds, 0 if never) | src/types/ami.types.ts:277 |
lastPause | number | Last pause timestamp (Unix epoch seconds, 0 if never) | src/types/ami.types.ts:279 |
loginTime | number | Login time (Unix epoch seconds, 0 if not logged in) | src/types/ami.types.ts:281 |
inCall | boolean | Whether currently in a call | src/types/ami.types.ts:283 |
status | QueueMemberStatus | Current status code | src/types/ami.types.ts:285 |
statusLabel | string | Human-readable status | src/types/ami.types.ts:287 |
paused | boolean | Whether paused | src/types/ami.types.ts:289 |
pausedReason? | string | Pause reason if paused | src/types/ami.types.ts:291 |
wrapupTime? | number | Wrapup time in seconds | src/types/ami.types.ts:293 |
ringinuse | boolean | Ring in use flag | src/types/ami.types.ts:295 |
serverId? | number | Server ID (for multi-server) | src/types/ami.types.ts:297 |
QueueEntry
Defined in: src/types/ami.types.ts:303
Queue entry (caller waiting)
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/ami.types.ts:305 |
position | number | Position in queue (1-based) | src/types/ami.types.ts:307 |
channel | string | Channel name | src/types/ami.types.ts:309 |
uniqueId | string | Unique ID | src/types/ami.types.ts:311 |
linkedId? | string | Linked ID (optional, may not be present in join events) | src/types/ami.types.ts:313 |
callerIdNum | string | Caller ID number | src/types/ami.types.ts:315 |
callerIdName | string | Caller ID name | src/types/ami.types.ts:317 |
connectedLineNum | string | Connected line number | src/types/ami.types.ts:319 |
connectedLineName | string | Connected line name | src/types/ami.types.ts:321 |
wait | number | Wait time in seconds | src/types/ami.types.ts:323 |
priority | number | Priority | src/types/ami.types.ts:325 |
serverId? | number | Server ID (for multi-server) | src/types/ami.types.ts:327 |
joinTime? | Date | Join timestamp (optional) | src/types/ami.types.ts:329 |
QueueSummary
Defined in: src/types/ami.types.ts:335
Queue summary (from QueueSummary action)
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/ami.types.ts:337 |
loggedIn | number | Logged in agents | src/types/ami.types.ts:339 |
available | number | Available agents | src/types/ami.types.ts:341 |
callers | number | Callers waiting | src/types/ami.types.ts:343 |
holdtime | number | Hold time | src/types/ami.types.ts:345 |
talktime | number | Talk time | src/types/ami.types.ts:347 |
longestHoldTime | number | Longest hold time | src/types/ami.types.ts:349 |
AmiQueueMemberEvent
Defined in: src/types/ami.types.ts:370
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueMember" | Event name | AmiEventData.Event | src/types/ami.types.ts:371 |
Queue | string | - | - | src/types/ami.types.ts:372 |
Name | string | - | - | src/types/ami.types.ts:373 |
Location | string | - | - | src/types/ami.types.ts:374 |
StateInterface | string | - | - | src/types/ami.types.ts:375 |
Membership | string | - | - | src/types/ami.types.ts:376 |
Penalty | string | - | - | src/types/ami.types.ts:377 |
CallsTaken | string | - | - | src/types/ami.types.ts:378 |
LastCall | string | - | - | src/types/ami.types.ts:379 |
LastPause | string | - | - | src/types/ami.types.ts:380 |
LoginTime | string | - | - | src/types/ami.types.ts:381 |
InCall | string | - | - | src/types/ami.types.ts:382 |
Status | string | - | - | src/types/ami.types.ts:383 |
Paused | string | - | - | src/types/ami.types.ts:384 |
PausedReason? | string | - | - | src/types/ami.types.ts:385 |
Ringinuse | string | - | - | src/types/ami.types.ts:386 |
AmiQueueEntryEvent
Defined in: src/types/ami.types.ts:389
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueEntry" | Event name | AmiEventData.Event | src/types/ami.types.ts:390 |
Queue | string | - | - | src/types/ami.types.ts:391 |
Position | string | - | - | src/types/ami.types.ts:392 |
Channel | string | - | - | src/types/ami.types.ts:393 |
Uniqueid | string | - | - | src/types/ami.types.ts:394 |
Linkedid | string | - | - | src/types/ami.types.ts:395 |
CallerIDNum | string | - | - | src/types/ami.types.ts:396 |
CallerIDName | string | - | - | src/types/ami.types.ts:397 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:398 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:399 |
Wait | string | - | - | src/types/ami.types.ts:400 |
Priority | string | - | - | src/types/ami.types.ts:401 |
AmiQueueMemberStatusEvent
Defined in: src/types/ami.types.ts:404
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueMemberStatus" | Event name | AmiEventData.Event | src/types/ami.types.ts:405 |
Queue | string | - | - | src/types/ami.types.ts:406 |
MemberName | string | - | - | src/types/ami.types.ts:407 |
Interface | string | - | - | src/types/ami.types.ts:408 |
StateInterface | string | - | - | src/types/ami.types.ts:409 |
Membership | string | - | - | src/types/ami.types.ts:410 |
Penalty | string | - | - | src/types/ami.types.ts:411 |
CallsTaken | string | - | - | src/types/ami.types.ts:412 |
LastCall | string | - | - | src/types/ami.types.ts:413 |
LastPause | string | - | - | src/types/ami.types.ts:414 |
LoginTime | string | - | - | src/types/ami.types.ts:415 |
InCall | string | - | - | src/types/ami.types.ts:416 |
Status | string | - | - | src/types/ami.types.ts:417 |
Paused | string | - | - | src/types/ami.types.ts:418 |
PausedReason? | string | - | - | src/types/ami.types.ts:419 |
Ringinuse | string | - | - | src/types/ami.types.ts:420 |
AmiQueueCallerJoinEvent
Defined in: src/types/ami.types.ts:423
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueCallerJoin" | Event name | AmiEventData.Event | src/types/ami.types.ts:424 |
Queue | string | - | - | src/types/ami.types.ts:425 |
Position | string | - | - | src/types/ami.types.ts:426 |
Channel | string | - | - | src/types/ami.types.ts:427 |
Uniqueid | string | - | - | src/types/ami.types.ts:428 |
CallerIDNum | string | - | - | src/types/ami.types.ts:429 |
CallerIDName | string | - | - | src/types/ami.types.ts:430 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:431 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:432 |
AmiQueueCallerLeaveEvent
Defined in: src/types/ami.types.ts:435
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueCallerLeave" | Event name | AmiEventData.Event | src/types/ami.types.ts:436 |
Queue | string | - | - | src/types/ami.types.ts:437 |
Position | string | - | - | src/types/ami.types.ts:438 |
Channel | string | - | - | src/types/ami.types.ts:439 |
Uniqueid | string | - | - | src/types/ami.types.ts:440 |
CallerIDNum | string | - | - | src/types/ami.types.ts:441 |
CallerIDName | string | - | - | src/types/ami.types.ts:442 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:443 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:444 |
Count | string | - | - | src/types/ami.types.ts:445 |
AmiQueueCallerAbandonEvent
Defined in: src/types/ami.types.ts:448
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "QueueCallerAbandon" | Event name | AmiEventData.Event | src/types/ami.types.ts:449 |
Queue | string | - | - | src/types/ami.types.ts:450 |
Position | string | - | - | src/types/ami.types.ts:451 |
OriginalPosition | string | - | - | src/types/ami.types.ts:452 |
HoldTime | string | - | - | src/types/ami.types.ts:453 |
Channel | string | - | - | src/types/ami.types.ts:454 |
Uniqueid | string | - | - | src/types/ami.types.ts:455 |
ChannelInfo
Defined in: src/types/ami.types.ts:499
Channel information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
channel | string | Channel name (e.g., PJSIP/1001-00000001) | src/types/ami.types.ts:501 |
uniqueId | string | Unique ID | src/types/ami.types.ts:503 |
linkedId | string | Linked ID | src/types/ami.types.ts:505 |
context | string | Dialplan context | src/types/ami.types.ts:507 |
exten | string | Extension | src/types/ami.types.ts:509 |
priority | number | Priority | src/types/ami.types.ts:511 |
state | ChannelState | Channel state (numeric) | src/types/ami.types.ts:513 |
channelState | ChannelState | Channel state (numeric) - alias for compatibility | src/types/ami.types.ts:515 |
stateDesc | string | State description | src/types/ami.types.ts:517 |
channelStateDesc | string | Channel state description - alias for compatibility | src/types/ami.types.ts:519 |
callerIdNum | string | Caller ID number | src/types/ami.types.ts:521 |
callerIdName | string | Caller ID name | src/types/ami.types.ts:523 |
connectedLineNum | string | Connected line number | src/types/ami.types.ts:525 |
connectedLineName | string | Connected line name | src/types/ami.types.ts:527 |
accountCode | string | Account code | src/types/ami.types.ts:529 |
application? | string | Current application | src/types/ami.types.ts:531 |
applicationData? | string | Application data | src/types/ami.types.ts:533 |
duration | string | number | Duration (can be number or string "HH:MM:SS" depending on source) | src/types/ami.types.ts:535 |
bridgedChannel? | string | Bridged to channel | src/types/ami.types.ts:537 |
bridgeId? | string | Bridge ID | src/types/ami.types.ts:539 |
serverId? | number | Server ID (for multi-server) | src/types/ami.types.ts:541 |
createdAt | Date | Created timestamp | src/types/ami.types.ts:543 |
OriginateOptions
Defined in: src/types/ami.types.ts:549
Originate options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
channel | string | Channel to call first (e.g., PJSIP/1001) | src/types/ami.types.ts:551 |
exten? | string | Extension to dial after answer (for agent-first flow) | src/types/ami.types.ts:553 |
context? | string | Dialplan context | src/types/ami.types.ts:555 |
priority? | number | Dialplan priority | src/types/ami.types.ts:557 |
application? | string | Application to run instead of extension | src/types/ami.types.ts:559 |
data? | string | Application data | src/types/ami.types.ts:561 |
callerId? | string | Caller ID | src/types/ami.types.ts:563 |
timeout? | number | Timeout in milliseconds | src/types/ami.types.ts:565 |
variables? | Record<string, string> | Channel variables | src/types/ami.types.ts:567 |
account? | string | Account code | src/types/ami.types.ts:569 |
async? | boolean | Async originate | src/types/ami.types.ts:571 |
earlyMedia? | boolean | Early media | src/types/ami.types.ts:573 |
codecs? | string | Codecs | src/types/ami.types.ts:575 |
OriginateResult
Defined in: src/types/ami.types.ts:581
Originate result
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
success | boolean | Whether originate was successful | src/types/ami.types.ts:583 |
channel? | string | Channel name if successful | src/types/ami.types.ts:585 |
uniqueId? | string | Unique ID | src/types/ami.types.ts:587 |
message? | string | Error message if failed | src/types/ami.types.ts:589 |
response | string | Response code | src/types/ami.types.ts:591 |
AmiNewChannelEvent
Defined in: src/types/ami.types.ts:596
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "Newchannel" | Event name | AmiEventData.Event | src/types/ami.types.ts:597 |
Channel | string | - | - | src/types/ami.types.ts:598 |
ChannelState | string | - | - | src/types/ami.types.ts:599 |
ChannelStateDesc | string | - | - | src/types/ami.types.ts:600 |
CallerIDNum | string | - | - | src/types/ami.types.ts:601 |
CallerIDName | string | - | - | src/types/ami.types.ts:602 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:603 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:604 |
AccountCode | string | - | - | src/types/ami.types.ts:605 |
Context | string | - | - | src/types/ami.types.ts:606 |
Exten | string | - | - | src/types/ami.types.ts:607 |
Priority | string | - | - | src/types/ami.types.ts:608 |
Uniqueid | string | - | - | src/types/ami.types.ts:609 |
Linkedid | string | - | - | src/types/ami.types.ts:610 |
AmiHangupEvent
Defined in: src/types/ami.types.ts:613
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "Hangup" | Event name | AmiEventData.Event | src/types/ami.types.ts:614 |
Channel | string | - | - | src/types/ami.types.ts:615 |
ChannelState | string | - | - | src/types/ami.types.ts:616 |
ChannelStateDesc | string | - | - | src/types/ami.types.ts:617 |
CallerIDNum | string | - | - | src/types/ami.types.ts:618 |
CallerIDName | string | - | - | src/types/ami.types.ts:619 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:620 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:621 |
AccountCode | string | - | - | src/types/ami.types.ts:622 |
Context | string | - | - | src/types/ami.types.ts:623 |
Exten | string | - | - | src/types/ami.types.ts:624 |
Priority | string | - | - | src/types/ami.types.ts:625 |
Uniqueid | string | - | - | src/types/ami.types.ts:626 |
Linkedid | string | - | - | src/types/ami.types.ts:627 |
Cause | string | - | - | src/types/ami.types.ts:628 |
Cause-txt | string | - | - | src/types/ami.types.ts:629 |
AmiNewStateEvent
Defined in: src/types/ami.types.ts:632
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "Newstate" | Event name | AmiEventData.Event | src/types/ami.types.ts:633 |
Channel | string | - | - | src/types/ami.types.ts:634 |
ChannelState | string | - | - | src/types/ami.types.ts:635 |
ChannelStateDesc | string | - | - | src/types/ami.types.ts:636 |
CallerIDNum | string | - | - | src/types/ami.types.ts:637 |
CallerIDName | string | - | - | src/types/ami.types.ts:638 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:639 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:640 |
Uniqueid | string | - | - | src/types/ami.types.ts:641 |
Linkedid | string | - | - | src/types/ami.types.ts:642 |
AmiCoreShowChannelEvent
Defined in: src/types/ami.types.ts:645
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "CoreShowChannel" | Event name | AmiEventData.Event | src/types/ami.types.ts:646 |
Channel | string | - | - | src/types/ami.types.ts:647 |
ChannelState | string | - | - | src/types/ami.types.ts:648 |
ChannelStateDesc | string | - | - | src/types/ami.types.ts:649 |
CallerIDNum | string | - | - | src/types/ami.types.ts:650 |
CallerIDName | string | - | - | src/types/ami.types.ts:651 |
ConnectedLineNum | string | - | - | src/types/ami.types.ts:652 |
ConnectedLineName | string | - | - | src/types/ami.types.ts:653 |
AccountCode | string | - | - | src/types/ami.types.ts:654 |
Context | string | - | - | src/types/ami.types.ts:655 |
Exten | string | - | - | src/types/ami.types.ts:656 |
Priority | string | - | - | src/types/ami.types.ts:657 |
Uniqueid | string | - | - | src/types/ami.types.ts:658 |
Linkedid | string | - | - | src/types/ami.types.ts:659 |
Application | string | - | - | src/types/ami.types.ts:660 |
ApplicationData | string | - | - | src/types/ami.types.ts:661 |
Duration | string | - | - | 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
| Property | Type | Description | Defined in |
|---|---|---|---|
objectName | string | Object name / peer name | src/types/ami.types.ts:680 |
channelType | "SIP" | "PJSIP" | Channel type (SIP or PJSIP) | src/types/ami.types.ts:682 |
ipAddress | string | IP address | src/types/ami.types.ts:684 |
port | number | IP port | src/types/ami.types.ts:686 |
status | PeerStatus | Status | src/types/ami.types.ts:688 |
latency? | number | Latency in ms (if available) | src/types/ami.types.ts:690 |
dynamic | boolean | Whether dynamically registered | src/types/ami.types.ts:692 |
forceRPort | boolean | Force RPort | src/types/ami.types.ts:694 |
comedia | boolean | Comedia | src/types/ami.types.ts:696 |
acl | boolean | ACL enabled | src/types/ami.types.ts:698 |
autoForcerPort | boolean | Auto-force RPort | src/types/ami.types.ts:700 |
autoComedia | boolean | Auto-comedia | src/types/ami.types.ts:702 |
videoSupport | boolean | Video support | src/types/ami.types.ts:704 |
textSupport | boolean | Text support | src/types/ami.types.ts:706 |
realtimeDevice | boolean | Realtime device | src/types/ami.types.ts:708 |
description? | string | Description | src/types/ami.types.ts:710 |
serverId? | number | Server ID (for multi-server) | src/types/ami.types.ts:712 |
lastSeen? | Date | Last seen | src/types/ami.types.ts:714 |
AmiPeerStatusEvent
Defined in: src/types/ami.types.ts:739
AMI Event data
Extends
Indexable
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "PeerStatus" | Event name | AmiEventData.Event | src/types/ami.types.ts:740 |
ChannelType | string | - | - | src/types/ami.types.ts:741 |
Peer | string | - | - | src/types/ami.types.ts:742 |
PeerStatus | string | - | - | 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
[key: string]: string | undefinedAdditional event fields
Properties
| Property | Type | Description | Overrides | Defined in |
|---|---|---|---|---|
Event | "PeerEntry" | Event name | AmiEventData.Event | src/types/ami.types.ts:751 |
ChannelType | string | - | - | src/types/ami.types.ts:752 |
ObjectName | string | - | - | src/types/ami.types.ts:753 |
ChanObjectType | string | - | - | src/types/ami.types.ts:754 |
IPaddress | string | - | - | src/types/ami.types.ts:755 |
IPport | string | - | - | src/types/ami.types.ts:756 |
Dynamic | string | - | - | src/types/ami.types.ts:757 |
AutoForcerport | string | - | - | src/types/ami.types.ts:758 |
Forcerport | string | - | - | src/types/ami.types.ts:759 |
AutoComedia | string | - | - | src/types/ami.types.ts:760 |
Comedia | string | - | - | src/types/ami.types.ts:761 |
VideoSupport | string | - | - | src/types/ami.types.ts:762 |
TextSupport | string | - | - | src/types/ami.types.ts:763 |
ACL | string | - | - | src/types/ami.types.ts:764 |
Status | string | - | - | src/types/ami.types.ts:765 |
RealtimeDevice | string | - | - | 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
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique ID | src/types/ami.types.ts:779 |
name | string | Contact name | src/types/ami.types.ts:781 |
number | string | Phone number | src/types/ami.types.ts:783 |
email? | string | Email address | src/types/ami.types.ts:785 |
company? | string | Company name | src/types/ami.types.ts:787 |
group | string | Group/category | src/types/ami.types.ts:789 |
notes? | string | Notes | src/types/ami.types.ts:791 |
customFields? | Record<string, string> | Custom fields | src/types/ami.types.ts:793 |
createdAt | Date | Created timestamp | src/types/ami.types.ts:795 |
updatedAt | Date | Updated timestamp | src/types/ami.types.ts:797 |
serverId? | number | Server ID | src/types/ami.types.ts:799 |
ContactFieldDefinition
Defined in: src/types/ami.types.ts:805
Contact field definition for custom fields
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
key | string | Field key | src/types/ami.types.ts:807 |
label | string | Display label | src/types/ami.types.ts:809 |
type | "text" | "select" | "textarea" | "tel" | "email" | Input type | src/types/ami.types.ts:811 |
required? | boolean | Required field | src/types/ami.types.ts:813 |
defaultValue? | string | Default value | src/types/ami.types.ts:815 |
options? | string[] | Options for select type | src/types/ami.types.ts:817 |
UseAmiQueuesOptions
Defined in: src/types/ami.types.ts:919
Options for useAmiQueues composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pollInterval? | number | Polling interval in ms (0 = events only) | src/types/ami.types.ts:921 |
useEvents? | boolean | Use real-time events | src/types/ami.types.ts:923 |
autoRefresh? | boolean | Auto-refresh on reconnect | src/types/ami.types.ts:925 |
queueFilter? | (queue) => boolean | Queue filter function | src/types/ami.types.ts:927 |
memberFilter? | (member) => boolean | Member filter function | src/types/ami.types.ts:929 |
pauseReasons? | string[] | Custom pause reasons | src/types/ami.types.ts:931 |
statusLabels? | Record<number, string> | Custom member status labels | src/types/ami.types.ts:933 |
onQueueUpdate? | (queue) => void | Queue update callback | src/types/ami.types.ts:935 |
onMemberUpdate? | (member, queue) => void | Member update callback | src/types/ami.types.ts:937 |
onCallerJoin? | (entry, queue) => void | Caller join callback | src/types/ami.types.ts:939 |
onCallerLeave? | (entry, queue) => void | Caller leave callback | src/types/ami.types.ts:941 |
onCallerAbandon? | (entry, queue) => void | Caller abandon callback | src/types/ami.types.ts:943 |
transformQueue? | (queue) => QueueInfo | Custom queue transformer | src/types/ami.types.ts:945 |
transformMember? | (member) => QueueMember | Custom member transformer | src/types/ami.types.ts:947 |
ActiveCall
Defined in: src/types/ami.types.ts:953
Active call representation
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
uniqueId | string | Unique call identifier | src/types/ami.types.ts:955 |
channel | string | Channel name | src/types/ami.types.ts:957 |
linkedId | string | Linked channel ID (bridged call) | src/types/ami.types.ts:959 |
callerIdNum | string | Caller ID number | src/types/ami.types.ts:961 |
callerIdName | string | Caller ID name | src/types/ami.types.ts:963 |
connectedLineNum | string | Connected line number | src/types/ami.types.ts:965 |
connectedLineName | string | Connected line name | src/types/ami.types.ts:967 |
state | ChannelState | Channel state | src/types/ami.types.ts:969 |
stateDesc | string | State description | src/types/ami.types.ts:971 |
startTime | Date | Call start time | src/types/ami.types.ts:973 |
duration | number | Duration in seconds | src/types/ami.types.ts:975 |
application? | string | Application handling the call | src/types/ami.types.ts:977 |
serverId? | number | Server ID for multi-server setups | src/types/ami.types.ts:979 |
UseAmiCallsOptions
Defined in: src/types/ami.types.ts:985
Options for useAmiCalls composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
defaultContext? | string | Default dialplan context | src/types/ami.types.ts:987 |
pollInterval? | number | Polling interval | src/types/ami.types.ts:989 |
useEvents? | boolean | Use events | src/types/ami.types.ts:991 |
agentFirst? | boolean | Agent-first call flow | src/types/ami.types.ts:993 |
dialTimeout? | number | Dial timeout in ms | src/types/ami.types.ts:995 |
channelFilter? | (channel) => boolean | Channel filter | src/types/ami.types.ts:997 |
stateLabels? | Record<number, string> | Custom state labels | src/types/ami.types.ts:999 |
onCallStart? | (call) => void | Call start callback | src/types/ami.types.ts:1001 |
onCallEnd? | (call) => void | Call end callback | src/types/ami.types.ts:1003 |
onCallStateChange? | (call, oldState) => void | Call state change callback | src/types/ami.types.ts:1005 |
transformChannel? | (channel) => ChannelInfo | Transform channel function | src/types/ami.types.ts:1007 |
UseAmiSupervisorOptions
Defined in: src/types/ami.types.ts:1013
Options for useAmiSupervisor composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
supervisorContext? | string | Dialplan context for supervisor | src/types/ami.types.ts:1015 |
dialTimeout? | number | Dial timeout in ms | src/types/ami.types.ts:1017 |
chanspyOptions? | object | ChanSpy mode options | src/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) => void | Session start callback - receives the full session object | src/types/ami.types.ts:1025 |
onSessionEnd? | (session) => void | Session end callback - receives the full session object | src/types/ami.types.ts:1034 |
UseAmiPeersOptions
Defined in: src/types/ami.types.ts:1047
Options for useAmiPeers composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pollInterval? | number | Polling interval in ms (0 = no polling) | src/types/ami.types.ts:1049 |
useEvents? | boolean | Use real-time events | src/types/ami.types.ts:1051 |
includeSip? | boolean | Include SIP peers | src/types/ami.types.ts:1053 |
includePjsip? | boolean | Include PJSIP peers | src/types/ami.types.ts:1055 |
peerFilter? | (peer) => boolean | Peer filter function | src/types/ami.types.ts:1057 |
onlineStatusPatterns? | string[] | Patterns that indicate online status | src/types/ami.types.ts:1059 |
onPeerUpdate? | (peer) => void | Peer update callback | src/types/ami.types.ts:1061 |
transformPeer? | (peer) => PeerInfo | Transform peer function | src/types/ami.types.ts:1063 |
UseAmiDatabaseOptions
Defined in: src/types/ami.types.ts:1069
Options for useAmiDatabase composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
contactFamily? | string | AstDB family for contacts | src/types/ami.types.ts:1071 |
groups? | string[] | Default groups | src/types/ami.types.ts:1073 |
fields? | ContactFieldDefinition[] | Contact field definitions | src/types/ami.types.ts:1075 |
contactFilter? | (contact) => boolean | Contact filter function | src/types/ami.types.ts:1077 |
onContactSaved? | (contact) => void | Contact saved callback | src/types/ami.types.ts:1079 |
onContactDeleted? | (contact) => void | Contact deleted callback | src/types/ami.types.ts:1081 |
transformContact? | (contact) => AmiContact | Transform contact function | src/types/ami.types.ts:1083 |
AudioDevice
Defined in: src/types/audio.types.ts:9
Audio device information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
deviceId | string | Unique device identifier | src/types/audio.types.ts:11 |
label | string | Human-readable device label | src/types/audio.types.ts:13 |
kind | MediaDeviceKind | Device kind (audioinput, audiooutput, videoinput) | src/types/audio.types.ts:15 |
groupId? | string | Group identifier for related devices | src/types/audio.types.ts:17 |
AudioConstraints
Defined in: src/types/audio.types.ts:23
Audio constraints for media stream configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
echoCancellation? | boolean | Enable echo cancellation | src/types/audio.types.ts:25 |
noiseSuppression? | boolean | Enable noise suppression | src/types/audio.types.ts:27 |
autoGainControl? | boolean | Enable automatic gain control | src/types/audio.types.ts:29 |
sampleRate? | number | Sample rate in Hz | src/types/audio.types.ts:31 |
sampleSize? | number | Sample size in bits | src/types/audio.types.ts:33 |
channelCount? | number | Number of audio channels | src/types/audio.types.ts:35 |
latency? | number | "balanced" | "interactive" | "playback" | Audio latency hint | src/types/audio.types.ts:37 |
deviceId? | | string | { exact: string; } | { ideal: string; } | Specific device ID to use | src/types/audio.types.ts:39 |
AutoAnswerHeaders
Defined in: src/types/autoanswer.types.ts:28
SIP headers that can trigger auto-answer
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
Call-Info? | string | Call-Info header with answer-after parameter | src/types/autoanswer.types.ts:30 |
Alert-Info? | string | Alert-Info header with auto-answer indicator | src/types/autoanswer.types.ts:32 |
X-Auto-Answer? | string | Custom auto-answer header | src/types/autoanswer.types.ts:34 |
X-Cisco-Intercom? | string | Cisco intercom header | src/types/autoanswer.types.ts:36 |
X-Polycom-Intercom? | string | Polycom intercom header | src/types/autoanswer.types.ts:38 |
AutoAnswerWhitelistEntry
Defined in: src/types/autoanswer.types.ts:44
Whitelist entry for auto-answer
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pattern | string | Phone number or SIP URI pattern | src/types/autoanswer.types.ts:46 |
name? | string | Display name for identification | src/types/autoanswer.types.ts:48 |
enabled | boolean | Whether this entry is enabled | src/types/autoanswer.types.ts:50 |
delay? | number | Optional delay override for this entry (ms) | src/types/autoanswer.types.ts:52 |
intercomMode? | IntercomMode | Optional intercom mode override | src/types/autoanswer.types.ts:54 |
addedAt | Date | Date added | src/types/autoanswer.types.ts:56 |
AutoAnswerSettings
Defined in: src/types/autoanswer.types.ts:62
Auto-answer settings
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
enabled | boolean | Whether auto-answer is enabled | src/types/autoanswer.types.ts:64 |
mode | AutoAnswerMode | Auto-answer mode | src/types/autoanswer.types.ts:66 |
delay | number | Delay before answering (milliseconds) | src/types/autoanswer.types.ts:68 |
maxDelay | number | Maximum delay allowed (milliseconds) | src/types/autoanswer.types.ts:70 |
playAnnouncement | boolean | Play announcement before answering | src/types/autoanswer.types.ts:72 |
announcementUrl? | string | Announcement audio URL or file path | src/types/autoanswer.types.ts:74 |
intercomMode | IntercomMode | Intercom mode (simplex = one-way, duplex = two-way) | src/types/autoanswer.types.ts:76 |
intercomMuteOnAnswer | boolean | Mute microphone initially in intercom mode | src/types/autoanswer.types.ts:78 |
detectHeaders | boolean | Automatically detect auto-answer headers | src/types/autoanswer.types.ts:80 |
triggerHeaders | keyof AutoAnswerHeaders[] | Headers that trigger auto-answer | src/types/autoanswer.types.ts:82 |
whitelist | AutoAnswerWhitelistEntry[] | Whitelist for selective auto-answer | src/types/autoanswer.types.ts:84 |
playBeep | boolean | Beep sound before auto-answer | src/types/autoanswer.types.ts:86 |
beepUrl? | string | Beep audio URL | src/types/autoanswer.types.ts:88 |
showNotification | boolean | Show visual notification before auto-answer | src/types/autoanswer.types.ts:90 |
notificationDuration | number | Notification 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
| Property | Type | Description | Defined in |
|---|---|---|---|
callId | string | Call ID | src/types/autoanswer.types.ts:100 |
caller | string | Caller number/URI | src/types/autoanswer.types.ts:102 |
displayName? | string | Display name | src/types/autoanswer.types.ts:104 |
trigger | AutoAnswerTrigger | What triggered auto-answer | src/types/autoanswer.types.ts:106 |
delay | number | Delay that was applied (ms) | src/types/autoanswer.types.ts:108 |
isIntercom | boolean | Whether intercom mode was used | src/types/autoanswer.types.ts:110 |
intercomMode? | IntercomMode | Intercom mode type | src/types/autoanswer.types.ts:112 |
matchedWhitelistEntry? | AutoAnswerWhitelistEntry | Matched whitelist entry if applicable | src/types/autoanswer.types.ts:114 |
matchedHeaders? | Partial<AutoAnswerHeaders> | Headers that triggered auto-answer | src/types/autoanswer.types.ts:116 |
timestamp | Date | Timestamp | src/types/autoanswer.types.ts:118 |
AutoAnswerStats
Defined in: src/types/autoanswer.types.ts:124
Auto-answer statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalAutoAnswered | number | Total calls auto-answered | src/types/autoanswer.types.ts:126 |
headerTriggered | number | Calls auto-answered via headers | src/types/autoanswer.types.ts:128 |
whitelistTriggered | number | Calls auto-answered via whitelist | src/types/autoanswer.types.ts:130 |
intercomTriggered | number | Calls auto-answered via intercom | src/types/autoanswer.types.ts:132 |
allCallsTriggered | number | Calls auto-answered via all_calls mode | src/types/autoanswer.types.ts:134 |
skipped | number | Calls skipped (not auto-answered) | src/types/autoanswer.types.ts:136 |
averageDelay | number | Average answer delay (ms) | src/types/autoanswer.types.ts:138 |
lastEvent? | AutoAnswerEvent | Last auto-answer event | src/types/autoanswer.types.ts:140 |
PendingAutoAnswer
Defined in: src/types/autoanswer.types.ts:146
Pending auto-answer call
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
callId | string | Call ID | src/types/autoanswer.types.ts:148 |
caller | string | Caller number/URI | src/types/autoanswer.types.ts:150 |
displayName? | string | Display name | src/types/autoanswer.types.ts:152 |
trigger | AutoAnswerTrigger | Trigger reason | src/types/autoanswer.types.ts:154 |
remainingTime | number | Time remaining before auto-answer (ms) | src/types/autoanswer.types.ts:156 |
totalDelay | number | Total delay configured (ms) | src/types/autoanswer.types.ts:158 |
cancellable | boolean | Whether this can be cancelled | src/types/autoanswer.types.ts:160 |
timerId? | Timeout | Timer ID for cancellation | src/types/autoanswer.types.ts:162 |
UseSipAutoAnswerOptions
Defined in: src/types/autoanswer.types.ts:168
Configuration options for useSipAutoAnswer
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
initialSettings? | Partial<AutoAnswerSettings> | Initial auto-answer settings | src/types/autoanswer.types.ts:170 |
storageKey? | string | Storage key for persisting settings | src/types/autoanswer.types.ts:172 |
persist? | boolean | Enable persistence to localStorage | src/types/autoanswer.types.ts:174 |
onAutoAnswer? | (event) => void | Callback when call is auto-answered | src/types/autoanswer.types.ts:176 |
onPending? | (pending) => void | Callback when auto-answer is pending | src/types/autoanswer.types.ts:178 |
onCancelled? | (callId, reason) => void | Callback when pending auto-answer is cancelled | src/types/autoanswer.types.ts:180 |
onSkipped? | (callId, reason) => void | Callback when auto-answer is skipped | src/types/autoanswer.types.ts:182 |
onError? | (error) => void | Callback on error | src/types/autoanswer.types.ts:184 |
UseSipAutoAnswerReturn
Defined in: src/types/autoanswer.types.ts:190
Return type for useSipAutoAnswer composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
settings | Ref<AutoAnswerSettings, AutoAnswerSettings> | Current settings | src/types/autoanswer.types.ts:193 |
isEnabled | ComputedRef<boolean> | Whether auto-answer is globally enabled | src/types/autoanswer.types.ts:195 |
mode | ComputedRef<AutoAnswerMode> | Current mode | src/types/autoanswer.types.ts:197 |
pendingCalls | Ref<PendingAutoAnswer[], PendingAutoAnswer[]> | Pending auto-answer calls | src/types/autoanswer.types.ts:199 |
stats | Ref<AutoAnswerStats, AutoAnswerStats> | Statistics | src/types/autoanswer.types.ts:201 |
isLoading | Ref<boolean, boolean> | Loading state | src/types/autoanswer.types.ts:203 |
error | Ref<string | null, string | null> | Error state | src/types/autoanswer.types.ts:205 |
enable | () => void | Enable auto-answer | src/types/autoanswer.types.ts:209 |
disable | () => void | Disable auto-answer | src/types/autoanswer.types.ts:211 |
toggle | () => void | Toggle auto-answer | src/types/autoanswer.types.ts:213 |
setMode | (mode) => void | Set auto-answer mode | src/types/autoanswer.types.ts:217 |
updateSettings | (settings) => void | Update settings | src/types/autoanswer.types.ts:221 |
resetSettings | () => void | Reset settings to defaults | src/types/autoanswer.types.ts:223 |
setDelay | (delay) => void | Set answer delay | src/types/autoanswer.types.ts:225 |
setIntercomMode | (mode) => void | Set intercom mode | src/types/autoanswer.types.ts:227 |
addToWhitelist | (entry) => void | Add to whitelist | src/types/autoanswer.types.ts:231 |
removeFromWhitelist | (pattern) => void | Remove from whitelist | src/types/autoanswer.types.ts:233 |
updateWhitelistEntry | (pattern, updates) => void | Update whitelist entry | src/types/autoanswer.types.ts:235 |
clearWhitelist | () => void | Clear whitelist | src/types/autoanswer.types.ts:237 |
isWhitelisted | (number) => boolean | Check if number is whitelisted | src/types/autoanswer.types.ts:239 |
shouldAutoAnswer | (callId, caller, headers?) => object | Check if call should be auto-answered | src/types/autoanswer.types.ts:243 |
cancelPending | (callId) => void | Cancel pending auto-answer | src/types/autoanswer.types.ts:250 |
cancelAllPending | () => void | Cancel all pending auto-answers | src/types/autoanswer.types.ts:252 |
triggerAutoAnswer | (callId) => void | Manually trigger auto-answer for a call | src/types/autoanswer.types.ts:254 |
setAnnouncementUrl | (url) => void | Set announcement URL | src/types/autoanswer.types.ts:258 |
setPlayAnnouncement | (play) => void | Enable/disable announcement | src/types/autoanswer.types.ts:260 |
resetStats | () => void | Reset statistics | src/types/autoanswer.types.ts:264 |
getRecentEvents | (limit?) => AutoAnswerEvent[] | Get recent auto-answer events | src/types/autoanswer.types.ts:266 |
saveSettings | () => void | Save settings to storage | src/types/autoanswer.types.ts:270 |
loadSettings | () => void | Load settings from storage | src/types/autoanswer.types.ts:272 |
BlockResult
Defined in: src/types/blacklist.types.ts:62
Result of adding a number to the blacklist
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/blacklist.types.ts:63 |
number | string | src/types/blacklist.types.ts:64 |
message? | string | src/types/blacklist.types.ts:65 |
entry? | BlockEntry | src/types/blacklist.types.ts:66 |
UnblockResult
Defined in: src/types/blacklist.types.ts:72
Result of removing a number from the blacklist
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/blacklist.types.ts:73 |
number | string | src/types/blacklist.types.ts:74 |
message? | string | src/types/blacklist.types.ts:75 |
CallerReputation
Defined in: src/types/blacklist.types.ts:81
Caller ID reputation information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
number | string | Phone number | src/types/blacklist.types.ts:83 |
spamScore | number | Spam score (0-100, higher = more likely spam) | src/types/blacklist.types.ts:85 |
isBlocked | boolean | Is this number in the blacklist | src/types/blacklist.types.ts:87 |
category? | "unknown" | "spam" | "telemarketer" | "robocall" | "scam" | "legitimate" | Category based on known databases | src/types/blacklist.types.ts:89 |
reportCount | number | Number of reports | src/types/blacklist.types.ts:91 |
provider? | string | Provider information if available | src/types/blacklist.types.ts:93 |
location? | string | Location information if available | src/types/blacklist.types.ts:95 |
BlacklistStats
Defined in: src/types/blacklist.types.ts:101
Blacklist statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalEntries | number | Total number of blocked entries | src/types/blacklist.types.ts:103 |
activeEntries | number | Active blocks | src/types/blacklist.types.ts:105 |
disabledEntries | number | Disabled blocks | src/types/blacklist.types.ts:107 |
expiredEntries | number | Expired blocks | src/types/blacklist.types.ts:109 |
totalBlockedCalls | number | Total blocked calls | src/types/blacklist.types.ts:111 |
blockedToday | number | Blocked calls today | src/types/blacklist.types.ts:113 |
blockedThisWeek | number | Blocked calls this week | src/types/blacklist.types.ts:115 |
byReason | Record<BlockReason, number> | Breakdown by reason | src/types/blacklist.types.ts:117 |
byAction | Record<BlockAction, number> | Breakdown by action | src/types/blacklist.types.ts:119 |
BlacklistQueryOptions
Defined in: src/types/blacklist.types.ts:125
Options for querying the blacklist
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
status? | "all" | BlockStatus | Filter by status | src/types/blacklist.types.ts:127 |
reason? | BlockReason | Filter by reason | src/types/blacklist.types.ts:129 |
action? | BlockAction | Filter by action | src/types/blacklist.types.ts:131 |
search? | string | Search pattern (supports wildcards) | src/types/blacklist.types.ts:133 |
sortBy? | "number" | "blockedAt" | "blockedCount" | "lastBlockedAt" | Sort field | src/types/blacklist.types.ts:135 |
sortOrder? | "desc" | "asc" | Sort order | src/types/blacklist.types.ts:137 |
offset? | number | Pagination offset | src/types/blacklist.types.ts:139 |
limit? | number | Pagination limit | src/types/blacklist.types.ts:141 |
ImportResult
Defined in: src/types/blacklist.types.ts:152
Result of import operation
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/blacklist.types.ts:153 |
imported | number | src/types/blacklist.types.ts:154 |
skipped | number | src/types/blacklist.types.ts:155 |
failed | number | src/types/blacklist.types.ts:156 |
errors | object[] | src/types/blacklist.types.ts:157 |
UseAmiBlacklistOptions
Defined in: src/types/blacklist.types.ts:163
Configuration options for useAmiBlacklist
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
dbFamily? | string | AstDB family for blacklist storage (default: 'blacklist') | src/types/blacklist.types.ts:165 |
extension? | string | Extension to associate with blacklist (optional, for per-extension lists) | src/types/blacklist.types.ts:167 |
defaultAction? | BlockAction | Default action for new blocks (default: 'hangup') | src/types/blacklist.types.ts:169 |
defaultReason? | BlockReason | Default reason for new blocks (default: 'manual') | src/types/blacklist.types.ts:171 |
autoCleanExpired? | boolean | Auto-clean expired entries (default: true) | src/types/blacklist.types.ts:173 |
enableSpamDetection? | boolean | Enable spam detection integration (default: false) | src/types/blacklist.types.ts:175 |
spamThreshold? | number | Spam score threshold for auto-blocking (0-100, default: 80) | src/types/blacklist.types.ts:177 |
onNumberBlocked? | (entry) => void | Callback when number is blocked | src/types/blacklist.types.ts:179 |
onNumberUnblocked? | (number) => void | Callback when number is unblocked | src/types/blacklist.types.ts:181 |
onCallBlocked? | (number, entry) => void | Callback when call is blocked | src/types/blacklist.types.ts:183 |
onSpamDetected? | (reputation) => void | Callback when spam detected | src/types/blacklist.types.ts:185 |
onError? | (error) => void | Callback on error | src/types/blacklist.types.ts:187 |
UseAmiBlacklistReturn
Defined in: src/types/blacklist.types.ts:193
Return type for useAmiBlacklist composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
blocklist | Ref<BlockEntry[], BlockEntry[]> | List of blocked entries | src/types/blacklist.types.ts:196 |
stats | Ref<BlacklistStats, BlacklistStats> | Blacklist statistics | src/types/blacklist.types.ts:198 |
isLoading | Ref<boolean, boolean> | Loading state | src/types/blacklist.types.ts:200 |
error | Ref<string | null, string | null> | Error state | src/types/blacklist.types.ts:202 |
activeCount | ComputedRef<number> | Number of active blocks | src/types/blacklist.types.ts:206 |
isBlocked | (number) => boolean | Check if a number is blocked | src/types/blacklist.types.ts:208 |
getBlockEntry | (number) => BlockEntry | undefined | Get block entry for a number | src/types/blacklist.types.ts:210 |
blockNumber | (number, options?) => Promise<BlockResult> | Block a phone number | src/types/blacklist.types.ts:214 |
unblockNumber | (number) => Promise<UnblockResult> | Unblock a phone number | src/types/blacklist.types.ts:225 |
updateBlock | (number, updates) => Promise<BlockResult> | Update block entry | src/types/blacklist.types.ts:227 |
enableBlock | (number) => Promise<BlockResult> | Enable a disabled block | src/types/blacklist.types.ts:229 |
disableBlock | (number) => Promise<BlockResult> | Disable a block without removing | src/types/blacklist.types.ts:231 |
blockNumbers | (numbers, options?) => Promise<{ success: number; failed: number; errors: object[]; }> | Block multiple numbers | src/types/blacklist.types.ts:235 |
unblockNumbers | (numbers) => Promise<{ success: number; failed: number; }> | Unblock multiple numbers | src/types/blacklist.types.ts:244 |
clearAll | () => Promise<boolean> | Clear all blocks | src/types/blacklist.types.ts:246 |
refresh | () => Promise<void> | Refresh blacklist from AstDB | src/types/blacklist.types.ts:250 |
query | (options?) => BlockEntry[] | Query blacklist with filters | src/types/blacklist.types.ts:252 |
search | (pattern) => BlockEntry[] | Search blacklist | src/types/blacklist.types.ts:254 |
exportList | (format?) => string | Export blacklist | src/types/blacklist.types.ts:258 |
importList | (data, format?) => Promise<ImportResult> | Import blacklist | src/types/blacklist.types.ts:260 |
checkReputation | (number) => Promise<CallerReputation> | Check caller reputation | src/types/blacklist.types.ts:264 |
reportSpam | (number, category?) => Promise<boolean> | Report number as spam | src/types/blacklist.types.ts:266 |
cleanExpired | () => Promise<number> | Clean expired entries | src/types/blacklist.types.ts:270 |
getStats | () => BlacklistStats | Get statistics | src/types/blacklist.types.ts:272 |
CallSession
Defined in: src/types/call.types.ts:210
Call session interface
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique call ID | src/types/call.types.ts:212 |
state | CallState | Call state | src/types/call.types.ts:214 |
direction | CallDirection | Call direction | src/types/call.types.ts:216 |
localUri | string | SipUri | Local SIP URI | src/types/call.types.ts:218 |
remoteUri | string | SipUri | Remote SIP URI | src/types/call.types.ts:220 |
remoteDisplayName? | string | Remote display name | src/types/call.types.ts:222 |
localStream? | MediaStream | Local media stream | src/types/call.types.ts:224 |
remoteStream? | MediaStream | Remote media stream | src/types/call.types.ts:226 |
isOnHold | boolean | Is call on hold | src/types/call.types.ts:228 |
isMuted | boolean | Is call muted | src/types/call.types.ts:230 |
hasRemoteVideo | boolean | Is remote video enabled | src/types/call.types.ts:232 |
hasLocalVideo | boolean | Is local video enabled | src/types/call.types.ts:234 |
timing | CallTimingInfo | Call timing information | src/types/call.types.ts:236 |
terminationCause? | TerminationCause | Termination cause (if terminated) | src/types/call.types.ts:238 |
data? | Record<string, unknown> | Custom data | src/types/call.types.ts:240 |
hold? | () => void | Hold the call (SIP re-INVITE with sendonly) | src/types/call.types.ts:242 |
unhold? | () => void | Resume 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
| Property | Type | Description | Defined in |
|---|---|---|---|
callerNumber | string | Caller's phone number | src/types/callback.types.ts:92 |
callerName? | string | Optional caller name | src/types/callback.types.ts:95 |
targetQueue? | string | Queue to route callback through | src/types/callback.types.ts:98 |
targetAgent? | string | Specific agent to handle callback | src/types/callback.types.ts:101 |
reason? | string | Reason for callback | src/types/callback.types.ts:104 |
priority? | CallbackPriority | Priority (default: normal) | src/types/callback.types.ts:107 |
scheduledAt? | Date | Scheduled time (default: immediate/ASAP) | src/types/callback.types.ts:110 |
maxAttempts? | number | Maximum retry attempts (default: 3) | src/types/callback.types.ts:113 |
callerId? | string | Caller ID to show when calling back | src/types/callback.types.ts:116 |
timeout? | number | Timeout for each attempt in seconds | src/types/callback.types.ts:119 |
metadata? | Record<string, string> | Custom metadata | src/types/callback.types.ts:122 |
ExecuteCallbackOptions
Defined in: src/types/callback.types.ts:128
Options for executing a callback
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
callerId? | string | Override caller ID for this execution | src/types/callback.types.ts:130 |
timeout? | number | Override timeout | src/types/callback.types.ts:133 |
context? | string | Context for the call | src/types/callback.types.ts:136 |
variables? | Record<string, string> | Channel variables | src/types/callback.types.ts:139 |
extension? | string | Extension 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
| Property | Type | Description | Defined in |
|---|---|---|---|
pending | number | Total callbacks pending | src/types/callback.types.ts:150 |
scheduled | number | Callbacks scheduled for later | src/types/callback.types.ts:153 |
inProgress | number | Currently in progress | src/types/callback.types.ts:156 |
completedToday | number | Completed today | src/types/callback.types.ts:159 |
failedToday | number | Failed today | src/types/callback.types.ts:162 |
avgCallbackTime | number | Average callback time in seconds | src/types/callback.types.ts:165 |
successRate | number | Success rate (0-100) | src/types/callback.types.ts:168 |
byPriority | Record<CallbackPriority, number> | Callbacks by priority | src/types/callback.types.ts:171 |
CallbackStorageConfig
Defined in: src/types/callback.types.ts:177
AstDB storage configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
dbFamily | string | AstDB family name for callbacks | src/types/callback.types.ts:179 |
maxInMemory | number | Maximum callbacks to keep in memory | src/types/callback.types.ts:182 |
cleanupAge | number | Auto-cleanup completed callbacks older than (ms) | src/types/callback.types.ts:185 |
persistEnabled | boolean | Persist to AstDB on changes | src/types/callback.types.ts:188 |
UseAmiCallbackOptions
Defined in: src/types/callback.types.ts:194
Options for useAmiCallback composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
defaultQueue? | string | Default queue for callbacks | src/types/callback.types.ts:196 |
defaultCallerId? | string | Default caller ID for outgoing callbacks | src/types/callback.types.ts:199 |
defaultMaxAttempts? | number | Default maximum attempts | src/types/callback.types.ts:202 |
defaultTimeout? | number | Default timeout per attempt (seconds) | src/types/callback.types.ts:205 |
defaultContext? | string | Context for callback calls | src/types/callback.types.ts:208 |
retryDelay? | number | Retry delay between attempts (seconds) | src/types/callback.types.ts:211 |
autoExecute? | boolean | Auto-execute pending callbacks | src/types/callback.types.ts:214 |
autoExecuteInterval? | number | Auto-execute interval (ms) | src/types/callback.types.ts:217 |
storage? | Partial<CallbackStorageConfig> | Storage configuration | src/types/callback.types.ts:220 |
onCallbackAdded? | (callback) => void | Callback when a new request is added | src/types/callback.types.ts:223 |
onCallbackStarted? | (callback) => void | Callback when execution starts | src/types/callback.types.ts:226 |
onCallbackCompleted? | (callback) => void | Callback when completed successfully | src/types/callback.types.ts:229 |
onCallbackFailed? | (callback, error) => void | Callback when failed | src/types/callback.types.ts:232 |
onCallbackCancelled? | (callback) => void | Callback when cancelled | src/types/callback.types.ts:235 |
UseAmiCallbackReturn
Defined in: src/types/callback.types.ts:241
Return type for useAmiCallback composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
callbacks | Ref<CallbackRequest[]> | All callback requests | src/types/callback.types.ts:247 |
activeCallback | Ref<CallbackRequest | null> | Current callback being executed | src/types/callback.types.ts:250 |
stats | Ref<CallbackQueueStats> | Queue statistics | src/types/callback.types.ts:253 |
isLoading | Ref<boolean> | Loading state | src/types/callback.types.ts:256 |
error | Ref<string | null> | Error message | src/types/callback.types.ts:259 |
autoExecuteEnabled | Ref<boolean> | Auto-execute enabled | src/types/callback.types.ts:262 |
pendingCallbacks | ComputedRef<CallbackRequest[]> | Pending callbacks (not yet executed) | src/types/callback.types.ts:269 |
scheduledCallbacks | ComputedRef<CallbackRequest[]> | Scheduled callbacks (with future scheduledAt) | src/types/callback.types.ts:272 |
completedCallbacks | ComputedRef<CallbackRequest[]> | Completed callbacks | src/types/callback.types.ts:275 |
failedCallbacks | ComputedRef<CallbackRequest[]> | Failed callbacks | src/types/callback.types.ts:278 |
isExecuting | ComputedRef<boolean> | Whether a callback is in progress | src/types/callback.types.ts:281 |
nextCallback | ComputedRef<CallbackRequest | null> | Next callback to execute (by priority and time) | src/types/callback.types.ts:284 |
pendingCount | ComputedRef<number> | Total pending count | src/types/callback.types.ts:287 |
scheduleCallback | (options) => Promise<CallbackRequest> | Schedule a new callback | src/types/callback.types.ts:294 |
executeCallback | (callbackId, options?) => Promise<void> | Execute a specific callback | src/types/callback.types.ts:297 |
executeNext | (options?) => Promise<void> | Execute next pending callback | src/types/callback.types.ts:300 |
cancelCallback | (callbackId, reason?) => Promise<void> | Cancel a callback | src/types/callback.types.ts:303 |
rescheduleCallback | (callbackId, newTime) => Promise<void> | Reschedule a callback | src/types/callback.types.ts:306 |
updatePriority | (callbackId, priority) => void | Update callback priority | src/types/callback.types.ts:309 |
addNotes | (callbackId, notes) => void | Add notes to callback | src/types/callback.types.ts:312 |
markCompleted | (callbackId, disposition?) => void | Mark callback as completed manually | src/types/callback.types.ts:315 |
getCallback | (callbackId) => CallbackRequest | undefined | Get callback by ID | src/types/callback.types.ts:318 |
getCallbacksForNumber | (phoneNumber) => CallbackRequest[] | Get callbacks for specific number | src/types/callback.types.ts:321 |
startAutoExecute | () => void | Start auto-execute mode | src/types/callback.types.ts:328 |
stopAutoExecute | () => void | Stop auto-execute mode | src/types/callback.types.ts:331 |
clearCompleted | () => void | Clear completed callbacks | src/types/callback.types.ts:334 |
clearFailed | () => void | Clear failed callbacks | src/types/callback.types.ts:337 |
refreshStats | () => void | Refresh stats | src/types/callback.types.ts:340 |
loadFromStorage | () => Promise<void> | Load callbacks from AstDB | src/types/callback.types.ts:347 |
saveToStorage | () => Promise<void> | Save callbacks to AstDB | src/types/callback.types.ts:350 |
clearStorage | () => Promise<void> | Clear all stored callbacks | src/types/callback.types.ts:353 |
CdrRecord
Defined in: src/types/cdr.types.ts:37
Individual CDR record
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
uniqueId | string | Unique ID for the CDR | src/types/cdr.types.ts:39 |
accountCode | string | Account code | src/types/cdr.types.ts:42 |
source | string | Source (caller) number | src/types/cdr.types.ts:45 |
destination | string | Destination number | src/types/cdr.types.ts:48 |
destinationContext | string | Destination context | src/types/cdr.types.ts:51 |
callerId | string | Caller ID | src/types/cdr.types.ts:54 |
channel | string | Channel used | src/types/cdr.types.ts:57 |
destinationChannel | string | Destination channel | src/types/cdr.types.ts:60 |
lastApplication | string | Last application executed | src/types/cdr.types.ts:63 |
lastData | string | Last application data | src/types/cdr.types.ts:66 |
startTime | Date | Call start time | src/types/cdr.types.ts:69 |
answerTime | Date | null | Call answer time | src/types/cdr.types.ts:72 |
endTime | Date | Call end time | src/types/cdr.types.ts:75 |
duration | number | Total call duration in seconds (ring + talk) | src/types/cdr.types.ts:78 |
billableSeconds | number | Billable seconds (time after answer) | src/types/cdr.types.ts:81 |
disposition | CdrDisposition | Call disposition | src/types/cdr.types.ts:84 |
amaFlags | string | AMA flags | src/types/cdr.types.ts:87 |
userField | string | User field | src/types/cdr.types.ts:90 |
direction | CdrDirection | Call direction | src/types/cdr.types.ts:93 |
serverId? | number | Server ID for multi-server setups | src/types/cdr.types.ts:96 |
queue? | string | Queue name if applicable | src/types/cdr.types.ts:99 |
agent? | string | Agent who handled if applicable | src/types/cdr.types.ts:102 |
customFields? | Record<string, string> | Additional custom fields | src/types/cdr.types.ts:105 |
CdrStats
Defined in: src/types/cdr.types.ts:111
Aggregated CDR statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalCalls | number | Total number of calls | src/types/cdr.types.ts:113 |
answeredCalls | number | Number of answered calls | src/types/cdr.types.ts:116 |
missedCalls | number | Number of missed calls | src/types/cdr.types.ts:119 |
failedCalls | number | Number of failed calls | src/types/cdr.types.ts:122 |
totalTalkTime | number | Total talk time in seconds | src/types/cdr.types.ts:125 |
averageTalkTime | number | Average talk time in seconds | src/types/cdr.types.ts:128 |
averageRingTime | number | Average ring time in seconds | src/types/cdr.types.ts:131 |
answerRate | number | Answer rate percentage (0-100) | src/types/cdr.types.ts:134 |
byDisposition | Record<CdrDisposition, number> | Calls by disposition | src/types/cdr.types.ts:137 |
byHour | Record<number, number> | Calls by hour of day (0-23) | src/types/cdr.types.ts:140 |
byDayOfWeek | Record<number, number> | Calls by day of week (0-6, 0=Sunday) | src/types/cdr.types.ts:143 |
periodStart | Date | Start of the period | src/types/cdr.types.ts:146 |
periodEnd | Date | End of the period | src/types/cdr.types.ts:149 |
AgentCdrStats
Defined in: src/types/cdr.types.ts:155
Agent-specific CDR statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
agent | string | Agent identifier | src/types/cdr.types.ts:157 |
callsHandled | number | Total calls handled | src/types/cdr.types.ts:160 |
totalTalkTime | number | Total talk time in seconds | src/types/cdr.types.ts:163 |
averageTalkTime | number | Average talk time in seconds | src/types/cdr.types.ts:166 |
totalWrapTime | number | Total wrap time in seconds (if tracked) | src/types/cdr.types.ts:169 |
averageHandleTime | number | Average handle time (talk + wrap) | src/types/cdr.types.ts:172 |
byDisposition | Record<CdrDisposition, number> | Calls by disposition | src/types/cdr.types.ts:175 |
serviceLevelPct? | number | Service level achievement percentage | src/types/cdr.types.ts:178 |
periodStart | Date | Period start | src/types/cdr.types.ts:181 |
periodEnd | Date | Period end | src/types/cdr.types.ts:184 |
QueueCdrStats
Defined in: src/types/cdr.types.ts:190
Queue-specific CDR statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
queue | string | Queue name | src/types/cdr.types.ts:192 |
callsOffered | number | Total calls offered | src/types/cdr.types.ts:195 |
callsAnswered | number | Total calls answered | src/types/cdr.types.ts:198 |
callsAbandoned | number | Total calls abandoned | src/types/cdr.types.ts:201 |
averageWaitTime | number | Average wait time in seconds | src/types/cdr.types.ts:204 |
averageTalkTime | number | Average talk time in seconds | src/types/cdr.types.ts:207 |
serviceLevelPct | number | Service level percentage | src/types/cdr.types.ts:210 |
serviceLevelThreshold | number | Service level threshold in seconds | src/types/cdr.types.ts:213 |
abandonmentRate | number | Abandonment rate percentage | src/types/cdr.types.ts:216 |
byAgent | Record<string, number> | Calls by agent | src/types/cdr.types.ts:219 |
periodStart | Date | Period start | src/types/cdr.types.ts:222 |
periodEnd | Date | Period end | src/types/cdr.types.ts:225 |
CdrFilter
Defined in: src/types/cdr.types.ts:231
CDR filter options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
source? | string | Filter by source number | src/types/cdr.types.ts:233 |
destination? | string | Filter by destination number | src/types/cdr.types.ts:236 |
direction? | CdrDirection | Filter by call direction | src/types/cdr.types.ts:239 |
disposition? | | CdrDisposition | CdrDisposition[] | Filter by disposition | src/types/cdr.types.ts:242 |
queue? | string | Filter by queue | src/types/cdr.types.ts:245 |
agent? | string | Filter by agent | src/types/cdr.types.ts:248 |
accountCode? | string | Filter by account code | src/types/cdr.types.ts:251 |
startDate? | Date | Start date/time | src/types/cdr.types.ts:254 |
endDate? | Date | End date/time | src/types/cdr.types.ts:257 |
minDuration? | number | Minimum duration in seconds | src/types/cdr.types.ts:260 |
maxDuration? | number | Maximum duration in seconds | src/types/cdr.types.ts:263 |
limit? | number | Limit number of results | src/types/cdr.types.ts:266 |
offset? | number | Offset for pagination | src/types/cdr.types.ts:269 |
sortBy? | "startTime" | "duration" | "source" | "billableSeconds" | "destination" | Sort by field | src/types/cdr.types.ts:272 |
sortOrder? | "desc" | "asc" | Sort order | src/types/cdr.types.ts:275 |
CdrExportOptions
Defined in: src/types/cdr.types.ts:281
CDR export options
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
format | "json" | "csv" | Export format | src/types/cdr.types.ts:283 |
fields? | keyof CdrRecord[] | Fields to include | src/types/cdr.types.ts:286 |
includeHeader? | boolean | Include header row (CSV only) | src/types/cdr.types.ts:289 |
dateFormat? | string | Date format string | src/types/cdr.types.ts:292 |
filename? | string | Filename for download | src/types/cdr.types.ts:295 |
UseAmiCDROptions
Defined in: src/types/cdr.types.ts:353
Options for useAmiCDR composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
maxRecords? | number | Maximum CDR records to keep in memory | src/types/cdr.types.ts:355 |
autoStats? | boolean | Auto-calculate statistics | src/types/cdr.types.ts:358 |
statsPeriod? | CdrAggregationPeriod | Statistics aggregation period | src/types/cdr.types.ts:361 |
trackCel? | boolean | Enable CEL event tracking | src/types/cdr.types.ts:364 |
filter? | CdrFilter | Filter for incoming CDRs | src/types/cdr.types.ts:367 |
detectDirection? | (cdr) => CdrDirection | Custom direction detection function | src/types/cdr.types.ts:370 |
onCdr? | (cdr) => void | Callback when CDR is received | src/types/cdr.types.ts:373 |
onStatsUpdate? | (stats) => void | Callback when stats are updated | src/types/cdr.types.ts:376 |
transformCdr? | (cdr) => CdrRecord | Transform CDR record | src/types/cdr.types.ts:379 |
UseAmiCDRReturn
Defined in: src/types/cdr.types.ts:385
Return type for useAmiCDR composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
records | Ref<CdrRecord[]> | List of CDR records | src/types/cdr.types.ts:388 |
stats | ComputedRef<CdrStats> | Current statistics | src/types/cdr.types.ts:391 |
agentStats | ComputedRef<Record<string, AgentCdrStats>> | Statistics by agent | src/types/cdr.types.ts:394 |
queueStats | ComputedRef<Record<string, QueueCdrStats>> | Statistics by queue | src/types/cdr.types.ts:397 |
isProcessing | Ref<boolean> | Whether currently processing | src/types/cdr.types.ts:400 |
error | Ref<string | null> | Error message if any | src/types/cdr.types.ts:403 |
totalCount | Ref<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 records | src/types/cdr.types.ts:410 |
getStats | (startDate, endDate) => CdrStats | Get statistics for a specific period | src/types/cdr.types.ts:413 |
getAgentStats | (agent, startDate?, endDate?) => AgentCdrStats | null | Get agent statistics | src/types/cdr.types.ts:416 |
getQueueStats | (queue, startDate?, endDate?) => QueueCdrStats | null | Get queue statistics | src/types/cdr.types.ts:419 |
exportRecords | (options, filter?) => string | Export CDR records | src/types/cdr.types.ts:422 |
clearRecords | () => void | Clear all records | src/types/cdr.types.ts:425 |
onCdrEvent | (callback) => () => void | Subscribe to CDR events | src/types/cdr.types.ts:428 |
getTodayCalls | () => CdrRecord[] | Get calls for today | src/types/cdr.types.ts:431 |
getHourlyBreakdown | (date) => Record<number, CdrStats> | Get hourly breakdown for a date | src/types/cdr.types.ts:434 |
calculateServiceLevel | (threshold, startDate?, endDate?) => number | Calculate service level percentage | src/types/cdr.types.ts:437 |
getCallDetail | (uniqueId) => CdrRecord | undefined | Get call detail by unique ID | src/types/cdr.types.ts:440 |
E911CivicAddress
Defined in: src/types/e911.types.ts:45
Civic address for E911 location
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
houseNumber | string | House/building number | src/types/e911.types.ts:47 |
houseNumberSuffix? | string | House number suffix (A, B, etc.) | src/types/e911.types.ts:50 |
preDirectional? | string | Pre-directional (N, S, E, W) | src/types/e911.types.ts:53 |
streetName | string | Street name | src/types/e911.types.ts:56 |
streetSuffix? | string | Street suffix (St, Ave, Blvd, etc.) | src/types/e911.types.ts:59 |
postDirectional? | string | Post-directional (N, S, E, W) | src/types/e911.types.ts:62 |
city | string | City/municipality | src/types/e911.types.ts:65 |
state | string | State/province/region | src/types/e911.types.ts:68 |
postalCode | string | Postal/ZIP code | src/types/e911.types.ts:71 |
country | string | Country code (ISO 3166-1 alpha-2) | src/types/e911.types.ts:74 |
additionalInfo? | string | Additional location info (suite, floor, etc.) | src/types/e911.types.ts:77 |
buildingName? | string | Building name | src/types/e911.types.ts:80 |
floor? | string | Floor number | src/types/e911.types.ts:83 |
room? | string | Room/unit number | src/types/e911.types.ts:86 |
E911GeoLocation
Defined in: src/types/e911.types.ts:92
Geographic coordinates for E911 location
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
latitude | number | Latitude (WGS84) | src/types/e911.types.ts:94 |
longitude | number | Longitude (WGS84) | src/types/e911.types.ts:97 |
altitude? | number | Altitude in meters (optional) | src/types/e911.types.ts:100 |
uncertainty? | number | Horizontal uncertainty in meters | src/types/e911.types.ts:103 |
method? | string | Location method (gps, wifi, manual, etc.) | src/types/e911.types.ts:106 |
timestamp | Date | Timestamp of location determination | src/types/e911.types.ts:109 |
E911Location
Defined in: src/types/e911.types.ts:115
Complete E911 location information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique location identifier | src/types/e911.types.ts:117 |
name | string | Location name/label | src/types/e911.types.ts:120 |
type | E911LocationType | Location type | src/types/e911.types.ts:123 |
civic? | E911CivicAddress | Civic address | src/types/e911.types.ts:126 |
geo? | E911GeoLocation | Geographic coordinates | src/types/e911.types.ts:129 |
isDefault | boolean | Is this the default location | src/types/e911.types.ts:132 |
isVerified | boolean | Location is verified/validated | src/types/e911.types.ts:135 |
verifiedAt? | Date | Verification date | src/types/e911.types.ts:138 |
extensions | string[] | Associated extension(s) | src/types/e911.types.ts:141 |
lastUpdated | Date | Last updated timestamp | src/types/e911.types.ts:144 |
notes? | string | Notes/comments | src/types/e911.types.ts:147 |
E911Call
Defined in: src/types/e911.types.ts:153
E911 emergency call record
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique call identifier | src/types/e911.types.ts:155 |
channel | string | SIP channel identifier | src/types/e911.types.ts:158 |
callerExtension | string | Caller extension | src/types/e911.types.ts:161 |
callerIdNum | string | Caller ID number | src/types/e911.types.ts:164 |
callerIdName | string | Caller ID name | src/types/e911.types.ts:167 |
dialedNumber | string | Dialed number (911, 933 test, etc.) | src/types/e911.types.ts:170 |
status | E911CallStatus | Call status | src/types/e911.types.ts:173 |
location | E911Location | null | Location at time of call | src/types/e911.types.ts:176 |
callbackNumber | string | Callback number configured | src/types/e911.types.ts:179 |
startTime | Date | Call start time | src/types/e911.types.ts:182 |
answerTime? | Date | Call answer time | src/types/e911.types.ts:185 |
endTime? | Date | Call end time | src/types/e911.types.ts:188 |
duration? | number | Duration in seconds | src/types/e911.types.ts:191 |
notificationSent | boolean | Whether notification was sent | src/types/e911.types.ts:194 |
notificationSentAt? | Date | Notification timestamp | src/types/e911.types.ts:197 |
notifiedAdmins | string[] | Administrators notified | src/types/e911.types.ts:200 |
psapCallbackReceived | boolean | PSAP callback received | src/types/e911.types.ts:203 |
recordingPath? | string | Call recording path (if recorded) | src/types/e911.types.ts:206 |
metadata? | Record<string, unknown> | Additional metadata | src/types/e911.types.ts:209 |
E911NotificationRecipient
Defined in: src/types/e911.types.ts:215
E911 notification recipient
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique recipient identifier | src/types/e911.types.ts:217 |
name | string | Recipient name | src/types/e911.types.ts:220 |
email? | string | Email address | src/types/e911.types.ts:223 |
phone? | string | Phone number (for SMS) | src/types/e911.types.ts:226 |
webhookUrl? | string | Webhook URL | src/types/e911.types.ts:229 |
notificationTypes | E911NotificationType[] | Notification types to receive | src/types/e911.types.ts:232 |
enabled | boolean | Is this recipient active | src/types/e911.types.ts:235 |
priority | number | Priority (lower = higher priority) | src/types/e911.types.ts:238 |
E911Notification
Defined in: src/types/e911.types.ts:244
E911 notification event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Notification ID | src/types/e911.types.ts:246 |
callId | string | Associated call ID | src/types/e911.types.ts:249 |
type | E911NotificationType | Notification type | src/types/e911.types.ts:252 |
recipient | E911NotificationRecipient | Recipient information | src/types/e911.types.ts:255 |
content | string | Notification content | src/types/e911.types.ts:258 |
sentAt | Date | Timestamp sent | src/types/e911.types.ts:261 |
delivered | boolean | Delivery status | src/types/e911.types.ts:264 |
deliveredAt? | Date | Delivery confirmation timestamp | src/types/e911.types.ts:267 |
error? | string | Error message if failed | src/types/e911.types.ts:270 |
E911ComplianceLog
Defined in: src/types/e911.types.ts:276
E911 compliance log entry
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Log entry ID | src/types/e911.types.ts:278 |
callId? | string | Associated call ID | src/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 type | src/types/e911.types.ts:284 |
description | string | Event description | src/types/e911.types.ts:298 |
actor | string | User/system that triggered event | src/types/e911.types.ts:301 |
timestamp | Date | Event timestamp | src/types/e911.types.ts:304 |
details? | Record<string, unknown> | Additional details | src/types/e911.types.ts:307 |
severity | "critical" | "info" | "warning" | Severity level | src/types/e911.types.ts:310 |
E911Config
Defined in: src/types/e911.types.ts:316
E911 configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
enabled | boolean | Is E911 enabled | src/types/e911.types.ts:318 |
emergencyNumbers | string[] | Emergency numbers to detect (default: ['911', '933']) | src/types/e911.types.ts:321 |
testNumbers | string[] | Test numbers (933 is standard test) | src/types/e911.types.ts:324 |
defaultCallbackNumber | string | Default callback number | src/types/e911.types.ts:327 |
defaultLocationId? | string | Default location ID | src/types/e911.types.ts:330 |
recipients | E911NotificationRecipient[] | Notification recipients | src/types/e911.types.ts:333 |
recordCalls | boolean | Enable call recording for E911 | src/types/e911.types.ts:336 |
directDialing | boolean | Kari's Law: Require direct dialing (no prefix) | src/types/e911.types.ts:339 |
onSiteNotification | boolean | Kari's Law: Enable on-site notification | src/types/e911.types.ts:342 |
dispatchableLocationRequired | boolean | RAY BAUM's Act: Dispatchable location required | src/types/e911.types.ts:345 |
autoAnswerCallback | boolean | Auto-answer PSAP callbacks | src/types/e911.types.ts:348 |
callbackPattern? | string | Callback detection pattern | src/types/e911.types.ts:351 |
notificationDelay | number | Hold time before notification (seconds) | src/types/e911.types.ts:354 |
complianceLogging | boolean | Compliance logging enabled | src/types/e911.types.ts:357 |
lastUpdated | Date | Last updated | src/types/e911.types.ts:360 |
E911Stats
Defined in: src/types/e911.types.ts:366
E911 statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalCalls | number | Total emergency calls | src/types/e911.types.ts:368 |
testCalls | number | Total test calls | src/types/e911.types.ts:371 |
callsWithLocation | number | Calls with verified location | src/types/e911.types.ts:374 |
notificationsSent | number | Notifications sent | src/types/e911.types.ts:377 |
notificationsDelivered | number | Notifications delivered | src/types/e911.types.ts:380 |
callbacksReceived | number | PSAP callbacks received | src/types/e911.types.ts:383 |
avgCallDuration | number | Average call duration (seconds) | src/types/e911.types.ts:386 |
avgNotificationTime | number | Average notification delivery time (seconds) | src/types/e911.types.ts:389 |
lastEmergencyCall? | Date | Last emergency call timestamp | src/types/e911.types.ts:392 |
lastTestCall? | Date | Last test call timestamp | src/types/e911.types.ts:395 |
E911Event
Defined in: src/types/e911.types.ts:417
E911 event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | E911EventType | Event type | src/types/e911.types.ts:419 |
call? | E911Call | Associated call | src/types/e911.types.ts:422 |
notification? | E911Notification | Notification (if applicable) | src/types/e911.types.ts:425 |
timestamp | Date | Event timestamp | src/types/e911.types.ts:428 |
data? | Record<string, unknown> | Additional data | src/types/e911.types.ts:431 |
UseSipE911Options
Defined in: src/types/e911.types.ts:437
Options for the useSipE911 composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
config? | Partial<E911Config> | E911 configuration | src/types/e911.types.ts:439 |
autoStart? | boolean | Auto-start monitoring on creation | src/types/e911.types.ts:442 |
onEmergencyCall? | (call) => void | Callback when emergency call detected | src/types/e911.types.ts:445 |
onCallEnded? | (call) => void | Callback when emergency call ends | src/types/e911.types.ts:448 |
onNotificationSent? | (notification) => void | Callback when notification is sent | src/types/e911.types.ts:451 |
onCallbackDetected? | (call) => void | Callback when PSAP callback detected | src/types/e911.types.ts:454 |
onEvent? | (event) => void | Callback on E911 event | src/types/e911.types.ts:457 |
onError? | (error) => void | Callback on error | src/types/e911.types.ts:460 |
UseSipE911Return
Defined in: src/types/e911.types.ts:466
Return type for useSipE911 composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
config | Ref<E911Config> | Current E911 configuration | src/types/e911.types.ts:469 |
locations | Ref<Map<string, E911Location>> | All registered locations | src/types/e911.types.ts:472 |
activeCalls | Ref<Map<string, E911Call>> | Active emergency calls | src/types/e911.types.ts:475 |
callHistory | Ref<E911Call[]> | Call history | src/types/e911.types.ts:478 |
complianceLogs | Ref<E911ComplianceLog[]> | Compliance logs | src/types/e911.types.ts:481 |
isMonitoring | Ref<boolean> | Whether E911 monitoring is active | src/types/e911.types.ts:484 |
isLoading | Ref<boolean> | Loading state | src/types/e911.types.ts:487 |
error | Ref<string | null> | Error message if any | src/types/e911.types.ts:490 |
locationList | ComputedRef<E911Location[]> | List of all locations | src/types/e911.types.ts:494 |
defaultLocation | ComputedRef<E911Location | null> | Default location | src/types/e911.types.ts:497 |
activeCallList | ComputedRef<E911Call[]> | List of active emergency calls | src/types/e911.types.ts:500 |
hasActiveEmergency | ComputedRef<boolean> | Whether there's an active emergency call | src/types/e911.types.ts:503 |
stats | ComputedRef<E911Stats> | E911 statistics | src/types/e911.types.ts:506 |
recipients | ComputedRef<E911NotificationRecipient[]> | Notification recipients | src/types/e911.types.ts:509 |
startMonitoring | () => void | Start E911 monitoring | src/types/e911.types.ts:513 |
stopMonitoring | () => void | Stop E911 monitoring | src/types/e911.types.ts:516 |
updateConfig | (config) => void | Update E911 configuration | src/types/e911.types.ts:519 |
addLocation | (location) => E911Location | Add a location | src/types/e911.types.ts:522 |
updateLocation | (locationId, updates) => boolean | Update a location | src/types/e911.types.ts:525 |
removeLocation | (locationId) => boolean | Remove a location | src/types/e911.types.ts:528 |
setDefaultLocation | (locationId) => boolean | Set default location | src/types/e911.types.ts:531 |
getLocation | (locationId) => E911Location | null | Get location by ID | src/types/e911.types.ts:534 |
getLocationForExtension | (extension) => E911Location | null | Get location for extension | src/types/e911.types.ts:537 |
verifyLocation | (locationId) => Promise<boolean> | Verify/validate a location | src/types/e911.types.ts:540 |
addRecipient | (recipient) => E911NotificationRecipient | Add notification recipient | src/types/e911.types.ts:543 |
updateRecipient | (recipientId, updates) => boolean | Update notification recipient | src/types/e911.types.ts:546 |
removeRecipient | (recipientId) => boolean | Remove notification recipient | src/types/e911.types.ts:549 |
sendTestNotification | () => Promise<boolean> | Send test notification to all recipients | src/types/e911.types.ts:552 |
getCall | (callId) => E911Call | null | Get call by ID | src/types/e911.types.ts:555 |
getCallsInRange | (start, end) => E911Call[] | Get calls for date range | src/types/e911.types.ts:558 |
getLogs | (limit?) => E911ComplianceLog[] | Get compliance logs | src/types/e911.types.ts:561 |
exportLogs | (format) => string | Export compliance logs | src/types/e911.types.ts:564 |
clearOldLogs | (olderThan) => number | Clear old compliance logs | src/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) => string | Format location for display | src/types/e911.types.ts:573 |
checkCompliance | () => object | Check E911 compliance status | src/types/e911.types.ts:576 |
CallForwardStatus
Defined in: src/types/featurecodes.types.ts:43
Call forward status
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | CallForwardType | Type of call forward | src/types/featurecodes.types.ts:45 |
enabled | boolean | Whether this forward type is enabled | src/types/featurecodes.types.ts:48 |
destination? | string | Destination number/extension | src/types/featurecodes.types.ts:51 |
ringTimeout? | number | Ring 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
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Feature code identifier | src/types/featurecodes.types.ts:62 |
name | string | Display name | src/types/featurecodes.types.ts:65 |
category | FeatureCodeCategory | Category | src/types/featurecodes.types.ts:68 |
activateCode | string | Dial code to activate (e.g., *78) | src/types/featurecodes.types.ts:71 |
deactivateCode? | string | Dial code to deactivate (e.g., *79) | src/types/featurecodes.types.ts:74 |
toggleCode? | string | Dial code to toggle (e.g., *76) | src/types/featurecodes.types.ts:77 |
statusCode? | string | Dial code to check status | src/types/featurecodes.types.ts:80 |
requiresDestination | boolean | Whether it requires a destination number | src/types/featurecodes.types.ts:83 |
description? | string | Description of the feature | src/types/featurecodes.types.ts:86 |
available | boolean | Whether the feature is currently available | src/types/featurecodes.types.ts:89 |
FeatureExecutionResult
Defined in: src/types/featurecodes.types.ts:95
Feature execution result
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
success | boolean | Whether execution was successful | src/types/featurecodes.types.ts:97 |
featureCode | string | Feature code that was executed | src/types/featurecodes.types.ts:100 |
message? | string | Result message | src/types/featurecodes.types.ts:103 |
newStatus? | string | New status after execution (if applicable) | src/types/featurecodes.types.ts:106 |
executedAt | Date | Timestamp of execution | src/types/featurecodes.types.ts:109 |
ExtensionFeatureStatus
Defined in: src/types/featurecodes.types.ts:115
Feature status for an extension
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
extension | string | Extension number | src/types/featurecodes.types.ts:117 |
dnd | DndStatus | DND status | src/types/featurecodes.types.ts:120 |
callForward | CallForwardStatus[] | Call forward statuses | src/types/featurecodes.types.ts:123 |
customFeatures | Record<string, boolean> | Custom feature states | src/types/featurecodes.types.ts:126 |
lastUpdated | Date | Last updated timestamp | src/types/featurecodes.types.ts:129 |
StandardFeatureCodes
Defined in: src/types/featurecodes.types.ts:135
Common FreePBX/Asterisk feature codes
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
dndToggle | string | DND toggle | src/types/featurecodes.types.ts:137 |
dndActivate | string | DND activate | src/types/featurecodes.types.ts:140 |
dndDeactivate | string | DND deactivate | src/types/featurecodes.types.ts:143 |
cfActivate | string | Call forward unconditional activate | src/types/featurecodes.types.ts:146 |
cfDeactivate | string | Call forward unconditional deactivate | src/types/featurecodes.types.ts:149 |
cfbActivate | string | Call forward busy activate | src/types/featurecodes.types.ts:152 |
cfbDeactivate | string | Call forward busy deactivate | src/types/featurecodes.types.ts:155 |
cfnaActivate | string | Call forward no answer activate | src/types/featurecodes.types.ts:158 |
cfnaDeactivate | string | Call forward no answer deactivate | src/types/featurecodes.types.ts:161 |
callPickup | string | Call pickup | src/types/featurecodes.types.ts:164 |
directedPickup | string | Directed call pickup | src/types/featurecodes.types.ts:167 |
voicemail | string | Voicemail access | src/types/featurecodes.types.ts:170 |
directVoicemail | string | Direct voicemail | src/types/featurecodes.types.ts:173 |
intercom | string | Intercom prefix | src/types/featurecodes.types.ts:176 |
callPark | string | Call park | src/types/featurecodes.types.ts:179 |
attendedTransfer | string | Attended transfer | src/types/featurecodes.types.ts:182 |
blindTransfer | string | Blind transfer | src/types/featurecodes.types.ts:185 |
recordingToggle | string | In-call recording toggle | src/types/featurecodes.types.ts:188 |
UseAmiFeatureCodesOptions
Defined in: src/types/featurecodes.types.ts:194
Options for useAmiFeatureCodes composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
extension? | string | Extension to manage features for | src/types/featurecodes.types.ts:196 |
featureCodes? | Partial<StandardFeatureCodes> | Custom feature codes (override defaults) | src/types/featurecodes.types.ts:199 |
refreshInterval? | number | Auto-refresh status interval in ms (0 to disable) | src/types/featurecodes.types.ts:202 |
dbFamily? | string | AstDB family for feature state storage | src/types/featurecodes.types.ts:205 |
onDndChanged? | (enabled) => void | Callback when DND status changes | src/types/featurecodes.types.ts:208 |
onCallForwardChanged? | (status) => void | Callback when call forward changes | src/types/featurecodes.types.ts:211 |
onFeatureExecuted? | (result) => void | Callback when feature execution completes | src/types/featurecodes.types.ts:214 |
onError? | (error) => void | Callback on error | src/types/featurecodes.types.ts:217 |
UseAmiFeatureCodesReturn
Defined in: src/types/featurecodes.types.ts:223
Return type for useAmiFeatureCodes composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
extension | Ref<string> | Current extension | src/types/featurecodes.types.ts:229 |
dndStatus | Ref<DndStatus> | DND status | src/types/featurecodes.types.ts:232 |
callForwardStatus | Ref<CallForwardStatus[]> | Call forward statuses | src/types/featurecodes.types.ts:235 |
featureCodes | Ref<FeatureCode[]> | Available feature codes | src/types/featurecodes.types.ts:238 |
customFeatures | Ref<Record<string, boolean>> | Custom feature states | src/types/featurecodes.types.ts:241 |
executionHistory | Ref<FeatureExecutionResult[]> | Execution history | src/types/featurecodes.types.ts:244 |
isLoading | Ref<boolean> | Loading state | src/types/featurecodes.types.ts:247 |
error | Ref<string | null> | Error message | src/types/featurecodes.types.ts:250 |
isDndEnabled | ComputedRef<boolean> | Whether DND is currently enabled | src/types/featurecodes.types.ts:257 |
hasActiveCallForward | ComputedRef<boolean> | Whether any call forward is active | src/types/featurecodes.types.ts:260 |
callForwardDestination | ComputedRef<string | null> | Active call forward destination (if any) | src/types/featurecodes.types.ts:263 |
getCallForwardByType | (type) => CallForwardStatus | undefined | Get call forward status by type | src/types/featurecodes.types.ts:266 |
toggleDnd | () => Promise<FeatureExecutionResult> | Toggle DND status | src/types/featurecodes.types.ts:273 |
enableDnd | () => Promise<FeatureExecutionResult> | Enable DND | src/types/featurecodes.types.ts:276 |
disableDnd | () => Promise<FeatureExecutionResult> | Disable DND | src/types/featurecodes.types.ts:279 |
enableCallForward | (destination) => Promise<FeatureExecutionResult> | Enable call forward unconditional | src/types/featurecodes.types.ts:286 |
disableCallForward | () => Promise<FeatureExecutionResult> | Disable call forward unconditional | src/types/featurecodes.types.ts:289 |
enableCallForwardBusy | (destination) => Promise<FeatureExecutionResult> | Enable call forward on busy | src/types/featurecodes.types.ts:292 |
disableCallForwardBusy | () => Promise<FeatureExecutionResult> | Disable call forward on busy | src/types/featurecodes.types.ts:295 |
enableCallForwardNoAnswer | (destination, ringTimeout?) => Promise<FeatureExecutionResult> | Enable call forward on no answer | src/types/featurecodes.types.ts:298 |
disableCallForwardNoAnswer | () => Promise<FeatureExecutionResult> | Disable call forward on no answer | src/types/featurecodes.types.ts:301 |
executeFeatureCode | (code, destination?) => Promise<FeatureExecutionResult> | Execute a feature code | src/types/featurecodes.types.ts:308 |
executeFeature | (featureName, destination?) => Promise<FeatureExecutionResult> | Execute a custom feature by name | src/types/featurecodes.types.ts:311 |
refreshStatus | () => Promise<void> | Refresh all feature statuses | src/types/featurecodes.types.ts:314 |
setExtension | (extension) => void | Set extension to manage | src/types/featurecodes.types.ts:317 |
registerFeature | (feature) => void | Register a custom feature code | src/types/featurecodes.types.ts:324 |
unregisterFeature | (featureId) => void | Unregister a custom feature | src/types/featurecodes.types.ts:327 |
getFeature | (featureId) => FeatureCode | undefined | Get feature by ID | src/types/featurecodes.types.ts:330 |
clearHistory | () => void | Clear execution history | src/types/featurecodes.types.ts:337 |
getStatusSummary | () => ExtensionFeatureStatus | Get status summary for extension | src/types/featurecodes.types.ts:340 |
ReturnTimeSpec
Defined in: src/types/freepbx-presence.types.ts:64
Return time specification
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
returnTime | Date | Expected return timestamp (ISO 8601) | src/types/freepbx-presence.types.ts:66 |
durationMinutes? | number | Duration in minutes (from when set) | src/types/freepbx-presence.types.ts:68 |
remainingMs? | number | Time remaining in milliseconds | src/types/freepbx-presence.types.ts:70 |
isOverdue? | boolean | Whether the return time is overdue | src/types/freepbx-presence.types.ts:72 |
formattedTime? | string | Formatted return time string | src/types/freepbx-presence.types.ts:74 |
formattedRemaining? | string | Formatted remaining time string | src/types/freepbx-presence.types.ts:76 |
FreePBXPresenceStatus
Defined in: src/types/freepbx-presence.types.ts:82
FreePBX presence status with return time
Extends
Properties
FreePBXPresenceEvent
Defined in: src/types/freepbx-presence.types.ts:108
FreePBX presence update event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | | "error" | "presence_updated" | "return_time_updated" | "return_time_expired" | "status_changed" | Event type | src/types/freepbx-presence.types.ts:110 |
extension | string | Extension being monitored | src/types/freepbx-presence.types.ts:112 |
uri | string | Full SIP URI | src/types/freepbx-presence.types.ts:114 |
previousStatus? | FreePBXPresenceStatus | Previous status | src/types/freepbx-presence.types.ts:116 |
currentStatus | FreePBXPresenceStatus | Current status | src/types/freepbx-presence.types.ts:118 |
timestamp | Date | Timestamp | src/types/freepbx-presence.types.ts:120 |
error? | string | Error message if applicable | src/types/freepbx-presence.types.ts:122 |
FreePBXPresenceBridgeConfig
Defined in: src/types/freepbx-presence.types.ts:148
FreePBX presence bridge configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
host | string | FreePBX server hostname or IP | src/types/freepbx-presence.types.ts:150 |
amiPort? | number | AMI port (default: 5038) | src/types/freepbx-presence.types.ts:152 |
restPort? | number | REST API port (default: 443) | src/types/freepbx-presence.types.ts:154 |
useRestApi? | boolean | Use REST API instead of AMI | src/types/freepbx-presence.types.ts:156 |
amiUsername? | string | AMI username | src/types/freepbx-presence.types.ts:158 |
amiSecret? | string | AMI secret | src/types/freepbx-presence.types.ts:160 |
apiToken? | string | REST API token | src/types/freepbx-presence.types.ts:162 |
autoReconnect? | boolean | Enable automatic reconnection | src/types/freepbx-presence.types.ts:164 |
reconnectInterval? | number | Reconnect interval in ms | src/types/freepbx-presence.types.ts:166 |
maxReconnectAttempts? | number | Maximum reconnect attempts | src/types/freepbx-presence.types.ts:168 |
parseReturnTime? | boolean | Enable return time parsing | src/types/freepbx-presence.types.ts:170 |
returnTimeParser? | (status) => ReturnTimeSpec | null | Custom return time parser | src/types/freepbx-presence.types.ts:172 |
returnTimePatterns? | RegExp[] | Status message patterns for return time extraction | src/types/freepbx-presence.types.ts:174 |
IVRMenuOption
Defined in: src/types/ivr.types.ts:43
IVR menu option definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
digit | string | DTMF digit for this option (0-9, *, #) | src/types/ivr.types.ts:45 |
type | IVROptionType | Option type | src/types/ivr.types.ts:48 |
destination | string | Destination (extension, queue ID, menu ID, etc.) | src/types/ivr.types.ts:51 |
label | string | Option label/description | src/types/ivr.types.ts:54 |
timesSelected | number | Number of times this option was selected | src/types/ivr.types.ts:57 |
enabled | boolean | Whether this option is enabled | src/types/ivr.types.ts:60 |
IVRMenu
Defined in: src/types/ivr.types.ts:66
IVR menu definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique menu identifier | src/types/ivr.types.ts:68 |
name | string | Menu name/title | src/types/ivr.types.ts:71 |
description? | string | Menu description | src/types/ivr.types.ts:74 |
prompt? | string | Prompt/announcement file to play | src/types/ivr.types.ts:77 |
timeout | number | Timeout in seconds before retry/exit | src/types/ivr.types.ts:80 |
maxRetries | number | Maximum invalid attempts before exit | src/types/ivr.types.ts:83 |
options | IVRMenuOption[] | Available menu options | src/types/ivr.types.ts:86 |
isRoot | boolean | Whether this is the root/main menu | src/types/ivr.types.ts:89 |
parentMenuId? | string | Parent menu ID (for nested menus) | src/types/ivr.types.ts:92 |
enabled | boolean | Whether this menu is currently enabled | src/types/ivr.types.ts:95 |
lastUpdated | Date | Last updated timestamp | src/types/ivr.types.ts:98 |
IVRCaller
Defined in: src/types/ivr.types.ts:104
IVR caller information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique caller identifier (channel) | src/types/ivr.types.ts:106 |
channel | string | SIP channel identifier | src/types/ivr.types.ts:109 |
callerIdNum | string | Caller ID number | src/types/ivr.types.ts:112 |
callerIdName | string | Caller ID name | src/types/ivr.types.ts:115 |
ivrId | string | Current IVR ID | src/types/ivr.types.ts:118 |
currentMenuId | string | Current menu ID | src/types/ivr.types.ts:121 |
state | IVRCallerState | Current state | src/types/ivr.types.ts:124 |
enteredAt | Date | Time caller entered IVR | src/types/ivr.types.ts:127 |
menuEnteredAt | Date | Time in current menu | src/types/ivr.types.ts:130 |
navigationHistory | string[] | Navigation history (menu IDs) | src/types/ivr.types.ts:133 |
dtmfInput | string | DTMF input collected | src/types/ivr.types.ts:136 |
invalidAttempts | number | Number of invalid attempts | src/types/ivr.types.ts:139 |
timedOut | boolean | Whether caller is in timeout state | src/types/ivr.types.ts:142 |
lastActivity | Date | Last activity timestamp | src/types/ivr.types.ts:145 |
IVRStats
Defined in: src/types/ivr.types.ts:151
IVR statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalCallers | number | Total callers that entered IVR | src/types/ivr.types.ts:153 |
currentCallers | number | Callers currently in IVR | src/types/ivr.types.ts:156 |
successfulExits | number | Callers that successfully exited to destination | src/types/ivr.types.ts:159 |
abandonedCalls | number | Callers that hung up in IVR | src/types/ivr.types.ts:162 |
timedOutCalls | number | Callers that timed out | src/types/ivr.types.ts:165 |
avgTimeInIVR | number | Average time spent in IVR (seconds) | src/types/ivr.types.ts:168 |
avgMenuSelections | number | Average number of menu selections | src/types/ivr.types.ts:171 |
mostPopularOption? | object | Most popular menu option | src/types/ivr.types.ts:174 |
mostPopularOption.menuId | string | - | src/types/ivr.types.ts:175 |
mostPopularOption.digit | string | - | src/types/ivr.types.ts:176 |
mostPopularOption.count | number | - | src/types/ivr.types.ts:177 |
peakCallers | number | Peak concurrent callers | src/types/ivr.types.ts:181 |
lastCallTime? | Date | Last call timestamp | src/types/ivr.types.ts:184 |
IVR
Defined in: src/types/ivr.types.ts:190
IVR definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique IVR identifier | src/types/ivr.types.ts:192 |
name | string | IVR name | src/types/ivr.types.ts:195 |
extension | string | IVR extension to dial | src/types/ivr.types.ts:198 |
description? | string | Description | src/types/ivr.types.ts:201 |
rootMenuId | string | Root menu ID | src/types/ivr.types.ts:204 |
menus | Map<string, IVRMenu> | All menus in this IVR | src/types/ivr.types.ts:207 |
callers | Map<string, IVRCaller> | Callers currently in this IVR | src/types/ivr.types.ts:210 |
stats | IVRStats | IVR statistics | src/types/ivr.types.ts:213 |
enabled | boolean | Whether IVR is enabled | src/types/ivr.types.ts:216 |
businessHours? | object | Business hours (if restricted) | src/types/ivr.types.ts:219 |
businessHours.start | string | - | src/types/ivr.types.ts:220 |
businessHours.end | string | - | src/types/ivr.types.ts:221 |
businessHours.days | number[] | - | src/types/ivr.types.ts:222 |
afterHoursDestination? | string | After-hours destination | src/types/ivr.types.ts:226 |
lastUpdated | Date | Last updated timestamp | src/types/ivr.types.ts:229 |
IVREvent
Defined in: src/types/ivr.types.ts:252
IVR event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | IVREventType | Event type | src/types/ivr.types.ts:254 |
ivrId | string | IVR ID | src/types/ivr.types.ts:257 |
callerId? | string | Caller ID (channel) | src/types/ivr.types.ts:260 |
menuId? | string | Menu ID (if applicable) | src/types/ivr.types.ts:263 |
digit? | string | DTMF digit (if applicable) | src/types/ivr.types.ts:266 |
destination? | string | Destination (if applicable) | src/types/ivr.types.ts:269 |
timestamp | Date | Event timestamp | src/types/ivr.types.ts:272 |
data? | Record<string, unknown> | Additional event data | src/types/ivr.types.ts:275 |
BreakoutResult
Defined in: src/types/ivr.types.ts:281
Breakout result
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
success | boolean | Whether breakout was successful | src/types/ivr.types.ts:283 |
channel | string | Caller channel | src/types/ivr.types.ts:286 |
destination? | string | Destination transferred to | src/types/ivr.types.ts:289 |
error? | string | Error message if failed | src/types/ivr.types.ts:292 |
UseAmiIVROptions
Defined in: src/types/ivr.types.ts:298
Options for the useAmiIVR composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
autoStart? | boolean | Auto-start monitoring on creation | src/types/ivr.types.ts:300 |
refreshInterval? | number | Refresh interval in milliseconds | src/types/ivr.types.ts:303 |
ivrIds? | string[] | IVR IDs to monitor (empty = all) | src/types/ivr.types.ts:306 |
onEvent? | (event) => void | Callback when IVR event occurs | src/types/ivr.types.ts:309 |
onCallerEntered? | (ivrId, caller) => void | Callback when caller enters IVR | src/types/ivr.types.ts:312 |
onCallerExited? | (ivrId, callerId, destination?) => void | Callback when caller exits IVR | src/types/ivr.types.ts:315 |
onTimeout? | (ivrId, caller) => void | Callback when caller times out | src/types/ivr.types.ts:318 |
onError? | (error) => void | Callback on error | src/types/ivr.types.ts:321 |
UseAmiIVRReturn
Defined in: src/types/ivr.types.ts:327
Return type for useAmiIVR composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
ivrs | Ref<Map<string, IVR>> | All monitored IVRs | src/types/ivr.types.ts:330 |
selectedIVR | Ref<IVR | null> | Currently selected IVR | src/types/ivr.types.ts:333 |
isMonitoring | Ref<boolean> | Whether monitoring is active | src/types/ivr.types.ts:336 |
isLoading | Ref<boolean> | Loading state | src/types/ivr.types.ts:339 |
error | Ref<string | null> | Error message if any | src/types/ivr.types.ts:342 |
ivrList | ComputedRef<IVR[]> | List of all IVRs | src/types/ivr.types.ts:346 |
totalCallers | ComputedRef<number> | Total callers across all IVRs | src/types/ivr.types.ts:349 |
allCallers | ComputedRef<IVRCaller[]> | All callers across all IVRs | src/types/ivr.types.ts:352 |
activeIVRs | ComputedRef<IVR[]> | IVRs with active callers | src/types/ivr.types.ts:355 |
disabledIVRs | ComputedRef<IVR[]> | Disabled IVRs | src/types/ivr.types.ts:358 |
startMonitoring | () => void | Start monitoring IVRs | src/types/ivr.types.ts:362 |
stopMonitoring | () => void | Stop monitoring IVRs | src/types/ivr.types.ts:365 |
refresh | () => Promise<void> | Refresh IVR data | src/types/ivr.types.ts:368 |
getIVR | (ivrId) => IVR | null | Get a specific IVR by ID | src/types/ivr.types.ts:371 |
selectIVR | (ivrId) => void | Select an IVR for detailed view | src/types/ivr.types.ts:374 |
getCallers | (ivrId) => IVRCaller[] | Get callers in a specific IVR | src/types/ivr.types.ts:377 |
getCaller | (ivrId, callerId) => IVRCaller | null | Get a specific caller | src/types/ivr.types.ts:380 |
breakoutCaller | (ivrId, callerId, destination) => Promise<BreakoutResult> | Breakout a caller from IVR to a destination | src/types/ivr.types.ts:383 |
breakoutAllCallers | (ivrId, destination) => Promise<BreakoutResult[]> | Breakout all callers from an IVR | src/types/ivr.types.ts:390 |
enableIVR | (ivrId) => Promise<boolean> | Enable an IVR | src/types/ivr.types.ts:393 |
disableIVR | (ivrId) => Promise<boolean> | Disable an IVR | src/types/ivr.types.ts:396 |
getStats | (ivrId) => IVRStats | null | Get IVR statistics | src/types/ivr.types.ts:399 |
clearStats | (ivrId) => void | Clear statistics for an IVR | src/types/ivr.types.ts:402 |
getMenuStats | (ivrId, menuId) => IVRMenuOption[] | null | Get menu option statistics | src/types/ivr.types.ts:405 |
trackDTMF | (channel, digit) => void | Track DTMF input for a caller | src/types/ivr.types.ts:408 |
JsSIPRemoteIdentity
Defined in: src/types/jssip.types.ts:52
Remote identity from JsSIP
Properties
| Property | Type | Defined in |
|---|---|---|
uri? | JsSIPUri | src/types/jssip.types.ts:53 |
display_name? | string | src/types/jssip.types.ts:54 |
JsSIPUri
Defined in: src/types/jssip.types.ts:60
JsSIP URI interface
Properties
| Property | Type | Defined in |
|---|---|---|
scheme? | string | src/types/jssip.types.ts:61 |
user? | string | src/types/jssip.types.ts:62 |
host? | string | src/types/jssip.types.ts:63 |
port? | number | src/types/jssip.types.ts:64 |
toString | () => string | src/types/jssip.types.ts:65 |
JsSIPAnswerOptions
Defined in: src/types/jssip.types.ts:71
Options for answering a call
Indexable
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
mediaConstraints? | MediaStreamConstraints | src/types/jssip.types.ts:72 |
rtcConfiguration? | RTCConfiguration | src/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
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
status_code? | number | src/types/jssip.types.ts:82 |
reason_phrase? | string | src/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
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
useUpdate? | boolean | src/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
| Property | Type | Defined in |
|---|---|---|
audio? | boolean | src/types/jssip.types.ts:101 |
video? | boolean | src/types/jssip.types.ts:102 |
JsSIPDTMFOptions
Defined in: src/types/jssip.types.ts:108
Options for DTMF sending
Indexable
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
duration? | number | src/types/jssip.types.ts:109 |
interToneGap? | number | src/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
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
extraHeaders? | string[] | src/types/jssip.types.ts:119 |
replaces? | string | src/types/jssip.types.ts:120 |
JsSIPSession
Defined in: src/types/jssip.types.ts:281
JsSIP Session interface (extended from RTCSession)
Indexable
[key: string]: unknownProperties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Session unique identifier | src/types/jssip.types.ts:283 |
connection? | RTCPeerConnection | RTCPeerConnection instance | src/types/jssip.types.ts:285 |
remote_identity? | JsSIPRemoteIdentity | Remote identity information | src/types/jssip.types.ts:287 |
direction? | "outgoing" | "incoming" | Session direction | src/types/jssip.types.ts:289 |
status? | number | Session status | src/types/jssip.types.ts:291 |
start_time? | Date | Start time | src/types/jssip.types.ts:293 |
end_time? | Date | End time | src/types/jssip.types.ts:295 |
answer | (options?) => void | Answer the session | src/types/jssip.types.ts:297 |
terminate | (options?) => void | Terminate the session | src/types/jssip.types.ts:299 |
hold | (options?) => void | Put session on hold | src/types/jssip.types.ts:301 |
unhold | (options?) => void | Resume from hold | src/types/jssip.types.ts:303 |
mute | (options?) => void | Mute audio/video | src/types/jssip.types.ts:305 |
unmute | (options?) => void | Unmute audio/video | src/types/jssip.types.ts:307 |
sendDTMF | (tone, options?) => void | Send DTMF tone | src/types/jssip.types.ts:309 |
refer | (target, options?) => void | Refer (transfer) the session | src/types/jssip.types.ts:311 |
on | (event, handler) => void | Add event listener | src/types/jssip.types.ts:313 |
off | (event, handler) => void | Remove event listener | src/types/jssip.types.ts:315 |
removeAllListeners | () => void | Remove all event listeners | src/types/jssip.types.ts:317 |
isOnHold | () => object | Check if session is on hold | src/types/jssip.types.ts:319 |
isMuted | () => object | Check if session is muted | src/types/jssip.types.ts:321 |
data? | Record<string, unknown> | Session data | src/types/jssip.types.ts:323 |
PresenceSubscriptionState
Defined in: src/types/jssip.types.ts:429
Stored presence subscription state
Properties
| Property | Type | Defined in |
|---|---|---|
uri | string | src/types/jssip.types.ts:430 |
options? | object | src/types/jssip.types.ts:431 |
options.expires? | number | src/types/jssip.types.ts:432 |
options.extraHeaders? | string[] | src/types/jssip.types.ts:433 |
active | boolean | src/types/jssip.types.ts:435 |
expires | number | src/types/jssip.types.ts:436 |
JsSIPSendMessageOptions
Defined in: src/types/jssip.types.ts:458
JsSIP send message options
Indexable
[key: string]: unknownProperties
| Property | Type | Defined in |
|---|---|---|
contentType? | string | src/types/jssip.types.ts:459 |
extraHeaders? | string[] | src/types/jssip.types.ts:460 |
eventHandlers? | object | src/types/jssip.types.ts:461 |
eventHandlers.onSuccessResponse? | (response) => void | src/types/jssip.types.ts:462 |
eventHandlers.onErrorResponse? | (response) => void | src/types/jssip.types.ts:463 |
eventHandlers.onTransportError? | () => void | src/types/jssip.types.ts:464 |
eventHandlers.onRequestTimeout? | () => void | src/types/jssip.types.ts:465 |
eventHandlers.onDialogError? | () => void | src/types/jssip.types.ts:466 |
LineConfig
Defined in: src/types/multiline.types.ts:27
Individual line configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lineNumber | number | Line number (1-indexed) | src/types/multiline.types.ts:29 |
label? | string | Custom label for this line | src/types/multiline.types.ts:32 |
enabled | boolean | Whether this line is enabled | src/types/multiline.types.ts:35 |
defaultAudio? | boolean | Default audio setting for calls on this line | src/types/multiline.types.ts:38 |
defaultVideo? | boolean | Default video setting for calls on this line | src/types/multiline.types.ts:41 |
ringtone? | string | Custom ringtone for this line | src/types/multiline.types.ts:44 |
autoAnswer? | boolean | Auto-answer settings for this line | src/types/multiline.types.ts:47 |
autoAnswerDelay? | number | Auto-answer delay in milliseconds | src/types/multiline.types.ts:50 |
LineState
Defined in: src/types/multiline.types.ts:56
Line state representing current call information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lineNumber | number | Line number (1-indexed) | src/types/multiline.types.ts:58 |
status | LineStatus | Current status of the line | src/types/multiline.types.ts:61 |
callId | string | null | Call ID if there's an active call | src/types/multiline.types.ts:64 |
callState | CallState | null | Call state if there's an active call | src/types/multiline.types.ts:67 |
direction | CallDirection | null | Call direction | src/types/multiline.types.ts:70 |
remoteUri | string | null | Remote party URI | src/types/multiline.types.ts:73 |
remoteDisplayName | string | null | Remote party display name | src/types/multiline.types.ts:76 |
isOnHold | boolean | Whether this line is currently on hold | src/types/multiline.types.ts:79 |
isMuted | boolean | Whether this line is currently muted | src/types/multiline.types.ts:82 |
hasVideo | boolean | Whether this line has video | src/types/multiline.types.ts:85 |
timing | CallTimingInfo | null | Call timing information | src/types/multiline.types.ts:88 |
duration | number | Call duration in seconds | src/types/multiline.types.ts:91 |
error | string | null | Error message if status is 'error' | src/types/multiline.types.ts:94 |
config | LineConfig | Line configuration | src/types/multiline.types.ts:97 |
LineCallOptions
Defined in: src/types/multiline.types.ts:103
Options for making a call on a specific line
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lineNumber? | number | Target line number (auto-selects if not specified) | src/types/multiline.types.ts:105 |
audio? | boolean | Enable audio | src/types/multiline.types.ts:108 |
video? | boolean | Enable video | src/types/multiline.types.ts:111 |
extraHeaders? | string[] | Custom SIP headers | src/types/multiline.types.ts:114 |
data? | Record<string, unknown> | Custom call data | src/types/multiline.types.ts:117 |
LineAnswerOptions
Defined in: src/types/multiline.types.ts:123
Options for answering a call on a specific line
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
audio? | boolean | Enable audio | src/types/multiline.types.ts:125 |
video? | boolean | Enable video | src/types/multiline.types.ts:128 |
extraHeaders? | string[] | Custom SIP headers | src/types/multiline.types.ts:131 |
LineTransferOptions
Defined in: src/types/multiline.types.ts:137
Options for transferring a call
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
fromLine | number | Source line number | src/types/multiline.types.ts:139 |
target | string | number | Target for transfer (can be another line or external target) | src/types/multiline.types.ts:142 |
attended? | boolean | Whether to perform attended transfer | src/types/multiline.types.ts:145 |
extraHeaders? | string[] | Custom SIP headers | src/types/multiline.types.ts:148 |
LineConferenceOptions
Defined in: src/types/multiline.types.ts:154
Options for conference between lines
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lines | number[] | Lines to include in conference | src/types/multiline.types.ts:156 |
allowAdd? | boolean | Whether to allow adding more participants later | src/types/multiline.types.ts:159 |
LineEvent
Defined in: src/types/multiline.types.ts:165
Line event types
Extended by
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | string | Event type | src/types/multiline.types.ts:167 |
lineNumber | number | Line number | src/types/multiline.types.ts:170 |
timestamp | Date | Timestamp | src/types/multiline.types.ts:173 |
previousState? | LineState | Previous state | src/types/multiline.types.ts:176 |
currentState | LineState | Current state | src/types/multiline.types.ts:179 |
LineStateChangeEvent
Defined in: src/types/multiline.types.ts:185
Line state change event
Extends
Properties
| Property | Type | Description | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
lineNumber | number | Line number | - | LineEvent.lineNumber | src/types/multiline.types.ts:170 |
timestamp | Date | Timestamp | - | LineEvent.timestamp | src/types/multiline.types.ts:173 |
previousState? | LineState | Previous state | - | LineEvent.previousState | src/types/multiline.types.ts:176 |
currentState | LineState | Current state | - | LineEvent.currentState | src/types/multiline.types.ts:179 |
type | "stateChange" | Event type | LineEvent.type | - | src/types/multiline.types.ts:186 |
LineIncomingCallEvent
Defined in: src/types/multiline.types.ts:192
Line incoming call event
Extends
Properties
| Property | Type | Description | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
lineNumber | number | Line number | - | LineEvent.lineNumber | src/types/multiline.types.ts:170 |
timestamp | Date | Timestamp | - | LineEvent.timestamp | src/types/multiline.types.ts:173 |
previousState? | LineState | Previous state | - | LineEvent.previousState | src/types/multiline.types.ts:176 |
currentState | LineState | Current state | - | LineEvent.currentState | src/types/multiline.types.ts:179 |
type | "incomingCall" | Event type | LineEvent.type | - | src/types/multiline.types.ts:193 |
remoteUri | string | Remote party URI | - | - | src/types/multiline.types.ts:196 |
remoteDisplayName? | string | Remote party display name | - | - | src/types/multiline.types.ts:199 |
LineCallEndedEvent
Defined in: src/types/multiline.types.ts:205
Line call ended event
Extends
Properties
| Property | Type | Description | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
lineNumber | number | Line number | - | LineEvent.lineNumber | src/types/multiline.types.ts:170 |
timestamp | Date | Timestamp | - | LineEvent.timestamp | src/types/multiline.types.ts:173 |
previousState? | LineState | Previous state | - | LineEvent.previousState | src/types/multiline.types.ts:176 |
currentState | LineState | Current state | - | LineEvent.currentState | src/types/multiline.types.ts:179 |
type | "callEnded" | Event type | LineEvent.type | - | src/types/multiline.types.ts:206 |
cause | TerminationCause | Termination cause | - | - | src/types/multiline.types.ts:209 |
duration | number | Call duration in seconds | - | - | src/types/multiline.types.ts:212 |
LineSelectionChangeEvent
Defined in: src/types/multiline.types.ts:218
Line selection change event
Extends
Properties
| Property | Type | Description | Overrides | Inherited from | Defined in |
|---|---|---|---|---|---|
lineNumber | number | Line number | - | LineEvent.lineNumber | src/types/multiline.types.ts:170 |
timestamp | Date | Timestamp | - | LineEvent.timestamp | src/types/multiline.types.ts:173 |
previousState? | LineState | Previous state | - | LineEvent.previousState | src/types/multiline.types.ts:176 |
currentState | LineState | Current state | - | LineEvent.currentState | src/types/multiline.types.ts:179 |
type | "selectionChange" | Event type | LineEvent.type | - | src/types/multiline.types.ts:219 |
previousLine | number | null | Previous selected line | - | - | src/types/multiline.types.ts:222 |
newLine | number | New selected line | - | - | src/types/multiline.types.ts:225 |
UseSipSecondLineOptions
Defined in: src/types/multiline.types.ts:231
Options for useSipSecondLine composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lineCount? | number | Number of lines to support (default: 2) | src/types/multiline.types.ts:233 |
maxConcurrentCalls? | number | Maximum concurrent calls allowed (default: lineCount) | src/types/multiline.types.ts:236 |
autoHoldOnNewCall? | boolean | Auto-hold other lines when making/answering call (default: true) | src/types/multiline.types.ts:239 |
autoSelectLine? | boolean | Auto-select next available line for incoming calls (default: true) | src/types/multiline.types.ts:242 |
lineConfigs? | Partial<LineConfig>[] | Line configurations | src/types/multiline.types.ts:245 |
onLineStateChange? | (event) => void | Callback when line state changes | src/types/multiline.types.ts:248 |
onLineIncomingCall? | (event) => void | Callback when incoming call on a line | src/types/multiline.types.ts:251 |
onLineCallEnded? | (event) => void | Callback when call ends on a line | src/types/multiline.types.ts:254 |
onSelectionChange? | (event) => void | Callback when selected line changes | src/types/multiline.types.ts:257 |
UseSipSecondLineReturn
Defined in: src/types/multiline.types.ts:263
Return type for useSipSecondLine composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
lines | Ref<LineState[]> | Array of all line states | src/types/multiline.types.ts:269 |
selectedLine | Ref<number> | Currently selected/active line number | src/types/multiline.types.ts:272 |
selectedLineState | ComputedRef<LineState | null> | Currently selected line state | src/types/multiline.types.ts:275 |
activeCallCount | ComputedRef<number> | Number of active calls across all lines | src/types/multiline.types.ts:278 |
incomingCallCount | ComputedRef<number> | Number of lines with incoming calls | src/types/multiline.types.ts:281 |
allLinesBusy | ComputedRef<boolean> | Whether all lines are busy | src/types/multiline.types.ts:284 |
availableLines | ComputedRef<LineState[]> | Available (idle) lines | src/types/multiline.types.ts:287 |
activeLines | ComputedRef<LineState[]> | Lines with active calls | src/types/multiline.types.ts:290 |
ringingLines | ComputedRef<LineState[]> | Lines with incoming calls (ringing) | src/types/multiline.types.ts:293 |
heldLines | ComputedRef<LineState[]> | Lines on hold | src/types/multiline.types.ts:296 |
isLoading | Ref<boolean> | Loading state | src/types/multiline.types.ts:299 |
error | Ref<string | null> | Error message | src/types/multiline.types.ts:302 |
selectLine | (lineNumber) => void | Select a specific line | src/types/multiline.types.ts:309 |
selectNextAvailable | () => number | null | Select next available line | src/types/multiline.types.ts:312 |
selectRingingLine | () => number | null | Select line with incoming call | src/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 line | src/types/multiline.types.ts:325 |
rejectCall | (lineNumber, statusCode?) => Promise<void> | Reject incoming call on a specific line | src/types/multiline.types.ts:328 |
hangupCall | (lineNumber) => Promise<void> | Hangup call on a specific line | src/types/multiline.types.ts:331 |
hangupAll | () => Promise<void> | Hangup all calls | src/types/multiline.types.ts:334 |
holdLine | (lineNumber) => Promise<void> | Put a line on hold | src/types/multiline.types.ts:341 |
unholdLine | (lineNumber) => Promise<void> | Resume a held line | src/types/multiline.types.ts:344 |
toggleHoldLine | (lineNumber) => Promise<void> | Toggle hold state on a line | src/types/multiline.types.ts:347 |
muteLine | (lineNumber) => void | Mute a line | src/types/multiline.types.ts:350 |
unmuteLine | (lineNumber) => void | Unmute a line | src/types/multiline.types.ts:353 |
toggleMuteLine | (lineNumber) => void | Toggle mute on a line | src/types/multiline.types.ts:356 |
sendDTMF | (lineNumber, tone) => Promise<void> | Send DTMF on a line | src/types/multiline.types.ts:359 |
transferCall | (options) => Promise<void> | Transfer call from one line to another or external target | src/types/multiline.types.ts:366 |
swapLines | (line1, line2) => Promise<void> | Swap between two active/held lines | src/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 line | src/types/multiline.types.ts:375 |
getLineState | (lineNumber) => LineState | null | Get line state by number | src/types/multiline.types.ts:382 |
getLineByCallId | (callId) => LineState | null | Get line by call ID | src/types/multiline.types.ts:385 |
isLineAvailable | (lineNumber) => boolean | Check if a line is available | src/types/multiline.types.ts:388 |
getLineStats | (lineNumber) => Promise<CallStatistics | null> | Get call statistics for a line | src/types/multiline.types.ts:391 |
configureLine | (lineNumber, config) => void | Configure a specific line | src/types/multiline.types.ts:394 |
resetLine | (lineNumber) => void | Reset a line to idle state | src/types/multiline.types.ts:397 |
resetAllLines | () => void | Reset all lines | src/types/multiline.types.ts:400 |
PageGroup
Defined in: src/types/paging.types.ts:25
Page group configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique group identifier | src/types/paging.types.ts:27 |
name | string | Group name for display | src/types/paging.types.ts:30 |
extensions | string[] | Extensions included in this group | src/types/paging.types.ts:33 |
mode | PagingMode | Default paging mode for this group | src/types/paging.types.ts:36 |
enabled | boolean | Whether group is enabled | src/types/paging.types.ts:39 |
description? | string | Optional description | src/types/paging.types.ts:42 |
callerId? | string | Caller ID to display when paging this group | src/types/paging.types.ts:45 |
timeout? | number | Custom timeout in seconds | src/types/paging.types.ts:48 |
PagingSession
Defined in: src/types/paging.types.ts:54
Active paging session
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
sessionId | string | Unique session ID | src/types/paging.types.ts:56 |
target | string | Target extension or group ID | src/types/paging.types.ts:59 |
isGroup | boolean | Whether target is a group | src/types/paging.types.ts:62 |
mode | PagingMode | Paging mode | src/types/paging.types.ts:65 |
status | PagingStatus | Current status | src/types/paging.types.ts:68 |
channel? | string | Channel identifier from AMI | src/types/paging.types.ts:71 |
startTime | Date | Start timestamp | src/types/paging.types.ts:74 |
endTime? | Date | End timestamp if completed | src/types/paging.types.ts:77 |
duration | number | Duration in seconds | src/types/paging.types.ts:80 |
error? | string | Error message if status is error | src/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
| Property | Type | Description | Defined in |
|---|---|---|---|
mode? | PagingMode | Paging mode (default: simplex) | src/types/paging.types.ts:108 |
callerId? | string | Caller ID to display | src/types/paging.types.ts:111 |
timeout? | number | Timeout in seconds (default: 30) | src/types/paging.types.ts:114 |
context? | string | Context for paging (default: from config) | src/types/paging.types.ts:117 |
variables? | Record<string, string> | Channel variables | src/types/paging.types.ts:120 |
autoAnswer? | boolean | Whether 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
| Property | Type | Description | Inherited from | Defined in |
|---|---|---|---|---|
mode? | PagingMode | Paging mode (default: simplex) | PageOptions.mode | src/types/paging.types.ts:108 |
callerId? | string | Caller ID to display | PageOptions.callerId | src/types/paging.types.ts:111 |
timeout? | number | Timeout in seconds (default: 30) | PageOptions.timeout | src/types/paging.types.ts:114 |
context? | string | Context for paging (default: from config) | PageOptions.context | src/types/paging.types.ts:117 |
variables? | Record<string, string> | Channel variables | PageOptions.variables | src/types/paging.types.ts:120 |
autoAnswer? | boolean | Whether to auto-answer (for supported endpoints) | PageOptions.autoAnswer | src/types/paging.types.ts:123 |
filterExtensions? | string[] | Only page specific extensions from the group | - | src/types/paging.types.ts:131 |
maxChannels? | number | Maximum concurrent calls in group page | - | src/types/paging.types.ts:134 |
skipBusy? | boolean | Skip busy extensions | - | src/types/paging.types.ts:137 |
UseAmiPagingOptions
Defined in: src/types/paging.types.ts:143
Options for useAmiPaging composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
defaultMode? | PagingMode | Default paging mode | src/types/paging.types.ts:145 |
defaultTimeout? | number | Default timeout in seconds | src/types/paging.types.ts:148 |
defaultContext? | string | Default context for paging | src/types/paging.types.ts:151 |
defaultCallerId? | string | Default caller ID | src/types/paging.types.ts:154 |
pageGroups? | PageGroup[] | Initial page groups | src/types/paging.types.ts:157 |
autoAnswerHeader? | string | Auto-answer header for SIP (e.g., 'Call-Info: answer-after=0') | src/types/paging.types.ts:160 |
onPageStart? | (session) => void | Callback when paging starts | src/types/paging.types.ts:163 |
onPageConnect? | (session) => void | Callback when paging connects (duplex mode) | src/types/paging.types.ts:166 |
onPageEnd? | (session) => void | Callback when paging ends | src/types/paging.types.ts:169 |
onError? | (error, session?) => void | Callback on error | src/types/paging.types.ts:172 |
UseAmiPagingReturn
Defined in: src/types/paging.types.ts:178
Return type for useAmiPaging composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
status | Ref<PagingStatus> | Current paging status | src/types/paging.types.ts:184 |
activeSession | Ref<PagingSession | null> | Active paging session | src/types/paging.types.ts:187 |
pageGroups | Ref<PageGroup[]> | Page groups | src/types/paging.types.ts:190 |
isLoading | Ref<boolean> | Loading state | src/types/paging.types.ts:193 |
error | Ref<string | null> | Error message | src/types/paging.types.ts:196 |
history | Ref<PagingSession[]> | Paging history | src/types/paging.types.ts:199 |
isPaging | ComputedRef<boolean> | Whether currently paging | src/types/paging.types.ts:206 |
isConnected | ComputedRef<boolean> | Whether connected (duplex mode) | src/types/paging.types.ts:209 |
currentDuration | ComputedRef<number> | Current session duration in seconds | src/types/paging.types.ts:212 |
enabledGroups | ComputedRef<PageGroup[]> | Enabled page groups | src/types/paging.types.ts:215 |
groupCount | ComputedRef<number> | Group count | src/types/paging.types.ts:218 |
pageExtension | (extension, options?) => Promise<PagingSession> | Page a single extension | src/types/paging.types.ts:225 |
pageGroup | (groupId, options?) => Promise<PagingSession> | Page a group | src/types/paging.types.ts:228 |
pageExtensions | (extensions, options?) => Promise<PagingSession> | Page multiple extensions directly | src/types/paging.types.ts:231 |
endPage | () => Promise<void> | End active paging session | src/types/paging.types.ts:234 |
togglePage | (target, isGroup?, options?) => Promise<void> | Toggle page (start/stop) | src/types/paging.types.ts:237 |
addGroup | (group) => void | Add a page group | src/types/paging.types.ts:244 |
updateGroup | (groupId, updates) => void | Update a page group | src/types/paging.types.ts:247 |
removeGroup | (groupId) => void | Remove a page group | src/types/paging.types.ts:250 |
getGroup | (groupId) => PageGroup | undefined | Get a page group by ID | src/types/paging.types.ts:253 |
toggleGroupEnabled | (groupId) => void | Enable/disable a group | src/types/paging.types.ts:256 |
clearHistory | () => void | Clear paging history | src/types/paging.types.ts:263 |
getHistoryForTarget | (target) => PagingSession[] | Get history for specific target | src/types/paging.types.ts:266 |
ParkedCall
Defined in: src/types/parking.types.ts:16
Parked call information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
parkingSpace | number | Parking space number | src/types/parking.types.ts:18 |
parkingLot | string | Parking lot name | src/types/parking.types.ts:20 |
channel | string | Parked channel | src/types/parking.types.ts:22 |
uniqueId | string | Unique ID | src/types/parking.types.ts:24 |
linkedId | string | Linked ID | src/types/parking.types.ts:26 |
callerIdNum | string | Caller ID number | src/types/parking.types.ts:28 |
callerIdName | string | Caller ID name | src/types/parking.types.ts:30 |
connectedLineNum | string | Connected line number | src/types/parking.types.ts:32 |
connectedLineName | string | Connected line name | src/types/parking.types.ts:34 |
parkerChannel? | string | Parker channel (who parked the call) | src/types/parking.types.ts:36 |
parkerDialString? | string | Parker dial string | src/types/parking.types.ts:38 |
parkedTime | Date | Time the call was parked | src/types/parking.types.ts:40 |
timeout | number | Timeout in seconds | src/types/parking.types.ts:42 |
timeRemaining | number | Time remaining until timeout (seconds) | src/types/parking.types.ts:44 |
serverId? | number | Server ID for multi-server setups | src/types/parking.types.ts:46 |
ParkingLot
Defined in: src/types/parking.types.ts:52
Parking lot configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Lot name | src/types/parking.types.ts:54 |
startSpace | number | Starting space number | src/types/parking.types.ts:56 |
endSpace | number | Ending space number | src/types/parking.types.ts:58 |
timeout | number | Default timeout in seconds | src/types/parking.types.ts:60 |
parkedCalls | number | Number of parked calls | src/types/parking.types.ts:62 |
availableSpaces | number | Available spaces | src/types/parking.types.ts:64 |
totalSpaces | number | Total spaces | src/types/parking.types.ts:66 |
serverId? | number | Server ID | src/types/parking.types.ts:68 |
ParkingLotStatus
Defined in: src/types/parking.types.ts:74
Parking lot status (summary)
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Lot name | src/types/parking.types.ts:76 |
calls | ParkedCall[] | List of parked calls | src/types/parking.types.ts:78 |
occupied | number | Number of occupied spaces | src/types/parking.types.ts:80 |
capacity | number | Total capacity | src/types/parking.types.ts:82 |
lastUpdated | Date | Last updated | src/types/parking.types.ts:84 |
serverId? | number | Server ID | src/types/parking.types.ts:86 |
UseAmiParkingOptions
Defined in: src/types/parking.types.ts:242
Options for useAmiParking composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pollInterval? | number | Polling interval for parking status in ms (0 = events only) | src/types/parking.types.ts:244 |
useEvents? | boolean | Use real-time parking events | src/types/parking.types.ts:246 |
autoRefresh? | boolean | Auto-refresh parking lots on reconnect | src/types/parking.types.ts:248 |
defaultParkingLot? | string | Default parking lot name | src/types/parking.types.ts:250 |
parkingLotFilter? | (lot) => boolean | Parking lot filter function | src/types/parking.types.ts:252 |
parkedCallFilter? | (call) => boolean | Parked call filter function | src/types/parking.types.ts:254 |
onCallParked? | (call) => void | Parked call callback | src/types/parking.types.ts:256 |
onCallRetrieved? | (call, retrieverChannel) => void | Call retrieved callback | src/types/parking.types.ts:258 |
onCallTimeout? | (call) => void | Call timeout callback | src/types/parking.types.ts:260 |
onCallGiveUp? | (call) => void | Call give-up callback (caller hung up) | src/types/parking.types.ts:262 |
transformParkedCall? | (call) => ParkedCall | Transform parked call function | src/types/parking.types.ts:264 |
PluginManager
Defined in: src/types/plugin.types.ts:292
Plugin manager interface
Methods
register()
register<TConfig>(plugin, config?): Promise<void>;Defined in: src/types/plugin.types.ts:294
Register a plugin
Type Parameters
| Type Parameter | Default type |
|---|---|
TConfig extends PluginConfig | PluginConfig |
Parameters
| Parameter | Type |
|---|---|
plugin | Plugin<TConfig> |
config? | TConfig |
Returns
Promise<void>
unregister()
unregister(pluginName): Promise<void>;Defined in: src/types/plugin.types.ts:300
Unregister a plugin
Parameters
| Parameter | Type |
|---|---|
pluginName | string |
Returns
Promise<void>
get()
get(pluginName):
| PluginEntry<PluginConfig>
| undefined;Defined in: src/types/plugin.types.ts:303
Get a registered plugin
Parameters
| Parameter | Type |
|---|---|
pluginName | string |
Returns
| PluginEntry<PluginConfig> | undefined
has()
has(pluginName): boolean;Defined in: src/types/plugin.types.ts:306
Check if a plugin is registered
Parameters
| Parameter | Type |
|---|---|
pluginName | string |
Returns
boolean
getAll()
getAll(): Map<string, PluginEntry<PluginConfig>>;Defined in: src/types/plugin.types.ts:309
Get all registered plugins
Returns
Map<string, PluginEntry<PluginConfig>>
updateConfig()
updateConfig<TConfig>(pluginName, config): Promise<void>;Defined in: src/types/plugin.types.ts:312
Update a plugin's configuration
Type Parameters
| Type Parameter | Default type |
|---|---|
TConfig extends PluginConfig | PluginConfig |
Parameters
| Parameter | Type |
|---|---|
pluginName | string |
config | TConfig |
Returns
Promise<void>
destroy()
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
| Property | Type | Description | Defined in |
|---|---|---|---|
format? | AmiRecordingFormat | Recording file format (default: 'wav') | src/types/recording.types.ts:45 |
filename? | string | File path/name (without extension). If not provided, auto-generated | src/types/recording.types.ts:48 |
directory? | string | Directory to store recordings (default: Asterisk's monitor directory) | src/types/recording.types.ts:51 |
mixMode? | AmiRecordingMixMode | Mix mode - which audio to record (default: 'both') | src/types/recording.types.ts:54 |
append? | boolean | Whether to append to existing file (default: false) | src/types/recording.types.ts:57 |
postCommand? | string | Post-recording command to execute | src/types/recording.types.ts:60 |
readVolume? | number | Volume adjustment for read direction (-4 to 4) | src/types/recording.types.ts:63 |
writeVolume? | number | Volume adjustment for write direction (-4 to 4) | src/types/recording.types.ts:66 |
toggleDtmf? | string | DTMF to toggle recording on/off (e.g., '#') | src/types/recording.types.ts:69 |
pauseDtmf? | string | DTMF to pause/resume recording (e.g., '*') | src/types/recording.types.ts:72 |
customOptions? | string | Custom MixMonitor options string | src/types/recording.types.ts:75 |
AmiRecordingSession
Defined in: src/types/recording.types.ts:81
Active AMI recording session information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique recording ID | src/types/recording.types.ts:83 |
channel | string | Channel being recorded | src/types/recording.types.ts:86 |
filePath | string | Recording file path (full path with extension) | src/types/recording.types.ts:89 |
filename | string | Recording filename (without path) | src/types/recording.types.ts:92 |
state | AmiRecordingState | Current recording state | src/types/recording.types.ts:95 |
startedAt | Date | Recording start time | src/types/recording.types.ts:98 |
pausedAt? | Date | Recording pause time (if paused) | src/types/recording.types.ts:101 |
totalPauseDuration | number | Total pause duration in milliseconds | src/types/recording.types.ts:104 |
duration | number | Recording duration in seconds (excluding pauses) | src/types/recording.types.ts:107 |
format | AmiRecordingFormat | Recording format | src/types/recording.types.ts:110 |
mixMode | AmiRecordingMixMode | Mix mode | src/types/recording.types.ts:113 |
fileSize? | number | File size in bytes (if available) | src/types/recording.types.ts:116 |
serverId? | number | AMI server ID (for multi-server setups) | src/types/recording.types.ts:119 |
callUniqueId? | string | Associated call unique ID | src/types/recording.types.ts:122 |
options? | AmiRecordingOptions | Recording options used | src/types/recording.types.ts:125 |
AmiRecordingEvent
Defined in: src/types/recording.types.ts:236
AMI Recording event payload
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | AmiRecordingEventType | Event type | src/types/recording.types.ts:238 |
recording | AmiRecordingSession | Recording session | src/types/recording.types.ts:241 |
error? | string | Error message (for 'failed' events) | src/types/recording.types.ts:244 |
timestamp | Date | Event timestamp | src/types/recording.types.ts:247 |
AmiRecordingStats
Defined in: src/types/recording.types.ts:253
AMI Recording statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalRecordings | number | Total number of recordings | src/types/recording.types.ts:255 |
totalDuration | number | Total duration of all recordings in seconds | src/types/recording.types.ts:258 |
totalSize | number | Total file size in bytes | src/types/recording.types.ts:261 |
averageDuration | number | Average recording duration in seconds | src/types/recording.types.ts:264 |
byFormat | Record<AmiRecordingFormat, number> | Recordings by format | src/types/recording.types.ts:267 |
recordingsToday | number | Recordings today | src/types/recording.types.ts:270 |
durationToday | number | Duration today in seconds | src/types/recording.types.ts:273 |
UseAmiRecordingOptions
Defined in: src/types/recording.types.ts:279
Options for useAmiRecording composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
defaultFormat? | AmiRecordingFormat | Default recording format (default: 'wav') | src/types/recording.types.ts:281 |
defaultMixMode? | AmiRecordingMixMode | Default mix mode (default: 'both') | src/types/recording.types.ts:284 |
defaultDirectory? | string | Default recording directory | src/types/recording.types.ts:287 |
autoRecord? | boolean | Auto-start recording on call connect | src/types/recording.types.ts:290 |
autoStop? | boolean | Auto-stop recording on call disconnect | src/types/recording.types.ts:293 |
trackDuration? | boolean | Enable real-time duration updates | src/types/recording.types.ts:296 |
durationInterval? | number | Duration update interval in ms (default: 1000) | src/types/recording.types.ts:299 |
onRecordingStart? | (recording) => void | Callback when recording starts | src/types/recording.types.ts:302 |
onRecordingStop? | (recording) => void | Callback when recording stops | src/types/recording.types.ts:305 |
onRecordingPause? | (recording) => void | Callback when recording is paused | src/types/recording.types.ts:308 |
onRecordingResume? | (recording) => void | Callback when recording is resumed | src/types/recording.types.ts:311 |
onRecordingError? | (recording, error) => void | Callback when recording fails | src/types/recording.types.ts:314 |
transformRecording? | (recording) => AmiRecordingSession | Transform recording data | src/types/recording.types.ts:317 |
UseAmiRecordingReturn
Defined in: src/types/recording.types.ts:323
Return type for useAmiRecording composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
recordings | Ref<Map<string, AmiRecordingSession>, Map<string, AmiRecordingSession>> | Map of active recording sessions by channel | src/types/recording.types.ts:326 |
currentRecording | ComputedRef<AmiRecordingSession | null> | Currently selected/focused recording | src/types/recording.types.ts:329 |
isRecording | ComputedRef<boolean> | Whether any recording is active | src/types/recording.types.ts:332 |
activeCount | ComputedRef<number> | Total number of active recordings | src/types/recording.types.ts:335 |
isLoading | Ref<boolean, boolean> | Loading state | src/types/recording.types.ts:338 |
error | Ref<string | null, string | null> | Error message | src/types/recording.types.ts:341 |
startRecording | (channel, options?) => Promise<AmiRecordingSession> | Start recording a channel | src/types/recording.types.ts:345 |
stopRecording | (channel) => Promise<void> | Stop recording a channel | src/types/recording.types.ts:348 |
pauseRecording | (channel) => Promise<void> | Pause recording on a channel | src/types/recording.types.ts:351 |
resumeRecording | (channel) => Promise<void> | Resume recording on a channel | src/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 state | src/types/recording.types.ts:360 |
getRecording | (channel) => AmiRecordingSession | undefined | Get recording session for a channel | src/types/recording.types.ts:363 |
isChannelRecording | (channel) => boolean | Check if channel is being recorded | src/types/recording.types.ts:366 |
onRecordingEvent | (callback) => () => void | Listen for recording events | src/types/recording.types.ts:369 |
getStats | () => AmiRecordingStats | Get recording statistics | src/types/recording.types.ts:372 |
clearRecordings | () => void | Clear all recordings state | src/types/recording.types.ts:375 |
generateFilename | (channel, options?) => string | Generate recording filename | src/types/recording.types.ts:378 |
RingGroupMember
Defined in: src/types/ringgroup.types.ts:48
Ring group member definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
extension | string | Member extension or interface (e.g., "1001" or "PJSIP/1001") | src/types/ringgroup.types.ts:50 |
interface | string | Full interface string (e.g., "PJSIP/1001") | src/types/ringgroup.types.ts:53 |
name | string | Display name for the member | src/types/ringgroup.types.ts:56 |
status | RingGroupMemberStatus | Current status | src/types/ringgroup.types.ts:59 |
priority | number | Priority/order in the ring group (lower = higher priority) | src/types/ringgroup.types.ts:62 |
enabled | boolean | Whether member is currently enabled in the group | src/types/ringgroup.types.ts:65 |
addedAt? | Date | Time member was added to the ring group | src/types/ringgroup.types.ts:68 |
lastStatusChange? | Date | Last time member's status changed | src/types/ringgroup.types.ts:71 |
callsAnswered | number | Number of calls answered in this ring group | src/types/ringgroup.types.ts:74 |
callsMissed | number | Number of calls missed/not answered | src/types/ringgroup.types.ts:77 |
RingGroupStats
Defined in: src/types/ringgroup.types.ts:83
Ring group call statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
totalCalls | number | Total calls to this ring group | src/types/ringgroup.types.ts:85 |
answeredCalls | number | Calls answered by any member | src/types/ringgroup.types.ts:88 |
unansweredCalls | number | Calls that went unanswered/abandoned | src/types/ringgroup.types.ts:91 |
timedOutCalls | number | Calls that timed out | src/types/ringgroup.types.ts:94 |
avgRingTime | number | Average ring time before answer (seconds) | src/types/ringgroup.types.ts:97 |
avgTalkTime | number | Average talk time (seconds) | src/types/ringgroup.types.ts:100 |
currentCalls | number | Current calls in queue/ringing | src/types/ringgroup.types.ts:103 |
serviceLevel | number | Service level percentage | src/types/ringgroup.types.ts:106 |
lastCallTime? | Date | Last call timestamp | src/types/ringgroup.types.ts:109 |
RingGroup
Defined in: src/types/ringgroup.types.ts:115
Ring group definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique ring group identifier/number | src/types/ringgroup.types.ts:117 |
name | string | Ring group name/description | src/types/ringgroup.types.ts:120 |
extension | string | Ring group extension to dial | src/types/ringgroup.types.ts:123 |
strategy | RingStrategy | Ring strategy | src/types/ringgroup.types.ts:126 |
ringTimeout | number | Ring timeout per member (seconds) | src/types/ringgroup.types.ts:129 |
totalTimeout | number | Total ring timeout before failover (seconds) | src/types/ringgroup.types.ts:132 |
state | RingGroupState | Current state | src/types/ringgroup.types.ts:135 |
enabled | boolean | Whether ring group is enabled | src/types/ringgroup.types.ts:138 |
members | RingGroupMember[] | Members in this ring group | src/types/ringgroup.types.ts:141 |
stats | RingGroupStats | Ring group statistics | src/types/ringgroup.types.ts:144 |
failoverDestination? | string | Failover destination if no answer | src/types/ringgroup.types.ts:147 |
cidNamePrefix? | string | CID name prefix for calls to this group | src/types/ringgroup.types.ts:150 |
skipBusy | boolean | Whether to skip busy members | src/types/ringgroup.types.ts:153 |
confirmAnswer | boolean | Whether to confirm answer (requires digit press) | src/types/ringgroup.types.ts:156 |
announcement? | string | Announcement to play to caller | src/types/ringgroup.types.ts:159 |
musicOnHold? | string | Music on hold class | src/types/ringgroup.types.ts:162 |
lastUpdated | Date | Last updated timestamp | src/types/ringgroup.types.ts:165 |
RingGroupEvent
Defined in: src/types/ringgroup.types.ts:188
Ring group event
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | RingGroupEventType | Event type | src/types/ringgroup.types.ts:190 |
groupId | string | Ring group ID | src/types/ringgroup.types.ts:193 |
member? | string | Member extension (if applicable) | src/types/ringgroup.types.ts:196 |
callerId? | string | Caller ID | src/types/ringgroup.types.ts:199 |
channel? | string | Channel identifier | src/types/ringgroup.types.ts:202 |
timestamp | Date | Event timestamp | src/types/ringgroup.types.ts:205 |
data? | Record<string, unknown> | Additional event data | src/types/ringgroup.types.ts:208 |
UseAmiRingGroupsOptions
Defined in: src/types/ringgroup.types.ts:259
Options for the useAmiRingGroups composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
autoStart? | boolean | Auto-start monitoring on creation | src/types/ringgroup.types.ts:261 |
refreshInterval? | number | Refresh interval in milliseconds | src/types/ringgroup.types.ts:264 |
groupIds? | string[] | Ring group IDs to monitor (empty = all) | src/types/ringgroup.types.ts:267 |
onEvent? | (event) => void | Callback when ring group event occurs | src/types/ringgroup.types.ts:270 |
onStatsUpdate? | (groupId, stats) => void | Callback when ring group stats update | src/types/ringgroup.types.ts:273 |
onMemberStatusChange? | (groupId, member, status) => void | Callback when member status changes | src/types/ringgroup.types.ts:276 |
onError? | (error) => void | Callback on error | src/types/ringgroup.types.ts:283 |
AddMemberResult
Defined in: src/types/ringgroup.types.ts:289
Result of adding a member to a ring group
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/ringgroup.types.ts:290 |
groupId | string | src/types/ringgroup.types.ts:291 |
member | string | src/types/ringgroup.types.ts:292 |
error? | string | src/types/ringgroup.types.ts:293 |
RemoveMemberResult
Defined in: src/types/ringgroup.types.ts:299
Result of removing a member from a ring group
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/ringgroup.types.ts:300 |
groupId | string | src/types/ringgroup.types.ts:301 |
member | string | src/types/ringgroup.types.ts:302 |
error? | string | src/types/ringgroup.types.ts:303 |
UpdateStrategyResult
Defined in: src/types/ringgroup.types.ts:309
Result of updating ring group strategy
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/ringgroup.types.ts:310 |
groupId | string | src/types/ringgroup.types.ts:311 |
strategy | RingStrategy | src/types/ringgroup.types.ts:312 |
error? | string | src/types/ringgroup.types.ts:313 |
UseAmiRingGroupsReturn
Defined in: src/types/ringgroup.types.ts:319
Return type for useAmiRingGroups composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
ringGroups | Ref<Map<string, RingGroup>> | All monitored ring groups | src/types/ringgroup.types.ts:322 |
selectedGroup | Ref<RingGroup | null> | Currently selected ring group | src/types/ringgroup.types.ts:325 |
isMonitoring | Ref<boolean> | Whether monitoring is active | src/types/ringgroup.types.ts:328 |
isLoading | Ref<boolean> | Loading state | src/types/ringgroup.types.ts:331 |
error | Ref<string | null> | Error message if any | src/types/ringgroup.types.ts:334 |
groupList | ComputedRef<RingGroup[]> | List of all ring groups | src/types/ringgroup.types.ts:338 |
totalMembers | ComputedRef<number> | Total members across all groups | src/types/ringgroup.types.ts:341 |
availableMembers | ComputedRef<number> | Available members count | src/types/ringgroup.types.ts:344 |
activeGroups | ComputedRef<RingGroup[]> | Groups with active calls | src/types/ringgroup.types.ts:347 |
disabledGroups | ComputedRef<RingGroup[]> | Groups with disabled status | src/types/ringgroup.types.ts:350 |
startMonitoring | () => void | Start monitoring ring groups | src/types/ringgroup.types.ts:354 |
stopMonitoring | () => void | Stop monitoring ring groups | src/types/ringgroup.types.ts:357 |
refresh | () => Promise<void> | Refresh ring group data | src/types/ringgroup.types.ts:360 |
getRingGroup | (groupId) => RingGroup | null | Get a specific ring group by ID | src/types/ringgroup.types.ts:363 |
selectGroup | (groupId) => void | Select a ring group for detailed view | src/types/ringgroup.types.ts:366 |
addMember | (groupId, extension, options?) => Promise<AddMemberResult> | Add a member to a ring group | src/types/ringgroup.types.ts:369 |
removeMember | (groupId, extension) => Promise<RemoveMemberResult> | Remove a member from a ring group | src/types/ringgroup.types.ts:376 |
enableMember | (groupId, extension) => Promise<boolean> | Enable a member in a ring group | src/types/ringgroup.types.ts:379 |
disableMember | (groupId, extension) => Promise<boolean> | Disable a member in a ring group | src/types/ringgroup.types.ts:382 |
setMemberPriority | (groupId, extension, priority) => Promise<boolean> | Update member priority | src/types/ringgroup.types.ts:385 |
setStrategy | (groupId, strategy) => Promise<UpdateStrategyResult> | Update ring group strategy | src/types/ringgroup.types.ts:392 |
setRingTimeout | (groupId, timeout) => Promise<boolean> | Update ring timeout | src/types/ringgroup.types.ts:398 |
enableGroup | (groupId) => Promise<boolean> | Enable a ring group | src/types/ringgroup.types.ts:401 |
disableGroup | (groupId) => Promise<boolean> | Disable a ring group | src/types/ringgroup.types.ts:404 |
getMemberStatus | (groupId, extension) => RingGroupMemberStatus | null | Get member status | src/types/ringgroup.types.ts:407 |
getStats | (groupId) => RingGroupStats | null | Get ring group statistics | src/types/ringgroup.types.ts:413 |
clearStats | (groupId) => void | Clear statistics for a ring group | src/types/ringgroup.types.ts:416 |
TimeRange
Defined in: src/types/timeconditions.types.ts:28
Time range for business hours
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
start | string | Start time in HH:MM format (24-hour) | src/types/timeconditions.types.ts:30 |
end | string | End 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
| Property | Type | Description | Defined in |
|---|---|---|---|
day | DayOfWeek | Day of the week | src/types/timeconditions.types.ts:40 |
enabled | boolean | Whether business is open on this day | src/types/timeconditions.types.ts:42 |
ranges | TimeRange[] | Time ranges when business is open | src/types/timeconditions.types.ts:44 |
Holiday
Defined in: src/types/timeconditions.types.ts:50
Holiday entry
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique identifier | src/types/timeconditions.types.ts:52 |
name | string | Holiday name | src/types/timeconditions.types.ts:54 |
date | string | Date in YYYY-MM-DD format | src/types/timeconditions.types.ts:56 |
recurring | boolean | Whether this is a recurring annual holiday | src/types/timeconditions.types.ts:58 |
destination? | string | Optional alternative message or destination | src/types/timeconditions.types.ts:60 |
description? | string | Optional description | src/types/timeconditions.types.ts:62 |
TimeCondition
Defined in: src/types/timeconditions.types.ts:68
Time condition definition
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Unique identifier | src/types/timeconditions.types.ts:70 |
name | string | Display name | src/types/timeconditions.types.ts:72 |
description? | string | Description | src/types/timeconditions.types.ts:74 |
schedule | DailySchedule[] | Weekly schedule | src/types/timeconditions.types.ts:76 |
holidays | Holiday[] | Holiday list | src/types/timeconditions.types.ts:78 |
overrideMode | OverrideMode | Current override mode | src/types/timeconditions.types.ts:80 |
overrideExpires? | Date | Override expiration (for temporary overrides) | src/types/timeconditions.types.ts:82 |
timezone? | string | Timezone (e.g., 'America/New_York') | src/types/timeconditions.types.ts:84 |
enabled | boolean | Whether this time condition is active | src/types/timeconditions.types.ts:86 |
openDestination? | string | Optional open destination (dialplan context/extension) | src/types/timeconditions.types.ts:88 |
closedDestination? | string | Optional closed destination | src/types/timeconditions.types.ts:90 |
holidayDestination? | string | Optional holiday destination | src/types/timeconditions.types.ts:92 |
TimeConditionStatus
Defined in: src/types/timeconditions.types.ts:98
Time condition status at a point in time
Properties
OverrideResult
Defined in: src/types/timeconditions.types.ts:128
Override result
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/timeconditions.types.ts:129 |
conditionId | string | src/types/timeconditions.types.ts:130 |
mode | OverrideMode | src/types/timeconditions.types.ts:131 |
message? | string | src/types/timeconditions.types.ts:132 |
expiresAt? | Date | src/types/timeconditions.types.ts:133 |
HolidayResult
Defined in: src/types/timeconditions.types.ts:139
Holiday management result
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/timeconditions.types.ts:140 |
holiday? | Holiday | src/types/timeconditions.types.ts:141 |
message? | string | src/types/timeconditions.types.ts:142 |
ScheduleResult
Defined in: src/types/timeconditions.types.ts:148
Schedule update result
Properties
| Property | Type | Defined in |
|---|---|---|
success | boolean | src/types/timeconditions.types.ts:149 |
conditionId | string | src/types/timeconditions.types.ts:150 |
message? | string | src/types/timeconditions.types.ts:151 |
UseAmiTimeConditionsOptions
Defined in: src/types/timeconditions.types.ts:157
Configuration options for useAmiTimeConditions
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
dbFamily? | string | AstDB family for time condition storage (default: 'timeconditions') | src/types/timeconditions.types.ts:159 |
timezone? | string | Default timezone (default: system timezone) | src/types/timeconditions.types.ts:161 |
refreshInterval? | number | Auto-refresh interval in milliseconds (default: 60000 = 1 minute) | src/types/timeconditions.types.ts:163 |
autoRefresh? | boolean | Enable auto-refresh (default: true) | src/types/timeconditions.types.ts:165 |
onStateChange? | (conditionId, status) => void | Callback when state changes | src/types/timeconditions.types.ts:167 |
onOverrideSet? | (conditionId, mode) => void | Callback when override is set | src/types/timeconditions.types.ts:169 |
onOverrideCleared? | (conditionId) => void | Callback when override is cleared | src/types/timeconditions.types.ts:171 |
onError? | (error) => void | Callback on error | src/types/timeconditions.types.ts:173 |
UseAmiTimeConditionsReturn
Defined in: src/types/timeconditions.types.ts:179
Return type for useAmiTimeConditions composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
conditions | Ref<TimeCondition[], TimeCondition[]> | All time conditions | src/types/timeconditions.types.ts:182 |
statuses | Ref<Map<string, TimeConditionStatus>, Map<string, TimeConditionStatus>> | Status for each condition | src/types/timeconditions.types.ts:184 |
isLoading | Ref<boolean, boolean> | Loading state | src/types/timeconditions.types.ts:186 |
error | Ref<string | null, string | null> | Error state | src/types/timeconditions.types.ts:188 |
openConditions | ComputedRef<TimeCondition[]> | All conditions that are currently open | src/types/timeconditions.types.ts:192 |
closedConditions | ComputedRef<TimeCondition[]> | All conditions that are currently closed | src/types/timeconditions.types.ts:194 |
overriddenConditions | ComputedRef<TimeCondition[]> | All conditions with active overrides | src/types/timeconditions.types.ts:196 |
getStatus | (conditionId) => TimeConditionStatus | undefined | Get status for a specific condition | src/types/timeconditions.types.ts:200 |
isOpen | (conditionId) => boolean | Check if a condition is currently open | src/types/timeconditions.types.ts:202 |
isClosed | (conditionId) => boolean | Check if a condition is currently closed | src/types/timeconditions.types.ts:204 |
isHoliday | (conditionId) => boolean | Check if today is a holiday for a condition | src/types/timeconditions.types.ts:206 |
hasOverride | (conditionId) => boolean | Check if override is active for a condition | src/types/timeconditions.types.ts:208 |
setOverride | (conditionId, mode, expiresIn?) => Promise<OverrideResult> | Set override mode for a condition | src/types/timeconditions.types.ts:212 |
clearOverride | (conditionId) => Promise<OverrideResult> | Clear override for a condition | src/types/timeconditions.types.ts:214 |
toggleOverride | (conditionId) => Promise<OverrideResult> | Toggle between force_open and force_closed | src/types/timeconditions.types.ts:216 |
addHoliday | (conditionId, holiday) => Promise<HolidayResult> | Add a holiday | src/types/timeconditions.types.ts:220 |
removeHoliday | (conditionId, holidayId) => Promise<HolidayResult> | Remove a holiday | src/types/timeconditions.types.ts:222 |
updateHoliday | (conditionId, holidayId, updates) => Promise<HolidayResult> | Update a holiday | src/types/timeconditions.types.ts:224 |
getHolidays | (conditionId) => Holiday[] | Get holidays for a condition | src/types/timeconditions.types.ts:226 |
getUpcomingHolidays | (conditionId, days?) => Holiday[] | Get upcoming holidays | src/types/timeconditions.types.ts:228 |
updateDaySchedule | (conditionId, day, schedule) => Promise<ScheduleResult> | Update schedule for a day | src/types/timeconditions.types.ts:232 |
setWeeklySchedule | (conditionId, schedule) => Promise<ScheduleResult> | Set full weekly schedule | src/types/timeconditions.types.ts:234 |
getDaySchedule | (conditionId, day) => DailySchedule | undefined | Get schedule for a day | src/types/timeconditions.types.ts:236 |
createCondition | (condition) => Promise<{ success: boolean; condition?: TimeCondition; message?: string; }> | Create a new time condition | src/types/timeconditions.types.ts:240 |
deleteCondition | (conditionId) => Promise<{ success: boolean; message?: string; }> | Delete a time condition | src/types/timeconditions.types.ts:242 |
updateCondition | (conditionId, updates) => Promise<{ success: boolean; message?: string; }> | Update a time condition | src/types/timeconditions.types.ts:244 |
refresh | () => Promise<void> | Refresh all conditions from storage | src/types/timeconditions.types.ts:248 |
getNextChange | (conditionId) => | { state: TimeConditionState; at: Date; reason: string; } | undefined | Get next state change for a condition | src/types/timeconditions.types.ts:250 |
checkStatusAt | (conditionId, date) => TimeConditionStatus | undefined | Check status at a specific time | src/types/timeconditions.types.ts:252 |
MailboxInfo
Defined in: src/types/voicemail.types.ts:46
Mailbox information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
mailbox | string | Mailbox number | src/types/voicemail.types.ts:48 |
context | string | Voicemail context | src/types/voicemail.types.ts:50 |
newMessages | number | Number of new messages | src/types/voicemail.types.ts:52 |
oldMessages | number | Number of old messages | src/types/voicemail.types.ts:54 |
urgentMessages | number | Number of urgent messages | src/types/voicemail.types.ts:56 |
fullName? | string | Mailbox full name | src/types/voicemail.types.ts:58 |
email? | string | Email address for notifications | src/types/voicemail.types.ts:60 |
pager? | string | Pager address | src/types/voicemail.types.ts:62 |
lastMessageTime? | Date | Last message timestamp | src/types/voicemail.types.ts:64 |
serverId? | number | Server ID | src/types/voicemail.types.ts:66 |
MwiState
Defined in: src/types/voicemail.types.ts:72
MWI (Message Waiting Indicator) state
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
mailbox | string | Mailbox with context (e.g., "1000@default") | src/types/voicemail.types.ts:74 |
waiting | boolean | Whether there are waiting messages | src/types/voicemail.types.ts:76 |
newMessages | number | Number of new messages | src/types/voicemail.types.ts:78 |
oldMessages | number | Number of old messages | src/types/voicemail.types.ts:80 |
urgentMessages? | number | Number of urgent messages | src/types/voicemail.types.ts:82 |
lastUpdated | Date | Last updated timestamp | src/types/voicemail.types.ts:84 |
serverId? | number | Server ID | src/types/voicemail.types.ts:86 |
UseAmiVoicemailOptions
Defined in: src/types/voicemail.types.ts:163
Options for useAmiVoicemail composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pollInterval? | number | Polling interval for MWI in ms (0 = events only) | src/types/voicemail.types.ts:165 |
useEvents? | boolean | Use real-time MWI events | src/types/voicemail.types.ts:167 |
autoRefresh? | boolean | Auto-refresh mailbox on reconnect | src/types/voicemail.types.ts:169 |
defaultContext? | string | Default voicemail context | src/types/voicemail.types.ts:171 |
mailboxFilter? | (mailbox) => boolean | Mailbox filter function | src/types/voicemail.types.ts:173 |
onMwiChange? | (mwi) => void | MWI change callback | src/types/voicemail.types.ts:175 |
onNewMessage? | (mailbox, count) => void | New message callback | src/types/voicemail.types.ts:177 |
transformMailbox? | (mailbox) => MailboxInfo | Transform mailbox function | src/types/voicemail.types.ts:179 |
AudioCodecInfo
Defined in: src/types/webrtc-stats.types.ts:9
Audio codec information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Codec name (e.g., 'opus', 'PCMU', 'PCMA') | src/types/webrtc-stats.types.ts:11 |
payloadType | number | Payload type | src/types/webrtc-stats.types.ts:13 |
clockRate | number | Clock rate (Hz) | src/types/webrtc-stats.types.ts:15 |
channels? | number | Number of channels | src/types/webrtc-stats.types.ts:17 |
mimeType | string | MIME type | src/types/webrtc-stats.types.ts:19 |
VideoCodecInfo
Defined in: src/types/webrtc-stats.types.ts:25
Video codec information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
name | string | Codec name (e.g., 'VP8', 'VP9', 'H264') | src/types/webrtc-stats.types.ts:27 |
payloadType | number | Payload type | src/types/webrtc-stats.types.ts:29 |
clockRate | number | Clock rate (Hz) | src/types/webrtc-stats.types.ts:31 |
mimeType | string | MIME type | src/types/webrtc-stats.types.ts:33 |
profileLevelId? | string | Profile 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
| Property | Type | Description | Defined in |
|---|---|---|---|
ssrc | number | SSRC identifier | src/types/webrtc-stats.types.ts:43 |
kind | "audio" | "video" | Media type ('audio' or 'video') | src/types/webrtc-stats.types.ts:45 |
codec? | AudioCodecInfo | VideoCodecInfo | Codec info | src/types/webrtc-stats.types.ts:47 |
packetsReceived | number | Packets received | src/types/webrtc-stats.types.ts:49 |
packetsLost | number | Packets lost | src/types/webrtc-stats.types.ts:51 |
packetLossPercent | number | Packet loss percentage (0-100) | src/types/webrtc-stats.types.ts:53 |
bytesReceived | number | Bytes received | src/types/webrtc-stats.types.ts:55 |
jitter | number | Jitter in seconds | src/types/webrtc-stats.types.ts:57 |
jitterMs | number | Jitter in milliseconds | src/types/webrtc-stats.types.ts:59 |
roundTripTime? | number | Round-trip time in seconds (if available) | src/types/webrtc-stats.types.ts:61 |
roundTripTimeMs? | number | Round-trip time in milliseconds | src/types/webrtc-stats.types.ts:63 |
framesDecoded? | number | Frames decoded (video only) | src/types/webrtc-stats.types.ts:65 |
framesDropped? | number | Frames dropped (video only) | src/types/webrtc-stats.types.ts:67 |
frameWidth? | number | Frame width (video only) | src/types/webrtc-stats.types.ts:69 |
frameHeight? | number | Frame height (video only) | src/types/webrtc-stats.types.ts:71 |
framesPerSecond? | number | Frames per second (video only) | src/types/webrtc-stats.types.ts:73 |
bitrate | number | Bitrate in bits per second | src/types/webrtc-stats.types.ts:75 |
timestamp | number | Timestamp of these stats | src/types/webrtc-stats.types.ts:77 |
OutboundRtpStats
Defined in: src/types/webrtc-stats.types.ts:83
Outbound RTP stream statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
ssrc | number | SSRC identifier | src/types/webrtc-stats.types.ts:85 |
kind | "audio" | "video" | Media type ('audio' or 'video') | src/types/webrtc-stats.types.ts:87 |
codec? | AudioCodecInfo | VideoCodecInfo | Codec info | src/types/webrtc-stats.types.ts:89 |
packetsSent | number | Packets sent | src/types/webrtc-stats.types.ts:91 |
bytesSent | number | Bytes sent | src/types/webrtc-stats.types.ts:93 |
retransmittedPacketsSent? | number | Retransmitted packets | src/types/webrtc-stats.types.ts:95 |
targetBitrate? | number | Target bitrate | src/types/webrtc-stats.types.ts:97 |
framesEncoded? | number | Frames encoded (video only) | src/types/webrtc-stats.types.ts:99 |
frameWidth? | number | Frame width (video only) | src/types/webrtc-stats.types.ts:101 |
frameHeight? | number | Frame height (video only) | src/types/webrtc-stats.types.ts:103 |
framesPerSecond? | number | Frames 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 |
bitrate | number | Bitrate in bits per second | src/types/webrtc-stats.types.ts:109 |
timestamp | number | Timestamp of these stats | src/types/webrtc-stats.types.ts:111 |
IceCandidatePairStats
Defined in: src/types/webrtc-stats.types.ts:117
ICE candidate pair statistics
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
id | string | Candidate pair ID | src/types/webrtc-stats.types.ts:119 |
state | RTCStatsIceCandidatePairState | State of the candidate pair | src/types/webrtc-stats.types.ts:121 |
nominated | boolean | Whether this is the nominated pair | src/types/webrtc-stats.types.ts:123 |
priority? | number | Priority | src/types/webrtc-stats.types.ts:125 |
localCandidateType | RTCIceCandidateType | Local candidate type | src/types/webrtc-stats.types.ts:127 |
remoteCandidateType | RTCIceCandidateType | Remote candidate type | src/types/webrtc-stats.types.ts:129 |
localAddress? | string | Local address | src/types/webrtc-stats.types.ts:131 |
remoteAddress? | string | Remote address | src/types/webrtc-stats.types.ts:133 |
currentRoundTripTime? | number | Current round-trip time in seconds | src/types/webrtc-stats.types.ts:135 |
currentRoundTripTimeMs? | number | Current round-trip time in milliseconds | src/types/webrtc-stats.types.ts:137 |
availableOutgoingBitrate? | number | Available outgoing bitrate | src/types/webrtc-stats.types.ts:139 |
availableIncomingBitrate? | number | Available incoming bitrate | src/types/webrtc-stats.types.ts:141 |
bytesSent | number | Bytes sent | src/types/webrtc-stats.types.ts:143 |
bytesReceived | number | Bytes received | src/types/webrtc-stats.types.ts:145 |
requestsSent | number | Requests sent | src/types/webrtc-stats.types.ts:147 |
responsesReceived | number | Responses received | src/types/webrtc-stats.types.ts:149 |
consentRequestsSent? | number | Consent requests sent | src/types/webrtc-stats.types.ts:151 |
timestamp | number | Timestamp | src/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
| Property | Type | Description | Defined in |
|---|---|---|---|
value | number | MOS value (1.0 - 5.0) | src/types/webrtc-stats.types.ts:167 |
quality | ConnectionQuality | Quality label | src/types/webrtc-stats.types.ts:169 |
timestamp | number | Timestamp | src/types/webrtc-stats.types.ts:171 |
CallQualityStats
Defined in: src/types/webrtc-stats.types.ts:177
Comprehensive call quality statistics
Properties
QualityAlert
Defined in: src/types/webrtc-stats.types.ts:230
Quality alert
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
type | QualityAlertType | Alert type | src/types/webrtc-stats.types.ts:232 |
severity | "critical" | "warning" | Alert severity | src/types/webrtc-stats.types.ts:234 |
message | string | Alert message | src/types/webrtc-stats.types.ts:236 |
value | number | Current value that triggered the alert | src/types/webrtc-stats.types.ts:238 |
threshold | number | Threshold that was exceeded | src/types/webrtc-stats.types.ts:240 |
timestamp | Date | Timestamp | src/types/webrtc-stats.types.ts:242 |
QualityThresholds
Defined in: src/types/webrtc-stats.types.ts:248
Quality thresholds for alerts
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
packetLossWarning | number | Packet loss warning threshold (percentage) | src/types/webrtc-stats.types.ts:250 |
packetLossCritical | number | Packet loss critical threshold (percentage) | src/types/webrtc-stats.types.ts:252 |
jitterWarning | number | Jitter warning threshold (ms) | src/types/webrtc-stats.types.ts:254 |
jitterCritical | number | Jitter critical threshold (ms) | src/types/webrtc-stats.types.ts:256 |
rttWarning | number | RTT warning threshold (ms) | src/types/webrtc-stats.types.ts:258 |
rttCritical | number | RTT critical threshold (ms) | src/types/webrtc-stats.types.ts:260 |
mosWarning | number | MOS warning threshold | src/types/webrtc-stats.types.ts:262 |
mosCritical | number | MOS critical threshold | src/types/webrtc-stats.types.ts:264 |
StatsHistoryEntry
Defined in: src/types/webrtc-stats.types.ts:284
Stats history entry
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
timestamp | number | Timestamp | src/types/webrtc-stats.types.ts:286 |
mos | number | MOS score | src/types/webrtc-stats.types.ts:288 |
packetLoss | number | Packet loss percentage | src/types/webrtc-stats.types.ts:290 |
jitter | number | Jitter in ms | src/types/webrtc-stats.types.ts:292 |
rtt? | number | RTT in ms | src/types/webrtc-stats.types.ts:294 |
bitrate | number | Bitrate in kbps | src/types/webrtc-stats.types.ts:296 |
UseSipWebRTCStatsOptions
Defined in: src/types/webrtc-stats.types.ts:302
Options for useSipWebRTCStats composable
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
pollInterval? | number | Stats collection interval in ms (default: 1000) | src/types/webrtc-stats.types.ts:304 |
autoStart? | boolean | Enable automatic stats collection | src/types/webrtc-stats.types.ts:306 |
maxHistoryEntries? | number | Maximum history entries to keep | src/types/webrtc-stats.types.ts:308 |
thresholds? | Partial<QualityThresholds> | Quality thresholds for alerts | src/types/webrtc-stats.types.ts:310 |
onStatsUpdate? | (stats) => void | Stats update callback | src/types/webrtc-stats.types.ts:312 |
onQualityAlert? | (alert) => void | Quality alert callback | src/types/webrtc-stats.types.ts:314 |
onQualityChange? | (newQuality, oldQuality) => void | Quality change callback | src/types/webrtc-stats.types.ts:316 |
includeVideo? | boolean | Include video stats (default: true) | src/types/webrtc-stats.types.ts:318 |
calculateMos? | boolean | Enable MOS calculation (default: true) | src/types/webrtc-stats.types.ts:320 |
LoggerConfig
Defined in: src/utils/logger.ts:66
Global logger configuration
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
level | "error" | "debug" | "info" | "warn" | Minimum log level to output | src/utils/logger.ts:68 |
enabled | boolean | Whether logging is enabled | src/utils/logger.ts:70 |
showTimestamp | boolean | Whether to show timestamps | src/utils/logger.ts:72 |
handler? | LogHandler | Custom log handler (for testing or custom output) | src/utils/logger.ts:74 |
StorageQuotaInfo
Defined in: src/utils/storageQuota.ts:18
Storage quota information
Properties
| Property | Type | Description | Defined in |
|---|---|---|---|
quota | number | Total quota in bytes (0 if unavailable) | src/utils/storageQuota.ts:20 |
usage | number | Current usage in bytes (0 if unavailable) | src/utils/storageQuota.ts:22 |
available | number | Available space in bytes | src/utils/storageQuota.ts:24 |
usagePercent | number | Usage percentage (0-100) | src/utils/storageQuota.ts:26 |
supported | boolean | Whether quota API is supported | src/utils/storageQuota.ts:28 |
Type Aliases
ParkingEventType
type ParkingEventType = "parked" | "retrieved" | "timeout" | "giveup";Defined in: src/composables/useAmiParking.ts:64
Parking event types for listeners
SupervisionMode
type SupervisionMode = "monitor" | "whisper" | "barge";Defined in: src/composables/useAmiSupervisor.ts:23
Supervision mode
RingPolicy
type RingPolicy = "sequential" | "parallel" | "round-robin";Defined in: src/core/MultiLineManager.ts:30
Ring policy for handling incoming calls
TransportEventHandler()
type TransportEventHandler = (event) => void;Defined in: src/core/TransportManager.ts:58
Transport event handler type
Parameters
| Parameter | Type |
|---|---|
event | TransportEventData | string |
Returns
void
ProviderFactory()
type ProviderFactory = () => TranscriptionProvider;Defined in: src/transcription/providers/registry.ts:14
Factory function type for creating provider instances
Returns
ConnectionState
type ConnectionState = "disconnected" | "connecting" | "connected" | "error";Defined in: src/transcription/providers/whisper.ts:57
Connection state
AgentLoginStatus
type AgentLoginStatus = "logged_out" | "logged_in" | "paused" | "on_call";Defined in: src/types/agent.types.ts:15
Agent login status
AgentStatsPeriod
type AgentStatsPeriod = "today" | "week" | "month" | "custom";Defined in: src/types/agentstats.types.ts:15
Time period for statistics aggregation
AgentPerformanceLevel
type AgentPerformanceLevel = "excellent" | "good" | "average" | "needs_improvement" | "critical";Defined in: src/types/agentstats.types.ts:20
Agent performance level based on KPIs
AgentCallDirection
type AgentCallDirection = "inbound" | "outbound" | "internal";Defined in: src/types/agentstats.types.ts:25
Call direction for agent statistics
PeerStatus
type PeerStatus = "OK" | "LAGGED" | "UNKNOWN" | "UNREACHABLE" | "Unmonitored";Defined in: src/types/ami.types.ts:673
Peer status values
AudioPermissionState
type AudioPermissionState = "granted" | "denied" | "prompt";Defined in: src/types/audio.types.ts:151
Permission states for audio/video access
AutoAnswerMode
type AutoAnswerMode = "disabled" | "all" | "whitelist" | "intercom";Defined in: src/types/autoanswer.types.ts:13
Auto-answer mode
IntercomMode
type IntercomMode = "simplex" | "duplex";Defined in: src/types/autoanswer.types.ts:18
Intercom mode type
AutoAnswerTrigger
type AutoAnswerTrigger = "header" | "whitelist" | "intercom" | "all_calls" | "manual";Defined in: src/types/autoanswer.types.ts:23
Auto-answer trigger source
BlockStatus
type BlockStatus = "active" | "disabled" | "expired";Defined in: src/types/blacklist.types.ts:31
Status of a blocked number entry
BlacklistFormat
type BlacklistFormat = "json" | "csv" | "txt";Defined in: src/types/blacklist.types.ts:147
Import/export format
CallbackStatus
type CallbackStatus =
| "pending"
| "scheduled"
| "in_progress"
| "completed"
| "failed"
| "cancelled";Defined in: src/types/callback.types.ts:15
Callback status
CdrDisposition
type CdrDisposition = "ANSWERED" | "NO ANSWER" | "BUSY" | "FAILED" | "CONGESTION" | "CANCEL";Defined in: src/types/cdr.types.ts:16
Call disposition (final status)
CdrDirection
type CdrDirection = "inbound" | "outbound" | "internal" | "unknown";Defined in: src/types/cdr.types.ts:27
Call direction
CdrAggregationPeriod
type CdrAggregationPeriod = "hour" | "day" | "week" | "month";Defined in: src/types/cdr.types.ts:32
CDR aggregation period
E911LocationType
type E911LocationType = "civic" | "geo" | "combined";Defined in: src/types/e911.types.ts:15
E911 location type
E911CallStatus
type E911CallStatus =
| "detecting"
| "alerting"
| "in_progress"
| "completed"
| "callback_pending"
| "callback_active";Defined in: src/types/e911.types.ts:23
E911 call status
E911NotificationType
type E911NotificationType = "email" | "sms" | "push" | "webhook" | "paging" | "popup";Defined in: src/types/e911.types.ts:34
E911 notification type
E911EventType
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
type FeatureCodeCategory =
| "dnd"
| "callforward"
| "voicemail"
| "recording"
| "transfer"
| "parking"
| "pickup"
| "intercom"
| "custom";Defined in: src/types/featurecodes.types.ts:15
Feature code categories
DndStatus
type DndStatus = "enabled" | "disabled" | "unknown";Defined in: src/types/featurecodes.types.ts:29
DND (Do Not Disturb) status
CallForwardType
type CallForwardType = "unconditional" | "busy" | "noanswer" | "unavailable";Defined in: src/types/featurecodes.types.ts:34
Call forward types
IVRCallerState
type IVRCallerState =
| "entering"
| "listening"
| "inputting"
| "navigating"
| "transferring"
| "exiting"
| "timeout"
| "error";Defined in: src/types/ivr.types.ts:15
IVR caller state
IVROptionType
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
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
type LineStatus = "idle" | "ringing" | "active" | "held" | "busy" | "error";Defined in: src/types/multiline.types.ts:17
Line status representing current state
PagingMode
type PagingMode = "simplex" | "duplex";Defined in: src/types/paging.types.ts:15
Paging mode
PagingStatus
type PagingStatus = "idle" | "paging" | "connected" | "error";Defined in: src/types/paging.types.ts:20
Paging status
AmiRecordingFormat
type AmiRecordingFormat =
| "wav"
| "wav49"
| "gsm"
| "ulaw"
| "alaw"
| "sln"
| "g722"
| "siren7"
| "siren14";Defined in: src/types/recording.types.ts:30
AMI Recording format options
AmiRecordingMixMode
type AmiRecordingMixMode = "both" | "read" | "write";Defined in: src/types/recording.types.ts:35
AMI Recording mix mode - which audio streams to record
AmiRecordingEventType
type AmiRecordingEventType = "started" | "stopped" | "paused" | "resumed" | "failed" | "completed";Defined in: src/types/recording.types.ts:225
AMI Recording event types
RingStrategy
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
type RingGroupMemberStatus = "available" | "busy" | "unavailable" | "ringing" | "unknown";Defined in: src/types/ringgroup.types.ts:29
Member status in a ring group
RingGroupState
type RingGroupState = "idle" | "ringing" | "connected" | "disabled";Defined in: src/types/ringgroup.types.ts:39
Ring group state
RingGroupEventType
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
type DayOfWeek =
| "sunday"
| "monday"
| "tuesday"
| "wednesday"
| "thursday"
| "friday"
| "saturday";Defined in: src/types/timeconditions.types.ts:13
Days of the week
TimeConditionState
type TimeConditionState = "open" | "closed" | "holiday" | "override_open" | "override_closed";Defined in: src/types/timeconditions.types.ts:18
Time condition state
OverrideMode
type OverrideMode = "none" | "force_open" | "force_closed" | "temporary";Defined in: src/types/timeconditions.types.ts:23
Override mode
ConnectionQuality
type ConnectionQuality = "excellent" | "good" | "fair" | "poor" | "bad" | "unknown";Defined in: src/types/webrtc-stats.types.ts:159
Connection quality level
QualityAlertType
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()
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 Parameter | Default type |
|---|---|
T | unknown |
Parameters
| Parameter | Type |
|---|---|
data | T |
Returns
void
Variables
LOG_LEVELS
const LOG_LEVELS: readonly ["debug", "info", "warn", "error"];Defined in: src/utils/constants.ts:436
Valid log levels