Provides access to Session Initiation Protocol (SIP) functionality, such as making and answering VOIP calls using SIP.
For more information, see the Session Initiation Protocol developer guide.
To get started, you need to get an instance of the Android.Net.Sip.SipManager by calling Android.Net.Sip.SipManager.NewInstance(Android.Content.Context).
With the Android.Net.Sip.SipManager, you can initiate SIP audio calls with Android.Net.Sip.SipManager.MakeAudioCall(Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile) and Android.Net.Sip.SipManager.TakeAudioCall(Android.Content.Intent, .Listener). Both methods require a NoType:android/net/sip/SipAudioCall$Listener;Href=../../../../reference/android/net/sip/SipAudioCall.Listener.html that receives callbacks when the state of the call changes, such as when the call is ringing, established, or ended.
Both Android.Net.Sip.SipManager.MakeAudioCall(Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile, Android.Net.Sip.SipProfile) also requires two Android.Net.Sip.SipProfile objects, representing the local device and the peer device. You can create a Android.Net.Sip.SipProfile using the NoType:android/net/sip/SipProfile$Builder;Href=../../../../reference/android/net/sip/SipProfile.Builder.html subclass.
Once you have a Android.Net.Sip.SipAudioCall, you can perform SIP audio call actions with the instance, such as make a call, answer a call, mute a call, turn on speaker mode, send DTMF tones, and more.
If you want to create generic SIP connections (such as for video calls or other), you can create a SIP connection from the Android.Net.Sip.SipManager, using Android.Net.Sip.SipManager.Open(Android.Net.Sip.SipProfile). If you only want to create audio SIP calls, though, you should use the Android.Net.Sip.SipAudioCall class, as described above.
Note: Not all Android-powered devices support VOIP functionality with SIP. Before performing any SIP activity, you should call Android.Net.Sip.SipManager.IsVoipSupported(Android.Content.Context) to verify that the device supports VOIP calling and Android.Net.Sip.SipManager.IsApiSupported(Android.Content.Context) to verify that the device supports the SIP APIs. Your application must also request the NoType:android/Manifest$permission;Href=../../../../reference/android/Manifest.permission.html#INTERNET and NoType:android/Manifest$permission;Href=../../../../reference/android/Manifest.permission.html#USE_SIP permissions in order to use the SIP APIs.
Type | Reason |
---|---|
ISipRegistrationListener | Listener for SIP registration events. |
RegisteringEventArgs | Documentation for this section has not yet been entered. |
RegistrationDoneEventArgs | Documentation for this section has not yet been entered. |
RegistrationFailedEventArgs | Documentation for this section has not yet been entered. |
SipAudioCall | Handles an Internet audio call over SIP. |
SipAudioCall+Listener | Listener for events relating to a SIP call, such as when a call is being recieved ("on ringing") or a call is outgoing ("on calling"). |
SipErrorCode | Defines error codes returned during SIP actions. |
SipErrorCodes | Enumerates values returned by several types and taken as a parameter of several types. |
SipException | Indicates a general SIP-related exception. |
SipManager | Provides APIs for SIP tasks, such as initiating SIP connections, and provides access to related SIP services. |
SipProfile | Defines a SIP profile, including a SIP account, domain and server information. |
SipProfile+Builder | Helper class for creating a Android.Net.Sip.SipProfile. |
SipProfile+InterfaceConsts | Documentation for this section has not yet been entered. |
SipSession | Represents a SIP session that is associated with a SIP dialog or a standalone transaction not within a dialog. |
SipSession+Listener | Listener for events relating to a SIP session, such as when a session is being registered ("on registering") or a call is outgoing ("on calling"). |
SipSession+State | Defines SIP session states, such as "registering", "outgoing call", and "in call". |
SipSessionState | Enumerates values returned by several types and taken as a parameter of the Android.Net.Sip.SipSession.State.ToString member. |