This is the main class of the Jabber Guest Android SDK. More...

Inherited by com.cisco.jabber.guest.sdk.jcf.JcfJabberGuestCall.

Classes

enum  AutoCallEvent
 Represent the different events that take place once a auto call is either in the prepared or executed states. More...
 
enum  CallControlEvent
 Represent the different events that take place once a call is either in the starting or started states. More...
 
class  CallStatistics
 Represents statistics relevant to an active call's audio and video multimedia streams at a single moment in time, when retrieved from the JabberGuestCall getStatistics method. More...
 
enum  CaptureOrientation
 Used to specify the desired capture orientation when calling setCaptureOrientation(). More...
 
interface  JabberGuestInvalidCertificateCallback
 Whenever a JabberGuestCall instance encounters an error condition verifying the validity of a certificate installed on a Cisco Jabber Guest server, the instance will attempt to notify the implementing application of this failure, by calling this method, as long as the application has registered a valid implementation of this interface with this JabberGuestCall class prior to encountering the certificate error. More...
 
enum  State
 Represent the different states that a JabberGuestCall instance can be in. More...
 
enum  TelephonyAudio
 An enum used to relate various DTMF tones from the KeypadView to their corresponding audio files used during playback of those tones. More...
 

Public Member Functions

abstract boolean canSwitchCamera ()
 Determine if the device supports the ability to switch among more than one input cameras. More...
 
abstract void switchCamera ()
 Switch to the next available input camera. More...
 
abstract void cancelAutoCall ()
 Cancel auto call when received the event(ACTION_AUTO_CALL_EVENT), only work when delay secs from event by ARG_AUTO_CALL_DELAY_SECS is positive & between AutoCallEvent#PREPARED and AutoCallEvent#EXECUTED.
 
void setCaptureOrientation (CaptureOrientation orientation)
 Set the camera capture orientation. More...
 
abstract boolean isFrontCamera ()
 Returns true if the currently selected camera is the front camera on the device.
 
abstract void preview ()
 Indicate the Call Preview screen is being displayed.
 
abstract boolean start ()
 Initiate the call to the toUri specified in the createInstance method. More...
 
abstract void end ()
 End this call and release all resources associated with this instance. More...
 
void setSelfTextureView (TextureView textureView)
 Use the given texture view to draw the local device video, for display in a PreviewView or SelfView. More...
 
abstract void setSelfTextureView (TextureView textureView, RenderCallbacks callbacks)
 Use the given texture view to draw the local device video, for display in a PreviewView or SelfView. More...
 
void setRemoteTextureView (TextureView textureView)
 Use the given context and texture view to draw the called party video, for display in a RemoteView. More...
 
abstract void setRemoteTextureView (TextureView textureView, RenderCallbacks callbacks)
 Use the given texture view to draw the called party video, for display in a RemoteView. More...
 
void setRemoteScreenShareTextureView (TextureView textureView)
 Use the given texture view to draw the called party screen share video, for display in a DataView. More...
 
abstract void setRemoteScreenShareTextureView (TextureView textureView, RenderCallbacks callbacks)
 Use the given texture view to draw the called party screen share video, for display in a DataView. More...
 
JabberGuestCall.State getState ()
 Retrieve the current state of this JabberGuestCall instance. More...
 
Uri getToUri ()
 Retrieve the uri that this JabberGuestCall instance will dial when a call is initiated. More...
 
abstract boolean isLocalVideoActive ()
 Determine if the local device's video is actively streaming during a call. More...
 
abstract boolean isRemoteVideoActive ()
 Determine if the called party is streaming video during a call. More...
 
abstract boolean isRemoteScreenShareActive ()
 Determine if the called party is sharing their screen during a call. More...
 
abstract boolean isVideoMuted ()
 Determine if the local device's video is currently stopped. More...
 
abstract boolean isVideoControlEnabled ()
 Determine if user has capability to control the local device's video. More...
 
abstract void muteVideo ()
 Stop the local device video from being sent. More...
 
abstract void unmuteVideo ()
 Start sending the local device video. More...
 
abstract boolean isAudioMuted ()
 Determine if the local device's audio is currently stopped. More...
 
abstract void muteAudio ()
 Stop the local device audio from being sent. More...
 
abstract void unmuteAudio ()
 Start sending the local device audio. More...
 
abstract void sendDigits (String digits)
 Sends the given string of DTMF digits to the called party. More...
 
abstract boolean isServerConfigPrepared ()
 Determine if server configuration is prepared. More...
 
abstract boolean isAutoCallPrepared ()
 Determine if auto call function is prepared. More...
 
abstract int getAutoCallDelayTime ()
 Retrieve the delay time of auto call to start. More...
 
synchronized JabberGuestCall.CallStatistics getStatistics ()
 Returns a JabberGuestCall.Statistics instance. More...
 
String getToDisplayName ()
 Get the address or display name of the called party. More...
 
void audioRouteUpdated (AudioRouteType route)
 This method should be called whenever an activity or fragment has determined that the audio routing has changed or needs to change due to some condition. More...
 
