convergedcallengine/csplugin/src/cspcall.cpp
branchRCL_3
changeset 41 594d59766373
parent 30 13725ba12484
equal deleted inserted replaced
40:c58fd5f0c240 41:594d59766373
   214             }
   214             }
   215         // The call is dialling.
   215         // The call is dialling.
   216         case RMobileCall::EStatusDialling:
   216         case RMobileCall::EStatusDialling:
   217             CSPLOGSTRING(CSPINT, "CSPCall callstate Dialling");
   217             CSPLOGSTRING(CSPINT, "CSPCall callstate Dialling");
   218             {
   218             {
       
   219 			// Start streams also for MO video call to prevent audio routing problems
       
   220 			// with other applications.
   219             if ( iAudioHandler 
   221             if ( iAudioHandler 
   220                  && ( iParams->CallType() == CCPCall::ECallTypeCSVoice 
   222                  && ( iParams->CallType() == CCPCall::ECallTypeCSVoice 
   221                     || iParams->CallType() == CCPCall::ECallTypeVideo ) )
   223                     || iParams->CallType() == CCPCall::ECallTypeVideo ) )
   222                 {
   224                 {
   223                 iAudioStatus = ECSPCallAudioStatusActive;
   225                 iAudioStatus = ECSPCallAudioStatusActive;
   281             NotifyCallStateChanged( MCCPCallObserver::ECCPStateConnected );
   283             NotifyCallStateChanged( MCCPCallObserver::ECCPStateConnected );
   282             
   284             
   283             // Agreement with TSY is that the
   285             // Agreement with TSY is that the
   284             // COLP number is available in connected state.
   286             // COLP number is available in connected state.
   285             NotifyRemotePartyNumberChanged();            
   287             NotifyRemotePartyNumberChanged();            
       
   288             
       
   289             // Stop streams for MO video call so that Video Telephony can 
       
   290             // receive RemCon commands instead of Phone.
       
   291             if ( iMobileOriginated
       
   292                 && iAudioHandler 
       
   293                 && iAudioStatus == ECSPCallAudioStatusActive
       
   294                 && iParams->CallType() == CCPCall::ECallTypeVideo )
       
   295                 {
       
   296                 iAudioStatus = ECSPCallAudioStatusInactive;
       
   297                 iAudioHandler->Stop();
       
   298                 }
   286             break;
   299             break;
   287             }
   300             }
   288         // Indicates that call is disconnecting. (Same as RCall::HangingUp)
   301         // Indicates that call is disconnecting. (Same as RCall::HangingUp)
   289         case RMobileCall::EStatusDisconnecting:
   302         case RMobileCall::EStatusDisconnecting:
   290             {
   303             {