|
1 <?xml version="1.0" encoding="utf-8"?> |
|
2 <!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. --> |
|
3 <!-- This component and the accompanying materials are made available under the terms of the License |
|
4 "Eclipse Public License v1.0" which accompanies this distribution, |
|
5 and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". --> |
|
6 <!-- Initial Contributors: |
|
7 Nokia Corporation - initial contribution. |
|
8 Contributors: |
|
9 --> |
|
10 <!DOCTYPE concept |
|
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
|
12 <concept id="GUID-92966ADC-17CF-5411-A829-1201C182B59F" xml:lang="en"><title>ETel3rdParty: |
|
13 Using the Telephony Independent Software Vendor (ISV) API</title><prolog><metadata><keywords/></metadata></prolog><conbody> |
|
14 <p>This set of seven example applications demonstrate the use of the Telephony |
|
15 ISV API provided by the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita"><apiname>CTelephony</apiname></xref> public interface to |
|
16 the phone’s telephony system. This interface enables developers to access |
|
17 common mobile telephony services, such as finding phone information, dialling |
|
18 and answering voice calls. </p> |
|
19 <p>Each example demonstrates a different set of mobile telephony services, |
|
20 and is stored in a subdirectory of <filepath>ETel3rdPartyExample</filepath>. |
|
21 These subdirectories are explained in the description section. </p> |
|
22 <section><title>Download</title> <p>Click on the following link to download |
|
23 the example: <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/zips/guid-7bdecae0-8d0b-407e-b387-2543550d99e7.zip" scope="external"> ETel3rdParty.zip</xref></p><p>Click <xref href="guid-6013a680-57f9-415b-8851-c4fa63356636/guid-7bdecae0-8d0b-407e-b387-2543550d99e7.html" scope="peer">browse</xref> to view the example code. </p> </section> |
|
24 <section id="GUID-BF0DBC82-2432-54B9-9A5F-78900F3FDA6C"><title>Description</title> <p><b>AutoDTMFDialler</b> </p> <p>This |
|
25 example performs the following operations: </p> <ul> |
|
26 <li id="GUID-AAA9F2D1-839B-5B68-A8AC-4C67E2573BBD"><p>Retrieves the line status |
|
27 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-8075BB6F-29D6-3BD1-BDE2-6E287E475E5E"><apiname>CTelephony::GetLineStatus()</apiname></xref> function. </p> </li> |
|
28 <li id="GUID-2F14CEC3-9000-50B9-856E-E0BED7A0F617"><p>Retrieves the call status |
|
29 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-AA41B779-3A44-3D14-8FB4-3DFF00065C41"><apiname>CTelephony::GetCallStatus()</apiname></xref> function </p> </li> |
|
30 <li id="GUID-698A96D0-3669-59C5-B81C-34D0DC651562"><p>Retrieves the current |
|
31 network registration status using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-6F919102-C5AA-39AB-8C58-64854C808154"><apiname>CTelephony::GetNetworkRegistrationStatus()</apiname></xref> function </p> </li> |
|
32 <li id="GUID-6725066A-EAA5-5530-807C-FA7D7FF510E0"><p>Retrieves the current |
|
33 flight mode status using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-FE20245B-0DC3-35A2-995A-2002E360443C"><apiname>CTelephony::GetFlightMode()</apiname></xref> function. </p> </li> |
|
34 <li id="GUID-A6E7E73E-D31F-5D0D-895F-FABBEA5FECFD"><p>Initiates a call using |
|
35 the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-E7A25EB6-B7FD-31DF-9A03-F100F93D7138"><apiname>CTelephony::DialNewCall()</apiname></xref> function </p> </li> |
|
36 <li id="GUID-541A9C02-ACAA-5017-BE5C-98FED025FF06"><p>Transmits DTMF tones |
|
37 across all the current active voice calls one after the other using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-21377F08-7A28-3D54-8B71-8C01140EB0A2"><apiname>CTelephony::SendDTMFTones()</apiname></xref> function </p> </li> |
|
38 <li id="GUID-6FA24CD2-FB5E-57B2-92A1-CE4D69969306"><p>Disconnects a call using |
|
39 the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-D4EEA60D-306E-358E-A1F8-9F93554D70BD"><apiname>CTelephony::Hangup()</apiname></xref> function. </p> </li> |
|
40 </ul> <p><b>Configs</b> </p> <p>This example directory contains the <filepath>config.txt</filepath> and |
|
41 the <filepath>TelephonyISVAppConfig.cfg</filepath> files, which are required |
|
42 to configure the SIM TSY to run the application. For more information, see |
|
43 the <xref href="GUID-92966ADC-17CF-5411-A829-1201C182B59F.dita#GUID-92966ADC-17CF-5411-A829-1201C182B59F/GUID-F065BEFB-810D-5C25-97FD-8D953515D249">Configuring |
|
44 the Simulator TSY</xref> section. </p> <p><b>IncomingCalls</b> </p> <p>This |
|
45 example answers incoming calls using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-6D12DBA4-8902-3649-B144-47C91F16C4B3"><apiname>CTelephony::AnswerIncomingCall()</apiname></xref> function. |
|
46 It also retrieves information about the call using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-4B0493B4-A6C4-3289-A72E-B274C4EACD12"><apiname>CTelephony::GetCallInfo()</apiname></xref> function. |
|
47 It uses a test plug-in named Simulator TSY (SIMTSY) which simulates telephony |
|
48 functions like phonebook, voicecall, SMS etc. </p> <p><b>NetworkInformation</b> </p> <p>This |
|
49 example retrieves the over-the-air network information about the currently |
|
50 registered mobile network using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-5CE72D6B-06FA-32A3-B242-B89308FF4412"><apiname>CTelephony::GetCurrentNetworkInfo()</apiname></xref> function |
|
51 and also requests notification of changes to this information using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-2310069E-D6D2-3478-B358-2C3DB45771DC"><apiname>CTelephony::NotifyChange()</apiname></xref> function. </p> <p><b>OutgoingCalls</b> </p> <p>This uses a test plug-in named Simulator TSY (SIMTSY) which simulates |
|
52 telephony functions like phonebook, voicecall, SMS etc. This example performs |
|
53 the following operations: </p> <ul> |
|
54 <li id="GUID-6D961227-F152-5107-8495-EA7F25E4769A"><p>Initiates a call using |
|
55 the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-E7A25EB6-B7FD-31DF-9A03-F100F93D7138"><apiname>CTelephony::DialNewCall()</apiname></xref> function. </p> </li> |
|
56 <li id="GUID-E080260D-97EA-51B5-9DB3-A00818ACEE5D"><p>Places a call on hold |
|
57 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-1CF45E69-84C7-3548-8C83-05C106304D9F"><apiname>CTelephony::Hold()</apiname></xref> function. </p> </li> |
|
58 <li id="GUID-A2B396AE-38AE-5776-AE15-782BAF848F19"><p>Swaps between calls |
|
59 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-1EDFE08F-2C36-3193-AF73-2D7AC37079DA"><apiname>CTelephony::Swap()</apiname></xref> function. </p> </li> |
|
60 <li id="GUID-6224A13F-A467-583D-9A47-7945081DFD0E"><p>Resumes a call on hold |
|
61 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-EFF39B1C-4685-3E79-93B3-5D0FB5AFAD02"><apiname>CTelephony::Resume()</apiname></xref> function. </p> </li> |
|
62 <li id="GUID-0E611A4B-B748-5FEC-9F8F-A1AA84B9BA7E"><p>Retrieves the status |
|
63 of ICC locks using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-FEAE2A06-DC15-3DE0-8F19-69E3B40875E2"><apiname>CTelephony::GetLockInfo()</apiname></xref> function. </p> </li> |
|
64 <li id="GUID-ED64D75F-7792-5009-B457-CB0871273F64"><p>Retrieves ICC-stored |
|
65 information about the (preferred) name of the currently registered mobile |
|
66 network using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-D51174DE-5CCD-3FCD-A9C4-AC1F2413F95D"><apiname>CTelephony::GetCurrentNetworkName()</apiname></xref> function |
|
67 and the network name using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-DB5E2992-B720-3194-91D2-66FF6655BCCC"><apiname>CTelephony::GetOperatorName()</apiname></xref> function. </p> </li> |
|
68 <li id="GUID-4521E90B-4E15-5087-AE9A-3FB3DFE5162C"><p> </p> <p>Retrieves the |
|
69 dynamic call capabilities for the calls that was dialled or answered using |
|
70 the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-3013F98E-4E22-3E1E-A871-5F892CFFC9F7"><apiname>CTelephony::GetCallDynamicCaps()</apiname></xref> function. </p> </li> |
|
71 </ul> <p><b>PhoneId</b> </p> <p>This example retrieves information about a |
|
72 phone, such as the manufacturer name, serial number, phone and SIM card number |
|
73 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-A3C550FC-0D46-35C4-9DEC-D7EA01E10ED8"><apiname>CTelephony::GetPhoneId()</apiname></xref> function, and current |
|
74 subscriber information using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-CFF2D182-A13F-30A2-AE9C-9C8CE7209387"><apiname>CTelephony::GetSubscriberId()</apiname></xref> function. |
|
75 It then prints this information to the console. </p> <p><b>PhoneMonitoring</b> </p> <p>This |
|
76 example performs the following operations: </p> <ul> |
|
77 <li id="GUID-99718553-06A4-5BB3-986E-EA9B73EF0FCC"><p>Retrieves the status |
|
78 and charge level of the phone battery using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-9D545601-9C85-3EB5-AB5D-4233C93C9802"><apiname>CTelephony::GetBatteryInfo()</apiname></xref> function. </p> </li> |
|
79 <li id="GUID-DC238197-472A-5408-9F66-28F61FD185D0"><p>Indicates whether a |
|
80 phone battery is being charged using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-FA962113-84DB-3562-A072-42613FD05E98"><apiname>CTelephony::GetIndicator()</apiname></xref> function. </p> </li> |
|
81 <li id="GUID-A800C543-4FB4-5A62-B6CC-BBF4CFE0970A"><p>Retrieves the current |
|
82 signal strength of the phone using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-080BF320-A91A-3FF6-AA0E-7E1C7D256BC1"><apiname>CTelephony::GetSignalStrength()</apiname></xref> function. </p> </li> |
|
83 <li id="GUID-D8B692C0-C8A7-5CE9-8643-6C7B2150C57B"><p>Retrieves the current |
|
84 flight mode status using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-FE20245B-0DC3-35A2-995A-2002E360443C"><apiname>CTelephony::GetFlightMode()</apiname></xref> function. </p> </li> |
|
85 </ul> <p><b>Shared</b> </p> <p>This example directory contains the shared |
|
86 files to be used by other directories for synchronous and asynchronous operations. </p> <p><b>SuppleServices</b> </p> <p>This |
|
87 example retrieves the current status of the following services: </p> <ul> |
|
88 <li id="GUID-E1D17AB9-54A7-5EFB-A20F-5AA9A1D4BF3C"><p>call barring services |
|
89 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-EDBA2DB4-976B-3FC6-9CED-ACD74A081788"><apiname>CTelephony::GetCallBarringStatus()</apiname></xref> function, </p> </li> |
|
90 <li id="GUID-F9338E27-96B4-54A6-BB27-8EDFB61DAE26"><p>call forwarding services |
|
91 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-3D885BC3-1BBE-3673-A647-48F221D1A687"><apiname>CTelephony::GetCallForwardingStatus()</apiname></xref> function, </p> </li> |
|
92 <li id="GUID-70CEDAB7-6BD2-5F8B-BEFB-36B79223C9FC"><p>call waiting services |
|
93 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-2B8C749F-5614-388E-B368-0EEFB32219B5"><apiname>CTelephony::GetCallWaitingStatus()</apiname></xref> function, </p> </li> |
|
94 <li id="GUID-D2A45950-D676-54F8-A365-AAC53160CE86"><p>call identity services |
|
95 using the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita#GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A/GUID-768817E6-D985-3C18-AD12-448D192B460F"><apiname>CTelephony::GetIdentityServiceStatus()</apiname></xref> function. </p> </li> |
|
96 </ul> </section> |
|
97 <section><title>Class summary</title> <p>The principal class used in this |
|
98 example is <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita"><apiname>CTelephony</apiname></xref>. </p> </section> |
|
99 <section id="GUID-F065BEFB-810D-5C25-97FD-8D953515D249"><title>Configuring |
|
100 the simulator TSY</title> <p>To run the application you must configure the |
|
101 Simulator TSY. To do this, install the configuration files by performing the |
|
102 following steps: </p> <ol id="GUID-A72585E2-49F7-56CA-957F-2AAA6D2ADF9B"> |
|
103 <li id="GUID-38B9A560-6511-5EC7-BB96-DD1ECBED96E2"><p>Copy the <filepath>config.txt</filepath> file |
|
104 and the <filepath>TelephonyISVAppConfig.cfg</filepath> file into the <filepath>\epoc32\winscw\c\</filepath> directory |
|
105 of the phone. </p> </li> |
|
106 <li id="GUID-3422372C-9843-55A2-9DB8-83A28EF61C94"><p>From the command prompt, |
|
107 go to the source root directory. </p> </li> |
|
108 <li id="GUID-A86CA3CE-500B-575F-BB3B-D4825579BA97"><p>Change directory to <filepath>\epoc32\release\winscw\udeb</filepath> and |
|
109 run the following command: </p> <p><userinput>ced c:\TelephonyISVAppConfig.cfg </userinput> </p> </li> |
|
110 <li id="GUID-8AFA4C77-F78F-5672-AF9C-E999930E1E51"><p>Check the <filepath>ced.log</filepath> file |
|
111 to ensure that the configuration file has been read successfully. </p> </li> |
|
112 </ol> </section> |
|
113 <section id="GUID-67006F52-C18C-576E-B645-20AE6CCD61C4"><title>Building and |
|
114 running</title> <p> <xref href="GUID-3100800B-B2F7-50EF-BD4C-3C345ECCB2A5.dita">The |
|
115 Symbian OS build process</xref> describes how to build an application. </p> <p>The <codeph>ETel3rdPartyExample</codeph> builds |
|
116 the following executables in the standard location (<filepath>\epoc32\release\winscw\<build_variant></filepath> for |
|
117 CodeWarrior): </p> <ul> |
|
118 <li id="GUID-443AF336-E3B4-507E-9A13-A6AB7912B79F"><p> <filepath> phoneid.exe</filepath> </p> </li> |
|
119 <li id="GUID-DAB579A4-B8D2-570E-BD25-5C5F9F5B90B5"><p> <filepath>phonemonitor.exe</filepath> </p> </li> |
|
120 <li id="GUID-243981B3-581D-5716-AA4E-44FA6392E7D4"><p> <filepath>networkinformation.exe</filepath> </p> </li> |
|
121 <li id="GUID-0799DF67-6E1E-5584-B9B5-5F146977E10A"><p> <filepath>suppleservices.exe</filepath> </p> </li> |
|
122 <li id="GUID-1D7E2526-E35C-5522-BF06-C1CC72E5B15D"><p> <filepath>outgoingcalls.exe</filepath> </p> </li> |
|
123 <li id="GUID-717B32F7-2DBE-5088-8B42-AC3437B39315"><p> <filepath>autodtmf.exe</filepath> </p> </li> |
|
124 <li id="GUID-85027887-4C27-56FF-8A11-7ADE2BC89F93"><p> <filepath>incomingcalls.exe</filepath> </p> </li> |
|
125 </ul> <p>Each executable must be run separately. </p> <p> <b>Note:</b> Set |
|
126 the <codeph>StartUpMode</codeph> mode to <codeph>1</codeph> in the <filepath>\epoc32\data\epoc.ini</filepath> file |
|
127 to start the emulator in text shell mode as the applications use a console |
|
128 based interface. </p> </section> |
|
129 </conbody></concept> |