diff -r 000000000000 -r 094583676ce7 inc/PEngPresenceEngineConsts2.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/inc/PEngPresenceEngineConsts2.h Thu Dec 17 08:41:52 2009 +0200 @@ -0,0 +1,257 @@ +/* +* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Presence Engine consts to be used by the clients. +* +*/ + +#ifndef __PENGPRESENCEENGINECONSTS2_H +#define __PENGPRESENCEENGINECONSTS2_H + +// INCLUDES +#include + + + +// CONSTANTS + +/** + * Max length definitions for NWSessionSlotID + * sub-parts and other related ID's. + * @since 3.0 + */ +const TInt KPEngMaxServiceAddressLength = 256; +const TInt KPEngMaxUserIdLength = 50; +const TInt KPEngMaxAppIdLength = 10; +const TInt KPEngMaxNWSessionOwnerID = 10; + + + +/** + * Unknown search element. + * @since 3.0 + */ +const TInt KPEngNullSearchElement = -1; + + + +/** + * NULL attribute type. + * + * @since 3.0 + */ +const TUint32 KPEngNullAttributeType = 0x0; + + + + +/** + * User own presence ID. + * + * Following lit is used to identify user own + * presence attributes, e.g. when requesting + * attribute notifications. + * + * @since 3.0 + */ +_LIT( KPEngUserOwnPresenceId, "" ); + + +/** + * NWSessionSlot Application ID: IM + * + * This is used with CPEngNWSessionSlotID2 to + * identify that IM application is using the + * NWSessionSlot. + * + * @since 3.0 + */ +_LIT( KPEngAppIdIM, "IM" ); + + +/** + * NWSessionSlot Application ID: PEC + * + * This is used with CPEngNWSessionSlotID2 to + * identify that PEC applications are using the + * NWSessionSlot. + * + * @since 3.0 + */ +_LIT( KPEngAppIdPEC, "PEC" ); + + + + + + +// EVENT AND OPERATION ENUMERATIONS + + +/** + * NWSessionSlot event enumeration. + * + * @since 3.0 + */ +enum TPEngNWSessionSlotEvent + { + //Pseudo empty event + EPEngEventNone = 0, + + //New slot created + EPEngEventNWSessionSlotCreated = 1, + + //Slot configured + EPEngEventNWSessionSlotChanged = 2, + + //Slot removed + EPEngEventNWSessionSlotRemoved = 3, + + //Network Presence Session opened from the slot + EPEngEventAppNWPresenceSessionOpened = 4, + + //Network Presence Session closed from the slot + EPEngEventAppNWPresenceSessionClosed = 5, + + //Network Server closed session + EPEngEventNWSessionClosedByServer = 6, + + //Network Presence Session transport signalled event + //EventInt and EventDes describe further the actual event + EPEngEventNWSessionTransport = 7 + }; + + + + + +/** + * NWSessionSlot state enumeration. + * + * @since 3.0 + */ +enum TPEngNWSessionSlotState + { + // No network presence session open from NWSessionSlot. + EPEngNWPresenceSessionClosed = 1, + + // Application network presence session open from NWSessionSlot. + EPEngNWPresenceSessionOpen = 2 + }; + + + + + + + +/** + * NWSessionSlot operation ID's. + * + * These NWSessionSlot operation IDs are visible for clients in: + * 1) Transaction result entries, see + * - MPEngTransactionStatus2 + * + * 2) Operation event callbacks, see + * - MPEngNWSessionOperationObserver2 + * + * Internally Presence Engine uses these ID's + * to manage NWSessionSlot operations. + * + * @since 3.0 + */ +enum TPEngNWSessionSlotOperations + { + //Presence network session opening operation + EPEngNWSSOpNWSessionOpen = 1, + + + //Presence network session closing operation + EPEngNWSSOpNWSessionClose = 2 + }; + + + + + + + +/** + * Transaction operation ID's. + * + * These transaction operation IDs are visible for clients in: + * 1) Transaction result entries, see + * - MPEngTransactionStatus2 + * + * 2) Operation event callbacks, see + * - MPEngContactListTransactionObserver2 + * - MPEngAttributeListTransactionObserver2 + * - MPEngAttributeTransactionObserver2 + * + * Internally Presence Engine uses these ID's + * to manage transaction operations. + * + * @since 3.0 + */ +enum TPEngTransactionOperation + { + //Publish own presence attributes + EPEngTransOpOwnAttributePublish = 51, + + //Fetch Presence Attributes to cache + EPEngTransOpAttributeFetchToCache = 52, + + //Fetch Presence Attributes to objects + EPEngTransOpAttributeFetchToObjects = 53, + + + + // Synchronize Attribute base things, default attribute list + EPEngTransOpAttrListBaseSynchronize = 101, + + // Sychronize attribut elist for contact list + EPEngTransOpAttrListSyncForCntList = 102, + + //Publish Attribute lists + EPEngTransOpAttrListPublish = 103, + + + //Synchronize Contact List base things (list of lists) + EPEngTransOpCntListBaseSync = 150, + + //Update contact list + EPEngTransOpCntListUpdateList = 151, + + //Synchronize contact list + EPEngTransOpCntListSyncList = 152, + + //Network search start + EPEngTransOpNetworkSearchStart = 200, + + //Network continue search + EPEngTransOpNetworkSearchContinue = 201, + + //Network search stop + EPEngTransOpNetworkSearchStop = 202, + + // Respond to Autorization Requests + EPEngTransOpAuthorizationResponse = 250 + }; + + + + + +#endif //__PENGPRESENCEENGINECONSTS2_H + +