inc/PEngPresenceEngineConsts2.h
changeset 0 094583676ce7
--- /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 <E32Def.h>
+
+
+
+// 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
+
+