mmsharing/mmshavailability/src/musavacapability.cpp
branchRCL_3
changeset 33 bc78a40cd63c
parent 32 73a1feb507fb
equal deleted inserted replaced
32:73a1feb507fb 33:bc78a40cd63c
    21 #include "muslogger.h"
    21 #include "muslogger.h"
    22 #include "musavacapabilityexchange.h"
    22 #include "musavacapabilityexchange.h"
    23 #include "musavacapabilitycontext.h"
    23 #include "musavacapabilitycontext.h"
    24 #include "mmusavacapabilityqueryobserver.h"
    24 #include "mmusavacapabilityqueryobserver.h"
    25 #include "mussettings.h"
    25 #include "mussettings.h"
       
    26 #include "mussettingskeys.h"
    26 
    27 
    27 #include <e32math.h>
    28 #include <e32math.h>
    28 #include <uri8.h>
    29 #include <uri8.h>
    29 #include <escapeutils.h>
    30 #include <escapeutils.h>
       
    31 //#include <sip.h>
    30 #include <sipservertransaction.h>
    32 #include <sipservertransaction.h>
       
    33 //#include <sipclienttransaction.h>
    31 #include <sipacceptcontactheader.h>
    34 #include <sipacceptcontactheader.h>
    32 #include <sipcontactheader.h>
    35 #include <sipcontactheader.h>
    33 #include <siprequestelements.h>
    36 #include <siprequestelements.h>
    34 #include <sdpdocument.h>
    37 #include <sdpdocument.h>
    35 #include <sdpmediafield.h>
    38 #include <sdpmediafield.h>
   204     CleanupStack::PushL( type );
   207     CleanupStack::PushL( type );
   205                                          
   208                                          
   206     aResponseContent.AttributeFields().AppendL( type );
   209     aResponseContent.AttributeFields().AppendL( type );
   207     CleanupStack::Pop( type );
   210     CleanupStack::Pop( type );
   208     
   211     
   209     //Add fast startup mode, if supported
       
   210     AddFastModeL( aResponseContent );
       
   211 
       
   212     MUS_LOG( "mus: [MUSAVA] Adding media line to SDP" )
   212     MUS_LOG( "mus: [MUSAVA] Adding media line to SDP" )
   213     //media line    
   213     //media line    
   214     CSdpMediaField* mediaLine = MediaLineLC( 
   214     CSdpMediaField* mediaLine = MediaLineLC( 
   215                 MusAvaCapabilityContext::SDPStringL( 
   215                 MusAvaCapabilityContext::SDPStringL( 
   216                     SdpCodecStringConstants::EMediaVideo ), 
   216                     SdpCodecStringConstants::EMediaVideo ), 
   338     CleanupStack::Pop( codecs );
   338     CleanupStack::Pop( codecs );
   339     
   339     
   340     return codecs;
   340     return codecs;
   341     }
   341     }
   342     
   342     
   343 // -----------------------------------------------------------------------------
       
   344 // CMusAvaCapability::ResolveFastModeL
       
   345 // -----------------------------------------------------------------------------
       
   346 // 
       
   347 MusSettingsKeys::TFastMode CMusAvaCapability::ResolveFastModeL( 
       
   348         CSdpDocument& aSDP )
       
   349     {
       
   350     MUS_LOG( "mus: [MUSAVA]: -> CMusAvaCapability::ResolveFastModeL" )
       
   351     MusSettingsKeys::TFastMode mode = MusSettingsKeys::EFastModeOff;
       
   352     if ( MultimediaSharingSettings::FastStartupModeL() == 
       
   353             MusSettingsKeys::EFastModeOn )
       
   354         {
       
   355         MUS_LOG( "mus: [MUSAVA] Checking if a=keywds:fastmode present..." )
       
   356         const CSdpAttributeField* keywds = CMusAvaCapability::Attribute( 
       
   357                     MusAvaCapabilityContext::SDPStringL( 
       
   358                         SdpCodecStringConstants::EAttributeKeywds ),
       
   359                     aSDP );
       
   360         if ( keywds && 
       
   361              keywds->Value().Compare( KCapabilitySDPAttributeFastMode ) == 0 )        
       
   362             {
       
   363             mode = MusSettingsKeys::EFastModeOn;
       
   364             }
       
   365         }
       
   366     MUS_LOG( "mus: [MUSAVA]: <- CMusAvaCapability::ResolveFastModeL" )
       
   367     return mode;
       
   368     }
       
   369 
       
   370 // -----------------------------------------------------------------------------
       
   371 // CMusAvaCapability::ResolveFastModeL
       
   372 // -----------------------------------------------------------------------------
       
   373 // 
       
   374 void CMusAvaCapability::AddFastModeL( CSdpDocument& aSdp )
       
   375     {
       
   376     MUS_LOG( "mus: [MUSAVA]: -> CMusAvaCapability::AddFastModeL" )
       
   377     if ( MultimediaSharingSettings::FastStartupModeL() == 
       
   378             MusSettingsKeys::EFastModeOn )
       
   379         {
       
   380         CSdpAttributeField* fastmode = CSdpAttributeField::NewLC(
       
   381              MusAvaCapabilityContext::SDPStringL( 
       
   382                  SdpCodecStringConstants::EAttributeKeywds ), 
       
   383              KCapabilitySDPAttributeFastMode );
       
   384                                            
       
   385         aSdp.AttributeFields().AppendL( fastmode );
       
   386         CleanupStack::Pop( fastmode );
       
   387         }    
       
   388     MUS_LOG( "mus: [MUSAVA]: <- CMusAvaCapability::AddFastModeL" )        
       
   389     }
       
   390 
       
   391 
   343 
   392 // -----------------------------------------------------------------------------
   344 // -----------------------------------------------------------------------------
   393 // CMusAvaCapability::Attribute
   345 // CMusAvaCapability::Attribute
   394 // -----------------------------------------------------------------------------
   346 // -----------------------------------------------------------------------------
   395 // 
   347 //