Fix encoding of localICECandidate event

This commit is contained in:
Tiago Jacobs
2022-03-29 10:31:13 -03:00
parent 63fe888544
commit 184fb8a190
2 changed files with 6 additions and 3 deletions

View File

@@ -62,7 +62,6 @@ open class BigBlueButtonSDK: NSObject {
let decodedPayload = (try? JSONDecoder().decode([String: String].self, from: payloadData))!
let iceJson = decodedPayload["iceJson"]
logger.info("")
ReactNativeEventEmitter.emitter.sendEvent(withName: ReactNativeEventEmitter.EVENT.onScreenShareLocalIceCandidate.rawValue, body: iceJson)
}

View File

@@ -6,10 +6,14 @@ export function setupListener(_webViewRef: MutableRefObject<any>) {
nativeEmitter.addListener(
'onScreenShareLocalIceCandidate',
(jsonEncodedIceCandidate) => {
const iceCandidate = JSON.parse(jsonEncodedIceCandidate);
let iceCandidate = JSON.parse(jsonEncodedIceCandidate);
if (typeof iceCandidate == 'string') {
iceCandidate = JSON.parse(iceCandidate);
}
const event = { candidate: iceCandidate };
_webViewRef.current.injectJavaScript(
`window.bbbMobileScreenShareIceCandidateCallback(${JSON.stringify(
iceCandidate
event
)});`
);
}