@speakai/shared 2.1.4 → 2.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/enums/menu.d.ts +7 -2
- package/dist/enums/menu.d.ts.map +1 -1
- package/dist/enums/menu.js +6 -0
- package/dist/enums/menu.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/schemas/dashboard-spec.schema.d.ts.map +1 -1
- package/dist/schemas/dashboard-spec.schema.js +15 -1
- package/dist/schemas/dashboard-spec.schema.js.map +1 -1
- package/dist/voice/enums/agent.d.ts +19 -0
- package/dist/voice/enums/agent.d.ts.map +1 -0
- package/dist/voice/enums/agent.js +18 -0
- package/dist/voice/enums/agent.js.map +1 -0
- package/dist/voice/enums/auth.d.ts +19 -0
- package/dist/voice/enums/auth.d.ts.map +1 -0
- package/dist/voice/enums/auth.js +21 -0
- package/dist/voice/enums/auth.js.map +1 -0
- package/dist/voice/enums/avatar.d.ts +6 -0
- package/dist/voice/enums/avatar.d.ts.map +1 -0
- package/dist/voice/enums/avatar.js +5 -0
- package/dist/voice/enums/avatar.js.map +1 -0
- package/dist/voice/enums/billing.d.ts +26 -0
- package/dist/voice/enums/billing.d.ts.map +1 -0
- package/dist/voice/enums/billing.js +29 -0
- package/dist/voice/enums/billing.js.map +1 -0
- package/dist/voice/enums/conversation.d.ts +62 -0
- package/dist/voice/enums/conversation.d.ts.map +1 -0
- package/dist/voice/enums/conversation.js +73 -0
- package/dist/voice/enums/conversation.js.map +1 -0
- package/dist/voice/enums/dataCollection.d.ts +54 -0
- package/dist/voice/enums/dataCollection.d.ts.map +1 -0
- package/dist/voice/enums/dataCollection.js +59 -0
- package/dist/voice/enums/dataCollection.js.map +1 -0
- package/dist/voice/enums/index.d.ts +22 -0
- package/dist/voice/enums/index.d.ts.map +1 -0
- package/dist/voice/enums/index.js +22 -0
- package/dist/voice/enums/index.js.map +1 -0
- package/dist/voice/enums/integration.d.ts +80 -0
- package/dist/voice/enums/integration.d.ts.map +1 -0
- package/dist/voice/enums/integration.js +96 -0
- package/dist/voice/enums/integration.js.map +1 -0
- package/dist/voice/enums/livekit.d.ts +26 -0
- package/dist/voice/enums/livekit.d.ts.map +1 -0
- package/dist/voice/enums/livekit.js +35 -0
- package/dist/voice/enums/livekit.js.map +1 -0
- package/dist/voice/enums/notification.d.ts +6 -0
- package/dist/voice/enums/notification.d.ts.map +1 -0
- package/dist/voice/enums/notification.js +5 -0
- package/dist/voice/enums/notification.js.map +1 -0
- package/dist/voice/enums/organization.d.ts +11 -0
- package/dist/voice/enums/organization.d.ts.map +1 -0
- package/dist/voice/enums/organization.js +12 -0
- package/dist/voice/enums/organization.js.map +1 -0
- package/dist/voice/enums/providers.d.ts +28 -0
- package/dist/voice/enums/providers.d.ts.map +1 -0
- package/dist/voice/enums/providers.js +35 -0
- package/dist/voice/enums/providers.js.map +1 -0
- package/dist/voice/enums/structuredOutput.d.ts +15 -0
- package/dist/voice/enums/structuredOutput.d.ts.map +1 -0
- package/dist/voice/enums/structuredOutput.js +16 -0
- package/dist/voice/enums/structuredOutput.js.map +1 -0
- package/dist/voice/enums/telephony.d.ts +6 -0
- package/dist/voice/enums/telephony.d.ts.map +1 -0
- package/dist/voice/enums/telephony.js +5 -0
- package/dist/voice/enums/telephony.js.map +1 -0
- package/dist/voice/enums/voice.d.ts +6 -0
- package/dist/voice/enums/voice.d.ts.map +1 -0
- package/dist/voice/enums/voice.js +5 -0
- package/dist/voice/enums/voice.js.map +1 -0
- package/dist/voice/index.d.ts +11 -0
- package/dist/voice/index.d.ts.map +1 -0
- package/dist/voice/index.js +11 -0
- package/dist/voice/index.js.map +1 -0
- package/dist/voice/interfaces/agent.d.ts +246 -0
- package/dist/voice/interfaces/agent.d.ts.map +1 -0
- package/dist/voice/interfaces/agent.js +12 -0
- package/dist/voice/interfaces/agent.js.map +1 -0
- package/dist/voice/interfaces/analytics.d.ts +45 -0
- package/dist/voice/interfaces/analytics.d.ts.map +1 -0
- package/dist/voice/interfaces/analytics.js +6 -0
- package/dist/voice/interfaces/analytics.js.map +1 -0
- package/dist/voice/interfaces/avatar.d.ts +60 -0
- package/dist/voice/interfaces/avatar.d.ts.map +1 -0
- package/dist/voice/interfaces/avatar.js +5 -0
- package/dist/voice/interfaces/avatar.js.map +1 -0
- package/dist/voice/interfaces/billing.d.ts +130 -0
- package/dist/voice/interfaces/billing.d.ts.map +1 -0
- package/dist/voice/interfaces/billing.js +6 -0
- package/dist/voice/interfaces/billing.js.map +1 -0
- package/dist/voice/interfaces/conversation.d.ts +132 -0
- package/dist/voice/interfaces/conversation.d.ts.map +1 -0
- package/dist/voice/interfaces/conversation.js +6 -0
- package/dist/voice/interfaces/conversation.js.map +1 -0
- package/dist/voice/interfaces/dataCollection.d.ts +173 -0
- package/dist/voice/interfaces/dataCollection.d.ts.map +1 -0
- package/dist/voice/interfaces/dataCollection.js +6 -0
- package/dist/voice/interfaces/dataCollection.js.map +1 -0
- package/dist/voice/interfaces/index.d.ts +23 -0
- package/dist/voice/interfaces/index.d.ts.map +1 -0
- package/dist/voice/interfaces/index.js +23 -0
- package/dist/voice/interfaces/index.js.map +1 -0
- package/dist/voice/interfaces/integration.d.ts +146 -0
- package/dist/voice/interfaces/integration.d.ts.map +1 -0
- package/dist/voice/interfaces/integration.js +2 -0
- package/dist/voice/interfaces/integration.js.map +1 -0
- package/dist/voice/interfaces/kbGap.d.ts +21 -0
- package/dist/voice/interfaces/kbGap.d.ts.map +1 -0
- package/dist/voice/interfaces/kbGap.js +2 -0
- package/dist/voice/interfaces/kbGap.js.map +1 -0
- package/dist/voice/interfaces/knowledgeBase.d.ts +24 -0
- package/dist/voice/interfaces/knowledgeBase.d.ts.map +1 -0
- package/dist/voice/interfaces/knowledgeBase.js +6 -0
- package/dist/voice/interfaces/knowledgeBase.js.map +1 -0
- package/dist/voice/interfaces/livekit.d.ts +29 -0
- package/dist/voice/interfaces/livekit.d.ts.map +1 -0
- package/dist/voice/interfaces/livekit.js +5 -0
- package/dist/voice/interfaces/livekit.js.map +1 -0
- package/dist/voice/interfaces/notification.d.ts +19 -0
- package/dist/voice/interfaces/notification.d.ts.map +1 -0
- package/dist/voice/interfaces/notification.js +5 -0
- package/dist/voice/interfaces/notification.js.map +1 -0
- package/dist/voice/interfaces/organization.d.ts +49 -0
- package/dist/voice/interfaces/organization.d.ts.map +1 -0
- package/dist/voice/interfaces/organization.js +9 -0
- package/dist/voice/interfaces/organization.js.map +1 -0
- package/dist/voice/interfaces/structuredOutput.d.ts +75 -0
- package/dist/voice/interfaces/structuredOutput.d.ts.map +1 -0
- package/dist/voice/interfaces/structuredOutput.js +6 -0
- package/dist/voice/interfaces/structuredOutput.js.map +1 -0
- package/dist/voice/interfaces/telephony.d.ts +116 -0
- package/dist/voice/interfaces/telephony.d.ts.map +1 -0
- package/dist/voice/interfaces/telephony.js +5 -0
- package/dist/voice/interfaces/telephony.js.map +1 -0
- package/dist/voice/interfaces/testing.d.ts +141 -0
- package/dist/voice/interfaces/testing.d.ts.map +1 -0
- package/dist/voice/interfaces/testing.js +6 -0
- package/dist/voice/interfaces/testing.js.map +1 -0
- package/dist/voice/interfaces/voice.d.ts +34 -0
- package/dist/voice/interfaces/voice.d.ts.map +1 -0
- package/dist/voice/interfaces/voice.js +5 -0
- package/dist/voice/interfaces/voice.js.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import { IntegrationSlug, VoiceIntegrationAuthType, IntegrationStatus, RuleConditionField, RuleOperator } from "../enums/integration.js";
|
|
2
|
+
/**
|
|
3
|
+
* Org-level integration record as returned by the backend `GET /integrations`
|
|
4
|
+
* list endpoint. Represents a single connected (or connecting) integration for
|
|
5
|
+
* the organization — distinct from `ConnectedIntegration`, which is scoped to a
|
|
6
|
+
* specific agent.
|
|
7
|
+
*/
|
|
8
|
+
export interface OrgIntegration {
|
|
9
|
+
integrationId: string;
|
|
10
|
+
orgId: string;
|
|
11
|
+
slug: IntegrationSlug;
|
|
12
|
+
status: IntegrationStatus;
|
|
13
|
+
/**
|
|
14
|
+
* Provider-side account identifier (Composio connected-account id). Required:
|
|
15
|
+
* uniquely identifies which connected account this org integration maps to,
|
|
16
|
+
* enabling multiple accounts per provider.
|
|
17
|
+
*/
|
|
18
|
+
providerAccountId: string;
|
|
19
|
+
/**
|
|
20
|
+
* Best-effort account email. OPTIONAL — Composio's list API does NOT expose
|
|
21
|
+
* the email, so this is frequently absent; the human-facing label is
|
|
22
|
+
* primarily driven by `accountLabel`.
|
|
23
|
+
*/
|
|
24
|
+
accountEmail?: string;
|
|
25
|
+
/** User-provided human label distinguishing this account from others on the same provider. */
|
|
26
|
+
accountLabel?: string;
|
|
27
|
+
/** User id of the org member who connected this account. */
|
|
28
|
+
connectedByUserId?: string;
|
|
29
|
+
connectedAt?: string | Date;
|
|
30
|
+
error?: string | null;
|
|
31
|
+
createdAt: string | Date;
|
|
32
|
+
updatedAt: string | Date;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* A tool descriptor as returned by the backend `GET /:slug/tools`
|
|
36
|
+
* endpoint. Describes a single callable tool exposed by an integration.
|
|
37
|
+
*/
|
|
38
|
+
export interface ToolDescriptor {
|
|
39
|
+
toolName: string;
|
|
40
|
+
displayName: string;
|
|
41
|
+
description: string;
|
|
42
|
+
paramsSchema: Record<string, any>;
|
|
43
|
+
destructive: boolean;
|
|
44
|
+
/** Optional icon URL for the tool/provider, surfaced in the picker UI. */
|
|
45
|
+
iconUrl?: string;
|
|
46
|
+
}
|
|
47
|
+
export interface ConnectedIntegration {
|
|
48
|
+
integrationId: string;
|
|
49
|
+
agentId: string;
|
|
50
|
+
orgId: string;
|
|
51
|
+
slug: IntegrationSlug;
|
|
52
|
+
status: IntegrationStatus;
|
|
53
|
+
config?: Record<string, any>;
|
|
54
|
+
connectedAt?: string;
|
|
55
|
+
lastSyncedAt?: string;
|
|
56
|
+
error?: string | null;
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Describes a single credential field the user must supply when connecting an
|
|
60
|
+
* API-key integration. The backend is the source of truth for these specs
|
|
61
|
+
* (per-provider field names come from the provider's connect-account schema);
|
|
62
|
+
* the client renders a form from `VoiceConnectFieldsResponse.fields`.
|
|
63
|
+
*/
|
|
64
|
+
export interface VoiceCredentialFieldSpec {
|
|
65
|
+
/** Provider-specific field key sent back in `VoiceConnectKeyRequest.fields`. */
|
|
66
|
+
name: string;
|
|
67
|
+
/** Human-facing label for the input. */
|
|
68
|
+
label: string;
|
|
69
|
+
/** Input type — `password` masks the value in the UI. */
|
|
70
|
+
type: "text" | "password";
|
|
71
|
+
required: boolean;
|
|
72
|
+
/** Optional placeholder shown in the empty input. */
|
|
73
|
+
placeholder?: string;
|
|
74
|
+
/** Optional "where do I find this?" help link. */
|
|
75
|
+
helpUrl?: string;
|
|
76
|
+
/** Optional longer-form description / hint for the field. */
|
|
77
|
+
description?: string;
|
|
78
|
+
/** When true, the value is a secret (never echoed back, never logged). */
|
|
79
|
+
secret?: boolean;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Response shape for `GET /integrations/:slug/connect-fields`. Tells the client
|
|
83
|
+
* which auth flow a provider uses and, for API-key providers, the fields to
|
|
84
|
+
* render in the connect form.
|
|
85
|
+
*/
|
|
86
|
+
export interface VoiceConnectFieldsResponse {
|
|
87
|
+
slug: IntegrationSlug;
|
|
88
|
+
authType: VoiceIntegrationAuthType;
|
|
89
|
+
fields: VoiceCredentialFieldSpec[];
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Request body for `POST /integrations/:slug/connect-key`. Maps each
|
|
93
|
+
* `VoiceCredentialFieldSpec.name` to the user-entered value. Pass-through only —
|
|
94
|
+
* the secret is never persisted by our backend.
|
|
95
|
+
*/
|
|
96
|
+
export interface VoiceConnectKeyRequest {
|
|
97
|
+
fields: Record<string, string>;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Response shape for `POST /integrations/:slug/connect-key`. On success the
|
|
101
|
+
* connected account summary is returned; on failure `reason` carries a
|
|
102
|
+
* machine-readable code (e.g. failed key verification).
|
|
103
|
+
*/
|
|
104
|
+
export interface VoiceConnectKeyResponse {
|
|
105
|
+
status: "connected" | "failed";
|
|
106
|
+
reason?: string;
|
|
107
|
+
account?: {
|
|
108
|
+
providerAccountId: string;
|
|
109
|
+
status: string;
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
export interface CallSyncPayload {
|
|
113
|
+
conversationId: string;
|
|
114
|
+
agentId: string;
|
|
115
|
+
summary?: string;
|
|
116
|
+
sentiment?: string;
|
|
117
|
+
transcript: string;
|
|
118
|
+
structuredOutputs: Record<string, any>;
|
|
119
|
+
durationSeconds: number;
|
|
120
|
+
callerPhone?: string;
|
|
121
|
+
[key: string]: any;
|
|
122
|
+
}
|
|
123
|
+
export interface RuleCondition {
|
|
124
|
+
field: RuleConditionField;
|
|
125
|
+
operator: RuleOperator;
|
|
126
|
+
value?: string | number;
|
|
127
|
+
outputKey?: string;
|
|
128
|
+
}
|
|
129
|
+
export interface RuleAction {
|
|
130
|
+
slug: IntegrationSlug;
|
|
131
|
+
action: string;
|
|
132
|
+
params?: Record<string, any>;
|
|
133
|
+
}
|
|
134
|
+
export interface AutomationRule {
|
|
135
|
+
ruleId: string;
|
|
136
|
+
agentId: string;
|
|
137
|
+
orgId: string;
|
|
138
|
+
name: string;
|
|
139
|
+
enabled: boolean;
|
|
140
|
+
conditionLogic: "AND" | "OR";
|
|
141
|
+
conditions: RuleCondition[];
|
|
142
|
+
actions: RuleAction[];
|
|
143
|
+
createdAt: string;
|
|
144
|
+
updatedAt: string;
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=integration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/integration.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"integration.js","sourceRoot":"","sources":["../../../src/voice/interfaces/integration.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export interface KbGapSuggestion {
|
|
2
|
+
gapId: string;
|
|
3
|
+
agentId: string;
|
|
4
|
+
query: string;
|
|
5
|
+
context: string;
|
|
6
|
+
avgRetrievalScore: number;
|
|
7
|
+
conversationId: string;
|
|
8
|
+
suggestedAnswer: string;
|
|
9
|
+
suggestedTitle: string;
|
|
10
|
+
status: "pending" | "added" | "dismissed";
|
|
11
|
+
severity: "low" | "medium" | "high";
|
|
12
|
+
createdAt: string;
|
|
13
|
+
resolvedAt?: string | null;
|
|
14
|
+
}
|
|
15
|
+
export interface KbGapReport {
|
|
16
|
+
agentId: string;
|
|
17
|
+
gaps: KbGapSuggestion[];
|
|
18
|
+
lastAnalyzedAt: string | null;
|
|
19
|
+
conversationsSampled: number;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=kbGap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kbGap.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/kbGap.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;IAC1C,QAAQ,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,eAAe,EAAE,CAAC;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,oBAAoB,EAAE,MAAM,CAAC;CAC9B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"kbGap.js","sourceRoot":"","sources":["../../../src/voice/interfaces/kbGap.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Knowledge Base Interfaces
|
|
3
|
+
* Shared across backend and client
|
|
4
|
+
*/
|
|
5
|
+
export type KnowledgeBaseStatusType = "pending" | "uploading" | "processing" | "generating-embeddings" | "teaching-agent" | "completed" | "failed";
|
|
6
|
+
/** A file in a knowledge base. Backend and API use s3Key for the object-storage key. */
|
|
7
|
+
export interface KnowledgeBaseFile {
|
|
8
|
+
fileId: string;
|
|
9
|
+
name: string;
|
|
10
|
+
s3Key: string;
|
|
11
|
+
url: string;
|
|
12
|
+
size: number;
|
|
13
|
+
type: string;
|
|
14
|
+
status: string;
|
|
15
|
+
region?: string;
|
|
16
|
+
metadata?: Record<string, any>;
|
|
17
|
+
}
|
|
18
|
+
export interface KnowledgeBaseStatus {
|
|
19
|
+
status: KnowledgeBaseStatusType;
|
|
20
|
+
processingStage: string;
|
|
21
|
+
progress: number;
|
|
22
|
+
files: KnowledgeBaseFile[];
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=knowledgeBase.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledgeBase.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/knowledgeBase.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,MAAM,uBAAuB,GAC/B,SAAS,GACT,WAAW,GACX,YAAY,GACZ,uBAAuB,GACvB,gBAAgB,GAChB,WAAW,GACX,QAAQ,CAAC;AAEb,wFAAwF;AACxF,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,uBAAuB,CAAC;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,iBAAiB,EAAE,CAAC;CAC5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"knowledgeBase.js","sourceRoot":"","sources":["../../../src/voice/interfaces/knowledgeBase.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LiveKit Interfaces
|
|
3
|
+
*/
|
|
4
|
+
import { LiveKitMessageType } from "../enums/livekit.js";
|
|
5
|
+
export interface LiveKitDataMessage {
|
|
6
|
+
type: LiveKitMessageType;
|
|
7
|
+
text: string;
|
|
8
|
+
streaming?: boolean;
|
|
9
|
+
isFinal?: boolean;
|
|
10
|
+
reason?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface LiveKitRoomState {
|
|
13
|
+
isConnected: boolean;
|
|
14
|
+
error: string | null;
|
|
15
|
+
}
|
|
16
|
+
export interface TavusConversation {
|
|
17
|
+
conversation_id: string;
|
|
18
|
+
conversation_name?: string;
|
|
19
|
+
status: string;
|
|
20
|
+
created_at?: string;
|
|
21
|
+
}
|
|
22
|
+
export interface CreateConversationParams {
|
|
23
|
+
replicaId: string;
|
|
24
|
+
personaId: string;
|
|
25
|
+
livekitWsUrl: string;
|
|
26
|
+
livekitRoomToken: string;
|
|
27
|
+
conversationName?: string;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=livekit.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"livekit.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/livekit.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAEzD,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,kBAAkB,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"livekit.js","sourceRoot":"","sources":["../../../src/voice/interfaces/livekit.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Notification Interfaces
|
|
3
|
+
*/
|
|
4
|
+
import { VoiceNotificationType, NotificationResourceType } from "../enums/notification.js";
|
|
5
|
+
/**
|
|
6
|
+
* Notification entity
|
|
7
|
+
*/
|
|
8
|
+
export interface Notification {
|
|
9
|
+
notificationId: string;
|
|
10
|
+
userId: string;
|
|
11
|
+
type: VoiceNotificationType;
|
|
12
|
+
resourceType: NotificationResourceType;
|
|
13
|
+
resourceId: string;
|
|
14
|
+
title: string;
|
|
15
|
+
message: string;
|
|
16
|
+
metadata?: Record<string, unknown>;
|
|
17
|
+
timestamp: string;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=notification.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/notification.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,qBAAqB,EACrB,wBAAwB,EACzB,MAAM,0BAA0B,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,qBAAqB,CAAC;IAC5B,YAAY,EAAE,wBAAwB,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC;CACnB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notification.js","sourceRoot":"","sources":["../../../src/voice/interfaces/notification.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Organization / Workspace Interfaces (client-facing)
|
|
3
|
+
*
|
|
4
|
+
* The nested billing block (`OrgBilling`) and Stripe identifiers (`OrgStripe`)
|
|
5
|
+
* are intentionally NOT part of this public package — they remain private to
|
|
6
|
+
* speak-server. `Workspace.billing` is therefore omitted here.
|
|
7
|
+
*/
|
|
8
|
+
import { OrgRole } from "../enums/organization.js";
|
|
9
|
+
export interface WorkspaceMember {
|
|
10
|
+
userId: string;
|
|
11
|
+
email: string;
|
|
12
|
+
role: OrgRole;
|
|
13
|
+
joinedAt: string;
|
|
14
|
+
}
|
|
15
|
+
export interface Workspace {
|
|
16
|
+
orgId: string;
|
|
17
|
+
name: string;
|
|
18
|
+
slug: string;
|
|
19
|
+
ownerId: string;
|
|
20
|
+
members: WorkspaceMember[];
|
|
21
|
+
inviteToken?: string;
|
|
22
|
+
inviteTokenRole?: OrgRole;
|
|
23
|
+
inviteTokenExpiresAt?: string;
|
|
24
|
+
agentCount?: number;
|
|
25
|
+
myRole?: OrgRole;
|
|
26
|
+
createdAt: string;
|
|
27
|
+
updatedAt: string;
|
|
28
|
+
}
|
|
29
|
+
export interface WorkspaceInvite {
|
|
30
|
+
inviteId: string;
|
|
31
|
+
orgId: string;
|
|
32
|
+
orgName: string;
|
|
33
|
+
invitedEmail: string;
|
|
34
|
+
role: OrgRole;
|
|
35
|
+
token: string;
|
|
36
|
+
invitedByUserId: string;
|
|
37
|
+
invitedByEmail: string;
|
|
38
|
+
expiresAt: string;
|
|
39
|
+
acceptedAt?: string;
|
|
40
|
+
createdAt: string;
|
|
41
|
+
}
|
|
42
|
+
export interface InvitePreview {
|
|
43
|
+
orgId: string;
|
|
44
|
+
orgName: string;
|
|
45
|
+
role: OrgRole;
|
|
46
|
+
invitedByEmail: string;
|
|
47
|
+
expired: boolean;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=organization.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/organization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,OAAO,CAAC;IACd,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CAClB"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Organization / Workspace Interfaces (client-facing)
|
|
3
|
+
*
|
|
4
|
+
* The nested billing block (`OrgBilling`) and Stripe identifiers (`OrgStripe`)
|
|
5
|
+
* are intentionally NOT part of this public package — they remain private to
|
|
6
|
+
* speak-server. `Workspace.billing` is therefore omitted here.
|
|
7
|
+
*/
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=organization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"organization.js","sourceRoot":"","sources":["../../../src/voice/interfaces/organization.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Structured Output Interfaces
|
|
3
|
+
* Defines the contract for structured output extraction from conversations
|
|
4
|
+
*/
|
|
5
|
+
import { StructuredOutputType } from "../enums/structuredOutput.js";
|
|
6
|
+
/**
|
|
7
|
+
* Property schema for object/array types
|
|
8
|
+
*/
|
|
9
|
+
export interface PropertySchema {
|
|
10
|
+
name: string;
|
|
11
|
+
type: string;
|
|
12
|
+
required: boolean;
|
|
13
|
+
description?: string;
|
|
14
|
+
minLength?: number;
|
|
15
|
+
maxLength?: number;
|
|
16
|
+
minimum?: number;
|
|
17
|
+
maximum?: number;
|
|
18
|
+
allowedValues?: string[];
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Core structured output definition
|
|
22
|
+
*/
|
|
23
|
+
export interface StructuredOutput {
|
|
24
|
+
structuredOutputId: string;
|
|
25
|
+
userId: string;
|
|
26
|
+
name: string;
|
|
27
|
+
description: string;
|
|
28
|
+
type: StructuredOutputType;
|
|
29
|
+
schemaDescription: string;
|
|
30
|
+
properties?: PropertySchema[];
|
|
31
|
+
allowedValues?: string[];
|
|
32
|
+
minLength?: number;
|
|
33
|
+
maxLength?: number;
|
|
34
|
+
minimum?: number;
|
|
35
|
+
maximum?: number;
|
|
36
|
+
agentIds: string[];
|
|
37
|
+
createdAt: Date;
|
|
38
|
+
updatedAt: Date;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Input for creating a structured output
|
|
42
|
+
*/
|
|
43
|
+
export interface StructuredOutputInput {
|
|
44
|
+
name: string;
|
|
45
|
+
description: string;
|
|
46
|
+
type: StructuredOutputType;
|
|
47
|
+
schemaDescription: string;
|
|
48
|
+
properties?: PropertySchema[];
|
|
49
|
+
allowedValues?: string[];
|
|
50
|
+
minLength?: number;
|
|
51
|
+
maxLength?: number;
|
|
52
|
+
minimum?: number;
|
|
53
|
+
maximum?: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Extracted value stored in conversation analysis
|
|
57
|
+
*/
|
|
58
|
+
export interface ExtractedStructuredOutput {
|
|
59
|
+
name: string;
|
|
60
|
+
type: StructuredOutputType;
|
|
61
|
+
value: any;
|
|
62
|
+
extractedAt: Date;
|
|
63
|
+
extractedValue?: any;
|
|
64
|
+
manuallyEdited?: boolean;
|
|
65
|
+
editedAt?: Date;
|
|
66
|
+
editedBy?: string;
|
|
67
|
+
allowedValues?: string[];
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Map of extracted outputs by structuredOutputId
|
|
71
|
+
*/
|
|
72
|
+
export interface StructuredOutputsMap {
|
|
73
|
+
[structuredOutputId: string]: ExtractedStructuredOutput;
|
|
74
|
+
}
|
|
75
|
+
//# sourceMappingURL=structuredOutput.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structuredOutput.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/structuredOutput.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEpE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,cAAc,EAAE,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,GAAG,CAAC;IACX,WAAW,EAAE,IAAI,CAAC;IAClB,cAAc,CAAC,EAAE,GAAG,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,CAAC,kBAAkB,EAAE,MAAM,GAAG,yBAAyB,CAAC;CACzD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"structuredOutput.js","sourceRoot":"","sources":["../../../src/voice/interfaces/structuredOutput.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Telephony Interfaces
|
|
3
|
+
*/
|
|
4
|
+
import { PhoneNumberType, PhoneNumberStatus } from "../enums/telephony.js";
|
|
5
|
+
/**
|
|
6
|
+
* Phone Number Entity
|
|
7
|
+
*/
|
|
8
|
+
export interface PhoneNumber {
|
|
9
|
+
phoneNumberId: string;
|
|
10
|
+
userId: string;
|
|
11
|
+
agentId?: string;
|
|
12
|
+
number: string;
|
|
13
|
+
friendlyName: string;
|
|
14
|
+
country: string;
|
|
15
|
+
twilioPhoneNumberSid: string;
|
|
16
|
+
type: PhoneNumberType;
|
|
17
|
+
status: PhoneNumberStatus;
|
|
18
|
+
monthlyPrice: number;
|
|
19
|
+
createdAt: Date | string;
|
|
20
|
+
updatedAt: Date | string;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Available Number (from Twilio search)
|
|
24
|
+
*/
|
|
25
|
+
export interface AvailableNumber {
|
|
26
|
+
number: string;
|
|
27
|
+
friendlyName: string;
|
|
28
|
+
country: string;
|
|
29
|
+
region?: string;
|
|
30
|
+
capabilities: {
|
|
31
|
+
voice: boolean;
|
|
32
|
+
sms: boolean;
|
|
33
|
+
mms: boolean;
|
|
34
|
+
};
|
|
35
|
+
monthlyPrice: number;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Agent Telephony Settings
|
|
39
|
+
*/
|
|
40
|
+
export interface AgentTelephonySettings {
|
|
41
|
+
enabled: boolean;
|
|
42
|
+
phoneNumberId?: string;
|
|
43
|
+
phoneNumber?: string;
|
|
44
|
+
handoff?: {
|
|
45
|
+
enabled: boolean;
|
|
46
|
+
targetNumber?: string;
|
|
47
|
+
summaryPrompt?: string;
|
|
48
|
+
};
|
|
49
|
+
sipTrunk?: {
|
|
50
|
+
outboundTrunkId?: string;
|
|
51
|
+
};
|
|
52
|
+
settings?: {
|
|
53
|
+
recordCalls?: boolean;
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Phone Call Metadata
|
|
58
|
+
*/
|
|
59
|
+
export interface PhoneCallMetadata {
|
|
60
|
+
callSid: string;
|
|
61
|
+
from: string;
|
|
62
|
+
to: string;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Handoff Metadata
|
|
66
|
+
*/
|
|
67
|
+
export interface HandoffMetadata {
|
|
68
|
+
occurred: boolean;
|
|
69
|
+
targetNumber?: string;
|
|
70
|
+
transferredAt?: Date | string;
|
|
71
|
+
summary?: string;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Telephony Usage Metrics
|
|
75
|
+
*/
|
|
76
|
+
export interface TelephonyUsage {
|
|
77
|
+
provider: string;
|
|
78
|
+
duration?: number;
|
|
79
|
+
billedMinutes?: number;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Search Numbers Parameters
|
|
83
|
+
*/
|
|
84
|
+
export interface SearchNumbersParams {
|
|
85
|
+
country?: string;
|
|
86
|
+
areaCode?: string;
|
|
87
|
+
contains?: string;
|
|
88
|
+
limit?: number;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Purchase Number Request
|
|
92
|
+
*/
|
|
93
|
+
export interface PurchaseNumberRequest {
|
|
94
|
+
number: string;
|
|
95
|
+
friendlyName: string;
|
|
96
|
+
country: string;
|
|
97
|
+
agentId?: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Verify BYOP Request
|
|
101
|
+
*/
|
|
102
|
+
export interface VerifyBYOPRequest {
|
|
103
|
+
number: string;
|
|
104
|
+
accountSid: string;
|
|
105
|
+
authToken: string;
|
|
106
|
+
friendlyName?: string;
|
|
107
|
+
country?: string;
|
|
108
|
+
agentId?: string;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Assign Number Request
|
|
112
|
+
*/
|
|
113
|
+
export interface AssignNumberRequest {
|
|
114
|
+
agentId: string;
|
|
115
|
+
}
|
|
116
|
+
//# sourceMappingURL=telephony.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telephony.d.ts","sourceRoot":"","sources":["../../../src/voice/interfaces/telephony.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telephony.js","sourceRoot":"","sources":["../../../src/voice/interfaces/telephony.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|