@prvt/integration-sdk 0.1.0 → 0.2.0
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/README.md +67 -1
- package/dist/client.d.ts +2 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +111 -4
- package/dist/client.js.map +1 -1
- package/dist/constants.d.ts +7 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +7 -0
- package/dist/constants.js.map +1 -0
- package/dist/errors.d.ts +7 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +14 -0
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +30 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/validation.d.ts.map +1 -1
- package/dist/validation.js +5 -1
- package/dist/validation.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -38,6 +38,7 @@ if (!integrationKey) throw new Error("PRVT_INTEGRATION_KEY is required");
|
|
|
38
38
|
const integration = createPrvtIntegration({
|
|
39
39
|
baseUrl: "https://call.example.com",
|
|
40
40
|
integrationKey,
|
|
41
|
+
displayName: "Transcript bot",
|
|
41
42
|
});
|
|
42
43
|
|
|
43
44
|
const session = await integration.connect({
|
|
@@ -60,6 +61,7 @@ process.once("SIGINT", async () => {
|
|
|
60
61
|
`session.room` is the official `@livekit/rtc-node` `Room`. Use its track,
|
|
61
62
|
participant, text-stream, and data APIs directly. The integration's stable
|
|
62
63
|
identity, expiry, and effective permissions are also available on the session.
|
|
64
|
+
prvt-specific profile, pin, and reaction helpers are described below.
|
|
63
65
|
|
|
64
66
|
## Exchange without connecting
|
|
65
67
|
|
|
@@ -78,7 +80,11 @@ const token = await integration.exchangeToken();
|
|
|
78
80
|
|
|
79
81
|
The participant JWT is valid for five minutes and exactly one managed room.
|
|
80
82
|
Fetch a fresh token before a full reconnect instead of persisting it as a
|
|
81
|
-
replacement for the integration key.
|
|
83
|
+
replacement for the integration key. `displayName` is optional; when omitted,
|
|
84
|
+
the name chosen when the integration key was created is used. When supplied,
|
|
85
|
+
the server normalizes and validates it for that exchange without changing the
|
|
86
|
+
owner-facing integration record. The effective name is available on the token
|
|
87
|
+
and on `session.displayName`.
|
|
82
88
|
|
|
83
89
|
## Permissions
|
|
84
90
|
|
|
@@ -93,6 +99,60 @@ The server returns the effective permissions with every exchange:
|
|
|
93
99
|
|
|
94
100
|
`PRVT_CHAT_TOPIC` exports the exact `prvt.chat` topic name.
|
|
95
101
|
|
|
102
|
+
## Profile picture and status
|
|
103
|
+
|
|
104
|
+
Update the connected bot's live profile attributes through the authenticated
|
|
105
|
+
prvt API. A status can hold changing context such as a music bot's current song:
|
|
106
|
+
|
|
107
|
+
```ts
|
|
108
|
+
await session.updateProfile({
|
|
109
|
+
profilePicture: "data:image/webp;base64,<base64-webp-bytes>",
|
|
110
|
+
statusMessage: "Playing Midnight City",
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
await session.updateProfile({ statusMessage: "Playing Intro" });
|
|
114
|
+
await session.updateProfile({ statusMessage: null });
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
Pictures must be PNG, JPEG, or WebP data URLs no longer than 12,000 characters.
|
|
118
|
+
Remote URLs and SVG are rejected so participant browsers never contact a
|
|
119
|
+
bot-selected image host. Status messages are normalized to one line and limited to
|
|
120
|
+
128 characters. `null` clears a field. Updates affect only the active LiveKit
|
|
121
|
+
participant and are not stored in the managed-room database, so reapply the
|
|
122
|
+
profile after reconnecting. Updating while disconnected returns
|
|
123
|
+
`INTEGRATION_NOT_CONNECTED`. The API accepts 60 profile updates per integration
|
|
124
|
+
per minute and returns the ordinary `RATE_LIMITED` error plus `Retry-After`
|
|
125
|
+
after that bound.
|
|
126
|
+
|
|
127
|
+
## Chat pins
|
|
128
|
+
|
|
129
|
+
With `publishData`, an integration can pin and unpin a message by the LiveKit
|
|
130
|
+
chat message ID:
|
|
131
|
+
|
|
132
|
+
```ts
|
|
133
|
+
const message = await session.sendMessage("Voting closes in two minutes");
|
|
134
|
+
await session.pinMessage(message.id);
|
|
135
|
+
await session.unpinMessage(message.id);
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
`sendMessage()` sends the normalized text on `PRVT_CHAT_TOPIC` and returns its
|
|
139
|
+
stream ID. Pins use versioned reliable packets on `PRVT_CHAT_PINS_TOPIC`. An unpin clears
|
|
140
|
+
only the named current pin, so a delayed unpin cannot remove a newer one. Pins
|
|
141
|
+
are ephemeral like chat: there is no persistence, replay, or late-join history.
|
|
142
|
+
|
|
143
|
+
## Bot reactions and rate limit
|
|
144
|
+
|
|
145
|
+
With `publishData`, send any emoji in `PRVT_REACTION_EMOJI`:
|
|
146
|
+
|
|
147
|
+
```ts
|
|
148
|
+
await session.sendReaction("👏");
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Each SDK session accepts at most three reactions per rolling ten seconds. A
|
|
152
|
+
fourth throws `PrvtReactionRateLimitError` and exposes `retryAfterMs`. The web
|
|
153
|
+
client enforces the same per-integration display limit even when a bot publishes
|
|
154
|
+
directly through LiveKit. Reactions use lossy packets on `PRVT_REACTIONS_TOPIC`.
|
|
155
|
+
|
|
96
156
|
Personal integrations created from Room tools currently receive all three
|
|
97
157
|
permissions. The owner API can create integrations with selected permissions.
|
|
98
158
|
|
|
@@ -102,8 +162,10 @@ permissions. The owner API can create integrations with selected permissions.
|
|
|
102
162
|
import {
|
|
103
163
|
PrvtApiError,
|
|
104
164
|
PrvtConnectionError,
|
|
165
|
+
PrvtDataPublishingUnavailableError,
|
|
105
166
|
PrvtNetworkError,
|
|
106
167
|
PrvtProtocolError,
|
|
168
|
+
PrvtReactionRateLimitError,
|
|
107
169
|
} from "@prvt/integration-sdk";
|
|
108
170
|
|
|
109
171
|
try {
|
|
@@ -117,6 +179,10 @@ try {
|
|
|
117
179
|
console.error("The API response did not match the SDK contract");
|
|
118
180
|
} else if (error instanceof PrvtConnectionError) {
|
|
119
181
|
console.error("LiveKit connection failed");
|
|
182
|
+
} else if (error instanceof PrvtReactionRateLimitError) {
|
|
183
|
+
console.error(`Retry the reaction in ${error.retryAfterMs} ms`);
|
|
184
|
+
} else if (error instanceof PrvtDataPublishingUnavailableError) {
|
|
185
|
+
console.error("This integration cannot publish room data");
|
|
120
186
|
}
|
|
121
187
|
}
|
|
122
188
|
```
|
package/dist/client.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { Room } from "@livekit/rtc-node";
|
|
2
|
-
import type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, IntegrationToken, PrvtIntegration, PrvtIntegrationSession } from "./types.js";
|
|
2
|
+
import type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, IntegrationProfileUpdate, IntegrationToken, PrvtIntegration, PrvtIntegrationSession } from "./types.js";
|
|
3
3
|
export type RoomFactory = () => Promise<Room>;
|
|
4
4
|
export declare class PrvtIntegrationClient implements PrvtIntegration {
|
|
5
5
|
#private;
|
|
6
6
|
constructor(options: CreatePrvtIntegrationOptions, roomFactory?: RoomFactory);
|
|
7
7
|
exchangeToken(options?: ExchangeTokenOptions): Promise<IntegrationToken>;
|
|
8
|
+
updateProfile(profile: IntegrationProfileUpdate, options?: ExchangeTokenOptions): Promise<void>;
|
|
8
9
|
connect(options?: ConnectIntegrationOptions): Promise<PrvtIntegrationSession>;
|
|
9
10
|
}
|
|
10
11
|
export declare const createPrvtIntegration: (options: CreatePrvtIntegrationOptions) => PrvtIntegration;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAU9C,OAAO,KAAK,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EAExB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AAUpB,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AA4H9C,qBAAa,qBAAsB,YAAW,eAAe;;gBAO/C,OAAO,EAAE,4BAA4B,EAAE,WAAW,GAAE,WAAgC;IAS1F,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAiC5E,aAAa,CAAC,OAAO,EAAE,wBAAwB,EAAE,OAAO,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BnG,OAAO,CAAC,OAAO,GAAE,yBAA8B,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAYxF;AAED,eAAO,MAAM,qBAAqB,GAAI,SAAS,4BAA4B,KAAG,eAE7E,CAAC"}
|
package/dist/client.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { PrvtApiError, PrvtConnectionError, PrvtNetworkError, PrvtProtocolError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
1
|
+
import { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
2
|
+
import { PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC } from "./constants.js";
|
|
2
3
|
import { normalizeBaseUrl, normalizeIntegrationKey, parseApiErrorCode, parseIntegrationToken, parseRetryAfter, } from "./validation.js";
|
|
3
4
|
const defaultRoomFactory = async () => {
|
|
4
5
|
try {
|
|
@@ -18,29 +19,104 @@ const abortReason = (signal) => {
|
|
|
18
19
|
error.name = "AbortError";
|
|
19
20
|
return error;
|
|
20
21
|
};
|
|
22
|
+
const messageIdPattern = /^[A-Za-z0-9_-]{1,128}$/;
|
|
23
|
+
const reactionEmoji = new Set(PRVT_REACTION_EMOJI);
|
|
24
|
+
const encoder = new TextEncoder();
|
|
21
25
|
class IntegrationSession {
|
|
22
26
|
room;
|
|
23
27
|
participantIdentity;
|
|
28
|
+
displayName;
|
|
24
29
|
expiresAt;
|
|
25
30
|
permissions;
|
|
26
|
-
|
|
31
|
+
#client;
|
|
32
|
+
#acceptedReactionAt = [];
|
|
33
|
+
constructor(client, room, token) {
|
|
34
|
+
this.#client = client;
|
|
27
35
|
this.room = room;
|
|
28
36
|
this.participantIdentity = token.participantIdentity;
|
|
37
|
+
this.displayName = token.displayName;
|
|
29
38
|
this.expiresAt = token.expiresAt;
|
|
30
39
|
this.permissions = token.permissions;
|
|
31
40
|
}
|
|
32
41
|
async disconnect() {
|
|
33
42
|
await this.room.disconnect();
|
|
34
43
|
}
|
|
44
|
+
async updateProfile(profile, options = {}) {
|
|
45
|
+
await this.#client.updateProfile(profile, options);
|
|
46
|
+
}
|
|
47
|
+
async sendMessage(message) {
|
|
48
|
+
if (typeof message !== "string")
|
|
49
|
+
throw new TypeError("message must be a string");
|
|
50
|
+
const normalized = message.trim();
|
|
51
|
+
if (normalized.length === 0 || normalized.length > 2_000) {
|
|
52
|
+
throw new TypeError("message must contain 1 to 2000 characters");
|
|
53
|
+
}
|
|
54
|
+
const sent = await this.dataPublisher().sendText(normalized, { topic: PRVT_CHAT_TOPIC });
|
|
55
|
+
return { id: sent.streamId, message: normalized, timestamp: sent.timestamp };
|
|
56
|
+
}
|
|
57
|
+
async pinMessage(messageId) {
|
|
58
|
+
await this.publishPin(messageId, "pin");
|
|
59
|
+
}
|
|
60
|
+
async unpinMessage(messageId) {
|
|
61
|
+
await this.publishPin(messageId, "unpin");
|
|
62
|
+
}
|
|
63
|
+
async sendReaction(emoji, id = crypto.randomUUID()) {
|
|
64
|
+
if (!reactionEmoji.has(emoji))
|
|
65
|
+
throw new TypeError("emoji must be a supported prvt reaction");
|
|
66
|
+
if (!messageIdPattern.test(id))
|
|
67
|
+
throw new TypeError("reaction id must use 1 to 128 letters, numbers, underscores, or hyphens");
|
|
68
|
+
const now = Date.now();
|
|
69
|
+
while (this.#acceptedReactionAt[0] !== undefined && this.#acceptedReactionAt[0] <= now - 10_000) {
|
|
70
|
+
this.#acceptedReactionAt.shift();
|
|
71
|
+
}
|
|
72
|
+
if (this.#acceptedReactionAt.length >= 3) {
|
|
73
|
+
throw new PrvtReactionRateLimitError(Math.max(1, this.#acceptedReactionAt[0] + 10_000 - now));
|
|
74
|
+
}
|
|
75
|
+
this.#acceptedReactionAt.push(now);
|
|
76
|
+
try {
|
|
77
|
+
await this.dataPublisher().publishData(encoder.encode(JSON.stringify({ v: 1, id, emoji })), {
|
|
78
|
+
reliable: false,
|
|
79
|
+
topic: PRVT_REACTIONS_TOPIC,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
catch (caught) {
|
|
83
|
+
const index = this.#acceptedReactionAt.indexOf(now);
|
|
84
|
+
if (index >= 0)
|
|
85
|
+
this.#acceptedReactionAt.splice(index, 1);
|
|
86
|
+
throw caught;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
async publishPin(messageId, action) {
|
|
90
|
+
if (!messageIdPattern.test(messageId)) {
|
|
91
|
+
throw new TypeError("messageId must use 1 to 128 letters, numbers, underscores, or hyphens");
|
|
92
|
+
}
|
|
93
|
+
await this.dataPublisher().publishData(encoder.encode(JSON.stringify({ v: 1, action, messageId })), {
|
|
94
|
+
reliable: true,
|
|
95
|
+
topic: PRVT_CHAT_PINS_TOPIC,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
dataPublisher() {
|
|
99
|
+
const publisher = this.room.localParticipant;
|
|
100
|
+
if (!this.permissions.publishData
|
|
101
|
+
|| publisher === undefined
|
|
102
|
+
|| publisher === null
|
|
103
|
+
|| typeof publisher.publishData !== "function"
|
|
104
|
+
|| typeof publisher.sendText !== "function") {
|
|
105
|
+
throw new PrvtDataPublishingUnavailableError();
|
|
106
|
+
}
|
|
107
|
+
return publisher;
|
|
108
|
+
}
|
|
35
109
|
}
|
|
36
110
|
export class PrvtIntegrationClient {
|
|
37
111
|
#baseUrl;
|
|
38
112
|
#integrationKey;
|
|
113
|
+
#displayName;
|
|
39
114
|
#fetch;
|
|
40
115
|
#roomFactory;
|
|
41
116
|
constructor(options, roomFactory = defaultRoomFactory) {
|
|
42
117
|
this.#baseUrl = normalizeBaseUrl(options.baseUrl);
|
|
43
118
|
this.#integrationKey = normalizeIntegrationKey(options.integrationKey);
|
|
119
|
+
this.#displayName = options.displayName;
|
|
44
120
|
this.#fetch = options.fetch ?? globalThis.fetch;
|
|
45
121
|
if (typeof this.#fetch !== "function")
|
|
46
122
|
throw new TypeError("fetch is not available in this Node.js runtime");
|
|
@@ -56,7 +132,7 @@ export class PrvtIntegrationClient {
|
|
|
56
132
|
Authorization: `Bearer ${this.#integrationKey}`,
|
|
57
133
|
"Content-Type": "application/json",
|
|
58
134
|
},
|
|
59
|
-
body: "{}",
|
|
135
|
+
body: this.#displayName === undefined ? "{}" : JSON.stringify({ displayName: this.#displayName }),
|
|
60
136
|
signal: options.signal,
|
|
61
137
|
});
|
|
62
138
|
}
|
|
@@ -75,6 +151,37 @@ export class PrvtIntegrationClient {
|
|
|
75
151
|
throw new PrvtProtocolError();
|
|
76
152
|
return token;
|
|
77
153
|
}
|
|
154
|
+
async updateProfile(profile, options = {}) {
|
|
155
|
+
if (profile === null || typeof profile !== "object" || Array.isArray(profile)) {
|
|
156
|
+
throw new TypeError("profile must contain a profilePicture or statusMessage");
|
|
157
|
+
}
|
|
158
|
+
const keys = Object.keys(profile);
|
|
159
|
+
if (keys.length === 0 || keys.some((key) => key !== "profilePicture" && key !== "statusMessage")) {
|
|
160
|
+
throw new TypeError("profile must contain a profilePicture or statusMessage");
|
|
161
|
+
}
|
|
162
|
+
let response;
|
|
163
|
+
try {
|
|
164
|
+
response = await this.#fetch(new URL("/api/v1/integrations/profile", this.#baseUrl), {
|
|
165
|
+
method: "POST",
|
|
166
|
+
headers: {
|
|
167
|
+
Accept: "application/json",
|
|
168
|
+
Authorization: `Bearer ${this.#integrationKey}`,
|
|
169
|
+
"Content-Type": "application/json",
|
|
170
|
+
},
|
|
171
|
+
body: JSON.stringify(profile),
|
|
172
|
+
signal: options.signal,
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
catch (caught) {
|
|
176
|
+
if (isAbortError(caught, options.signal))
|
|
177
|
+
throw options.signal?.aborted ? abortReason(options.signal) : caught;
|
|
178
|
+
throw new PrvtNetworkError();
|
|
179
|
+
}
|
|
180
|
+
if (!response.ok) {
|
|
181
|
+
const body = await response.json().catch(() => null);
|
|
182
|
+
throw new PrvtApiError(parseApiErrorCode(body), response.status, parseRetryAfter(response.headers.get("Retry-After")));
|
|
183
|
+
}
|
|
184
|
+
}
|
|
78
185
|
async connect(options = {}) {
|
|
79
186
|
const token = await this.exchangeToken({ signal: options.signal });
|
|
80
187
|
if (options.signal?.aborted)
|
|
@@ -87,7 +194,7 @@ export class PrvtIntegrationClient {
|
|
|
87
194
|
await room.disconnect().catch(() => { });
|
|
88
195
|
throw new PrvtConnectionError();
|
|
89
196
|
}
|
|
90
|
-
return new IntegrationSession(room, token);
|
|
197
|
+
return new IntegrationSession(this, room, token);
|
|
91
198
|
}
|
|
92
199
|
}
|
|
93
200
|
export const createPrvtIntegration = (options) => (new PrvtIntegrationClient(options));
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const PRVT_CHAT_TOPIC = "prvt.chat";
|
|
2
|
+
export declare const PRVT_CHAT_PINS_TOPIC = "prvt.chat.pins";
|
|
3
|
+
export declare const PRVT_REACTIONS_TOPIC = "prvt.reactions";
|
|
4
|
+
export declare const PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE = "prvt.integration.profilePicture";
|
|
5
|
+
export declare const PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE = "prvt.integration.statusMessage";
|
|
6
|
+
export declare const PRVT_REACTION_EMOJI: readonly ["👍", "❤️", "😂", "😮", "😢", "👏", "🎉", "🤔"];
|
|
7
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cAAc,CAAC;AAC3C,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAO,MAAM,0CAA0C,oCAAoC,CAAC;AAC5F,eAAO,MAAM,yCAAyC,mCAAmC,CAAC;AAE1F,eAAO,MAAM,mBAAmB,2DAA4D,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export const PRVT_CHAT_TOPIC = "prvt.chat";
|
|
2
|
+
export const PRVT_CHAT_PINS_TOPIC = "prvt.chat.pins";
|
|
3
|
+
export const PRVT_REACTIONS_TOPIC = "prvt.reactions";
|
|
4
|
+
export const PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE = "prvt.integration.profilePicture";
|
|
5
|
+
export const PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE = "prvt.integration.statusMessage";
|
|
6
|
+
export const PRVT_REACTION_EMOJI = ["👍", "❤️", "😂", "😮", "😢", "👏", "🎉", "🤔"];
|
|
7
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,WAAW,CAAC;AAC3C,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AACrD,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAErD,MAAM,CAAC,MAAM,0CAA0C,GAAG,iCAAiC,CAAC;AAC5F,MAAM,CAAC,MAAM,yCAAyC,GAAG,gCAAgC,CAAC;AAE1F,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -17,4 +17,11 @@ export declare class PrvtRtcUnavailableError extends Error {
|
|
|
17
17
|
export declare class PrvtConnectionError extends Error {
|
|
18
18
|
constructor();
|
|
19
19
|
}
|
|
20
|
+
export declare class PrvtDataPublishingUnavailableError extends Error {
|
|
21
|
+
constructor();
|
|
22
|
+
}
|
|
23
|
+
export declare class PrvtReactionRateLimitError extends Error {
|
|
24
|
+
readonly retryAfterMs: number;
|
|
25
|
+
constructor(retryAfterMs: number);
|
|
26
|
+
}
|
|
20
27
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAExB,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;CAO/E;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C;AAED,qBAAa,iBAAkB,SAAQ,KAAK;;CAK3C;AAED,qBAAa,uBAAwB,SAAQ,KAAK;;CAKjD;AAED,qBAAa,mBAAoB,SAAQ,KAAK;;CAK7C"}
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,qBAAa,YAAa,SAAQ,KAAK;IACrC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;gBAExB,IAAI,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,CAAC,EAAE,MAAM;CAO/E;AAED,qBAAa,gBAAiB,SAAQ,KAAK;;CAK1C;AAED,qBAAa,iBAAkB,SAAQ,KAAK;;CAK3C;AAED,qBAAa,uBAAwB,SAAQ,KAAK;;CAKjD;AAED,qBAAa,mBAAoB,SAAQ,KAAK;;CAK7C;AAED,qBAAa,kCAAmC,SAAQ,KAAK;;CAK5D;AAED,qBAAa,0BAA2B,SAAQ,KAAK;IACnD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAElB,YAAY,EAAE,MAAM;CAKjC"}
|
package/dist/errors.js
CHANGED
|
@@ -35,4 +35,18 @@ export class PrvtConnectionError extends Error {
|
|
|
35
35
|
this.name = "PrvtConnectionError";
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
+
export class PrvtDataPublishingUnavailableError extends Error {
|
|
39
|
+
constructor() {
|
|
40
|
+
super("This integration session cannot publish room data");
|
|
41
|
+
this.name = "PrvtDataPublishingUnavailableError";
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
export class PrvtReactionRateLimitError extends Error {
|
|
45
|
+
retryAfterMs;
|
|
46
|
+
constructor(retryAfterMs) {
|
|
47
|
+
super("An integration may send at most three reactions per ten seconds");
|
|
48
|
+
this.name = "PrvtReactionRateLimitError";
|
|
49
|
+
this.retryAfterMs = retryAfterMs;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
38
52
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAmB;IACvB,MAAM,CAAS;IACf,iBAAiB,CAAU;IAEpC,YAAY,IAAsB,EAAE,MAAc,EAAE,iBAA0B;QAC5E,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,iBAAiB,KAAK,SAAS;YAAE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAClF,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC;QACE,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C;QACE,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD;QACE,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C;QACE,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,YAAa,SAAQ,KAAK;IAC5B,IAAI,CAAmB;IACvB,MAAM,CAAS;IACf,iBAAiB,CAAU;IAEpC,YAAY,IAAsB,EAAE,MAAc,EAAE,iBAA0B;QAC5E,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;QAC3C,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,iBAAiB,KAAK,SAAS;YAAE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAClF,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACzC;QACE,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;IACjC,CAAC;CACF;AAED,MAAM,OAAO,iBAAkB,SAAQ,KAAK;IAC1C;QACE,KAAK,CAAC,2CAA2C,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,GAAG,mBAAmB,CAAC;IAClC,CAAC;CACF;AAED,MAAM,OAAO,uBAAwB,SAAQ,KAAK;IAChD;QACE,KAAK,CAAC,yDAAyD,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IACxC,CAAC;CACF;AAED,MAAM,OAAO,mBAAoB,SAAQ,KAAK;IAC5C;QACE,KAAK,CAAC,oDAAoD,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,qBAAqB,CAAC;IACpC,CAAC;CACF;AAED,MAAM,OAAO,kCAAmC,SAAQ,KAAK;IAC3D;QACE,KAAK,CAAC,mDAAmD,CAAC,CAAC;QAC3D,IAAI,CAAC,IAAI,GAAG,oCAAoC,CAAC;IACnD,CAAC;CACF;AAED,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IAC1C,YAAY,CAAS;IAE9B,YAAY,YAAoB;QAC9B,KAAK,CAAC,iEAAiE,CAAC,CAAC;QACzE,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;QACzC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export { PrvtApiError, PrvtConnectionError, PrvtNetworkError, PrvtProtocolError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
1
|
+
export { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
2
2
|
export { createPrvtIntegration } from "./client.js";
|
|
3
|
-
export type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, IntegrationPermissions, IntegrationToken, PrvtApiErrorCode, PrvtIntegration, PrvtIntegrationSession, } from "./types.js";
|
|
4
|
-
export
|
|
3
|
+
export type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, ChatPinPacket, IntegrationChatMessage, IntegrationProfileUpdate, IntegrationPermissions, IntegrationToken, PrvtApiErrorCode, PrvtIntegration, PrvtIntegrationSession, ReactionEmoji, ReactionPacket, } from "./types.js";
|
|
4
|
+
export { PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE, PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC, } from "./constants.js";
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,kCAAkC,EAClC,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,YAAY,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,aAAa,EACb,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,0CAA0C,EAC1C,yCAAyC,EACzC,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { PrvtApiError, PrvtConnectionError, PrvtNetworkError, PrvtProtocolError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
1
|
+
export { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
2
2
|
export { createPrvtIntegration } from "./client.js";
|
|
3
|
-
export
|
|
3
|
+
export { PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE, PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC, } from "./constants.js";
|
|
4
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,gBAAgB,EAChB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,kCAAkC,EAClC,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAgBpD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,0CAA0C,EAC1C,yCAAyC,EACzC,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import type { Room, RoomOptions } from "@livekit/rtc-node";
|
|
2
|
+
import type { PRVT_REACTION_EMOJI } from "./constants.js";
|
|
2
3
|
export type IntegrationPermissions = {
|
|
3
4
|
subscribeMedia: boolean;
|
|
4
5
|
publishMicrophone: boolean;
|
|
5
6
|
publishData: boolean;
|
|
6
7
|
};
|
|
7
|
-
export type PrvtApiErrorCode = "INVALID_JSON" | "INVALID_REQUEST" | "INVALID_ROOM_NAME" | "INVALID_PARTICIPANT_NAME" | "INVALID_INTEGRATION_NAME" | "INVALID_INTEGRATION_PERMISSIONS" | "INVALID_CURSOR" | "UNAUTHORIZED" | "FORBIDDEN" | "ROOM_NOT_FOUND" | "INTEGRATION_NOT_FOUND" | "ROOM_CLOSED" | "INTEGRATION_REVOKED" | "ROOM_CAPACITY_REACHED" | "INTEGRATION_CAPACITY_REACHED" | "REQUEST_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "RATE_LIMITED" | "IDENTIFIER_GENERATION_FAILED" | "STORAGE_UNAVAILABLE" | "LIVEKIT_UNAVAILABLE" | "NOT_FOUND" | "UNKNOWN_ERROR";
|
|
8
|
+
export type PrvtApiErrorCode = "INVALID_JSON" | "INVALID_REQUEST" | "INVALID_ROOM_NAME" | "INVALID_PARTICIPANT_NAME" | "INVALID_INTEGRATION_NAME" | "INVALID_INTEGRATION_PERMISSIONS" | "INVALID_CURSOR" | "UNAUTHORIZED" | "FORBIDDEN" | "ROOM_NOT_FOUND" | "INTEGRATION_NOT_FOUND" | "ROOM_CLOSED" | "INTEGRATION_REVOKED" | "INTEGRATION_NOT_CONNECTED" | "ROOM_CAPACITY_REACHED" | "INTEGRATION_CAPACITY_REACHED" | "REQUEST_TOO_LARGE" | "UNSUPPORTED_MEDIA_TYPE" | "RATE_LIMITED" | "IDENTIFIER_GENERATION_FAILED" | "STORAGE_UNAVAILABLE" | "LIVEKIT_UNAVAILABLE" | "NOT_FOUND" | "UNKNOWN_ERROR";
|
|
8
9
|
export type IntegrationToken = {
|
|
9
10
|
participantToken: string;
|
|
10
11
|
serverUrl: string;
|
|
11
12
|
participantIdentity: string;
|
|
13
|
+
displayName: string;
|
|
12
14
|
expiresAt: string;
|
|
13
15
|
permissions: IntegrationPermissions;
|
|
14
16
|
};
|
|
15
17
|
export type CreatePrvtIntegrationOptions = {
|
|
16
18
|
baseUrl: string;
|
|
17
19
|
integrationKey: string;
|
|
20
|
+
displayName?: string;
|
|
18
21
|
fetch?: typeof globalThis.fetch;
|
|
19
22
|
};
|
|
20
23
|
export type ExchangeTokenOptions = {
|
|
@@ -23,11 +26,37 @@ export type ExchangeTokenOptions = {
|
|
|
23
26
|
export type ConnectIntegrationOptions = ExchangeTokenOptions & {
|
|
24
27
|
roomOptions?: RoomOptions;
|
|
25
28
|
};
|
|
29
|
+
export type IntegrationProfileUpdate = {
|
|
30
|
+
profilePicture?: string | null;
|
|
31
|
+
statusMessage?: string | null;
|
|
32
|
+
};
|
|
33
|
+
export type ReactionEmoji = (typeof PRVT_REACTION_EMOJI)[number];
|
|
34
|
+
export type ReactionPacket = {
|
|
35
|
+
v: 1;
|
|
36
|
+
id: string;
|
|
37
|
+
emoji: ReactionEmoji;
|
|
38
|
+
};
|
|
39
|
+
export type ChatPinPacket = {
|
|
40
|
+
v: 1;
|
|
41
|
+
action: "pin" | "unpin";
|
|
42
|
+
messageId: string;
|
|
43
|
+
};
|
|
44
|
+
export type IntegrationChatMessage = {
|
|
45
|
+
id: string;
|
|
46
|
+
message: string;
|
|
47
|
+
timestamp: number;
|
|
48
|
+
};
|
|
26
49
|
export interface PrvtIntegrationSession {
|
|
27
50
|
readonly room: Room;
|
|
28
51
|
readonly participantIdentity: string;
|
|
52
|
+
readonly displayName: string;
|
|
29
53
|
readonly expiresAt: string;
|
|
30
54
|
readonly permissions: IntegrationPermissions;
|
|
55
|
+
sendMessage(message: string): Promise<IntegrationChatMessage>;
|
|
56
|
+
updateProfile(profile: IntegrationProfileUpdate, options?: ExchangeTokenOptions): Promise<void>;
|
|
57
|
+
pinMessage(messageId: string): Promise<void>;
|
|
58
|
+
unpinMessage(messageId: string): Promise<void>;
|
|
59
|
+
sendReaction(emoji: ReactionEmoji, id?: string): Promise<void>;
|
|
31
60
|
disconnect(): Promise<void>;
|
|
32
61
|
}
|
|
33
62
|
export interface PrvtIntegration {
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/validation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0B,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA0B,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAuD7F,eAAO,MAAM,gBAAgB,GAAI,OAAO,MAAM,WAgB7C,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAAI,OAAO,MAAM,WAKpD,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,OAAO,OAAO,KAAG,gBAOlD,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,OAAO,MAAM,GAAG,IAAI,uBAInD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,OAAO,OAAO,KAAG,gBAAgB,GAAG,IAgCzE,CAAC"}
|
package/dist/validation.js
CHANGED
|
@@ -12,6 +12,7 @@ const API_ERROR_CODES = new Set([
|
|
|
12
12
|
"INTEGRATION_NOT_FOUND",
|
|
13
13
|
"ROOM_CLOSED",
|
|
14
14
|
"INTEGRATION_REVOKED",
|
|
15
|
+
"INTEGRATION_NOT_CONNECTED",
|
|
15
16
|
"ROOM_CAPACITY_REACHED",
|
|
16
17
|
"INTEGRATION_CAPACITY_REACHED",
|
|
17
18
|
"REQUEST_TOO_LARGE",
|
|
@@ -82,12 +83,14 @@ export const parseRetryAfter = (value) => {
|
|
|
82
83
|
};
|
|
83
84
|
export const parseIntegrationToken = (value) => {
|
|
84
85
|
if (!isRecord(value)
|
|
85
|
-
|| !hasExactlyKeys(value, ["participantToken", "serverUrl", "participantIdentity", "expiresAt", "permissions"])
|
|
86
|
+
|| !hasExactlyKeys(value, ["participantToken", "serverUrl", "participantIdentity", "displayName", "expiresAt", "permissions"])
|
|
86
87
|
|| typeof value.participantToken !== "string"
|
|
87
88
|
|| value.participantToken.length === 0
|
|
88
89
|
|| typeof value.serverUrl !== "string"
|
|
89
90
|
|| typeof value.participantIdentity !== "string"
|
|
90
91
|
|| value.participantIdentity.length === 0
|
|
92
|
+
|| typeof value.displayName !== "string"
|
|
93
|
+
|| value.displayName.length === 0
|
|
91
94
|
|| typeof value.expiresAt !== "string")
|
|
92
95
|
return null;
|
|
93
96
|
let serverUrl;
|
|
@@ -109,6 +112,7 @@ export const parseIntegrationToken = (value) => {
|
|
|
109
112
|
participantToken: value.participantToken,
|
|
110
113
|
serverUrl: value.serverUrl,
|
|
111
114
|
participantIdentity: value.participantIdentity,
|
|
115
|
+
displayName: value.displayName,
|
|
112
116
|
expiresAt: value.expiresAt,
|
|
113
117
|
permissions,
|
|
114
118
|
};
|
package/dist/validation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAEA,MAAM,eAAe,GAAG,IAAI,GAAG,CAAmB;IAChD,cAAc;IACd,iBAAiB;IACjB,mBAAmB;IACnB,0BAA0B;IAC1B,0BAA0B;IAC1B,iCAAiC;IACjC,gBAAgB;IAChB,cAAc;IACd,WAAW;IACX,gBAAgB;IAChB,uBAAuB;IACvB,aAAa;IACb,qBAAqB;IACrB,uBAAuB;IACvB,8BAA8B;IAC9B,mBAAmB;IACnB,wBAAwB;IACxB,cAAc;IACd,8BAA8B;IAC9B,qBAAqB;IACrB,qBAAqB;IACrB,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAAC,CACrE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CACrE,CAAC;AAEF,MAAM,cAAc,GAAG,CAAC,KAA8B,EAAE,QAA2B,EAAE,EAAE;IACrF,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;IACzC,MAAM,cAAc,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5C,OAAO,MAAM,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM;WACzC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC;AACnE,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CAAC,KAAc,EAAiC,EAAE;IACzE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC;QACvG,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IACE,OAAO,KAAK,CAAC,cAAc,KAAK,SAAS;WACtC,OAAO,KAAK,CAAC,iBAAiB,KAAK,SAAS;WAC5C,OAAO,KAAK,CAAC,WAAW,KAAK,SAAS;QACzC,OAAO,IAAI,CAAC;IACd,OAAO;QACL,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,WAAW,EAAE,KAAK,CAAC,WAAW;KAC/B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,KAAa,EAAE,EAAE;IAChD,IAAI,GAAQ,CAAC;IACb,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;IACpE,CAAC;IACD,IACE,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC;WACpD,GAAG,CAAC,QAAQ,KAAK,EAAE;WACnB,GAAG,CAAC,QAAQ,KAAK,EAAE;WACnB,GAAG,CAAC,QAAQ,KAAK,GAAG;WACpB,GAAG,CAAC,MAAM,KAAK,EAAE;WACjB,GAAG,CAAC,IAAI,KAAK,EAAE;QAClB,MAAM,IAAI,SAAS,CAAC,4CAA4C,CAAC,CAAC;IACpE,OAAO,GAAG,CAAC,MAAM,CAAC;AACpB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,KAAa,EAAE,EAAE;IACvD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,SAAS,CAAC,2CAA2C,CAAC,CAAC;IACnE,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,EAAE,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAc,EAAoB,EAAE;IACpE,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACvF,OAAO,eAAe,CAAC;IACzB,CAAC;IACD,OAAO,eAAe,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,IAAwB,CAAC;QAC9D,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,IAAwB;QACtC,CAAC,CAAC,eAAe,CAAC;AACtB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAoB,EAAE,EAAE;IACtD,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,OAAO,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAc,EAA2B,EAAE;IAC/E,IACE,CAAC,QAAQ,CAAC,KAAK,CAAC;WACb,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,kBAAkB,EAAE,WAAW,EAAE,qBAAqB,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"validation.js","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"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"}
|