abstract void acceptInvalidCertificate (String referenceID, String subjectCertificateData)
 In the event that a JabberGuestCall instance informs an application of an invalid certificate error via the InvalidCertificateCallback, the application can call this method to inform the JabberGuestCall instance to accept the invalid certificate as-is, and continue any pending calls. More...
 
abstract void rejectInvalidCertificate ()
 In the event that a JabberGuestCall instance informs an application of an invalid certificate error via the InvalidCertificateCallback, the application can call this method to inform the JabberGuestCall instance to reject the invalid certificate and immediately terminate any pending calls. More...
 
abstract void registerContext (Context context)
 Call this to register the most recent active view Context for displaying dialog from the JabberGuestCall object. More...
 

Static Public Member Functions

static void registerReceiver (Context context, BroadcastReceiver receiver)
 Register a given BroadcastReceiver with JabberGuestCall so that it can be notified whenever all events that JabberGuestCall supports are encountered. More...
 
static void registerReceiver (Context context, BroadcastReceiver receiver, IntentFilter filter)
 Register a given BroadcastReceiver with JabberGuestCall so that it can be notified whenever any specified events in the given IntentFilter are encountered. More...
 
static void unregisterReceiver (BroadcastReceiver receiver)
 Unregisters the given BroadcastReceiver with JabberGuestCall, no more notifications will be sent. More...
 
static AudioRouteManager getAudioRouteManager ()
 Get the current AudioRouteManager instance being used by this JabberGuestCall instance. More...
 
static Uri createUri (String server, String address, String displayName)
 Create and return an Uri in the format that createInstance expects. More...
 
static synchronized JabberGuestCall createInstance (Context context, Uri toUri)
 Create and return an instance of JabberGuestCall. More...
 
static synchronized JabberGuestCall getInstance ()
 Get the current instance of JabberGuestCall. More...
 
static boolean instanceExists ()
 Determine if there is currently a valid instance of JabbJabberGuestCallerCall in existence. More...
 
static void registerInvalidCertificateHandler (JabberGuestInvalidCertificateCallback certCallback)
 Registers an implementation of InvalidCertificateCallback with a JabberGuestCall instance. More...
 
static void unregisterInvalidCertificateHandler (JabberGuestInvalidCertificateCallback certCallback)
 Unregisters an implementation of InvalidCertificateCallback from a JabberGuestCall instance. More...
 
static void disableVideoLicenseActivation (Context context)
 Call this method to prevent the JabberGuest SDK from either checking for or activating the Cisco license for video. More...
 

Static Public Attributes

static final String ACTION_INSTANCE_AVAILABLE = "jgsdkInstanceAvailable"
 Name of Intent sent to registered BroadcastReceivers when a new instance of JabberGuestCall has been created.
 
static final String ACTION_SERVER_CONFIGURATION_PREPARED = "jgsdkServerConfigurationPrepared"
 Name of Intent sent to registered BroadcastReceivers when server configuration prepared.
 
static final String ACTION_CALL_STATE_CHANGED = "jgsdkCallStateChanged"
 Name of Intent sent to registered BroadcastReceivers when a state change occurs in a JabberGuestCall instance.
 
static final String ACTION_CALL_CONTROL_EVENT = "jgsdkCallControlEvent"
 Name of Intent sent to registered BroadcastReceivers when a new call control event is generated in a JabberGuestCall instance.
 
static final String ACTION_AUTO_CALL_EVENT = "jgsdkAutoCallEvent"
 Name of Intent sent to registered BroadcastReceivers when a call auto start after secs in a JabberGuestCall instance.
 
static final String ACTION_CALL_ERROR_EVENT = "jgsdkCallErrorEvent"
 Name of Intent sent to registered BroadcastReceivers when an error event occurs in a JabberGuestCall instance.
 
static final String ARG_CALL_STATE_VALUE = "jgsdkCallStateValue"
 When a call state changes for a JabberGuestCall instance, an ACTION_CALL_STATE_CHANGED intent will be broadcast to all registered BroadcastReceivers for that intent. More...
 
static final String ARG_CALL_CONTROL_EVENT_VALUE = "jgsdkCallControlEventValue"
 When a call control event is generated for a JabberGuestCall instance, an ACTION_CALL_CONTROL_EVENT intent will be broadcast to all registered BroadcastReceivers for that intent. More...
 
static final String ARG_DTMF_SENT = "dtmf-sent"
 When a dtmfSent call control event is published, the value of the sent DTMF digit will be included in the bundle using this key.
 
static final String ARG_CATEGORY_LABEL = "category"
 When a call error event is published, the numeric category of the failure (as returned from the Cisco Jabber Guest Server) will be included in the bundle using this key. More...
 
static final String ARG_CODE_LABEL = "code"
 When a call error event is published, if the error was specifically related to the SIP protocol, the numeric value of the SIP error will be included in the bundle using this key. More...
 
static final String ARG_INTERNAL_MESSAGE_LABEL = "message"
 When a call error event is published, the string value describing the nature of the error (returned from the Cisco Jabber Guest Server) will be included in the bundle using this key. More...
 
