equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies). |
2 * Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies). |
3 * All rights reserved. |
3 * All rights reserved. |
4 * This component and the accompanying materials are made available |
4 * This component and the accompanying materials are made available |
5 * under the terms of "Eclipse Public License v1.0" |
5 * under the terms of "Eclipse Public License v1.0" |
6 * which accompanies this distribution, and is available |
6 * which accompanies this distribution, and is available |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
25 #include "svplogger.h" |
25 #include "svplogger.h" |
26 #include "svpsessionbase.h" // CSVPSessionBase |
26 #include "svpsessionbase.h" // CSVPSessionBase |
27 #include "svpsipconsts.h" |
27 #include "svpsipconsts.h" |
28 #include "svpconsts.h" |
28 #include "svpconsts.h" |
29 |
29 |
|
30 // These have to be handled as well |
|
31 _LIT8( KSVPNotifyRinging183, "SIP/2.0 183 Ringing" ); |
|
32 _LIT8( KSVPNotifyOk, "SIP/2.0 200 Ok" ); |
|
33 |
30 // --------------------------------------------------------------------------- |
34 // --------------------------------------------------------------------------- |
31 // CSVPTransferController::CSVPTransferController |
35 // CSVPTransferController::CSVPTransferController |
32 // --------------------------------------------------------------------------- |
36 // --------------------------------------------------------------------------- |
33 // |
37 // |
34 CSVPTransferController::CSVPTransferController() : |
38 CSVPTransferController::CSVPTransferController() : |
223 iTransferContext->TransferObserver().TransferNotification( |
227 iTransferContext->TransferObserver().TransferNotification( |
224 ESVPTransferOKHangUp ); |
228 ESVPTransferOKHangUp ); |
225 } |
229 } |
226 } |
230 } |
227 } |
231 } |
228 else if ( !content->Find( TPtrC8( KSVPNotifyOK ) ) ) |
232 else if ( !content->Find( TPtrC8( KSVPNotifyOK ) ) || |
|
233 !content->Find( TPtrC8( KSVPNotifyOk ) ) ) |
229 { |
234 { |
230 if ( iTransferContext->IsAttended() ) |
235 if ( iTransferContext->IsAttended() ) |
231 { |
236 { |
232 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, Attended case:\ |
237 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, Attended case:\ |
233 SIP/2.0 200 OK" ); |
238 SIP/2.0 200 OK" ); |
252 else |
257 else |
253 { |
258 { |
254 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, UnAttended: SIP/2.0 200 OK" ); |
259 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, UnAttended: SIP/2.0 200 OK" ); |
255 } |
260 } |
256 } |
261 } |
257 else if ( !content->Find( TPtrC8( KSVPNotifyRinging ) ) && |
262 else if ( ( !content->Find( TPtrC8( KSVPNotifyRinging ) ) || |
258 !iTransferContext->IsAttended()) |
263 !content->Find( TPtrC8( KSVPNotifyRinging183 ) ) ) && |
|
264 !iTransferContext->IsAttended()) |
259 { |
265 { |
260 // Polycom send Ringing instead of Trying in unattended case. |
266 // Polycom send Ringing instead of Trying in unattended case. |
261 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, UnAttended and 180 Ringing" ); |
267 SVPDEBUG1( "CSVPTransferController::NotifyReceivedL, UnAttended and Ringing" ); |
262 |
268 |
263 // Check if 202 Accepted already received |
269 // Check if 202 Accepted already received |
264 if ( iAccepted ) |
270 if ( iAccepted ) |
265 { |
271 { |
266 // Stop the refer timer |
272 // Stop the refer timer |