Files
bigbluebutton-tablet-sdk/src/methods/setFullAudioRemoteSDP.tsx
2022-05-02 19:10:09 -03:00

33 lines
1.0 KiB
TypeScript

import { setFullAudioRemoteSDP as nativeSetFullAudioRemoteSDP } from '../native-components/BBBN_FullAudioService';
import nativeEmitter from '../native-messaging/emitter';
// Reference to the resolver of last call
let resolve = (value: unknown) => {
console.log(
`default resolve function called, this should never happen: ${value}`
);
};
// Resolve promise when SDP offer is available
nativeEmitter.addListener('onSetFullAudioRemoteSDPCompleted', () => {
resolve(undefined);
});
// Entry point of this method
function setFullAudioRemoteSDP(instanceId: Number, remoteSdp: string) {
return new Promise((res, rej) => {
// store the resolver for later call (when event is received)
resolve = res;
try {
console.log(`[${instanceId}] - >nativeSetFullAudioRemoteSDP ${remoteSdp}`);
// call native swift method that triggers the broadcast popup
nativeSetFullAudioRemoteSDP(remoteSdp);
} catch (e) {
rej(`Call to nativeSetFullAudioRemoteSDP failed`);
}
});
}
export default setFullAudioRemoteSDP;