static final String ARG_USER_MESSAGE_LABEL = "userMessage"
 When a call error event is published, the string value describing the nature of the error (returned from the SDK, mapped based on error returned from the Cisco Jabber Guest Server) will be included in the bundle using this key. More...
 
static final String ARG_USER_TITLE_LABEL = "userTitle"
 When a call error event is published, the string value containing the suggested title for the error dialog box (returned from the SDK, mapped based on error returned from the Cisco Jabber Guest Server) will be included in the bundle using this key. More...
 
static final String ARG_AUDIO_ROUTE_UPDATE_LABEL = "AudioRoute"
 When a change in the audio routing has occurred, the value of the new destination for the audio routing will be included in the bundle using this key. More...
 
static final String ARG_AUTO_CALL_EVENT_VALUE = "jgsdkAutoCallEventValue"
 When a auto call event is generated for a JabberGuestCall instance, an ACTION_AUTO_CALL_EVENT intent will be broadcast to all registered BroadcastReceivers for that intent. More...
 
static final String ARG_AUTO_CALL_DELAY_SECS = "secs"
 When a auto call event is published, the value of delay secs will be included in the bundle using this key. More...
 
static final int AUDIO_STREAM = AudioManager.STREAM_VOICE_CALL
 The AudioManager stream used by JabberGuestCall for all audio output.
 

Protected Member Functions

void publishServerConfigurationPrepared ()
 Trigger a callback to all registered listeners indicating that server configuration has already prepared. More...
 
void publishAutoCallEvent (final AutoCallEvent event)
 Trigger a callback to all registered listeners indicating that a auto call event has occurred. More...
 
void publishAutoCallEvent (final AutoCallEvent event, String key, String value)
 Trigger a callback to all registered listeners indicating that a auto call event has occurred. More...
 
void publishAutoCallEvent (final AutoCallEvent event, final Bundle bundle)
 Trigger a callback to all registered listeners indicating that a auto call event has occurred. More...
 
void publishCallControlEvent (final CallControlEvent event, final Bundle bundle)
 Trigger a callback to all registered listeners indicating that a call control event has occurred. More...
 
void publishCallControlEvent (final CallControlEvent event)
 Trigger a callback to all registered listeners indicating that a call control event has occurred. More...
 
void publishCallControlEvent (final CallControlEvent event, String key, String value)
 Trigger a callback to all registered listeners indicating that a call control event has occurred. More...
 
void publishCallErrorEvent (Bundle bundle)
 Trigger a callback to all registered listeners indicating that a call error event has occurred. More...
 
void init (Context context)
 Provides further initialization of JabberGuestCall instance once the main constructor has finished. More...
 
void initTelephonyAudio (Context context)
 Initializes audio resources required for playing DTMF tones when buttons are invoked from KeypadView. More...
 
final void setState (final State newState)
 This function is called whenever the JabberGuestCall instance needs to update its internal JabberGuestCall.State value. More...
 
abstract void onRotationChanged (int rotation)
 This function is called when the a rotation change event has been detected. More...
 
abstract void setSessionStatistics (JabberGuestCall.CallStatistics statsStruct)
 This function is called from getStatistics() when retrieving current call statistics information during a live call. More...
 
void playKeyPadSound (char digit)
 This function is called to play the DTMF tone corresponding to a pressed digit from KeypadView once it has been sent to the remote called party during an active call. More...
 
void finish ()
 This method is called when a currently active call in a JabberGuestCall instance is ending.
 

Static Protected Member Functions

static boolean isValidDTMF (char digit)
 Returns whether or not the input character is considered an allowable DTMF tone that can be sent from KeypadView. More...
 
static boolean checkActivation (Context context)
 This function is called when the JabberGuestCall instance needs to check if the mobile app needs to be presented with a Cisco license for video dialog to be accepted, or if that has already taken place or has been previously disabled. More...
 

Protected Attributes

JabberGuestCall.State mState = State.GuestCallStateDisconnected
 Holds the current JabberGuestCall.State value for this JabberGuestCall instance.
 
Uri mToUri = null
 Stores the Uri JabberGuestCall will use to conduct the call See createUri(String, String, String) for details.
 
String mAddress = null
 Stores the portion of the Uri that refers to the intended call recipient address.
 
AudioManager mAudioManager
 An AudioManager instance used to play DTMF tones when keypad buttons are invoked from KeypadView.
 
SoundPool mSoundPool
 A SoundPool instance used to play DTMF tones when keypad buttons are invoked from KeypadView.
 
SparseIntArray mSoundPoolMap = new SparseIntArray(ALLOWED_DTMF.length())
 A SparseIntArray used internally by JabberGuestCall to store all possible DTMF tones that can be invoked from KeypadView.
 
Handler mHandler
 A Handler used for publishing messages to various objects registered to the LocalBroadcastManager for JabberGuestCall. More...
 

Static Protected Attributes

static final String ALLOWED_DTMF = "1234567890#*ABCDabcd"
 Stores the allowable DTMF tones that can be sent from KeypadView.
 
