Release Notes

Refer to this page on how to install SDK into your application.

Note : old documentation for SDK 1.X version can be found here.

2.0.0

Features

  • Complete rework of the SDK code structure with better segmentation of functionalities across a service based architecture.
  • Improved robustness in conference negotiation by using an unique peer connection.
  • Switched to WebRTC Unified Plan for all browsers.

1.9.4 - 1.9.8

Bugfixes

  • Websocket connection is now more robust.
  • Chrome and Firefox support.

1.9.3

Bugfixes

  • Fixed a bug that prevent starting without audio.
  • Fixed chrome screenshare blinking.

1.9.2

Features

  • Internet Explorer 11 suport with the corresponding plugin.

1.9.0 - 1.9.1

Features

  • Enhanced support of SDP Unified Plan for firefox, chrome >= 73.
  • New screenshare API without extension on chrome >= 72.

Bugfixes

  • Better Edge support.
  • Fix Firefox screenshare not closed after leaving.
  • Fix Firefox mute participant not working.
  • Fix input/output enumeration.

2.0.0

Released on 2019-12-16.

Better segmentation of functionalities across a service based architecture and better robustness in conference.

Features

  • VTConference class
  • VTConferenceStatus enum
  • VTConferenceOptions class
  • VTConferenceParameters class
  • VTJoinOptions class
  • VTJoinOptionsConstraints class
  • VoxeetSDK.shared.conference.current = VTConference
  • participantAdded(participant:) VTConferenceDelegate
  • participantUpdated(participant:) VTConferenceDelegate
  • statusUpdated(status:) VTConferenceDelegate
  • streamAdded(participant:stream:) VTConferenceDelegate
  • streamUpdated(participant:stream:) VTConferenceDelegate
  • streamRemoved(participant:stream:) VTConferenceDelegate
  • VTCommandDelegate protocol
  • received(participant:message:) VTCommandDelegate
  • VTFilePresentation class
  • VTFileConverted class
  • VTFilePresentationDelegate protocol
  • converted(fileConverted:) VTFilePresentationDelegate
  • started(filePresentation:) VTFilePresentationDelegate
  • updated(filePresentation:) VTFilePresentationDelegate
  • stopped(filePresentation:) VTFilePresentationDelegate
  • VTVideoPresentation class
  • VTVideoPresentationState enum
  • VTVideoPresentationDelegate protocol
  • started(videoPresentation:) VTVideoPresentationDelegate
  • stopped(videoPresentation:) VTVideoPresentationDelegate
  • played(videoPresentation:) VTVideoPresentationDelegate
  • paused(videoPresentation:) VTVideoPresentationDelegate
  • sought(videoPresentation:) VTVideoPresentationDelegate
  • VTParticipantInfo class
  • VTParticipantStatus enum

