|
1 /* |
|
2 * Copyright (c) Nokia Corporation and/or its subsidiary(-ies). |
|
3 * All rights reserved. |
|
4 * This component and the accompanying materials are made available |
|
5 * under the terms of "Eclipse Public License v1.0" |
|
6 * which accompanies this distribution, and is available |
|
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 * |
|
9 * Initial Contributors: |
|
10 * Nokia Corporation - initial contribution. |
|
11 * |
|
12 * Contributors: |
|
13 * |
|
14 * Description: service provider settings definitions |
|
15 * |
|
16 */ |
|
17 |
|
18 |
|
19 #ifndef SPDEFINITIONS_H |
|
20 #define SPDEFINITIONS_H |
|
21 |
|
22 /** Maximum length of descriptor data */ |
|
23 const TInt KSPMaxDesLength = 512; |
|
24 |
|
25 /** Service attribute mask */ |
|
26 enum TPropertyServiceAttributes |
|
27 { |
|
28 ESupportsCSVoiceCall = 0x00000001, // Supports CS voice call |
|
29 ESupportsCSVideoCall = 0x00000002, // Supports CS video call |
|
30 ESupportsCSData = 0x00000004, // Supports CS data transfer |
|
31 ESupportsFax = 0x00000008, // Service supports fax |
|
32 ESupportsInternetCall = 0x00000010, // Service supports internet call |
|
33 ESupportsEmergencyCall = 0x00000020, // service supports emergency call |
|
34 ESupportsMSISDNAddressing = 0x00000040, // Service supports MSISDN addressing |
|
35 ESupportsAlphanumericAddressing = 0x00000080, // Service supports alphanumeric addressing |
|
36 EIsVisibleInCallMenu = 0x00000100, // Service is visible in call menu |
|
37 EBootstrapCallProvider = 0x00000200, // Boostrap call provider |
|
38 ESupportVoIPSS = 0x00000400, // Supports VoIP SS |
|
39 ESimplifiedConferenceCallBubble = 0x00000800 // Simplified conference call bubble |
|
40 }; |
|
41 |
|
42 /** Supported feature check */ |
|
43 enum TSPServiceFeature |
|
44 { |
|
45 ESupportInternetCallFeature, //ESupportsInternetCall + ESupportsAlphanumericAddressing + EIsVisibleInCallMenu |
|
46 ESupportCallOutFeature, //ESupportsInternetCall + ESupportsMSISDNAddressing + EIsVisibleInCallMenu |
|
47 ESupportVoIPSSFeature, //ESupportVoIPSS |
|
48 ESupportVoIPFeature //FeatureManager::FeatureSupported()+dynamic voip flag check+with subservice voip |
|
49 }; |
|
50 |
|
51 /** Service provider ID not defined */ |
|
52 const TInt KSPNoId = 0; |
|
53 /** Types of service provider settings items in settings table |
|
54 - for internal use */ |
|
55 enum TSPItemType |
|
56 { |
|
57 EItemTypeNotDefined = 1, |
|
58 EItemTypeDeleted, |
|
59 EItemTypeEntry, |
|
60 EItemTypeProperty, |
|
61 |
|
62 // Specifies certain subservice group |
|
63 EItemTypeVoIPSubProperty, |
|
64 EItemTypePresenceSubProperty, |
|
65 EItemTypeIMSubProperty, |
|
66 EItemTypeVMBXSubProperty, |
|
67 }; |
|
68 |
|
69 /** List of predefined properties */ |
|
70 enum TServicePropertyName |
|
71 { |
|
72 EPropertyUnknown = 0x00000001, // Unknown property |
|
73 |
|
74 EServiceName = 0x00002000, // Service name. Set by RCSE / VoIP adapter |
|
75 |
|
76 // TInt |
|
77 // properties |
|
78 EPropertyServiceAttributeMask = 0x00003000, // Service attributes, see TPropertyServiceAttributes. Set by RCSE |
|
79 EPropertyCTIPluginId = 0x00004000, // Phone Engine CTI plugin UID |
|
80 EPropertyCLIPluginId = 0x00005000, // Phone application CLI plugin UID. Set by RCSE |
|
81 EPropertyCallLoggingPluginId = 0x00006000, // Phone application call logging plugin UID. Set by RCSE |
|
82 EPropertyCallStateIndicatorPluginId = 0x00007000, // Phone application call state indicator plugin UID. Set by RCSE |
|
83 EPropertyCallMenuHandlerPluginId = 0x00008000, // Phone application menu handler plugin UID. Set by RCSE |
|
84 EPropertyCallProviderPluginId = 0x00009000, // CCE call provider plugin UID. Set by RCSE |
|
85 EPropertyPCSPluginId = 0x0000A000, // Presence FW PSC plugin UID. Set by RCSE |
|
86 EPropertyVoIPSubServicePluginId = 0x0000B000, // CCH VoIP subservice connectivity plugin UID. Set by RCSE |
|
87 EPropertyPresenceSubServicePluginId = 0x0000C000, // CCH Presence subservice connectivity plugin UID. Set by VoIP adapter |
|
88 EPropertyIMSubServicePluginId = 0x0000D000, // CCH Instant Messaging subservice connectivity plugin UID |
|
89 EPropertyVMBXSubServicePluginId = 0x0000E000, // CCH VMBX subservice connectivity plugin UID. Set by RCSE |
|
90 EPropertyServiceSetupPluginId = 0x0000F000, // Service setup plugin UID. Set by RCSE |
|
91 EPropertyContactViewId = 0x00010000, // Phonebook2 contact view ID. Set by Phonebook extension |
|
92 EPropertyBrandVersion = 0x00011000, // Brand version |
|
93 EPropertyBrandLanguage = 0x00012000, // Brand language |
|
94 EPropertyLogCntLinkMaxLength = 0x00013000, // Maximum length of a serialised contact link. Set by RCSE |
|
95 EPropertyContactViewPluginId = 0x00014000, // Contact view plugin UID. Set by RCSE |
|
96 EPropertySendFwImPluginId = 0x00015000, // SendUi service provider UID |
|
97 EPropertyRingtoneTimeout = 0x00016000, // Ringtone timeout |
|
98 |
|
99 // Subproperties |
|
100 // VoIP subproperties |
|
101 ESubPropertyVoIPSettingsId = 0x00017000, // VoIP settings ID. Set by RCSE |
|
102 ESubPropertyVoIPPreferredSNAPId = 0x00018000, // Preferred SNAP ID. Set by VoIP adapter |
|
103 ESubPropertyVoIPPreferredIAPId = 0x00019000, // Preferred IAP ID. Set by VoIP adapter |
|
104 ESubPropertyVoIPTemporaryIAPId = 0x0001A000, // Temporary IAP ID. Set by Phonebook extension |
|
105 |
|
106 // Presence subproperties |
|
107 ESubPropertyPresenceSettingsId = 0x0001B000, // Presence settings ID. Set by VoIP adapter |
|
108 ESubPropertyPresencePreferredSNAPId = 0x0001C000, // Preferred SNAP ID |
|
109 ESubPropertyPresencePreferredIAPId = 0x0001D000, // Preferred IAP ID |
|
110 ESubPropertyPresencePresentityIDFieldType = 0x0001E000, // Presentity ID field type. Set by RCSE |
|
111 ESubPropertyPresenceLaunchMethod = 0x0001F000, // Presence launching method |
|
112 ESubPropertyPresenceLaunchUid = 0x00020000, // Presence plugin or application UID |
|
113 |
|
114 // IM subproperties |
|
115 ESubPropertyIMSettingsId = 0x00021000, // IM settings ID |
|
116 ESubPropertyIMPreferredSNAPId = 0x00022000, // Preferred SNAP ID |
|
117 ESubPropertyIMPreferredIAPId = 0x00023000, // Preferred IAP ID |
|
118 ESubPropertyIMLaunchMethod = 0x00024000, // IM launching method |
|
119 ESubPropertyIMLaunchUid = 0x00025000, // IM plugin or application UID |
|
120 |
|
121 // VMBX subproperties |
|
122 ESubPropertyVMBXSettingsId = 0x00026000, // VMBX settings ID. Set by VoIP adapter |
|
123 ESubPropertyVMBXPreferredSNAPId = 0x00027000, // Preferred SNAP ID |
|
124 ESubPropertyVMBXPreferredIAPId = 0x00028000, // Preferred IAP ID. Set by VoIP adapter |
|
125 ESubPropertyVMBXMWISubscribeInterval = 0x00029000, // Message waiting indicator, Re-subscribe interval. Set by VoIP adapter |
|
126 ESubPropertyVMBXLaunchMethod = 0x0002A000, // VMBX launching method |
|
127 ESubPropertyVMBXLaunchUid = 0x0002B000, // VMBX plugin or application UID |
|
128 |
|
129 |
|
130 // DES |
|
131 //-------------------------------------------------------------------- |
|
132 // Properties |
|
133 EPropertyBrandId = 0x0002C000, // Brand ID. Links the service to brand information |
|
134 // stored in the branding server. Set by RCSE |
|
135 EPropertyContactStoreId = 0x0002D000, // Virtual phonebook contact store ID. Set by RCSE |
|
136 EPropertyServiceBookmarkUri = 0x0002E000, // Service provider bookmark URI. Set by VoIP adapter |
|
137 EPropertyIncomingEmailserver = 0x0002F000, // Service incoming e-mail server |
|
138 |
|
139 |
|
140 // Subproperties |
|
141 // VoIP subproperties |
|
142 ESubPropertyVoIPRelNumber = 0x00030000, // VoIP release number |
|
143 ESubPropertyVoIPBrandDataUri = 0x00031000, // VoIP branding data URI. Set by VoIP adapter |
|
144 ESubPropertyVoIPBrandIconUri = 0x00032000, // VoIP branding icon URI |
|
145 ESubPropertyVoIPAddrScheme = 0x00033000, // VoIP addressing scheme |
|
146 |
|
147 // Presence subproperties |
|
148 ESubPropertyPresenceAddrScheme = 0x00034000, // Presence addressing scheme |
|
149 |
|
150 // IM subproperties |
|
151 ESubPropertyIMAddrScheme = 0x00035000, // IM addressing scheme |
|
152 |
|
153 // VMBX subproperties |
|
154 ESubPropertyVMBXListenAddress = 0x00036000, // VMBX listen address. Set by VoIP adapter |
|
155 ESubPropertyVMBXMWIAddress = 0x00037000, // VMBX message waiting indicator address. Set by VoIP adapter |
|
156 ESubPropertyVMBXBrandIconUri = 0x00038000, // Brand icon URI |
|
157 ESubPropertyVMBXAddrScheme = 0x00039000, // VMBX addressing scheme |
|
158 |
|
159 |
|
160 // OnOff |
|
161 //-------------------------------------------------------------------- |
|
162 // VoIP subproperties |
|
163 ESubPropertyVoIPEnabled = 0x0003A000, // Enable/disable VoIP. Set by VoIP adapter |
|
164 |
|
165 // Presence subproperties |
|
166 ESubPropertyPresenceEnabled = 0x0003B000, // Enable/disable presence. Set by VoIP adapter |
|
167 ESubPropertyPresenceRequestPreference = 0x0003C000, // Auto accept buddy request. Set by VoIP adapter |
|
168 |
|
169 // IM subproperties |
|
170 ESubPropertyIMEnabled = 0x0003D000, // Enable/disable IM |
|
171 |
|
172 // VMBX subproperties |
|
173 ESubPropertyVMBXListenRegister = 0x0003E000, // Listen without or with registration |
|
174 ESubPropertyVMBXEnabled = 0x0003F000, // Enable/disable VMBX. Set by VoIP adapter |
|
175 |
|
176 //VCC subproperties |
|
177 ESubPropertyVccName = 0x00040000, |
|
178 ESubPropertyVccVDI = 0x00041000, |
|
179 ESubPropertyVccVDN = 0x00042000, |
|
180 ESubPropertyVccPreferredDomain = 0x00043000, |
|
181 ESubPropertyVccImmediateDomainTransfer = 0x00044000, |
|
182 ESubPropertyVccDtCstoPsAllowed = 0x00045000, |
|
183 ESubPropertyVccDtPstoCsAllowed = 0x00046000, |
|
184 ESubPropertyVccDtHeldWaitingCallsAllowed = 0x00047000, |
|
185 ESubPropertyVccDtCSHoTriggerLevel = 0x00048000, |
|
186 ESubPropertyVccDtCSHoHysteresis = 0x00049000, |
|
187 ESubPropertyVccDtCSHoHysteresisTimerLow = 0x0004A000, |
|
188 ESubPropertyVccDtCSHoHysteresisTimerHigh = 0x0004B000, |
|
189 ESubPropertyVccDtWLANHoTriggerLevel = 0x0004C000, |
|
190 ESubPropertyVccDtWLANHoHysteresis = 0x0004D000, |
|
191 ESubPropertyVccDtWLANHoHysteresisTimerLow = 0x0004E000, |
|
192 ESubPropertyVccDtWLANHoHysteresisTimerHigh = 0x0004F000, |
|
193 ESubPropertyVccHoNotificationToneMode = 0x00050000, |
|
194 ESubPropertyVccDtVoipServiceId = 0x00051000, |
|
195 ESubPropertyVccDtAllowedWhenCsOriginated = 0x00052000, |
|
196 ESubPropertyVccAppId = 0x00053000, |
|
197 |
|
198 }; |
|
199 |
|
200 |
|
201 /** On/off data type */ |
|
202 enum TOnOff |
|
203 { |
|
204 EOONotSet = -1, |
|
205 EOff = 0, |
|
206 EOn = 1 |
|
207 }; |
|
208 |
|
209 /** List of supported datatypes of properties */ |
|
210 enum TPropertyDataType |
|
211 { |
|
212 EDataTypeNotSet, // NotSet |
|
213 EDataTypeUnknown, // Unknown |
|
214 EDataTypeInt, // TInt |
|
215 EDataTypeDes, // TDesC |
|
216 EDataTypeOnOff, // TOnOff |
|
217 }; |
|
218 |
|
219 /** List of subservice launching method */ |
|
220 enum TSPSubServiceLaunchMethod |
|
221 { |
|
222 ESPFrameWorkPlugin, |
|
223 ESPLauncherPlugin, |
|
224 ESPApplication |
|
225 }; |
|
226 |
|
227 |
|
228 /** Service ID */ |
|
229 typedef TUint TServiceId; |
|
230 |
|
231 /** Array of CSPProperty objects */ |
|
232 class CSPProperty; |
|
233 typedef RPointerArray<CSPProperty> RPropertyArray; |
|
234 |
|
235 /** Array of service provider IDs */ |
|
236 typedef RArray<TServiceId> RIdArray; |
|
237 |
|
238 /** Array of service provider IDs */ |
|
239 typedef RArray<TServicePropertyName> RPropertyNameArray; |
|
240 |
|
241 /** central repsitory keys array */ |
|
242 typedef RArray<TUint32> RKeyArray; |
|
243 |
|
244 |
|
245 #endif // SPDEFINITIONS_H |
|
246 |
|
247 |