static final String PREF_VIDEO_LICENSE = "JabberGuestVideoLicense"
 SharedPreference file used by JabberGuestCall to store whether or not the Cisco license for video has been accepted.
 
static final String VIDEO_LICENSE_IS_DISABLE = "VideoLicenseIsDiabled"
 Key in the SharedPreference file used by JabberGuestCall that stores if the Cisco license for video has been accepted.
 
static JabberGuestCall mInstance
 Holds the singleton instance of the current JabberGuestCall call.
 
static AudioRouteManager mAudioRoutingInstance = null
 Holds an instance of AudioRouteManager used by JabberGuestCall during a call.
 
static JabberGuestInvalidCertificateCallback mJGSDKInvalidCertCallback = null
 Stores the current JabberGuestInvalidCertificateCallback registered to JabberGuestCall. More...
 

Detailed Description

This is the main class of the Jabber Guest Android SDK.

JabberGuestCall represents the lifecycle of a single entire call. Only one instance of this class exists at any moment in time, and that instance is created with the createInstance factory method.

JabberGuestCall will also send out notifications via LocalBroadcastManager whenever specific events occur, like a new instance of JabberGuestCall is made available, or a call state change has occurred, or a call control event has been generated. Any component interested in responding to these notifications can register for them via the registerReceiver and unregisterReceiver methods.

All methods should be called from the main thread. An IllegalStateException will be thrown when calling JabberGuestCall methods on other threads.

Statistics relevant to an active call are also provided by JabberGuestCall via the CallStatistics class, and can be acquired via the getStatistics function.

Member Function Documentation

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.acceptInvalidCertificate ( String  referenceID,
String  subjectCertificateData 
)
abstract

In the event that a JabberGuestCall instance informs an application of an invalid certificate error via the InvalidCertificateCallback, the application can call this method to inform the JabberGuestCall instance to accept the invalid certificate as-is, and continue any pending calls.

Note that if you have not received a certificate error and this function is called, nothing happens.

If the application provides the certificate's referenceID and subjectCertificateData to this function when called, the information will be stored so that in the future if this certificate generates another error, it will automatically be accepted without requiring the application to intervene in the future. If the application does not want to store this certificate data in this manner, or the application wants to be asked each time this certificate is encountered, regardless of previous choices, the input parameters should be passed as null strings.

Parameters
referenceIDA string representing the identity that provides the certificate.
subjectCertificateDataA string representing the invalid subject certificate in PEM format (last element in a chain)
void com.cisco.jabber.guest.sdk.JabberGuestCall.audioRouteUpdated ( AudioRouteType  route)
inline

This method should be called whenever an activity or fragment has determined that the audio routing has changed or needs to change due to some condition.

Parameters
routeThe current AudioRoute
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.canSwitchCamera ( )
abstract

Determine if the device supports the ability to switch among more than one input cameras.

Returns
This device can (true) or cannot (false) switch between multiple input cameras.
static boolean com.cisco.jabber.guest.sdk.JabberGuestCall.checkActivation ( Context  context)
inlinestaticprotected

This function is called when the JabberGuestCall instance needs to check if the mobile app needs to be presented with a Cisco license for video dialog to be accepted, or if that has already taken place or has been previously disabled.

See disableVideoLicenseActivation(Context) for details.

Parameters
contextApplication context for the mobile app.
Returns
True if video license activation has not been disabled, false if it has.
static synchronized JabberGuestCall com.cisco.jabber.guest.sdk.JabberGuestCall.createInstance ( Context  context,
Uri  toUri 
)
inlinestatic

Create and return an instance of JabberGuestCall.

Only one instance of this object is allowed at a time and you must use this factory method to create the instance. CallFragment and PreviewFragment are always associated with an instance of this class.

If an existing instance of JabberGuestCall is present, and the state of that existing instance is either starting, started, or ending, an IllegalStateException will be thrown, and you will not get a new JabberGuestCall instance. You will first have to end the existing JabberGuestCall instance's call before trying to create a new instance.

Parameters
contextContext
toUriDestination URI of called party (testu.nosp@m.ser@.nosp@m.email.nosp@m..add.nosp@m.ress)
Returns
A new JabberGuestCall instance
static Uri com.cisco.jabber.guest.sdk.JabberGuestCall.createUri ( String  server,
String  address,
String  displayName 
)
inlinestatic

Create and return an Uri in the format that createInstance expects.

Parameters
serverFully qualified hostname of the Jabber Guest server to use.
addressAddress to call. E.g. usern.nosp@m.ame@.nosp@m.examp.nosp@m.le.c.nosp@m.om
displayNamedisplay name for this Uri.
Returns
a new Uri that can be passed into createInstance.
static void com.cisco.jabber.guest.sdk.JabberGuestCall.disableVideoLicenseActivation ( Context  context)
inlinestatic

Call this method to prevent the JabberGuest SDK from either checking for or activating the Cisco license for video.

Parameters
contextApplication context used to store and access the sharedPreferences.
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.end ( )
abstract

End this call and release all resources associated with this instance.

Calling any methods on this instance after calling end() will throw an IllegalStateException.