Changed

  • VoxeetSDK.shared.session.participant (old)

    • VoxeetSDK.shared.session.user (new)
  • VoxeetSDK.shared.conference.state

    • VoxeetSDK.shared.conference.current.status
  • VoxeetSDK.shared.conference.id

    • VoxeetSDK.shared.conference.current.id
  • VoxeetSDK.shared.conference.alias

    • VoxeetSDK.shared.conference.current.alias
  • VoxeetSDK.shared.conference.users

    • VoxeetSDK.shared.conference.current.participants
  • VoxeetSDK.shared.conference.isDefaultFrontFacing

    • VoxeetSDK.shared.mediaDevice.isDefaultFrontFacing
  • VoxeetSDK.shared.conference.isFrontCamera

    • VoxeetSDK.shared.mediaDevice.isFrontCamera
  • VoxeetSDK.shared.conference.create(parameters:success:fail)

    • VoxeetSDK.shared.conference.create(options:success:fail:)
  • VoxeetSDK.shared.conference.join(conferenceID:video:userInfo:success:fail:)

    • VoxeetSDK.shared.conference.join(conference:options:success:fail:)
  • VoxeetSDK.shared.conference.startRecording(fireInterval:completion:)

    • VoxeetSDK.shared.recording.start(fireInterval:completion:)
  • VoxeetSDK.shared.conference.stopRecording(completion:)

    • VoxeetSDK.shared.recording.stop(completion:)
  • VoxeetSDK.shared.conference.broadcast(message:completion:)

    • VoxeetSDK.shared.command.send(message:completion:)
  • VoxeetSDK.shared.conference.mediaStream(userID:)

    • VoxeetSDK.shared.mediaDevice.mediaStream(userID:)
  • VoxeetSDK.shared.conference.screenShareMediaStream()

    • VoxeetSDK.shared.mediaDevice.screenShareMediaStream()
  • VoxeetSDK.shared.conference.attachMediaStream(stream:renderer:)

    • VoxeetSDK.shared.mediaDevice.attachMediaStream(stream:renderer:)
  • VoxeetSDK.shared.conference.unattachMediaStream(stream:renderer:)

    • VoxeetSDK.shared.mediaDevice.unattachMediaStream(stream:renderer:)
  • VoxeetSDK.shared.conference.switchDeviceSpeaker()

    • VoxeetSDK.shared.mediaDevice.switchDeviceSpeaker()
  • VoxeetSDK.shared.conference.switchDeviceSpeaker(forceBuiltInSpeaker:completion:)

    • VoxeetSDK.shared.mediaDevice.switchDeviceSpeaker(forceBuiltInSpeaker:completion:)
  • VoxeetSDK.shared.conference.switchCamera()

    • VoxeetSDK.shared.mediaDevice.switchCamera()
  • messageReceived(userID:message:) VTConferenceDelegate

    • received(participant:message:) VTCommandDelegate
  • participantJoined(userID:stream:) VTConferenceDelegate

    • streamAdded(participant:stream:) VTConferenceDelegate
  • participantUpdated(userID:stream:) VTConferenceDelegate

    • streamUpdated(participant:stream:) VTConferenceDelegate
  • participantLeft(userID:) VTConferenceDelegate

    • streamRemoved(participant:stream:) VTConferenceDelegate
  • screenShareStarted(userID:stream:) VTConferenceDelegate

    • streamAdded(participant:stream:) VTConferenceDelegate
  • screenShareStopped(userID:) VTConferenceDelegate

    • streamRemoved(participant:stream:) VTConferenceDelegate
  • VTUser class

    • VTParticipant class
  • VTUser.externalID String

    • VTParticipant.info = VTParticipantInfo
  • VTUser.name String

    • VTParticipant.info = VTParticipantInfo
  • VTUser.avatarURL String

    • VTParticipant.info = VTParticipantInfo
  • VTUser.hasStream Bool

    • VTParticipant.streams = [MediaStream]

Removed

  • VTConferenceState enum
  • VoxeetSDK.shared.conference.user(userID:)
  • VTUser.metadata = [String: Any]

1.4.9

Released on 2019-12-11.

Bugfixes

  • Convert for Swift 5.1.3.

1.4.8

Released on 2019-11-04.

Changed

  • VoxeetSDK.shared.pushNotification = VTNotificationService

    • VoxeetSDK.shared.notification = VTNotificationService

Bugfixes

  • Convert for Swift 5.1.2.

1.4.7

Released on 2019-10-14.

Bugfixes

  • CXCallUpdate takes the default video value from the conference service to display if the call is video or audio.

1.4.6

Released on 2019-10-04.

Features

  • VoxeetSDK.shared.conference.audio3D

Bugfixes

  • Fix iOS 13 crashes with stop video and screen share.

1.4.5

Released on 2019-09-24.

Bugfixes

  • Convert for Swift 5.1.

v2.0.73.9

Bugfixes

  • the various create and join methods are now resolving a new signature. Apps must be changed accordingly prevent dismiss keyguard on incoming call.

v2.0.73

Features

  • Moved classes to proper packages.
  • Added a new VideoStateEvent corresponding to status event for the startVideo/stopVideo.
  • Decline related event is now fired through UserUpdatedEvent with the according declining status.

Bugfixes

  • fixed various issues with videos and other states.

v2.0.72

Features

  • Make firebase completely optionnal (no more dependency poisoning with the play services).

v2.0.71.4

Features

  • NotificationCenterFactory is providing support for the new 2 ways to receive notificatins : FullScreen or Overhead notification.

v2.0.69.6

Features

  • ConferenceCreationSuccess sent on local creation.
  • ConferenceCreationSuccess and ConferenceJoinedSuccessEvent are now holding a reference to the Conference.