Fixed Scribe realtime microphone setup failures now reporting through RealtimeEvents.ERROR instead of unhandled rejections, and microphone resources getting released when setup fails after capture starts. Also guarded against malformed error messages that could crash the consumer with an unhandled TypeError.
Agents SDK (TypeScript)
Added a dedicated onPing callback that surfaces ping events with estimated ping_ms, useful for reporting connection latency. The SDK still automatically replies to pings. Documentation for ping_ms is also clarified.
Fixed transcript rendering for turns that interleave text and tool calls, keeping text segments split by tool calls as separate bubbles and showing the tool status badge only once per turn. Also added markdown rendering for text-only agent responses that arrive without streaming parts.
PingEvent now allows null values.
Re-enabled agent_chat_response_part streaming in voice sessions.
sendFeedback now accepts null as the first parameter to clear a user's like/dislike rating on an event by sending score: null.
sendFeedback(like, eventId?) now accepts an optional event ID to rate a specific past message, or rates the latest agent turn when omitted. canSendFeedback now reflects connection state rather than whether the latest turn is unrated, so feedback (including re-ratings) can be sent for any message while the session is live.
Exposes the file upload helper from the internal Unity entrypoint of the client SDK.
The browser client now supports per-conversation ASR keyword biasing via overrides.asr.keywords, and realtime Scribe sessions expose language detection metadata, including React useScribe support.
Realtime Scribe sessions now support language detection via includeLanguageDetection, with React useScribe support for requesting and reading detected language metadata.
Exposed remaining Unity bridge connection exports from @elevenlabs/client/internal/unity so consumers can import them without pulling in the browser entrypoint.