static AudioRouteManager com.cisco.jabber.guest.sdk.JabberGuestCall.getAudioRouteManager ( )
inlinestatic

Get the current AudioRouteManager instance being used by this JabberGuestCall instance.

Returns
The AudioRouteManager instance
abstract int com.cisco.jabber.guest.sdk.JabberGuestCall.getAutoCallDelayTime ( )
abstract

Retrieve the delay time of auto call to start.

Returns
The delay time from auto call function is prepared to call auto start.
static synchronized JabberGuestCall com.cisco.jabber.guest.sdk.JabberGuestCall.getInstance ( )
inlinestatic

Get the current instance of JabberGuestCall.

An instance is considered active from the moment it is created until the call has completed with a call to end() or a remote hangup. Once the call is disconnected, this instance should be considered invalid, and a new instance will have to be created for any future calls.

Returns
an existing JabberGuestCall instance (if available), or null
JabberGuestCall.State com.cisco.jabber.guest.sdk.JabberGuestCall.getState ( )
inline

Retrieve the current state of this JabberGuestCall instance.

Returns
The current JabberGuestCall.State that this instance is in
synchronized JabberGuestCall.CallStatistics com.cisco.jabber.guest.sdk.JabberGuestCall.getStatistics ( )
inline

Returns a JabberGuestCall.Statistics instance.

Note that this information is not dynamically updated, the contained statistics will be accurate only for the moment in time that this function was called.

Returns
A populated Statistics instance, that has statistics for the audio and video multimedia streams at the moment in time this function is called
String com.cisco.jabber.guest.sdk.JabberGuestCall.getToDisplayName ( )
inline

Get the address or display name of the called party.

Returns
The display name of the called party.
Uri com.cisco.jabber.guest.sdk.JabberGuestCall.getToUri ( )
inline

Retrieve the uri that this JabberGuestCall instance will dial when a call is initiated.

Returns
The uri this JabberGuestCall instance is configured to dial
void com.cisco.jabber.guest.sdk.JabberGuestCall.init ( Context  context)
inlineprotected

Provides further initialization of JabberGuestCall instance once the main constructor has finished.

Parameters
contextApplication context for the mobile app.
void com.cisco.jabber.guest.sdk.JabberGuestCall.initTelephonyAudio ( Context  context)
inlineprotected

Initializes audio resources required for playing DTMF tones when buttons are invoked from KeypadView.

Parameters
contextApplication context for the mobile app.
static boolean com.cisco.jabber.guest.sdk.JabberGuestCall.instanceExists ( )
inlinestatic

Determine if there is currently a valid instance of JabbJabberGuestCallerCall in existence.

Returns
If there is (true) or is not (false) currently an instance of JabberGuestCall in existence
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isAudioMuted ( )
abstract

Determine if the local device's audio is currently stopped.

Returns
The device is (true) or is not (false) currently configured to send local device audio on a call
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isAutoCallPrepared ( )
abstract

Determine if auto call function is prepared.

Returns
The auto call function is is (true) or is not (false) prepared.
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isLocalVideoActive ( )
abstract

Determine if the local device's video is actively streaming during a call.

Returns
The device is (true) or is not (false) actively streaming local video to the called party
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isRemoteScreenShareActive ( )
abstract

Determine if the called party is sharing their screen during a call.

Returns
The device is (true) or is not (false) actively receiving a screen share from the called party
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isRemoteVideoActive ( )
abstract

Determine if the called party is streaming video during a call.

Returns
The device is (true) or is not (false) actively receiving a video stream from the called party
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isServerConfigPrepared ( )
abstract

Determine if server configuration is prepared.

Returns
The server configuration is is (true) or is not (false) prepared.
static boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isValidDTMF ( char  digit)
inlinestaticprotected

Returns whether or not the input character is considered an allowable DTMF tone that can be sent from KeypadView.

Parameters
digitCandidate DTMF Digit.
Returns
True if digit is valid, false if not.
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isVideoControlEnabled ( )
abstract

Determine if user has capability to control the local device's video.

Returns
true that the video button is enabled(user has capability to mute/unmute local video), false that video button is disabled.
abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.isVideoMuted ( )
abstract

Determine if the local device's video is currently stopped.

Returns
The device is (true) or is not (false) currently configured to send local device video on a call
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.muteAudio ( )
abstract

Stop the local device audio from being sent.

This can be called either before a call has been established to ensure that audio is not sent prior to the called party being connected, or after a call has been established and you wish to stop transmitting local device audio to the called party.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.muteVideo ( )
abstract

Stop the local device video from being sent.

This can be called either before a call has been established to ensure that video is not sent prior to the called party being connected, or after a call has been established and you wish to stop transmitting local device video to the called party.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.onRotationChanged ( int  rotation)
abstractprotected

This function is called when the a rotation change event has been detected.

Parameters
rotationOne of the constants from Android's Surface class.
void com.cisco.jabber.guest.sdk.JabberGuestCall.playKeyPadSound ( char  digit)
inlineprotected

