@prvt/integration-sdk 0.4.0 → 0.4.2
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/AGENT_PROMPT.md +15 -5
- package/README.md +64 -6
- package/dist/chat-actions.d.ts +4 -0
- package/dist/chat-actions.d.ts.map +1 -1
- package/dist/chat-actions.js +49 -5
- package/dist/chat-actions.js.map +1 -1
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +83 -7
- package/dist/client.js.map +1 -1
- package/dist/constants.d.ts +1 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +1 -0
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +26 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/dist/types.js.map +1 -1
- package/dist/web-app-actions.d.ts +19 -0
- package/dist/web-app-actions.d.ts.map +1 -0
- package/dist/web-app-actions.js +90 -0
- package/dist/web-app-actions.js.map +1 -0
- package/package.json +1 -1
package/AGENT_PROMPT.md
CHANGED
|
@@ -119,11 +119,21 @@ process.once("SIGTERM", shutdown);
|
|
|
119
119
|
- Chat, pins, and reactions are realtime-only. Do not imply persistence,
|
|
120
120
|
replay, recording, or late-join history.
|
|
121
121
|
- `sendMessage()` accepts `format: "markdown"` and a bounded `keyboard` with
|
|
122
|
-
callback or HTTPS
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
122
|
+
callback, HTTPS link, or path-only HTTPS web-app buttons. Callback buttons may include an optional
|
|
123
|
+
toast value, which is returned on the matching `onChatCallback()` event.
|
|
124
|
+
Register `onChatCallback()` to handle direct button events; use
|
|
125
|
+
`acknowledgeChatCallback()` for a targeted accepted or rejected
|
|
126
|
+
acknowledgement. The callback sender identity is derived from LiveKit, not
|
|
127
|
+
the packet body. Make handlers idempotent and unsubscribe them during
|
|
128
|
+
shutdown because delivery is realtime and best-effort.
|
|
129
|
+
- Web-app buttons open an external provider URL in a prvt room modal. Any
|
|
130
|
+
connected integration may use a path-only HTTPS URL. Register
|
|
131
|
+
`onWebAppRequest()` to handle app actions and use
|
|
132
|
+
`respondToWebAppRequest()` for a targeted result. Validate the payload and
|
|
133
|
+
use `senderIdentity` from the SDK; never trust a browser-supplied identity.
|
|
134
|
+
- `editMessage()` can replace a message sent by the current SDK session for up
|
|
135
|
+
to 60 minutes, including its format and keyboard. Edits are ephemeral and
|
|
136
|
+
cannot modify messages sent by an earlier SDK connection.
|
|
127
137
|
- A new connection using the same stable integration identity replaces the
|
|
128
138
|
previous connection. Handle participant removal and disconnect cleanly.
|
|
129
139
|
- Fetch a fresh participant JWT for a full reconnect. Do not persist a JWT as a
|
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@ Node.js 18 or newer is required. `@livekit/rtc-node` is a peer dependency so
|
|
|
18
18
|
the application controls the native realtime runtime version.
|
|
19
19
|
|
|
20
20
|
Coding agents can start from the reusable
|
|
21
|
-
[`AGENT_PROMPT.md`](AGENT_PROMPT.md), which summarizes the supported workflow,
|
|
21
|
+
[`AGENT_PROMPT.md`](https://unpkg.com/@prvt/integration-sdk@latest/AGENT_PROMPT.md), which summarizes the supported workflow,
|
|
22
22
|
security boundaries, permissions, and completion checks.
|
|
23
23
|
|
|
24
24
|
## Create an integration key
|
|
@@ -125,9 +125,12 @@ change a participant's interface automatically.
|
|
|
125
125
|
|
|
126
126
|
## Markdown and callback keyboards
|
|
127
127
|
|
|
128
|
-
Integrations can send bounded Markdown
|
|
129
|
-
|
|
130
|
-
|
|
128
|
+
Integrations can send bounded Markdown, native callback buttons, HTTPS link
|
|
129
|
+
buttons, and embedded web-app buttons. Callback
|
|
130
|
+
buttons may include an optional toast value that is returned with the button
|
|
131
|
+
event and shown to the clicking participant as a temporary chat alert. Raw
|
|
132
|
+
HTML, images, unsafe links, oversized labels, and oversized keyboards are
|
|
133
|
+
rejected by the SDK or ignored by the web client.
|
|
131
134
|
|
|
132
135
|
```ts
|
|
133
136
|
const message = await session.sendMessage("**Choose a track**", {
|
|
@@ -135,9 +138,9 @@ const message = await session.sendMessage("**Choose a track**", {
|
|
|
135
138
|
keyboard: {
|
|
136
139
|
v: 1,
|
|
137
140
|
rows: [[
|
|
138
|
-
{ id: "play", label: "Play", style: "primary" },
|
|
141
|
+
{ id: "play", label: "Play", toast: "play now", style: "primary" },
|
|
139
142
|
{ id: "pause", label: "Pause" },
|
|
140
|
-
{
|
|
143
|
+
{ app: "https://music.example/queue", label: "Queue" },
|
|
141
144
|
]],
|
|
142
145
|
},
|
|
143
146
|
});
|
|
@@ -147,6 +150,7 @@ const stopListening = session.onChatCallback(async (callback) => {
|
|
|
147
150
|
await session.acknowledgeChatCallback(callback, { status: "rejected", text: "Unavailable", alert: true });
|
|
148
151
|
return;
|
|
149
152
|
}
|
|
153
|
+
console.log(callback.toast);
|
|
150
154
|
await session.acknowledgeChatCallback(callback, { status: "accepted", text: "Starting" });
|
|
151
155
|
await session.sendMessage("Started playing.");
|
|
152
156
|
});
|
|
@@ -160,6 +164,60 @@ unsubscribe function during shutdown. The transport is realtime and
|
|
|
160
164
|
best-effort, so actions should be idempotent and no callback should be treated
|
|
161
165
|
as persisted or replayable.
|
|
162
166
|
|
|
167
|
+
### Embedded web apps
|
|
168
|
+
|
|
169
|
+
Use the `app` button field for a path-only HTTPS app URL owned by the connected
|
|
170
|
+
integration:
|
|
171
|
+
|
|
172
|
+
```ts
|
|
173
|
+
const message = await session.sendMessage("Choose a track", {
|
|
174
|
+
keyboard: { v: 1, rows: [[{ app: "https://music.example/queue", label: "Queue" }]] },
|
|
175
|
+
});
|
|
176
|
+
|
|
177
|
+
const stopListening = session.onWebAppRequest(async (request) => {
|
|
178
|
+
if (request.action !== "queue.add") return;
|
|
179
|
+
await queue.add(request.payload);
|
|
180
|
+
await session.respondToWebAppRequest(request, { ok: true, result: { queued: true } });
|
|
181
|
+
});
|
|
182
|
+
```
|
|
183
|
+
|
|
184
|
+
The browser app uses the separate `@prvt/mini-app-sdk` package:
|
|
185
|
+
|
|
186
|
+
```ts
|
|
187
|
+
import { createPrvtMiniApp } from "@prvt/mini-app-sdk";
|
|
188
|
+
|
|
189
|
+
const app = createPrvtMiniApp({ hostOrigin: "https://call.example.com" });
|
|
190
|
+
await app.ready();
|
|
191
|
+
await app.request("queue.add", { trackId: "track_123" });
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
The app receives no room credentials or integration key. `senderIdentity` is
|
|
195
|
+
derived from LiveKit by the Node SDK, not accepted from the browser payload.
|
|
196
|
+
App actions are bounded, targeted, realtime-only, and should be validated and
|
|
197
|
+
idempotent by the integration.
|
|
198
|
+
|
|
199
|
+
### Editing chat messages
|
|
200
|
+
|
|
201
|
+
`editMessage()` replaces an integration-authored chat message, including its
|
|
202
|
+
Markdown format and keyboard, for up to 60 minutes after `sendMessage()`
|
|
203
|
+
returns. Omit `keyboard` to preserve it, provide a new keyboard to replace it,
|
|
204
|
+
or pass `keyboard: null` to remove it. The SDK remembers sent message IDs for
|
|
205
|
+
the current live session and publishes edits on `PRVT_CHAT_EDITS_TOPIC`:
|
|
206
|
+
|
|
207
|
+
```ts
|
|
208
|
+
const message = await session.sendMessage("Preparing the results…");
|
|
209
|
+
await session.editMessage(message.id, "Results are ready", {
|
|
210
|
+
format: "markdown",
|
|
211
|
+
keyboard: {
|
|
212
|
+
v: 1,
|
|
213
|
+
rows: [[{ id: "details", label: "Show details" }]],
|
|
214
|
+
},
|
|
215
|
+
});
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Edits are realtime-only and update the pinned preview when that message is
|
|
219
|
+
pinned. A new SDK connection cannot edit messages sent by an earlier session.
|
|
220
|
+
|
|
163
221
|
## Profile picture and status
|
|
164
222
|
|
|
165
223
|
Update the connected bot's live profile attributes through the authenticated
|
package/dist/chat-actions.d.ts
CHANGED
|
@@ -2,8 +2,12 @@ import type { IntegrationChatCallback, IntegrationChatCallbackAcknowledgement, I
|
|
|
2
2
|
export declare const CHAT_KEYBOARD_VERSION: 1;
|
|
3
3
|
export declare const MAX_CHAT_KEYBOARD_ATTRIBUTE_BYTES = 4096;
|
|
4
4
|
export declare const MAX_CHAT_CALLBACK_PACKET_BYTES = 1024;
|
|
5
|
+
export declare const MAX_CHAT_CALLBACK_TOAST_LENGTH = 512;
|
|
6
|
+
export declare const CHAT_MESSAGE_EDIT_VERSION: 1;
|
|
7
|
+
export declare const MAX_CHAT_MESSAGE_EDIT_PACKET_BYTES = 8192;
|
|
5
8
|
export declare function normalizeChatKeyboard(value: IntegrationChatKeyboard): IntegrationChatKeyboard;
|
|
6
9
|
export declare function encodeChatKeyboardAttribute(keyboard: IntegrationChatKeyboard): string;
|
|
10
|
+
export declare function encodeChatMessageEdit(messageId: string, message: string, format: "plain" | "markdown", keyboard?: IntegrationChatKeyboard): Uint8Array;
|
|
7
11
|
export declare function decodeChatCallback(data: Uint8Array, senderIdentity: string, timestamp?: number): IntegrationChatCallback | null;
|
|
8
12
|
export declare function encodeChatCallbackAcknowledgement(eventId: string, acknowledgement: IntegrationChatCallbackAcknowledgement): Uint8Array;
|
|
9
13
|
//# sourceMappingURL=chat-actions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-actions.d.ts","sourceRoot":"","sources":["../src/chat-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,uBAAuB,EACvB,sCAAsC,EACtC,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,qBAAqB,EAAG,CAAU,CAAC;AAChD,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AACvD,eAAO,MAAM,8BAA8B,OAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-actions.d.ts","sourceRoot":"","sources":["../src/chat-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAGV,uBAAuB,EACvB,sCAAsC,EACtC,uBAAuB,EACxB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,qBAAqB,EAAG,CAAU,CAAC;AAChD,eAAO,MAAM,iCAAiC,OAAQ,CAAC;AACvD,eAAO,MAAM,8BAA8B,OAAQ,CAAC;AACpD,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAClD,eAAO,MAAM,yBAAyB,EAAG,CAAU,CAAC;AACpD,eAAO,MAAM,kCAAkC,OAAQ,CAAC;AAiExD,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,uBAAuB,GAAG,uBAAuB,CAmB7F;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,uBAAuB,GAAG,MAAM,CAErF;AAED,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,OAAO,GAAG,UAAU,EAC5B,QAAQ,CAAC,EAAE,uBAAuB,GACjC,UAAU,CAeZ;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,SAAa,GAAG,uBAAuB,GAAG,IAAI,CAgCnI;AAED,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,sCAAsC,GAAG,UAAU,CActI"}
|
package/dist/chat-actions.js
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export const CHAT_KEYBOARD_VERSION = 1;
|
|
2
2
|
export const MAX_CHAT_KEYBOARD_ATTRIBUTE_BYTES = 4_096;
|
|
3
3
|
export const MAX_CHAT_CALLBACK_PACKET_BYTES = 1_024;
|
|
4
|
+
export const MAX_CHAT_CALLBACK_TOAST_LENGTH = 512;
|
|
5
|
+
export const CHAT_MESSAGE_EDIT_VERSION = 1;
|
|
6
|
+
export const MAX_CHAT_MESSAGE_EDIT_PACKET_BYTES = 8_192;
|
|
4
7
|
const encoder = new TextEncoder();
|
|
5
8
|
const decoder = new TextDecoder("utf-8", { fatal: true });
|
|
6
9
|
const identifierPattern = /^[A-Za-z0-9_-]{1,128}$/;
|
|
@@ -14,6 +17,9 @@ const normalizedLabel = (value) => (typeof value === "string" && value.trim().le
|
|
|
14
17
|
const normalizedStyle = (value) => (typeof value === "string" && styles.has(value)
|
|
15
18
|
? value
|
|
16
19
|
: "secondary");
|
|
20
|
+
const normalizedCallbackToast = (value) => (typeof value === "string" && value.trim().length > 0 && value.trim().length <= MAX_CHAT_CALLBACK_TOAST_LENGTH
|
|
21
|
+
? value.trim()
|
|
22
|
+
: null);
|
|
17
23
|
const safeUrl = (value) => {
|
|
18
24
|
if (typeof value !== "string" || value.length === 0 || value.length > 512)
|
|
19
25
|
return false;
|
|
@@ -25,6 +31,12 @@ const safeUrl = (value) => {
|
|
|
25
31
|
return false;
|
|
26
32
|
}
|
|
27
33
|
};
|
|
34
|
+
const safeAppUrl = (value) => {
|
|
35
|
+
if (!safeUrl(value))
|
|
36
|
+
return false;
|
|
37
|
+
const url = new URL(value);
|
|
38
|
+
return url.search === "" && url.hash === "";
|
|
39
|
+
};
|
|
28
40
|
const normalizeButton = (value) => {
|
|
29
41
|
if (!isRecord(value))
|
|
30
42
|
return null;
|
|
@@ -34,11 +46,19 @@ const normalizeButton = (value) => {
|
|
|
34
46
|
if (value.disabled !== undefined && typeof value.disabled !== "boolean")
|
|
35
47
|
return null;
|
|
36
48
|
const shared = { label, style: normalizedStyle(value.style), disabled: value.disabled ?? false };
|
|
37
|
-
if (typeof value.id === "string" && identifierPattern.test(value.id) && value.url === undefined) {
|
|
38
|
-
|
|
49
|
+
if (typeof value.id === "string" && identifierPattern.test(value.id) && value.url === undefined && value.app === undefined) {
|
|
50
|
+
const toast = value.toast === undefined ? undefined : normalizedCallbackToast(value.toast);
|
|
51
|
+
if (value.toast !== undefined && toast === null)
|
|
52
|
+
return null;
|
|
53
|
+
const button = { ...shared, id: value.id };
|
|
54
|
+
if (typeof toast === "string")
|
|
55
|
+
button.toast = toast;
|
|
56
|
+
return button;
|
|
39
57
|
}
|
|
40
|
-
if (value.id === undefined && safeUrl(value.url))
|
|
58
|
+
if (value.id === undefined && value.message === undefined && value.app === undefined && safeUrl(value.url))
|
|
41
59
|
return { ...shared, url: value.url };
|
|
60
|
+
if (value.id === undefined && value.message === undefined && value.url === undefined && safeAppUrl(value.app))
|
|
61
|
+
return { ...shared, app: value.app };
|
|
42
62
|
return null;
|
|
43
63
|
};
|
|
44
64
|
export function normalizeChatKeyboard(value) {
|
|
@@ -67,13 +87,35 @@ export function normalizeChatKeyboard(value) {
|
|
|
67
87
|
export function encodeChatKeyboardAttribute(keyboard) {
|
|
68
88
|
return JSON.stringify(normalizeChatKeyboard(keyboard));
|
|
69
89
|
}
|
|
90
|
+
export function encodeChatMessageEdit(messageId, message, format, keyboard) {
|
|
91
|
+
if (!messageIdPattern.test(messageId))
|
|
92
|
+
throw new TypeError("messageId must use 1 to 128 letters, numbers, underscores, or hyphens");
|
|
93
|
+
if (message.trim().length === 0 || message.length > 2_000)
|
|
94
|
+
throw new TypeError("message must contain 1 to 2000 characters");
|
|
95
|
+
if (format !== "plain" && format !== "markdown")
|
|
96
|
+
throw new TypeError("format must be plain or markdown");
|
|
97
|
+
const normalizedKeyboard = keyboard === undefined ? undefined : normalizeChatKeyboard(keyboard);
|
|
98
|
+
const encoded = encoder.encode(JSON.stringify({
|
|
99
|
+
v: CHAT_MESSAGE_EDIT_VERSION,
|
|
100
|
+
type: "edit",
|
|
101
|
+
messageId,
|
|
102
|
+
message: message.trim(),
|
|
103
|
+
format,
|
|
104
|
+
...(normalizedKeyboard === undefined ? {} : { keyboard: normalizedKeyboard }),
|
|
105
|
+
}));
|
|
106
|
+
if (encoded.byteLength > MAX_CHAT_MESSAGE_EDIT_PACKET_BYTES)
|
|
107
|
+
throw new TypeError("message edit packet is too large");
|
|
108
|
+
return encoded;
|
|
109
|
+
}
|
|
70
110
|
export function decodeChatCallback(data, senderIdentity, timestamp = Date.now()) {
|
|
71
111
|
if (data.byteLength === 0 || data.byteLength > MAX_CHAT_CALLBACK_PACKET_BYTES)
|
|
72
112
|
return null;
|
|
73
113
|
try {
|
|
74
114
|
const value = JSON.parse(decoder.decode(data));
|
|
75
115
|
if (!isRecord(value)
|
|
76
|
-
|| Object.keys(value).length
|
|
116
|
+
|| Object.keys(value).length < 5
|
|
117
|
+
|| Object.keys(value).length > 6
|
|
118
|
+
|| Object.keys(value).some((key) => !["v", "type", "eventId", "messageId", "buttonId", "toast"].includes(key))
|
|
77
119
|
|| value.v !== 1
|
|
78
120
|
|| value.type !== "button_click"
|
|
79
121
|
|| typeof value.eventId !== "string"
|
|
@@ -81,7 +123,8 @@ export function decodeChatCallback(data, senderIdentity, timestamp = Date.now())
|
|
|
81
123
|
|| typeof value.messageId !== "string"
|
|
82
124
|
|| !messageIdPattern.test(value.messageId)
|
|
83
125
|
|| typeof value.buttonId !== "string"
|
|
84
|
-
|| !identifierPattern.test(value.buttonId)
|
|
126
|
+
|| !identifierPattern.test(value.buttonId)
|
|
127
|
+
|| (value.toast !== undefined && normalizedCallbackToast(value.toast) === null))
|
|
85
128
|
return null;
|
|
86
129
|
return {
|
|
87
130
|
v: 1,
|
|
@@ -89,6 +132,7 @@ export function decodeChatCallback(data, senderIdentity, timestamp = Date.now())
|
|
|
89
132
|
eventId: value.eventId,
|
|
90
133
|
messageId: value.messageId,
|
|
91
134
|
buttonId: value.buttonId,
|
|
135
|
+
...(value.toast === undefined ? {} : { toast: normalizedCallbackToast(value.toast) }),
|
|
92
136
|
senderIdentity,
|
|
93
137
|
timestamp,
|
|
94
138
|
};
|
package/dist/chat-actions.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-actions.js","sourceRoot":"","sources":["../src/chat-actions.ts"],"names":[],"mappings":"AAQA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAU,CAAC;AAChD,MAAM,CAAC,MAAM,iCAAiC,GAAG,KAAK,CAAC;AACvD,MAAM,CAAC,MAAM,8BAA8B,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"chat-actions.js","sourceRoot":"","sources":["../src/chat-actions.ts"],"names":[],"mappings":"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"}
|
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,EAAa,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAUzD,OAAO,KAAK,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAUzD,OAAO,KAAK,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,wBAAwB,EAMxB,gBAAgB,EAGhB,eAAe,EACf,sBAAsB,EAEvB,MAAM,YAAY,CAAC;AA6BpB,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;AA4O9C,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,7 +1,9 @@
|
|
|
1
1
|
import { RoomEvent } from "@livekit/rtc-node";
|
|
2
2
|
import { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { INTEGRATION_CHAT_EDIT_WINDOW_MS } from "./types.js";
|
|
4
|
+
import { PRVT_CHAT_CALLBACK_ACK_TOPIC, PRVT_CHAT_CALLBACK_TOPIC, PRVT_CHAT_EDITS_TOPIC, PRVT_CHAT_FORMAT_ATTRIBUTE, PRVT_CHAT_KEYBOARD_ATTRIBUTE, PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC, } from "./constants.js";
|
|
5
|
+
import { decodeChatCallback, encodeChatCallbackAcknowledgement, encodeChatMessageEdit, encodeChatKeyboardAttribute, normalizeChatKeyboard, } from "./chat-actions.js";
|
|
6
|
+
import { decodeWebAppRequest, encodeWebAppResponse, WEB_APP_REQUEST_TOPIC, WEB_APP_RESPONSE_TOPIC } from "./web-app-actions.js";
|
|
5
7
|
import { normalizeBaseUrl, normalizeIntegrationKey, parseApiErrorCode, parseIntegrationToken, parseRetryAfter, } from "./validation.js";
|
|
6
8
|
const defaultRoomFactory = async () => {
|
|
7
9
|
try {
|
|
@@ -32,15 +34,27 @@ class IntegrationSession {
|
|
|
32
34
|
permissions;
|
|
33
35
|
#client;
|
|
34
36
|
#acceptedReactionAt = [];
|
|
37
|
+
#sentChatMessages = new Map();
|
|
35
38
|
#chatCallbackListeners = new Set();
|
|
39
|
+
#webAppRequestListeners = new Set();
|
|
36
40
|
#handleDataReceived = (data, participant, _kind, topic) => {
|
|
37
|
-
if (
|
|
41
|
+
if (participant?.identity === undefined)
|
|
38
42
|
return;
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
if (topic === PRVT_CHAT_CALLBACK_TOPIC) {
|
|
44
|
+
const callback = decodeChatCallback(data, participant.identity);
|
|
45
|
+
if (callback === null)
|
|
46
|
+
return;
|
|
47
|
+
for (const listener of this.#chatCallbackListeners)
|
|
48
|
+
void Promise.resolve(listener(callback)).catch(() => undefined);
|
|
41
49
|
return;
|
|
42
|
-
|
|
43
|
-
|
|
50
|
+
}
|
|
51
|
+
if (topic === WEB_APP_REQUEST_TOPIC) {
|
|
52
|
+
const request = decodeWebAppRequest(data, participant.identity);
|
|
53
|
+
if (request === null)
|
|
54
|
+
return;
|
|
55
|
+
for (const listener of this.#webAppRequestListeners)
|
|
56
|
+
void Promise.resolve(listener(request)).catch(() => undefined);
|
|
57
|
+
}
|
|
44
58
|
};
|
|
45
59
|
constructor(client, room, token) {
|
|
46
60
|
this.#client = client;
|
|
@@ -79,6 +93,8 @@ class IntegrationSession {
|
|
|
79
93
|
...(keyboard === undefined ? {} : { [PRVT_CHAT_KEYBOARD_ATTRIBUTE]: encodeChatKeyboardAttribute(keyboard) }),
|
|
80
94
|
},
|
|
81
95
|
});
|
|
96
|
+
this.#sentChatMessages.set(sent.streamId, { sentAt: Date.now(), timestamp: sent.timestamp, format, ...(keyboard === undefined ? {} : { keyboard }) });
|
|
97
|
+
this.pruneSentChatMessages();
|
|
82
98
|
return {
|
|
83
99
|
id: sent.streamId,
|
|
84
100
|
message: normalized,
|
|
@@ -87,6 +103,38 @@ class IntegrationSession {
|
|
|
87
103
|
...(keyboard === undefined ? {} : { keyboard }),
|
|
88
104
|
};
|
|
89
105
|
}
|
|
106
|
+
async editMessage(messageId, message, options = {}) {
|
|
107
|
+
const sent = this.#sentChatMessages.get(messageId);
|
|
108
|
+
if (sent === undefined || Date.now() - sent.sentAt > INTEGRATION_CHAT_EDIT_WINDOW_MS) {
|
|
109
|
+
throw new TypeError("message can only be edited for 60 minutes after it is sent");
|
|
110
|
+
}
|
|
111
|
+
if (typeof message !== "string")
|
|
112
|
+
throw new TypeError("message must be a string");
|
|
113
|
+
const normalized = message.trim();
|
|
114
|
+
if (normalized.length === 0 || normalized.length > 2_000) {
|
|
115
|
+
throw new TypeError("message must contain 1 to 2000 characters");
|
|
116
|
+
}
|
|
117
|
+
if (options.format !== undefined && options.format !== "plain" && options.format !== "markdown") {
|
|
118
|
+
throw new TypeError("format must be plain or markdown");
|
|
119
|
+
}
|
|
120
|
+
const keyboard = options.keyboard === undefined
|
|
121
|
+
? sent.keyboard
|
|
122
|
+
: options.keyboard === null
|
|
123
|
+
? undefined
|
|
124
|
+
: normalizeChatKeyboard(options.keyboard);
|
|
125
|
+
const format = options.format ?? sent.format;
|
|
126
|
+
await this.dataPublisher().publishData(encodeChatMessageEdit(messageId, normalized, format, keyboard), {
|
|
127
|
+
reliable: true,
|
|
128
|
+
topic: PRVT_CHAT_EDITS_TOPIC,
|
|
129
|
+
});
|
|
130
|
+
return {
|
|
131
|
+
id: messageId,
|
|
132
|
+
message: normalized,
|
|
133
|
+
timestamp: sent.timestamp,
|
|
134
|
+
format,
|
|
135
|
+
...(keyboard === undefined ? {} : { keyboard }),
|
|
136
|
+
};
|
|
137
|
+
}
|
|
90
138
|
onChatCallback(listener) {
|
|
91
139
|
if (typeof listener !== "function")
|
|
92
140
|
throw new TypeError("listener must be a function");
|
|
@@ -102,6 +150,21 @@ class IntegrationSession {
|
|
|
102
150
|
destination_identities: [callback.senderIdentity],
|
|
103
151
|
});
|
|
104
152
|
}
|
|
153
|
+
onWebAppRequest(listener) {
|
|
154
|
+
if (typeof listener !== "function")
|
|
155
|
+
throw new TypeError("listener must be a function");
|
|
156
|
+
this.#webAppRequestListeners.add(listener);
|
|
157
|
+
return () => this.#webAppRequestListeners.delete(listener);
|
|
158
|
+
}
|
|
159
|
+
async respondToWebAppRequest(request, response) {
|
|
160
|
+
if (!request || typeof request.senderIdentity !== "string")
|
|
161
|
+
throw new TypeError("request is invalid");
|
|
162
|
+
await this.dataPublisher().publishData(encodeWebAppResponse({ ...response, instanceId: request.instanceId, requestId: request.requestId }), {
|
|
163
|
+
reliable: true,
|
|
164
|
+
topic: WEB_APP_RESPONSE_TOPIC,
|
|
165
|
+
destination_identities: [request.senderIdentity],
|
|
166
|
+
});
|
|
167
|
+
}
|
|
105
168
|
async pinMessage(messageId) {
|
|
106
169
|
await this.publishPin(messageId, "pin");
|
|
107
170
|
}
|
|
@@ -154,6 +217,19 @@ class IntegrationSession {
|
|
|
154
217
|
}
|
|
155
218
|
return publisher;
|
|
156
219
|
}
|
|
220
|
+
pruneSentChatMessages() {
|
|
221
|
+
const cutoff = Date.now() - INTEGRATION_CHAT_EDIT_WINDOW_MS;
|
|
222
|
+
for (const [messageId, sent] of this.#sentChatMessages) {
|
|
223
|
+
if (sent.sentAt <= cutoff)
|
|
224
|
+
this.#sentChatMessages.delete(messageId);
|
|
225
|
+
}
|
|
226
|
+
while (this.#sentChatMessages.size > 256) {
|
|
227
|
+
const oldest = this.#sentChatMessages.keys().next().value;
|
|
228
|
+
if (oldest === undefined)
|
|
229
|
+
break;
|
|
230
|
+
this.#sentChatMessages.delete(oldest);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
157
233
|
}
|
|
158
234
|
export class PrvtIntegrationClient {
|
|
159
235
|
#baseUrl;
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -5,6 +5,7 @@ export declare const PRVT_CHAT_KEYBOARD_ATTRIBUTE = "prvt.chat.keyboard";
|
|
|
5
5
|
export declare const PRVT_CHAT_PINS_TOPIC = "prvt.chat.pins";
|
|
6
6
|
export declare const PRVT_CHAT_CALLBACK_TOPIC = "prvt.chat.callbacks";
|
|
7
7
|
export declare const PRVT_CHAT_CALLBACK_ACK_TOPIC = "prvt.chat.callback.acks";
|
|
8
|
+
export declare const PRVT_CHAT_EDITS_TOPIC = "prvt.chat.edits";
|
|
8
9
|
export declare const PRVT_REACTIONS_TOPIC = "prvt.reactions";
|
|
9
10
|
export declare const PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE = "prvt.integration.profilePicture";
|
|
10
11
|
export declare const PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE = "prvt.integration.statusMessage";
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cAAc,CAAC;AAC3C,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAO,MAAM,0CAA0C,oCAAoC,CAAC;AAC5F,eAAO,MAAM,yCAAyC,mCAAmC,CAAC;AAC1F,eAAO,MAAM,sCAAsC,gCAAgC,CAAC;AAEpF,eAAO,MAAM,mBAAmB,2DAA4D,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,eAAe,cAAc,CAAC;AAC3C,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AACrD,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,4BAA4B,4BAA4B,CAAC;AACtE,eAAO,MAAM,qBAAqB,oBAAoB,CAAC;AACvD,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAO,MAAM,0CAA0C,oCAAoC,CAAC;AAC5F,eAAO,MAAM,yCAAyC,mCAAmC,CAAC;AAC1F,eAAO,MAAM,sCAAsC,gCAAgC,CAAC;AAEpF,eAAO,MAAM,mBAAmB,2DAA4D,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -5,6 +5,7 @@ export const PRVT_CHAT_KEYBOARD_ATTRIBUTE = "prvt.chat.keyboard";
|
|
|
5
5
|
export const PRVT_CHAT_PINS_TOPIC = "prvt.chat.pins";
|
|
6
6
|
export const PRVT_CHAT_CALLBACK_TOPIC = "prvt.chat.callbacks";
|
|
7
7
|
export const PRVT_CHAT_CALLBACK_ACK_TOPIC = "prvt.chat.callback.acks";
|
|
8
|
+
export const PRVT_CHAT_EDITS_TOPIC = "prvt.chat.edits";
|
|
8
9
|
export const PRVT_REACTIONS_TOPIC = "prvt.reactions";
|
|
9
10
|
export const PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE = "prvt.integration.profilePicture";
|
|
10
11
|
export const PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE = "prvt.integration.statusMessage";
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +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,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AACrD,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAC9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,yBAAyB,CAAC;AACtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAErD,MAAM,CAAC,MAAM,0CAA0C,GAAG,iCAAiC,CAAC;AAC5F,MAAM,CAAC,MAAM,yCAAyC,GAAG,gCAAgC,CAAC;AAC1F,MAAM,CAAC,MAAM,sCAAsC,GAAG,6BAA6B,CAAC;AAEpF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAU,CAAC"}
|
|
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,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,0BAA0B,GAAG,kBAAkB,CAAC;AAC7D,MAAM,CAAC,MAAM,4BAA4B,GAAG,oBAAoB,CAAC;AACjE,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AACrD,MAAM,CAAC,MAAM,wBAAwB,GAAG,qBAAqB,CAAC;AAC9D,MAAM,CAAC,MAAM,4BAA4B,GAAG,yBAAyB,CAAC;AACtE,MAAM,CAAC,MAAM,qBAAqB,GAAG,iBAAiB,CAAC;AACvD,MAAM,CAAC,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAErD,MAAM,CAAC,MAAM,0CAA0C,GAAG,iCAAiC,CAAC;AAC5F,MAAM,CAAC,MAAM,yCAAyC,GAAG,gCAAgC,CAAC;AAC1F,MAAM,CAAC,MAAM,sCAAsC,GAAG,6BAA6B,CAAC;AAEpF,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/index.d.ts
CHANGED
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
export { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
2
2
|
export { createPrvtIntegration } from "./client.js";
|
|
3
3
|
export { parseChatMessageLanguage } from "./chat.js";
|
|
4
|
+
export { INTEGRATION_CHAT_EDIT_WINDOW_MS } from "./types.js";
|
|
4
5
|
export type { ChatLanguageCode, } from "./chat.js";
|
|
5
|
-
export type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, ChatPinPacket, IntegrationChatButton, IntegrationChatButtonStyle, IntegrationChatCallback, IntegrationChatCallbackAcknowledgement, IntegrationChatKeyboard, IntegrationChatMessage, IntegrationChatMessageFormat, IntegrationChatMessageOptions, IntegrationProfileUpdate, IntegrationPermissions, IntegrationToken, PrvtApiErrorCode, PrvtIntegration, PrvtIntegrationSession, ReactionEmoji, ReactionPacket, } from "./types.js";
|
|
6
|
-
export {
|
|
6
|
+
export type { ConnectIntegrationOptions, CreatePrvtIntegrationOptions, ExchangeTokenOptions, ChatPinPacket, IntegrationChatButton, IntegrationChatButtonStyle, IntegrationChatCallback, IntegrationChatCallbackAcknowledgement, IntegrationChatEditOptions, IntegrationChatKeyboard, IntegrationChatMessage, IntegrationChatMessageFormat, IntegrationChatMessageOptions, IntegrationProfileUpdate, IntegrationPermissions, IntegrationToken, IntegrationWebAppRequest, IntegrationWebAppResponse, PrvtApiErrorCode, PrvtIntegration, PrvtIntegrationSession, ReactionEmoji, ReactionPacket, } from "./types.js";
|
|
7
|
+
export { WEB_APP_REQUEST_TOPIC, WEB_APP_RESPONSE_TOPIC } from "./web-app-actions.js";
|
|
8
|
+
export { PRVT_CHAT_CALLBACK_ACK_TOPIC, PRVT_CHAT_CALLBACK_TOPIC, PRVT_CHAT_EDITS_TOPIC, PRVT_CHAT_FORMAT_ATTRIBUTE, PRVT_CHAT_KEYBOARD_ATTRIBUTE, PRVT_CHAT_LANGUAGE_ATTRIBUTE, PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE, PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE, PRVT_INTEGRATION_WEBSITE_URL_ATTRIBUTE, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC, } from "./constants.js";
|
|
7
9
|
//# 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,kCAAkC,EAClC,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,YAAY,EACV,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,sCAAsC,EACtC,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,eAAe,EACf,0CAA0C,EAC1C,yCAAyC,EACzC,sCAAsC,EACtC,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
|
|
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,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAC;AAC7D,YAAY,EACV,gBAAgB,GACjB,MAAM,WAAW,CAAC;AACnB,YAAY,EACV,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,0BAA0B,EAC1B,uBAAuB,EACvB,sCAAsC,EACtC,0BAA0B,EAC1B,uBAAuB,EACvB,sBAAsB,EACtB,4BAA4B,EAC5B,6BAA6B,EAC7B,wBAAwB,EACxB,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,aAAa,EACb,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,eAAe,EACf,0CAA0C,EAC1C,yCAAyC,EACzC,sCAAsC,EACtC,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export { PrvtApiError, PrvtConnectionError, PrvtDataPublishingUnavailableError, PrvtNetworkError, PrvtProtocolError, PrvtReactionRateLimitError, PrvtRtcUnavailableError, } from "./errors.js";
|
|
2
2
|
export { createPrvtIntegration } from "./client.js";
|
|
3
3
|
export { parseChatMessageLanguage } from "./chat.js";
|
|
4
|
-
export {
|
|
4
|
+
export { INTEGRATION_CHAT_EDIT_WINDOW_MS } from "./types.js";
|
|
5
|
+
export { WEB_APP_REQUEST_TOPIC, WEB_APP_RESPONSE_TOPIC } from "./web-app-actions.js";
|
|
6
|
+
export { PRVT_CHAT_CALLBACK_ACK_TOPIC, PRVT_CHAT_CALLBACK_TOPIC, PRVT_CHAT_EDITS_TOPIC, PRVT_CHAT_FORMAT_ATTRIBUTE, PRVT_CHAT_KEYBOARD_ATTRIBUTE, PRVT_CHAT_LANGUAGE_ATTRIBUTE, PRVT_CHAT_PINS_TOPIC, PRVT_CHAT_TOPIC, PRVT_INTEGRATION_PROFILE_PICTURE_ATTRIBUTE, PRVT_INTEGRATION_STATUS_MESSAGE_ATTRIBUTE, PRVT_INTEGRATION_WEBSITE_URL_ATTRIBUTE, PRVT_REACTION_EMOJI, PRVT_REACTIONS_TOPIC, } from "./constants.js";
|
|
5
7
|
//# 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,kCAAkC,EAClC,gBAAgB,EAChB,iBAAiB,EACjB,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,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;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAC;AA6B7D,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACrF,OAAO,EACL,4BAA4B,EAC5B,wBAAwB,EACxB,qBAAqB,EACrB,0BAA0B,EAC1B,4BAA4B,EAC5B,4BAA4B,EAC5B,oBAAoB,EACpB,eAAe,EACf,0CAA0C,EAC1C,yCAAyC,EACzC,sCAAsC,EACtC,mBAAmB,EACnB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -35,7 +35,9 @@ export type IntegrationChatMessageFormat = "plain" | "markdown";
|
|
|
35
35
|
export type IntegrationChatButtonStyle = "primary" | "secondary" | "danger";
|
|
36
36
|
export type IntegrationChatButton = {
|
|
37
37
|
id?: string;
|
|
38
|
+
toast?: string;
|
|
38
39
|
url?: string;
|
|
40
|
+
app?: string;
|
|
39
41
|
label: string;
|
|
40
42
|
style?: IntegrationChatButtonStyle;
|
|
41
43
|
disabled?: boolean;
|
|
@@ -48,12 +50,17 @@ export type IntegrationChatMessageOptions = {
|
|
|
48
50
|
format?: IntegrationChatMessageFormat;
|
|
49
51
|
keyboard?: IntegrationChatKeyboard;
|
|
50
52
|
};
|
|
53
|
+
export type IntegrationChatEditOptions = {
|
|
54
|
+
format?: IntegrationChatMessageFormat;
|
|
55
|
+
keyboard?: IntegrationChatKeyboard | null;
|
|
56
|
+
};
|
|
51
57
|
export type IntegrationChatCallback = {
|
|
52
58
|
v: 1;
|
|
53
59
|
type: "button_click";
|
|
54
60
|
eventId: string;
|
|
55
61
|
messageId: string;
|
|
56
62
|
buttonId: string;
|
|
63
|
+
toast?: string;
|
|
57
64
|
senderIdentity: string;
|
|
58
65
|
timestamp: number;
|
|
59
66
|
};
|
|
@@ -62,6 +69,21 @@ export type IntegrationChatCallbackAcknowledgement = {
|
|
|
62
69
|
text?: string;
|
|
63
70
|
alert?: boolean;
|
|
64
71
|
};
|
|
72
|
+
export type IntegrationWebAppRequest = {
|
|
73
|
+
v: 1;
|
|
74
|
+
type: "request";
|
|
75
|
+
instanceId: string;
|
|
76
|
+
requestId: string;
|
|
77
|
+
appUrl: string;
|
|
78
|
+
action: string;
|
|
79
|
+
payload?: unknown;
|
|
80
|
+
senderIdentity: string;
|
|
81
|
+
};
|
|
82
|
+
export type IntegrationWebAppResponse = {
|
|
83
|
+
ok: boolean;
|
|
84
|
+
result?: unknown;
|
|
85
|
+
error?: string;
|
|
86
|
+
};
|
|
65
87
|
export type ReactionEmoji = (typeof PRVT_REACTION_EMOJI)[number];
|
|
66
88
|
export type ReactionPacket = {
|
|
67
89
|
v: 1;
|
|
@@ -80,6 +102,7 @@ export type IntegrationChatMessage = {
|
|
|
80
102
|
format: IntegrationChatMessageFormat;
|
|
81
103
|
keyboard?: IntegrationChatKeyboard;
|
|
82
104
|
};
|
|
105
|
+
export declare const INTEGRATION_CHAT_EDIT_WINDOW_MS: number;
|
|
83
106
|
export interface PrvtIntegrationSession {
|
|
84
107
|
readonly room: Room;
|
|
85
108
|
readonly participantIdentity: string;
|
|
@@ -87,8 +110,11 @@ export interface PrvtIntegrationSession {
|
|
|
87
110
|
readonly expiresAt: string;
|
|
88
111
|
readonly permissions: IntegrationPermissions;
|
|
89
112
|
sendMessage(message: string, options?: IntegrationChatMessageOptions): Promise<IntegrationChatMessage>;
|
|
113
|
+
editMessage(messageId: string, message: string, options?: IntegrationChatEditOptions): Promise<IntegrationChatMessage>;
|
|
90
114
|
onChatCallback(listener: (callback: IntegrationChatCallback) => void | Promise<void>): () => void;
|
|
91
115
|
acknowledgeChatCallback(callback: IntegrationChatCallback, acknowledgement?: IntegrationChatCallbackAcknowledgement): Promise<void>;
|
|
116
|
+
onWebAppRequest(listener: (request: IntegrationWebAppRequest) => void | Promise<void>): () => void;
|
|
117
|
+
respondToWebAppRequest(request: IntegrationWebAppRequest, response: IntegrationWebAppResponse): Promise<void>;
|
|
92
118
|
updateProfile(profile: IntegrationProfileUpdate, options?: ExchangeTokenOptions): Promise<void>;
|
|
93
119
|
pinMessage(messageId: string): Promise<void>;
|
|
94
120
|
unpinMessage(messageId: string): Promise<void>;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export
|
|
1
|
+
export const INTEGRATION_CHAT_EDIT_WINDOW_MS = 60 * 60 * 1_000;
|
|
2
2
|
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAqJA,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { IntegrationWebAppRequest, IntegrationWebAppResponse } from "./types.js";
|
|
2
|
+
export declare const WEB_APP_REQUEST_TOPIC = "prvt.web-app.requests";
|
|
3
|
+
export declare const WEB_APP_RESPONSE_TOPIC = "prvt.web-app.responses";
|
|
4
|
+
export declare const MAX_WEB_APP_PACKET_BYTES = 8192;
|
|
5
|
+
export declare function decodeWebAppRequest(data: Uint8Array, senderIdentity: string): IntegrationWebAppRequest | null;
|
|
6
|
+
export declare function encodeWebAppResponse(response: IntegrationWebAppResponse & {
|
|
7
|
+
instanceId: string;
|
|
8
|
+
requestId: string;
|
|
9
|
+
}): Uint8Array;
|
|
10
|
+
export declare function decodeWebAppResponse(data: Uint8Array): {
|
|
11
|
+
error?: {} | null | undefined;
|
|
12
|
+
result?: {} | null | undefined;
|
|
13
|
+
v: 1;
|
|
14
|
+
type: "response";
|
|
15
|
+
instanceId: string;
|
|
16
|
+
requestId: string;
|
|
17
|
+
ok: boolean;
|
|
18
|
+
} | null;
|
|
19
|
+
//# sourceMappingURL=web-app-actions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-app-actions.d.ts","sourceRoot":"","sources":["../src/web-app-actions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAC;AAEtF,eAAO,MAAM,qBAAqB,0BAA0B,CAAC;AAC7D,eAAO,MAAM,sBAAsB,2BAA2B,CAAC;AAC/D,eAAO,MAAM,wBAAwB,OAAQ,CAAC;AAoC9C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,GAAG,wBAAwB,GAAG,IAAI,CAe7G;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,yBAAyB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAShI;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,UAAU;;;;;;;;SAiBpD"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
export const WEB_APP_REQUEST_TOPIC = "prvt.web-app.requests";
|
|
2
|
+
export const WEB_APP_RESPONSE_TOPIC = "prvt.web-app.responses";
|
|
3
|
+
export const MAX_WEB_APP_PACKET_BYTES = 8_192;
|
|
4
|
+
const encoder = new TextEncoder();
|
|
5
|
+
const decoder = new TextDecoder("utf-8", { fatal: true });
|
|
6
|
+
const identifierPattern = /^[A-Za-z0-9_-]{8,128}$/;
|
|
7
|
+
const actionPattern = /^[A-Za-z0-9_.:-]{1,96}$/;
|
|
8
|
+
const isRecord = (value) => (typeof value === "object" && value !== null && !Array.isArray(value));
|
|
9
|
+
const isJsonValue = (value) => {
|
|
10
|
+
if (value === null || typeof value === "string" || typeof value === "boolean")
|
|
11
|
+
return true;
|
|
12
|
+
if (typeof value === "number")
|
|
13
|
+
return Number.isFinite(value);
|
|
14
|
+
if (Array.isArray(value))
|
|
15
|
+
return value.every(isJsonValue);
|
|
16
|
+
return isRecord(value) && Object.values(value).every(isJsonValue);
|
|
17
|
+
};
|
|
18
|
+
const safeUrl = (value) => {
|
|
19
|
+
if (typeof value !== "string" || value.length === 0 || value.length > 512)
|
|
20
|
+
return false;
|
|
21
|
+
try {
|
|
22
|
+
const url = new URL(value);
|
|
23
|
+
return url.protocol === "https:" && url.username === "" && url.password === "" && url.search === "" && url.hash === "";
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
const sizeOf = (value) => {
|
|
30
|
+
try {
|
|
31
|
+
return encoder.encode(JSON.stringify(value)).byteLength;
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return Number.POSITIVE_INFINITY;
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
export function decodeWebAppRequest(data, senderIdentity) {
|
|
38
|
+
if (data.byteLength === 0 || data.byteLength > MAX_WEB_APP_PACKET_BYTES || senderIdentity.length === 0)
|
|
39
|
+
return null;
|
|
40
|
+
try {
|
|
41
|
+
const value = JSON.parse(decoder.decode(data));
|
|
42
|
+
if (!isRecord(value) || value.v !== 1 || value.type !== "request")
|
|
43
|
+
return null;
|
|
44
|
+
if (typeof value.instanceId !== "string" || !identifierPattern.test(value.instanceId)
|
|
45
|
+
|| typeof value.requestId !== "string" || !identifierPattern.test(value.requestId)
|
|
46
|
+
|| !safeUrl(value.appUrl) || typeof value.action !== "string" || !actionPattern.test(value.action)
|
|
47
|
+
|| (value.payload !== undefined && !isJsonValue(value.payload)) || sizeOf(value) > MAX_WEB_APP_PACKET_BYTES)
|
|
48
|
+
return null;
|
|
49
|
+
return { v: 1, type: "request", instanceId: value.instanceId, requestId: value.requestId, appUrl: value.appUrl, action: value.action, ...(value.payload === undefined ? {} : { payload: value.payload }), senderIdentity };
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
export function encodeWebAppResponse(response) {
|
|
56
|
+
if (!identifierPattern.test(response.instanceId) || !identifierPattern.test(response.requestId))
|
|
57
|
+
throw new TypeError("web app response identifiers are invalid");
|
|
58
|
+
if (typeof response.ok !== "boolean")
|
|
59
|
+
throw new TypeError("web app response status is invalid");
|
|
60
|
+
if (response.ok ? response.error !== undefined : typeof response.error !== "string" || response.error.trim().length === 0 || response.error.length > 256)
|
|
61
|
+
throw new TypeError("web app response error is invalid");
|
|
62
|
+
if (response.result !== undefined && !isJsonValue(response.result))
|
|
63
|
+
throw new TypeError("web app result must be JSON");
|
|
64
|
+
const value = { v: 1, type: "response", ...response };
|
|
65
|
+
const encoded = encoder.encode(JSON.stringify(value));
|
|
66
|
+
if (encoded.byteLength > MAX_WEB_APP_PACKET_BYTES)
|
|
67
|
+
throw new TypeError("web app response is too large");
|
|
68
|
+
return encoded;
|
|
69
|
+
}
|
|
70
|
+
export function decodeWebAppResponse(data) {
|
|
71
|
+
if (data.byteLength === 0 || data.byteLength > MAX_WEB_APP_PACKET_BYTES)
|
|
72
|
+
return null;
|
|
73
|
+
try {
|
|
74
|
+
const value = JSON.parse(decoder.decode(data));
|
|
75
|
+
if (!isRecord(value) || value.v !== 1 || value.type !== "response")
|
|
76
|
+
return null;
|
|
77
|
+
if (typeof value.instanceId !== "string" || !identifierPattern.test(value.instanceId)
|
|
78
|
+
|| typeof value.requestId !== "string" || !identifierPattern.test(value.requestId)
|
|
79
|
+
|| typeof value.ok !== "boolean"
|
|
80
|
+
|| (!value.ok && (typeof value.error !== "string" || value.error.trim().length === 0 || value.error.length > 256))
|
|
81
|
+
|| (value.ok && value.error !== undefined)
|
|
82
|
+
|| (value.result !== undefined && !isJsonValue(value.result)) || sizeOf(value) > MAX_WEB_APP_PACKET_BYTES)
|
|
83
|
+
return null;
|
|
84
|
+
return { v: 1, type: "response", instanceId: value.instanceId, requestId: value.requestId, ok: value.ok, ...(value.result === undefined ? {} : { result: value.result }), ...(value.error === undefined ? {} : { error: value.error }) };
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return null;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=web-app-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-app-actions.js","sourceRoot":"","sources":["../src/web-app-actions.ts"],"names":[],"mappings":"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"}
|