public abstract static class InCallService.VideoCall.Callback extends Object
InCallService
extends this class to provide a means of receiving callbacks
from the Connection.VideoProvider
.
When the InCallService
receives the
Call.Callback#onVideoCallChanged(Call, VideoCall)
callback, it should create an
instance its InCallService.VideoCall.Callback
implementation and set it on the
InCallService.VideoCall
using InCallService.VideoCall.registerCallback(Callback)
.
Constructor and Description |
---|
Callback() |
Modifier and Type | Method and Description |
---|---|
abstract void |
onCallDataUsageChanged(long dataUsage)
Handles an update to the total data used for the current video session.
|
abstract void |
onCallSessionEvent(int event)
Handles events related to the current video session which the
InCallService
may wish to handle. |
abstract void |
onCameraCapabilitiesChanged(VideoProfile.CameraCapabilities cameraCapabilities)
Handles a change in the capabilities of the currently selected camera.
|
abstract void |
onPeerDimensionsChanged(int width,
int height)
Handles a change to the video dimensions from the peer device.
|
abstract void |
onSessionModifyRequestReceived(VideoProfile videoProfile)
Called when the
Connection.VideoProvider receives a session modification
request from the peer device. |
abstract void |
onSessionModifyResponseReceived(int status,
VideoProfile requestedProfile,
VideoProfile responseProfile)
Called when the
Connection.VideoProvider receives a response to a session
modification request previously sent to the peer device. |
abstract void |
onVideoQualityChanged(int videoQuality)
Handles a change to the video quality.
|
public abstract void onSessionModifyRequestReceived(VideoProfile videoProfile)
Connection.VideoProvider
receives a session modification
request from the peer device.
The InCallService
may potentially prompt the user to confirm whether they
wish to accept the request, or decide to automatically accept the request. In either
case the InCallService
should call
InCallService.VideoCall.sendSessionModifyResponse(VideoProfile)
to indicate the video
profile agreed upon.
Callback originates from
Connection.VideoProvider.receiveSessionModifyRequest(VideoProfile)
.
videoProfile
- The requested video profile.public abstract void onSessionModifyResponseReceived(int status, VideoProfile requestedProfile, VideoProfile responseProfile)
Connection.VideoProvider
receives a response to a session
modification request previously sent to the peer device.
The new video state should not be considered active by the InCallService
until the Call
video state changes (the
Call.Callback.onDetailsChanged(Call, Call.Details)
callback is triggered
when the video state changes).
Callback originates from
Connection.VideoProvider.receiveSessionModifyResponse(int, VideoProfile,
VideoProfile)
.
status
- Status of the session modify request. Valid values are
Connection.VideoProvider.SESSION_MODIFY_REQUEST_SUCCESS
,
Connection.VideoProvider.SESSION_MODIFY_REQUEST_FAIL
,
Connection.VideoProvider.SESSION_MODIFY_REQUEST_INVALID
,
Connection.VideoProvider.SESSION_MODIFY_REQUEST_TIMED_OUT
,
Connection.VideoProvider.SESSION_MODIFY_REQUEST_REJECTED_BY_REMOTE
.requestedProfile
- The original request which was sent to the peer device.responseProfile
- The actual profile changes made by the peer device.public abstract void onCallSessionEvent(int event)
InCallService
may wish to handle. These are separate from requested changes to the session due to
the underlying protocol or connection.
Callback originates from
Connection.VideoProvider.handleCallSessionEvent(int)
.
event
- The event. Valid values are:
Connection.VideoProvider.SESSION_EVENT_RX_PAUSE
,
Connection.VideoProvider.SESSION_EVENT_RX_RESUME
,
Connection.VideoProvider.SESSION_EVENT_TX_START
,
Connection.VideoProvider.SESSION_EVENT_TX_STOP
,
Connection.VideoProvider.SESSION_EVENT_CAMERA_FAILURE
,
Connection.VideoProvider.SESSION_EVENT_CAMERA_READY
.public abstract void onPeerDimensionsChanged(int width, int height)
Callback originates from
Connection.VideoProvider.changePeerDimensions(int, int)
.
width
- The updated peer video width.height
- The updated peer video height.public abstract void onVideoQualityChanged(int videoQuality)
Callback originates from Connection.VideoProvider.changeVideoQuality(int)
.
videoQuality
- The updated peer video quality. Valid values:
VideoProfile.QUALITY_HIGH
,
VideoProfile.QUALITY_MEDIUM
,
VideoProfile.QUALITY_LOW
,
VideoProfile.QUALITY_DEFAULT
.public abstract void onCallDataUsageChanged(long dataUsage)
Used by the Connection.VideoProvider
in response to
InCallService.VideoCall.requestCallDataUsage()
. May also be called periodically by the
Connection.VideoProvider
.
Callback originates from Connection.VideoProvider.setCallDataUsage(long)
.
dataUsage
- The updated data usage (in bytes).public abstract void onCameraCapabilitiesChanged(VideoProfile.CameraCapabilities cameraCapabilities)
Used by the Connection.VideoProvider
in response to
InCallService.VideoCall.requestCameraCapabilities()
. The Connection.VideoProvider
may also report the camera capabilities after a call to
InCallService.VideoCall.setCamera(String)
.
Callback originates from
Connection.VideoProvider.changeCameraCapabilities(
VideoProfile.CameraCapabilities)
.
cameraCapabilities
- The changed camera capabilities.