This function is called to play the DTMF tone corresponding to a pressed digit from KeypadView once it has been sent to the remote called party during an active call.

Parameters
digitThe sent DTMF digit.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishAutoCallEvent ( final AutoCallEvent  event)
inlineprotected

Trigger a callback to all registered listeners indicating that a auto call event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of AutoCallEvent that occurred.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishAutoCallEvent ( final AutoCallEvent  event,
String  key,
String  value 
)
inlineprotected

Trigger a callback to all registered listeners indicating that a auto call event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of AutoCallEvent that occurred.
keyString value for key to be placed into bundle with this notification.
valueString value for the value to be placed into bundle with this notification.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishAutoCallEvent ( final AutoCallEvent  event,
final Bundle  bundle 
)
inlineprotected

Trigger a callback to all registered listeners indicating that a auto call event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of AutoCallEvent that occurred.
bundleA bundle containing additional information about this AutoCallEvent.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishCallControlEvent ( final CallControlEvent  event,
final Bundle  bundle 
)
inlineprotected

Trigger a callback to all registered listeners indicating that a call control event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of CallControlEvent that occurred.
bundleA bundle containing additional information about this CallControlEvent.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishCallControlEvent ( final CallControlEvent  event)
inlineprotected

Trigger a callback to all registered listeners indicating that a call control event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of CallControlEvent that occurred.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishCallControlEvent ( final CallControlEvent  event,
String  key,
String  value 
)
inlineprotected

Trigger a callback to all registered listeners indicating that a call control event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
eventThe type of CallControlEvent that occurred.
keyString value for key to be placed into bundle with this notification.
valueString value for the value to be placed into bundle with this notification.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishCallErrorEvent ( Bundle  bundle)
inlineprotected

Trigger a callback to all registered listeners indicating that a call error event has occurred.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

Parameters
bundlethe type of CallErrorEvent that occurred.
void com.cisco.jabber.guest.sdk.JabberGuestCall.publishServerConfigurationPrepared ( )
inlineprotected

Trigger a callback to all registered listeners indicating that server configuration has already prepared.

The callbacks will be called on the main thread to ensure that UI operations in callbacks can succeed.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.registerContext ( Context  context)
abstract

Call this to register the most recent active view Context for displaying dialog from the JabberGuestCall object.

Otherwise, the call might fail.

Only one context object may be registered at a time. Subsequent calls to this function will overwrite earlier registrations.

Parameters
contextA context object to display dialog.
static void com.cisco.jabber.guest.sdk.JabberGuestCall.registerInvalidCertificateHandler ( JabberGuestInvalidCertificateCallback  certCallback)
inlinestatic

Registers an implementation of InvalidCertificateCallback with a JabberGuestCall instance.

At any point in the future if this JabberGuestCall instance encounters a certificate error when validating certificates from a Cisco Jabber Guest server, the JabberGuestCall instance will call the OnInvalidCertificate method on the passed InvalidCertificateCallback implementation.

Only one callback may be registered at a time. Subsequent calls to this function will overwrite earlier registrations.

Parameters
certCallbackImplementation of InvalidCertificateCallback
static void com.cisco.jabber.guest.sdk.JabberGuestCall.registerReceiver ( Context  context,
BroadcastReceiver  receiver 
)
inlinestatic

Register a given BroadcastReceiver with JabberGuestCall so that it can be notified whenever all events that JabberGuestCall supports are encountered.

This will mean that the given BroadcastReceiver needs to be able to handle intents for all of ACTION_INSTANCE_AVAILABLE, ACTION_CALL_STATE_CHANGED, ACTION_CALL_CONTROL_EVENT, ACTION_CALL_ERROR_EVENT, and ACTION_AUTO_CALL_EVENT supported intents.

Parameters
contextApplication context used to construct the internal LocalBroadcastManager
receiverBroadcastReceiver that will handle listed intent actions from passed filter
static void com.cisco.jabber.guest.sdk.JabberGuestCall.registerReceiver ( Context  context,
BroadcastReceiver  receiver,
IntentFilter  filter 
)
inlinestatic

Register a given BroadcastReceiver with JabberGuestCall so that it can be notified whenever any specified events in the given IntentFilter are encountered.

Use this method signature if you would like to specify some subset of the supported JabberGuestCall notifications (ACTION_INSTANCE_AVAILABLE, ACTION_CALL_STATE_CHANGED, ACTION_CALL_CONTROL_EVENT) instead of registering to receive notifications for all supported events.

If the given IntentFilter contains actions that are not supported by the JabberGuestCall class, an IllegalArgumentException will be thrown.

Parameters
contextApplication context used to construct the internal LocalBroadcastManager
receiverBroadcastReceiver that will handle listed intent actions from passed filter
filterIntentFilter listing which actions to register for. Must only include one or more of the following supported actions: ACTION_INSTANCE_AVAILALBLE, ACTION_CALL_STATE_CHANGED, ACTION_CALL_CONTROL_EVENT, ACTION_CALL_ERROR_EVENT, or ACTION_AUTO_CALL_EVENT
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.rejectInvalidCertificate ( )
abstract

