Symbian3/SDK/Source/GUID-92966ADC-17CF-5411-A829-1201C182B59F.dita
changeset 0 89d6a7a84779
child 2 ebc84c812384
equal deleted inserted replaced
-1:000000000000 0:89d6a7a84779
       
     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\&lt;build_variant&gt;</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>