private IQ receiveSessionInfoAction ( Jingle jingle , JingleDescription description ) throws JingleException { IQ response = null ; PayloadType oldBestCommonAudioPt = bestCommonAudioPt ; List < PayloadType > offeredPayloads ; boolean ptChange = false ; offeredPayloads = description . getAudioPayloadTypesList ( ) ; if ( ! offeredPayloads . isEmpty ( ) ) { synchronized ( remoteAudioPts ) { remoteAudioPts . clear ( ) ; remoteAudioPts . addAll ( offeredPayloads ) ; } // Calculate the best common codec bestCommonAudioPt = calculateBestCommonAudioPt ( remoteAudioPts ) ; if ( bestCommonAudioPt != null ) { // and send an accept if we have an agreement... ptChange = ! bestCommonAudioPt . equals ( oldBestCommonAudioPt ) ; if ( oldBestCommonAudioPt == null || ptChange ) { // response = createAcceptMessage(); } } else { throw new JingleException ( JingleError . NO_COMMON_PAYLOAD ) ; } } // Parse the Jingle and get the payload accepted return response ; }
A content info has been received . This is done for publishing the list of payload types ...