In the event that a JabberGuestCall instance informs an application of an invalid certificate error via the InvalidCertificateCallback, the application can call this method to inform the JabberGuestCall instance to reject the invalid certificate and immediately terminate any pending calls.

Note that if you have not received a certificate error and this function is called, nothing happens.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.sendDigits ( String  digits)
abstract

Sends the given string of DTMF digits to the called party.

Parameters
digitsA string of DTMF digits (0-9, A-D, #, *) that should be sent to the called party
void com.cisco.jabber.guest.sdk.JabberGuestCall.setCaptureOrientation ( CaptureOrientation  orientation)
inline

Set the camera capture orientation.

By default, Jabber Guest will automatically manage the capture orientation by monitoring the device rotation and adjusting automatically. The capture orientation can be set to a fixed orientation by passing in an orientation other than auto.

Parameters
orientationCaptureOrientation to use.
void com.cisco.jabber.guest.sdk.JabberGuestCall.setRemoteScreenShareTextureView ( TextureView  textureView)
inline

Use the given texture view to draw the called party screen share video, for display in a DataView.

Parameters
textureViewThe texture view where the called party screen share video should be rendered
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.setRemoteScreenShareTextureView ( TextureView  textureView,
RenderCallbacks  callbacks 
)
abstract

Use the given texture view to draw the called party screen share video, for display in a DataView.

Additionally, a RenderCallbacks instance may be passed in to receive callbacks from the renderer.

Parameters
textureViewThe texture view where the called party screen share video should be rendered
callbacksA RenderCallbacks instance for callbacks from the renderer
void com.cisco.jabber.guest.sdk.JabberGuestCall.setRemoteTextureView ( TextureView  textureView)
inline

Use the given context and texture view to draw the called party video, for display in a RemoteView.

Parameters
textureViewThe texture view where the called party video should be rendered
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.setRemoteTextureView ( TextureView  textureView,
RenderCallbacks  callbacks 
)
abstract

Use the given texture view to draw the called party video, for display in a RemoteView.

Additionally, a RenderCallbacks instance may be passed in to receive callbacks from the renderer.

Parameters
textureViewThe texture view where the called party video should be rendered
callbacksA RenderCallbacks instance for callbacks from the renderer
void com.cisco.jabber.guest.sdk.JabberGuestCall.setSelfTextureView ( TextureView  textureView)
inline

Use the given texture view to draw the local device video, for display in a PreviewView or SelfView.

Parameters
textureViewThe texture view where the local device video should be rendered
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.setSelfTextureView ( TextureView  textureView,
RenderCallbacks  callbacks 
)
abstract

Use the given texture view to draw the local device video, for display in a PreviewView or SelfView.

Additionally, a RenderCallbacks instance may be passed in to receive callbacks from the renderer.

Parameters
textureViewThe texture view where the local device video should be rendered
callbacksA RenderCallbacks instance for callbacks from the renderer
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.setSessionStatistics ( JabberGuestCall.CallStatistics  statsStruct)
abstractprotected

This function is called from getStatistics() when retrieving current call statistics information during a live call.

Parameters
statsStructInstance of JabberGuestCall.CallStatistics to be populated with current call statistics.
final void com.cisco.jabber.guest.sdk.JabberGuestCall.setState ( final State  newState)
inlineprotected

This function is called whenever the JabberGuestCall instance needs to update its internal JabberGuestCall.State value.

This function will also notify all listeners of any new call state value.

See for more details. newState The new JabberGuestCall.State value for this instance of JabberGuestCall.

abstract boolean com.cisco.jabber.guest.sdk.JabberGuestCall.start ( )
abstract

Initiate the call to the toUri specified in the createInstance method.

Returns
true if call start successfully; false if call failed.
abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.switchCamera ( )
abstract

Switch to the next available input camera.

The selected camera will be persisted and used on subsequent instances of JabberGuestCall.

Caution: On some devices, this method may take a long time to complete. It is best to call this method from a worker thread (possibly using AsyncTask) to avoid blocking the main application UI thread.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.unmuteAudio ( )
abstract

Start sending the local device audio.

This can be called either before a call has been established to ensure that audio is sent prior to the called party being connected, or after a call has been established and you wish to start transmitting local device audio to the called party.

abstract void com.cisco.jabber.guest.sdk.JabberGuestCall.unmuteVideo ( )
abstract

Start sending the local device video.

This can be called either before a call has been established to ensure that video is sent prior to the called party being connected, or after a call has been established and you wish to start transmitting local device video to the called party.

static void com.cisco.jabber.guest.sdk.JabberGuestCall.unregisterInvalidCertificateHandler ( JabberGuestInvalidCertificateCallback  certCallback)
inlinestatic

Unregisters an implementation of InvalidCertificateCallback from a JabberGuestCall instance.

See registerInvalidCertificateHandler(). Only one InvalidCertificateCallback may be registered at a time. Registering will overwrite any earlier registration, therefore the certcallback should be passed in to avoid race conditions where the wrong one is unregistered.

Passing null to this function will unregister the callback regardless.

Parameters
certCallbackImplementation of InvalidCertificateCallback
static void com.cisco.jabber.guest.sdk.JabberGuestCall.unregisterReceiver ( BroadcastReceiver  receiver)
inlinestatic

Unregisters the given BroadcastReceiver with JabberGuestCall, no more notifications will be sent.

Parameters
receiverThe BroadcastReceiver to be unregistered with JabberGuestCall.

Member Data Documentation

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_AUDIO_ROUTE_UPDATE_LABEL = "AudioRoute"
static

When a change in the audio routing has occurred, the value of the new destination for the audio routing will be included in the bundle using this key.

The value associated with the key is a serialized AudioRoute enum representing the entity that audio is now being routed to, e.g. headphones.

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_AUTO_CALL_DELAY_SECS = "secs"
static

When a auto call event is published, the value of delay secs will be included in the bundle using this key.

To get this value from the notification's returned intent, use (Integer.valueOf(String)) intent.getStringExtra(JabberGuestCall.ARG_AUTO_CALL_DELAY_SECS)

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_AUTO_CALL_EVENT_VALUE = "jgsdkAutoCallEventValue"
static

When a auto call event is generated for a JabberGuestCall instance, an ACTION_AUTO_CALL_EVENT intent will be broadcast to all registered BroadcastReceivers for that intent.

The auto call event value for the JabberGuestCall instance will be included in the intent using this key.

To get this value from the notification's returned intent, use (JabberGuestCall.AutoCallEvent) intent.getSerializableExtra(JabberGuestCall.ARG_AUTO_CALL_EVENT_VALUE)

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_CALL_CONTROL_EVENT_VALUE = "jgsdkCallControlEventValue"
static

When a call control event is generated for a JabberGuestCall instance, an ACTION_CALL_CONTROL_EVENT intent will be broadcast to all registered BroadcastReceivers for that intent.

The call control event value for the JabberGuestCall instance will be included in the intent using this key.

To get this value from the notification's returned intent, use (JabberGuestCall.CallControlEvent) intent.getSerializableExtra(JabberGuestCall.ARG_CALL_CONTROL_EVENT_VALUE)

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_CALL_STATE_VALUE = "jgsdkCallStateValue"
static

When a call state changes for a JabberGuestCall instance, an ACTION_CALL_STATE_CHANGED intent will be broadcast to all registered BroadcastReceivers for that intent.

The new state value for the JabberGuestCall instance will be included in the intent using this key.

This extra is also included when an ACTION_CALL_ERROR_EVENT is broadcast. Often, the state of the call transitions immediately after an error so the value set using this key represents the state the JabberGuestCall was in at the time of the error.

To get this value from the notification's returned intent, use (JabberGuestCall.State) intent.getSerializableExtra(JabberGuestCall.ARG_CALL_STATE_VALUE)

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_CATEGORY_LABEL = "category"
static

When a call error event is published, the numeric category of the failure (as returned from the Cisco Jabber Guest Server) will be included in the bundle using this key.

This information is primarily useful for troubleshooting purposes.

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_CODE_LABEL = "code"
static

When a call error event is published, if the error was specifically related to the SIP protocol, the numeric value of the SIP error will be included in the bundle using this key.

This information is primarily useful for troubleshooting purposes.

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_INTERNAL_MESSAGE_LABEL = "message"
static

When a call error event is published, the string value describing the nature of the error (returned from the Cisco Jabber Guest Server) will be included in the bundle using this key.

This information is primarily useful for troubleshooting purposes.

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_USER_MESSAGE_LABEL = "userMessage"
static

When a call error event is published, the string value describing the nature of the error (returned from the SDK, mapped based on error returned from the Cisco Jabber Guest Server) will be included in the bundle using this key.

It is recommended that if an error dialog is displayed by an implementing application for this SDK, this is the string that should be used in such a dialog for its message contents.

final String com.cisco.jabber.guest.sdk.JabberGuestCall.ARG_USER_TITLE_LABEL = "userTitle"
static

When a call error event is published, the string value containing the suggested title for the error dialog box (returned from the SDK, mapped based on error returned from the Cisco Jabber Guest Server) will be included in the bundle using this key.

It is recommended that if an error dialog is displayed by an implementing application for this SDK, this is the string that should be used in such a dialog for its title contents.

Handler com.cisco.jabber.guest.sdk.JabberGuestCall.mHandler
protected

A Handler used for publishing messages to various objects registered to the LocalBroadcastManager for JabberGuestCall.

See for details.

JabberGuestInvalidCertificateCallback com.cisco.jabber.guest.sdk.JabberGuestCall.mJGSDKInvalidCertCallback = null
staticprotected

Stores the current JabberGuestInvalidCertificateCallback registered to JabberGuestCall.

When an invalid certificate situation is encountered, JabberGuestCall will invoke the appropriate callback(s) on this JabberGuestInvalidCertificateCallback instance if one is defined, otherwise invalid certificates will automatically be rejected.

See registerInvalidCertificateHandler(JabberGuestInvalidCertificateCallback) for details.