Skip to main content
Version: Version 2.0

Video Huddle

This guide will help you migrate your Video Huddle implementation from SuperViz Video SDK v1.0 to v2.0. The main architectural change in v2.0 is the separation of Room functionality into a dedicated package, with VideoHuddle now part of a dedicated Video package.

Breaking Changes

  • Package Structure: Room and Video functionality are now in separate packages (@superviz/room and @superviz/video)
  • React Components: The <VideoConference /> React component is no longer available - use the class-based component from @superviz/video instead
  • Configuration: collaborationMode and several other properties have been removed
  • Permissions: All permission-related properties are now consolidated under a single permissions object
  • Styling: styles property is replaced with the new brand configuration object
  • Events: Some event names have changed - check the documentation for updated event names

Package Changes

v1.0 Package Structure

  • @superviz/sdk - For vanilla JavaScript implementations
  • @superviz/sdk-react - For React implementations

v2.0 Package Structure

  • @superviz/room - Core Room functionality (framework-agnostic)
  • @superviz/video - VideoConference and VideoHuddle components
  • @superviz/react - Optional React SDK with Room provider and hooks

Note: In v2.0, the @superviz/room package is framework-agnostic and can be used with any JavaScript framework (React, Vue.js, Angular, etc.). The @superviz/react package is optional and provides React-specific bindings, hooks, and components for developers who prefer using React.

Dependencies

v1.0 (Before)

npm install @superviz/sdk

v2.0 (After)

npm install @superviz/room
npm install @superviz/video

Room

Initialization

v1.0 (Before)

import { SuperVizRoom } from '@superviz/sdk'

const room = await SuperVizRoom("YOUR_DEVELOPER_TOKEN",
{
roomId: "ROOM_ID",
group: {
id: "GROUP_ID",
name: "GROUP_NAME",
},
participant: {
id: "USER_ID",
name: "USER_NAME"
},
})

v2.0 (After)

import { createRoom } from '@superviz/room';

const room = await createRoom({
developerToken: 'YOUR_DEVELOPER_TOKEN',
roomId: 'YOUR_ROOM_ID',
participant: {
id: 'participant-id',
name: 'Participant Name',
},
group: {
id: 'GROUP_ID',
name: 'GROUP_NAME',
},
});

Important Changes:

  • Import from @superviz/room instead of @superviz/sdk
  • Use createRoom function instead of SuperVizRoom

Events

Version 2.0 serves the same events as v1.0. Some event names might have been changed. We recommend you to verify the event names in the @superviz/room documentation.

VideoHuddle Component

Initialization

v1.0 (Before)

import { VideoConference } from '@superviz/sdk';

const video = new VideoConference({
participantType: "host",
collaborationMode: {
enabled: true,
},
});

v2.0 (After)

import { VideoHuddle } from '@superviz/video';

const video = new VideoHuddle({
participantType: "host",
});

Important Changes:

  • Import from @superviz/video instead of @superviz/sdk

Properties

Removed Properties:

  • collaborationMode

  • defaultToolbar

  • devices

  • offset (use styles instead)

  • callbacks (use methods instead)

  • skipMeetingSettings

  • canShowAudienceList - This is now visible in the UI

  • avatars

  • defaultAvatars

New Properties:

Property Migrations:

PropertyNew locationNew name
StylesbrandNo change
Languagei18nNo change
PermissionspermissionsNo change
allowGuestspermissionsNo change
camsOffpermissionstoggleCamera
chatOffpermissionstoggleChat
chatOffpermissionstoggleMic
screenshareOffpermissionstoggleScreenShare
enableRecordingpermissionstoggleRecording
enableFollowpermissionsNo change
enableGatherpermissionsNo change
enableGoTopermissionsNo change

Events & callbacks

Version 2.0 serves the same events as v1.0. Some event names might have been changed. We recommend you to verify the event names in the @superviz/video documentation.

Updated UI/UX

SuperViz Video SDK v2.0 comes with an improved UI and UX for VideoConference. The new design offers a better user experience while maintaining all the functionality from v1.0.

Example Implementation

We've prepared a complete example of implementing VideoConference with SuperViz 2.0. You can find the example implementation in the official tutorials repository.