gotMessageFromServer method

Future<void> gotMessageFromServer(
  1. dynamic message
)

Implementation

Future<void> gotMessageFromServer(message) async {
  if (_peerConnection == null) {
    await _createPeerConnection(isCaller: false);
  }
  var signal = json.decode(message);

  if (signal.containsKey('uuid') && signal['uuid'] == uuid) return;

  if (signal.containsKey('sdp')) {
    _peerConnection
        ?.setRemoteDescription(
            new RTCSessionDescription(signal['sdp'], signal['type']))
        .then((value) {
      if (signal['type'] == 'answer') {
        _peerConnection?.setRemoteDescription(
            new RTCSessionDescription(signal['sdp'], signal['type']));
        return;
      } else if (signal['type'] == 'offer') {
        _peerConnection?.createAnswer().then(createdDescription);
      }
    }).catchError((_) {
      print("i am in error ${_}");
    });
  } else if (signal.containsKey('ice')) {
    _peerConnection?.addCandidate(new RTCIceCandidate(
        signal['candidate'], signal['sdpMid'], signal['sdpMLineIndex']));
  }
}