webex / webex-ios-sdk

iOS SDK for Webex
https://developer.webex.com/docs/sdks/ios
Other
25 stars 28 forks source link

Speaker property for Call object is not working while migrating to V2 to V3 #108

Open hirenpatel8891 opened 3 years ago

hirenpatel8891 commented 3 years ago

We are migrating our implementation from 2.8.0 to new version 3.0.0 for our video call implementation. We have found that speaker value of the call object is not working for us which was working in 2.8.0. We have requirement to enable or disable the speaker of the phone while video calling.

Here is the implementation isLocalSpeakerEnable = !isLocalSpeakerEnable self.call?.isSpeaker = isLocalSpeakerEnable

We have also observed that for Local MediaRenderView has a black vertical line if the view's aspect ratio is not matched properly. We could not find the video rendermode property for the local MediaRenderView.

jbenyovs commented 3 years ago

@hirenpatel8891 please note, that this is a known issue and will be resolved with iOS SDK 3.1.

hirenpatel8891 commented 3 years ago

@jbenyovs Can you please update when we can expect the release of the new version of the SDK for iOS?

jbenyovs commented 3 years ago

@hirenpatel8891 the 3.1 version of the iOS SDK was just released. Please test it.

hirenpatel8891 commented 3 years ago

@jbenyovs
Thanks for the update I have tested this SDK version 3.1 version with defaultLoudSpeaker property true. We are able to hear the sound from loudspeaker and Its working fine.

The changes which made in this SDK 3.1. version is breaking the speaker enable and disable flow.

1) The value of property self.call?.isSpeaker is now available as get only in SDK 3.1, Which was previously get-set property and we were using to enable and disable the speaker.

2) If we use the AVRoutePickerView as mentioned in KitchenSinkApp we are getting selected iPhone as a default value for native iOS route selection. User is not able to select iPhone as Its already selected. We have attached the image of this for the same here.

Screenshot 2021-08-19 at 1 00 37 PM

In both the cases user is not able to turn off speaker.

We require enable and disable speaker feature as per our flow which was working fine with self.call?.isSpeaker property for earlier version of SDK 2.8.0

jbenyovs commented 3 years ago

@hirenpatel8891 had a discussion with engineering about this issue and they confirmed, that some further improvements that would completely solve the issue you reported here will be released with the iOS SDK 3.2. Unfortunately the only workaround is if you can use AVRoutePicker to toggle between speaker and ear piece and not make defaultLoudSpeaker as true. But that basically takes back to the initial issue itself. At the moment we do not have an estimate for the release of 3.2, but it is planned in the next few months.

hirenpatel8891 commented 2 years ago

@jbenyovs

Its working fine. You can close it