@juspay/neurolink
Version:
The pipe layer of an AI nervous system: one interface connecting provider neurons to your application, across three inference types — generate, stream and decide. `decide` returns typed, calibrated judgements from a non-generative model (~400ms, ~$0.00002
24 lines (23 loc) • 1.05 kB
TypeScript
/**
* Per-call context from LiveKit room metadata.
*
* The manager (e.g. a Lighthouse `/start` endpoint) pre-creates the room with
* `base64(JSON({ authToken, mcpContext }))` metadata, built from the caller's
* session. The worker reads it on join — nothing per-call comes from worker env.
* Returns the MCP `x-auth-token` and the base64(JSON) `x-context` the server
* expects.
*
* The metadata is untrusted input, so it is decoded with a zod schema rather
* than a trusted `JSON.parse` cast.
*
* See docs/features/livekit-voice-agent.md.
*/
import type { LiveKitRoomCallContext } from "../../types/index.js";
/**
* Decode `{ authToken, mcpContext }` from a room's base64(JSON) metadata.
*
* `authToken` may be empty (demo/guest, where the MCP server gates on the
* context's `demoMode`); `xContext` is the re-encoded base64(JSON) of
* `mcpContext`, or `""` when no context was supplied or the metadata is invalid.
*/
export declare function readCallContextFromRoom(roomMetadata: string | undefined): LiveKitRoomCallContext;