osborn 0.9.84 → 0.9.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +5 -1
- package/dist/recall-client.d.ts +1 -0
- package/dist/recall-client.js +14 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -4624,7 +4624,11 @@ async function main() {
|
|
|
4624
4624
|
// pipeline at all. Recall captures the meeting audio internally
|
|
4625
4625
|
// and we pull the transcript via its REST API every ~30s.
|
|
4626
4626
|
await sendToFrontend({ type: 'meeting_joining', message: 'Osborn is joining your meeting...' });
|
|
4627
|
-
|
|
4627
|
+
// 0.9.85: optional castUrl — a webpage to display as the bot's
|
|
4628
|
+
// camera (live feed / seeded site). Passed from the frontend or
|
|
4629
|
+
// env OSBORN_MEETING_CAST_URL for testing.
|
|
4630
|
+
const castUrl = data.castUrl || process.env.OSBORN_MEETING_CAST_URL || undefined;
|
|
4631
|
+
const botId = await recallJoin.joinMeeting(meetingUrl, webhookBase, { castUrl });
|
|
4628
4632
|
const sessionId = currentLLM?.sessionId || currentResumeSessionId || 'default';
|
|
4629
4633
|
recallJoin.registerBot(botId, sessionId);
|
|
4630
4634
|
activeMeetingBotId = botId;
|
package/dist/recall-client.d.ts
CHANGED
|
@@ -81,6 +81,7 @@ export declare class RecallClient extends EventEmitter {
|
|
|
81
81
|
*/
|
|
82
82
|
joinMeeting(meetingUrl: string, webhookBaseUrl: string, opts?: {
|
|
83
83
|
botName?: string;
|
|
84
|
+
castUrl?: string;
|
|
84
85
|
}): Promise<string>;
|
|
85
86
|
/**
|
|
86
87
|
* Fetch the bot's current transcript. Returns an array of "transcript turns"
|
package/dist/recall-client.js
CHANGED
|
@@ -23,6 +23,19 @@ export class RecallClient extends EventEmitter {
|
|
|
23
23
|
*/
|
|
24
24
|
async joinMeeting(meetingUrl, webhookBaseUrl, opts) {
|
|
25
25
|
const botName = opts?.botName ?? 'Osborn';
|
|
26
|
+
// 0.9.85: optional CAST — display a webpage as the bot's camera in the
|
|
27
|
+
// meeting (Recall output_media, the piece the v0.9.44 rewrite removed).
|
|
28
|
+
// Point castUrl at the session-engine live-feed viewer, a seeded site
|
|
29
|
+
// (e.g. voice-native's LinkedIn), or a research/output page. This is the
|
|
30
|
+
// "the client sees content" visual side of the copilot. Left off by
|
|
31
|
+
// default (silent, invisible observer) — only casts when castUrl is set.
|
|
32
|
+
const cast = opts?.castUrl && /^https?:\/\//.test(opts.castUrl)
|
|
33
|
+
? { output_media: { camera: { kind: 'webpage', config: { url: opts.castUrl } } } }
|
|
34
|
+
: {};
|
|
35
|
+
if (opts?.castUrl && !Object.keys(cast).length)
|
|
36
|
+
console.log(`⚠️ castUrl ignored (not http(s)): ${opts.castUrl}`);
|
|
37
|
+
else if (Object.keys(cast).length)
|
|
38
|
+
console.log(`📺 Meeting cast enabled — bot camera = ${opts.castUrl}`);
|
|
26
39
|
// 0.9.84: LIVE transcript via realtime_endpoints. The v0.9.44 rewrite
|
|
27
40
|
// removed this and left only 30s polling of the batch download_url — but
|
|
28
41
|
// that URL is a POST-PROCESSING artifact (empty until the meeting ends),
|
|
@@ -58,6 +71,7 @@ export class RecallClient extends EventEmitter {
|
|
|
58
71
|
body: JSON.stringify({
|
|
59
72
|
meeting_url: meetingUrl,
|
|
60
73
|
bot_name: botName,
|
|
74
|
+
...cast,
|
|
61
75
|
recording_config: {
|
|
62
76
|
transcript: {
|
|
63
77
|
provider: {
|