--- a/mmsharing/mmshavailability/src/musavacapabilitysipagent.cpp Thu Jul 15 18:35:08 2010 +0300
+++ b/mmsharing/mmshavailability/src/musavacapabilitysipagent.cpp Thu Aug 19 09:51:39 2010 +0300
@@ -30,6 +30,7 @@
#include <sipstrconsts.h>
#include <sipresponseelements.h>
+#include "mussettings.h"
#include "muslogger.h"
#include "musavacapabilityexchange.h"
#include "musavacapabilityquery.h"
@@ -164,12 +165,25 @@
{
MUS_LOG( "mus: [MUSAVA] -> CMusAvaCapabilitySipAgent::IncomingRequest" )
TInt retval = KErrNone;
+ MusSettingsKeys::TOperatorVariant variantValue = MusSettingsKeys::EStandard;
+ TRAPD( error, variantValue =
+ MultimediaSharingSettings::OperatorVariantSettingL() );
+ if( error )
+ {
+ MUS_LOG("CMusAvaCapabilitySipAgent::IncomingRequest\
+ Get OperatorVariantSettingL worng");
+ }
+
if ( aTransaction->Type() ==
SIPStrings::StringF( SipStrConsts::EOptions ) )
{
- // Answer 200OK only when CS call remain at Availability States
+ // Answer 200OK when CS call remain at Availability States
+ //or at EMusAvaOptionNotAvailable State in operatorspecific mode
if ( MMusAvaObserver::EMusAvaStatusNotExecuted <=
- iAvailabilityObserver.AvailabilityPluginState() )
+ iAvailabilityObserver.AvailabilityPluginState()
+ ||( ( iAvailabilityObserver.AvailabilityPluginState() ==
+ MMusAvaObserver::EMusAvaOptionNotAvailable )
+ && ( variantValue == MusSettingsKeys::EOperatorSpecific )))
{
retval =
iCapabilityExchange.QueryObserver().CapabilityQueryAnswered() ?