1<HTML>
2<BODY>
3<p>Provides access to Session Initiation Protocol (SIP) functionality, such as
4making and answering VOIP calls using SIP.</p>
5
6<p>For more information, see the
7<a href="{@docRoot}guide/topics/connectivity/sip.html">Session Initiation Protocol</a>
8developer guide.</p>
9{@more}
10
11<p>To get started, you need to get an instance of the {@link android.net.sip.SipManager} by
12calling {@link android.net.sip.SipManager#newInstance newInstance()}.</p>
13
14<p>With the {@link android.net.sip.SipManager}, you can initiate SIP audio calls with {@link
15android.net.sip.SipManager#makeAudioCall makeAudioCall()} and {@link
16android.net.sip.SipManager#takeAudioCall takeAudioCall()}. Both methods require
17a {@link android.net.sip.SipAudioCall.Listener} that receives callbacks when the state of the
18call changes, such as when the call is ringing, established, or ended.</p>
19
20<p>Both {@link android.net.sip.SipManager#makeAudioCall makeAudioCall()} also requires two
21{@link android.net.sip.SipProfile} objects, representing the local device and the peer
22device. You can create a {@link android.net.sip.SipProfile} using the {@link
23android.net.sip.SipProfile.Builder} subclass.</p>
24
25<p>Once you have a {@link android.net.sip.SipAudioCall}, you can perform SIP audio call actions with
26the instance, such as make a call, answer a call, mute a call, turn on speaker mode, send DTMF
27tones, and more.</p>
28
29<p>If you want to create generic SIP connections (such as for video calls or other), you can
30create a SIP connection from the {@link android.net.sip.SipManager}, using {@link
31android.net.sip.SipManager#open open()}. If you only want to create audio SIP calls, though, you
32should use the {@link android.net.sip.SipAudioCall} class, as described above.</p>
33
34<p class="note"><strong>Note:</strong>
35Not all Android-powered devices support VOIP functionality with SIP. Before performing any SIP
36activity, you should call {@link android.net.sip.SipManager#isVoipSupported isVoipSupported()}
37to verify that the device supports VOIP calling and {@link
38android.net.sip.SipManager#isApiSupported isApiSupported()} to verify that the device supports the
39SIP APIs.
40Your application must also request the {@link android.Manifest.permission#INTERNET} and {@link
41android.Manifest.permission#USE_SIP} permissions in order to use the SIP APIs.
42</p>
43
44</BODY>
45</HTML>