Symbian3/SDK/Source/GUID-92966ADC-17CF-5411-A829-1201C182B59F.dita
changeset 0 89d6a7a84779
child 2 ebc84c812384
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Symbian3/SDK/Source/GUID-92966ADC-17CF-5411-A829-1201C182B59F.dita	Thu Jan 21 18:18:20 2010 +0000
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
+<!-- This component and the accompanying materials are made available under the terms of the License 
+"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: 
+-->
+<!DOCTYPE concept
+  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="GUID-92966ADC-17CF-5411-A829-1201C182B59F" xml:lang="en"><title>ETel3rdParty:
+Using the Telephony Independent Software Vendor (ISV) API</title><prolog><metadata><keywords/></metadata></prolog><conbody>
+<p>This set of seven example applications demonstrate the use of the Telephony
+ISV API provided by the <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita"><apiname>CTelephony</apiname></xref> public interface to
+the phone’s telephony system. This interface enables developers to access
+common mobile telephony services, such as finding phone information, dialling
+and answering voice calls. </p>
+<p>Each example demonstrates a different set of mobile telephony services,
+and is stored in a subdirectory of <filepath>ETel3rdPartyExample</filepath>.
+These subdirectories are explained in the description section. </p>
+<section><title>Download</title> <p>Click on the following link to download
+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>
+<section id="GUID-BF0DBC82-2432-54B9-9A5F-78900F3FDA6C"><title>Description</title> <p><b>AutoDTMFDialler</b> </p> <p>This
+example performs the following operations: </p> <ul>
+<li id="GUID-AAA9F2D1-839B-5B68-A8AC-4C67E2573BBD"><p>Retrieves the line status
+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>
+<li id="GUID-2F14CEC3-9000-50B9-856E-E0BED7A0F617"><p>Retrieves the call status
+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>
+<li id="GUID-698A96D0-3669-59C5-B81C-34D0DC651562"><p>Retrieves the current
+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>
+<li id="GUID-6725066A-EAA5-5530-807C-FA7D7FF510E0"><p>Retrieves the current
+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>
+<li id="GUID-A6E7E73E-D31F-5D0D-895F-FABBEA5FECFD"><p>Initiates a call using
+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>
+<li id="GUID-541A9C02-ACAA-5017-BE5C-98FED025FF06"><p>Transmits DTMF tones
+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>
+<li id="GUID-6FA24CD2-FB5E-57B2-92A1-CE4D69969306"><p>Disconnects a call using
+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>
+</ul> <p><b>Configs</b> </p> <p>This example directory contains the <filepath>config.txt</filepath> and
+the <filepath>TelephonyISVAppConfig.cfg</filepath> files, which are required
+to configure the SIM TSY to run the application. For more information, see
+the <xref href="GUID-92966ADC-17CF-5411-A829-1201C182B59F.dita#GUID-92966ADC-17CF-5411-A829-1201C182B59F/GUID-F065BEFB-810D-5C25-97FD-8D953515D249">Configuring
+the Simulator TSY</xref> section. </p> <p><b>IncomingCalls</b> </p> <p>This
+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.
+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.
+It uses a test plug-in named Simulator TSY (SIMTSY) which simulates telephony
+functions like phonebook, voicecall, SMS etc. </p> <p><b>NetworkInformation</b> </p> <p>This
+example retrieves the over-the-air network information about the currently
+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
+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
+telephony functions like phonebook, voicecall, SMS etc. This example performs
+the following operations: </p> <ul>
+<li id="GUID-6D961227-F152-5107-8495-EA7F25E4769A"><p>Initiates a call using
+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>
+<li id="GUID-E080260D-97EA-51B5-9DB3-A00818ACEE5D"><p>Places a call on hold
+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>
+<li id="GUID-A2B396AE-38AE-5776-AE15-782BAF848F19"><p>Swaps between calls
+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>
+<li id="GUID-6224A13F-A467-583D-9A47-7945081DFD0E"><p>Resumes a call on hold
+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>
+<li id="GUID-0E611A4B-B748-5FEC-9F8F-A1AA84B9BA7E"><p>Retrieves the status
+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>
+<li id="GUID-ED64D75F-7792-5009-B457-CB0871273F64"><p>Retrieves ICC-stored
+information about the (preferred) name of the currently registered mobile
+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
+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>
+<li id="GUID-4521E90B-4E15-5087-AE9A-3FB3DFE5162C"><p> </p> <p>Retrieves the
+dynamic call capabilities for the calls that was dialled or answered using
+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>
+</ul> <p><b>PhoneId</b> </p> <p>This example retrieves information about a
+phone, such as the manufacturer name, serial number, phone and SIM card number
+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
+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.
+It then prints this information to the console. </p> <p><b>PhoneMonitoring</b> </p> <p>This
+example performs the following operations: </p> <ul>
+<li id="GUID-99718553-06A4-5BB3-986E-EA9B73EF0FCC"><p>Retrieves the status
+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>
+<li id="GUID-DC238197-472A-5408-9F66-28F61FD185D0"><p>Indicates whether a
+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>
+<li id="GUID-A800C543-4FB4-5A62-B6CC-BBF4CFE0970A"><p>Retrieves the current
+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>
+<li id="GUID-D8B692C0-C8A7-5CE9-8643-6C7B2150C57B"><p>Retrieves the current
+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>
+</ul> <p><b>Shared</b> </p> <p>This example directory contains the shared
+files to be used by other directories for synchronous and asynchronous operations. </p> <p><b>SuppleServices</b> </p> <p>This
+example retrieves the current status of the following services: </p> <ul>
+<li id="GUID-E1D17AB9-54A7-5EFB-A20F-5AA9A1D4BF3C"><p>call barring services
+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>
+<li id="GUID-F9338E27-96B4-54A6-BB27-8EDFB61DAE26"><p>call forwarding services
+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>
+<li id="GUID-70CEDAB7-6BD2-5F8B-BEFB-36B79223C9FC"><p>call waiting services
+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>
+<li id="GUID-D2A45950-D676-54F8-A365-AAC53160CE86"><p>call identity services
+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>
+</ul> </section>
+<section><title>Class summary</title> <p>The principal class used in this
+example is <xref href="GUID-97D402C8-B4B7-385A-92B3-D3FCC0CA575A.dita"><apiname>CTelephony</apiname></xref>. </p> </section>
+<section id="GUID-F065BEFB-810D-5C25-97FD-8D953515D249"><title>Configuring
+the simulator TSY</title> <p>To run the application you must configure the
+Simulator TSY. To do this, install the configuration files by performing the
+following steps: </p> <ol id="GUID-A72585E2-49F7-56CA-957F-2AAA6D2ADF9B">
+<li id="GUID-38B9A560-6511-5EC7-BB96-DD1ECBED96E2"><p>Copy the <filepath>config.txt</filepath> file
+and the <filepath>TelephonyISVAppConfig.cfg</filepath> file into the <filepath>\epoc32\winscw\c\</filepath> directory
+of the phone. </p> </li>
+<li id="GUID-3422372C-9843-55A2-9DB8-83A28EF61C94"><p>From the command prompt,
+go to the source root directory. </p> </li>
+<li id="GUID-A86CA3CE-500B-575F-BB3B-D4825579BA97"><p>Change directory to <filepath>\epoc32\release\winscw\udeb</filepath> and
+run the following command: </p> <p><userinput>ced c:\TelephonyISVAppConfig.cfg </userinput> </p> </li>
+<li id="GUID-8AFA4C77-F78F-5672-AF9C-E999930E1E51"><p>Check the <filepath>ced.log</filepath> file
+to ensure that the configuration file has been read successfully. </p> </li>
+</ol> </section>
+<section id="GUID-67006F52-C18C-576E-B645-20AE6CCD61C4"><title>Building and
+running</title> <p> <xref href="GUID-3100800B-B2F7-50EF-BD4C-3C345ECCB2A5.dita">The
+Symbian OS build process</xref> describes how to build an application. </p> <p>The <codeph>ETel3rdPartyExample</codeph> builds
+the following executables in the standard location (<filepath>\epoc32\release\winscw\&lt;build_variant&gt;</filepath> for
+CodeWarrior): </p> <ul>
+<li id="GUID-443AF336-E3B4-507E-9A13-A6AB7912B79F"><p> <filepath> phoneid.exe</filepath>  </p> </li>
+<li id="GUID-DAB579A4-B8D2-570E-BD25-5C5F9F5B90B5"><p> <filepath>phonemonitor.exe</filepath>  </p> </li>
+<li id="GUID-243981B3-581D-5716-AA4E-44FA6392E7D4"><p> <filepath>networkinformation.exe</filepath>  </p> </li>
+<li id="GUID-0799DF67-6E1E-5584-B9B5-5F146977E10A"><p> <filepath>suppleservices.exe</filepath>  </p> </li>
+<li id="GUID-1D7E2526-E35C-5522-BF06-C1CC72E5B15D"><p> <filepath>outgoingcalls.exe</filepath>  </p> </li>
+<li id="GUID-717B32F7-2DBE-5088-8B42-AC3437B39315"><p> <filepath>autodtmf.exe</filepath>  </p> </li>
+<li id="GUID-85027887-4C27-56FF-8A11-7ADE2BC89F93"><p> <filepath>incomingcalls.exe</filepath>  </p> </li>
+</ul> <p>Each executable must be run separately. </p> <p> <b>Note:</b> Set
+the <codeph>StartUpMode</codeph> mode to <codeph>1</codeph> in the <filepath>\epoc32\data\epoc.ini</filepath> file
+to start the emulator in text shell mode as the applications use a console
+based interface. </p> </section>
+</conbody></concept>
\ No newline at end of file