github daily-co/daily-js daily-js-2021-04-19-0.12.0
0.12.0

latest releases: daily-js-2024-09-26-0.72.0, daily-js-2024-09-12-0.71.2, daily-js-2024-08-07-0.70.0...
3 years ago

Features

  • A new updateLiveStreaming() method exists to let you update on the fly parameters of a live stream you've previously started with startLiveStreaming(). So far the only parameter you can update is layout.
  • A new 'active-participant' layout preset has been added for live streaming: startLiveStreaming({ rtmpUrl: <url>, layout: { preset: 'active-participant' } }).
  • You can now specify 'user' as a value when invoking setDailyLang() or as a lang property when invoking join(), preAuth(), startCamera(), or factory methods like createFrame(). 'user' instructs Daily to use the user's preferred language as specified by the browser.
  • A new method, getDailyLang() returns a Promise that resolves to { lang: <language>, langSetting: <specified language> }, telling you both the language actually in effect and the language you've specified. For example, if you've specified 'user' as your language, getDailyLang() might give you { lang: 'en', langSetting: 'user'}.

Bugfixes

  • width and height have been added as arguments in the TypeScript declaration of the startLiveStreaming() method.

Other improvements

  • supportedBrowser().supported now returns false for Edge 18. So long, Edge 18, it's been a wild ride 👋.
  • 'error' and 'camera-error' event payloads now include an optional error field in addition to the existing errorMsg field. This new error field includes a type (which you can think of as an error code but a string constant) and an optional localizedMsg, which can provide you with a localized UI-friendly message describing the error. Note that not all kinds of errors have an error field yet—see index.d.ts's DailyCameraErrorType and DailyFatalErrorType for supported error types so far—but the eventual goal is that you'll be able to stop relying on errorMsg in your code to identify errors.
  • The preAuth() method will now put the meeting into an 'error' state (meetingState() === 'error') if it determines that a provided join token is expired or not yet valid or if the room is expired or not yet valid, and will fire a corresponding 'error' event. This behavior better matches join()'s behavior.

Don't miss a new daily-js release

NewReleases is sending notifications on new releases.