williamr@2: /* williamr@2: * Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: * All rights reserved. williamr@2: * This component and the accompanying materials are made available williamr@2: * under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: * which accompanies this distribution, and is available williamr@2: * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: * williamr@2: * Initial Contributors: williamr@2: * Nokia Corporation - initial contribution. williamr@2: * williamr@2: * Contributors: williamr@2: * williamr@2: * Description: williamr@2: * Name : sipobserver.h williamr@2: * Part of : SIP Client williamr@2: * Interface : SDK API, SIP Client API williamr@2: * Version : 1.0 williamr@2: * williamr@2: */ williamr@2: williamr@2: williamr@2: williamr@2: #ifndef MSIPOBSERVER_H williamr@2: #define MSIPOBSERVER_H williamr@2: williamr@2: // INCLUDES williamr@2: #include williamr@2: williamr@2: // FORWARD DECLARATIONS williamr@2: class CSIPServerTransaction; williamr@2: williamr@2: // CLASS DECLARATION williamr@2: williamr@2: /** williamr@2: * @publishedAll williamr@2: * @released williamr@2: * williamr@2: * An interface to be implemented by user of CSIP. williamr@2: * Interface allows to be able to receive SIP request from the SIP connection williamr@2: * that has not been initialized by the user. williamr@2: * williamr@2: * @lib n/a williamr@2: */ williamr@2: class MSIPObserver williamr@2: { williamr@2: public: // New functions williamr@2: /** williamr@2: * A SIP request has been received from the network. williamr@2: * This function is called when the SIP request was received using such williamr@2: * an IAP, for which the application has not created a CSIPConnection williamr@2: * object. williamr@2: * @pre aTransaction != 0 williamr@2: * @param aIapId The IapId from which the SIP request was received. williamr@2: * @param aTransaction contains local address, remote address of a SIP williamr@2: * message, as well as optional SIP message method, headers and williamr@2: * body. The ownership is transferred. williamr@2: */ williamr@2: virtual void IncomingRequest(TUint32 aIapId, williamr@2: CSIPServerTransaction* aTransaction) = 0; williamr@2: williamr@2: /** williamr@2: * The received SIP request time-outed and it is invalid i.e. cannot be used williamr@2: * anymore. williamr@2: * This will be called if the user fails to create a SIP connection and williamr@2: * does not send an appropriate SIP response. williamr@2: * @param aTransaction The time-outed transaction. williamr@2: */ williamr@2: virtual void TimedOut(CSIPServerTransaction& aTransaction) = 0; williamr@2: }; williamr@2: williamr@2: #endif