Difference between revisions of "CTCall"

From iPhone Development Wiki
Jump to: navigation, search
(Added information about how to get access to the call history and wiki-ized the page a bit.)
Line 1: Line 1:
 
'''CTCall''' is a set of APIs in [[CoreTelephony.framework]] that is used to achieve various things related to phone calls.
 
'''CTCall''' is a set of APIs in [[CoreTelephony.framework]] that is used to achieve various things related to phone calls.
  
= Initiating a call =
+
== Initiating a call ==
To initiate a call without using {{applink|MobilePhone}}, you can use the CTCallDial function.
+
To initiate a call without using {{applink|MobilePhone}}, you can use the <tt>CTCallDial</tt> function.
  
 
<source lang=c>
 
<source lang=c>
Line 20: Line 20:
 
* '''Note''': The phone number passed to <tt>CTCallDial</tt> must be normalized. For example, +1 (555) 555-5555 will become 15555555555 after normalization. You can use the [[CPPhoneNumber|CPPhoneNumberCopyNormalized]] function to normalize.
 
* '''Note''': The phone number passed to <tt>CTCallDial</tt> must be normalized. For example, +1 (555) 555-5555 will become 15555555555 after normalization. You can use the [[CPPhoneNumber|CPPhoneNumberCopyNormalized]] function to normalize.
  
= Getting the call history =
+
== Getting the call history ==
 
One can use the <tt>_CTCallCopyAllCalls</tt> function to get the call history as a list of CTCalls.
 
One can use the <tt>_CTCallCopyAllCalls</tt> function to get the call history as a list of CTCalls.
 
<source lang=c>
 
<source lang=c>

Revision as of 23:42, 7 September 2013

CTCall is a set of APIs in CoreTelephony.framework that is used to achieve various things related to phone calls.

Initiating a call

To initiate a call without using MobilePhone, you can use the CTCallDial function.

CFStringRef number = CFSTR("15555555555");
CTCallRef call = CTCallDial(number);
...
CTCallHold(call);
...
CTCallResume(call);
...
CTCallDisconnect(call);

The CTCallHold, CTCallResume and CTCallDisconnect (to end the call) functions can be used to hold call, resume a held call and end a call, respectively.

  • Note: The phone number passed to CTCallDial must be normalized. For example, +1 (555) 555-5555 will become 15555555555 after normalization. You can use the CPPhoneNumberCopyNormalized function to normalize.

Getting the call history

One can use the _CTCallCopyAllCalls function to get the call history as a list of CTCalls.

CFArrayRef calls = _CTCallCopyAllCalls();
NSLog(@"Calls: %@", calls);
CFRelease(calls);

References