Skip to content

Commit

Permalink
Handle when publisher empty
Browse files Browse the repository at this point in the history
  • Loading branch information
martinmitrevski committed Jul 31, 2023
1 parent 0b0d569 commit 7602e9b
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions Sources/StreamVideo/WebRTC/WebRTCClient.swift
Original file line number Diff line number Diff line change
Expand Up @@ -434,6 +434,9 @@ class WebRTCClient: NSObject {

func startScreensharing(type: ScreensharingType) async throws {
if hasCapability(.screenshare) {
if publisher == nil, let configuration = connectOptions?.rtcConfiguration {
try await publishLocalTracks(configuration: configuration)
}
if localScreenshareTrack == nil || type != currentScreenhsareType {
// Screenshare
let screenshareTrack = await makeVideoTrack(screenshareType: type)
Expand All @@ -445,13 +448,12 @@ class WebRTCClient: NSObject {
)
await state.add(screensharingTrack: screenshareTrack, id: sessionID)
await assignTracksToParticipants()
try await changeScreensharingState(isEnabled: true)
} else if localScreenshareTrack?.isEnabled == false {
localScreenshareTrack?.isEnabled = true
await state.add(screensharingTrack: localScreenshareTrack, id: sessionID)
await assignTracksToParticipants()
try await changeScreensharingState(isEnabled: true)
}
try await changeScreensharingState(isEnabled: true)
} else {
throw ClientError.MissingPermissions()
}
Expand Down

0 comments on commit 7602e9b

Please sign in to comment.