code: private void openInboundConnection() throws IOException {
          // Open audio channel
          this.audioChannel.open();
  
          // Connect audio channel to remote peer
          MediaDescriptionField remoteAudio = this.remoteSdp.getMediaDescription("audio");
          setupAudioChannelInbound(remoteAudio);
  
          // Generate SDP answer
          this.localSdp = SdpFactory.buildSdp(false, this.localAddress, this.externalAddress, this.audioChannel);
  
          // Reject video stream (not supported)
          MediaDescriptionField remoteVideo = this.remoteSdp.getMediaDescription("video");
          if (remoteVideo != null) {
              SdpFactory.rejectMediaField(this.localSdp, remoteVideo);
          }
  
          // Reject data stream (not supported)
          MediaDescriptionField remoteApplication = this.remoteSdp.getMediaDescription("application");
          if (remoteApplication != null) {
              SdpFactory.rejectMediaField(this.localSdp, remoteApplication);
          }
      }
docs: Sets the remote peer based on the remote SDP description.
  
  <p>
  In this case, the connection belongs to an inbound call. So, the remote SDP is the offer and, as result, the proper
  answer is generated.<br>
  The SDP answer can be sent later to the remote peer.
  </p>
  
  @throws IOException If an error occurs while setting up the remote peer