@burdenoff/website-sdk 2026.1031.1 → 2026.1031.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/README.md
CHANGED
|
@@ -339,7 +339,13 @@ publishes audio, video or data, and it sends the avatar nothing to say.
|
|
|
339
339
|
page unloads. The server ends sessions on its own deadlines as well.
|
|
340
340
|
- **Consent copy is versioned.** The panel shows a consent card only when it
|
|
341
341
|
holds reviewed copy for exactly the version the server names (the current
|
|
342
|
-
English copy is `web-consent-2026-11`
|
|
342
|
+
English copy is `web-consent-2026-10-31`, and `web-consent-2026-11` stays for
|
|
343
|
+
servers that still name it); otherwise the view stays as it was.
|
|
344
|
+
- **How a session ended.** When the worker leaves, the server closes the room,
|
|
345
|
+
or the session's time runs out with the room still open, the view says only
|
|
346
|
+
"The live avatar has ended." (key `finished`). The browser
|
|
347
|
+
cannot tell the avatar reading to the end from a server-side stop or an
|
|
348
|
+
apps-first hand-over, so it does not say which.
|
|
343
349
|
- **Requests.** All three go to the gateway without credentials. The create
|
|
344
350
|
request carries `content-type: application/json`, `idempotency-key` (a UUID
|
|
345
351
|
v4) and `x-web-avatar-bot-token` (the Turnstile token, which the gateway
|
|
@@ -269,7 +269,7 @@ var EN = {
|
|
|
269
269
|
timeLeft: "Time left",
|
|
270
270
|
stop: "Stop",
|
|
271
271
|
tapForSound: "Tap to turn on sound",
|
|
272
|
-
finished: "The avatar has
|
|
272
|
+
finished: "The live avatar has ended.",
|
|
273
273
|
stopped: "You stopped the avatar.",
|
|
274
274
|
failed: "The live avatar couldn't start.",
|
|
275
275
|
interrupted: "The live avatar stopped early.",
|
|
@@ -302,7 +302,7 @@ var ZH = {
|
|
|
302
302
|
timeLeft: "\u5269\u4F59\u65F6\u95F4",
|
|
303
303
|
stop: "\u505C\u6B62",
|
|
304
304
|
tapForSound: "\u70B9\u6309\u4EE5\u5F00\u542F\u58F0\u97F3",
|
|
305
|
-
finished: "\u865A\u62DF\u5F62\u8C61\u5DF2\
|
|
305
|
+
finished: "\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u5DF2\u7ED3\u675F\u3002",
|
|
306
306
|
stopped: "\u60A8\u5DF2\u505C\u6B62\u865A\u62DF\u5F62\u8C61\u3002",
|
|
307
307
|
failed: "\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u65E0\u6CD5\u542F\u52A8\u3002",
|
|
308
308
|
interrupted: "\u5B9E\u65F6\u865A\u62DF\u5F62\u8C61\u63D0\u524D\u505C\u6B62\u4E86\u3002",
|
|
@@ -335,7 +335,7 @@ var HI = {
|
|
|
335
335
|
timeLeft: "\u092C\u091A\u093E \u0939\u0941\u0906 \u0938\u092E\u092F",
|
|
336
336
|
stop: "\u0930\u094B\u0915\u0947\u0902",
|
|
337
337
|
tapForSound: "\u0906\u0935\u093E\u091C\u093C \u091A\u093E\u0932\u0942 \u0915\u0930\u0928\u0947 \u0915\u0947 \u0932\u093F\u090F \u091F\u0948\u092A \u0915\u0930\u0947\u0902",
|
|
338
|
-
finished: "\u0905\u0935\u0924\u093E\u0930 \
|
|
338
|
+
finished: "\u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0938\u092E\u093E\u092A\u094D\u0924 \u0939\u094B \u0917\u092F\u093E \u0939\u0948\u0964",
|
|
339
339
|
stopped: "\u0906\u092A\u0928\u0947 \u0905\u0935\u0924\u093E\u0930 \u0915\u094B \u0930\u094B\u0915 \u0926\u093F\u092F\u093E\u0964",
|
|
340
340
|
failed: "\u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u0936\u0941\u0930\u0942 \u0928\u0939\u0940\u0902 \u0939\u094B \u0938\u0915\u093E\u0964",
|
|
341
341
|
interrupted: "\u0932\u093E\u0907\u0935 \u0905\u0935\u0924\u093E\u0930 \u092C\u0940\u091A \u092E\u0947\u0902 \u0939\u0940 \u0930\u0941\u0915 \u0917\u092F\u093E\u0964",
|
|
@@ -368,7 +368,7 @@ var ES = {
|
|
|
368
368
|
timeLeft: "Tiempo restante",
|
|
369
369
|
stop: "Detener",
|
|
370
370
|
tapForSound: "Toca para activar el sonido",
|
|
371
|
-
finished: "El avatar ha terminado.",
|
|
371
|
+
finished: "El avatar en vivo ha terminado.",
|
|
372
372
|
stopped: "Has detenido el avatar.",
|
|
373
373
|
failed: "No se pudo iniciar el avatar en vivo.",
|
|
374
374
|
interrupted: "El avatar en vivo se detuvo antes de tiempo.",
|
|
@@ -401,7 +401,7 @@ var AR = {
|
|
|
401
401
|
timeLeft: "\u0627\u0644\u0648\u0642\u062A \u0627\u0644\u0645\u062A\u0628\u0642\u064A",
|
|
402
402
|
stop: "\u0625\u064A\u0642\u0627\u0641",
|
|
403
403
|
tapForSound: "\u0627\u0646\u0642\u0631 \u0644\u062A\u0634\u063A\u064A\u0644 \u0627\u0644\u0635\u0648\u062A",
|
|
404
|
-
finished: "\u0627\u0646\u062A\u0647\u0649 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631.",
|
|
404
|
+
finished: "\u0627\u0646\u062A\u0647\u0649 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631.",
|
|
405
405
|
stopped: "\u0644\u0642\u062F \u0623\u0648\u0642\u0641\u062A \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631.",
|
|
406
406
|
failed: "\u062A\u0639\u0630\u0651\u0631 \u0628\u062F\u0621 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631.",
|
|
407
407
|
interrupted: "\u062A\u0648\u0642\u0641 \u0627\u0644\u0623\u0641\u0627\u062A\u0627\u0631 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u0642\u0628\u0644 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A.",
|
|
@@ -434,7 +434,7 @@ var TA = {
|
|
|
434
434
|
timeLeft: "\u0BAE\u0BC0\u0BA4\u0BAE\u0BC1\u0BB3\u0BCD\u0BB3 \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",
|
|
435
435
|
stop: "\u0BA8\u0BBF\u0BB1\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1",
|
|
436
436
|
tapForSound: "\u0B92\u0BB2\u0BBF\u0BAF\u0BC8 \u0B87\u0BAF\u0B95\u0BCD\u0B95\u0BA4\u0BCD \u0BA4\u0B9F\u0BCD\u0B9F\u0BB5\u0BC1\u0BAE\u0BCD",
|
|
437
|
-
finished: "\
|
|
437
|
+
finished: "\u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BA8\u0BCD\u0BA4\u0BA4\u0BC1.",
|
|
438
438
|
stopped: "\u0BA8\u0BC0\u0B99\u0BCD\u0B95\u0BB3\u0BCD \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BC8 \u0BA8\u0BBF\u0BB1\u0BC1\u0BA4\u0BCD\u0BA4\u0BBF\u0BA9\u0BC0\u0BB0\u0BCD\u0B95\u0BB3\u0BCD.",
|
|
439
439
|
failed: "\u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BC8\u0BA4\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BAE\u0BC1\u0B9F\u0BBF\u0BAF\u0BB5\u0BBF\u0BB2\u0BCD\u0BB2\u0BC8.",
|
|
440
440
|
interrupted: "\u0BA8\u0BC7\u0BB0\u0BB2\u0BC8 \u0B85\u0BB5\u0BA4\u0BBE\u0BB0\u0BCD \u0B87\u0B9F\u0BC8\u0BAF\u0BBF\u0BB2\u0BC7\u0BAF\u0BC7 \u0BA8\u0BBF\u0BA9\u0BCD\u0BB1\u0BC1\u0BB5\u0BBF\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1.",
|
|
@@ -472,6 +472,20 @@ var CONSENT = /* @__PURE__ */ new Map([
|
|
|
472
472
|
privacyLink: "How we handle this"
|
|
473
473
|
}
|
|
474
474
|
}
|
|
475
|
+
],
|
|
476
|
+
[
|
|
477
|
+
// The voice is no longer a stored file: the server holds it in memory and plays it into the LiveKit room for Protoface.
|
|
478
|
+
"web-consent-2026-10-31",
|
|
479
|
+
{
|
|
480
|
+
en: {
|
|
481
|
+
title: "Live AI avatar (beta)",
|
|
482
|
+
introProduct: "This is an AI avatar, not a real person. It reads the assistant's first eligible answer to a suggested {product} question aloud for up to a minute. The answer is AI-generated and can be wrong.",
|
|
483
|
+
intro: "This is an AI avatar, not a real person. It reads the assistant's first eligible answer to a suggested question aloud for up to a minute. The answer is AI-generated and can be wrong.",
|
|
484
|
+
processing: "When you start, Cloudflare checks for bots. The answer text goes to Google to create the voice. Our server sends that voice through LiveKit to Protoface, which makes the avatar video streamed through LiveKit. Your browser connects to LiveKit, which sees your IP address.",
|
|
485
|
+
storage: "Your microphone and camera are not used. We do not record the live session or store the generated voice. We keep a record of this consent. The privacy notice explains our safeguards, storage periods and the providers' processing. For people aged eighteen and over.",
|
|
486
|
+
privacyLink: "How we handle this"
|
|
487
|
+
}
|
|
488
|
+
}
|
|
475
489
|
]
|
|
476
490
|
]);
|
|
477
491
|
function avatarConsentCopy(version, locale) {
|