-
public class EngagementTrackerThis class is a helper for tracking engagement states.
Currently you can track changes for Engagement media, channel and Operator.
There are two universal changes listeners: addListenergetChangeObservable
Or you can use one of the more specialized listeners: getEngagementMediaObservablegetOperatorObservable
This class auto connects to new channel and closes the old one if channel URL change is detected. To receive and subscribe to new channel use: getChannelObservable
-
-
Field Summary
Fields Modifier and Type Field Description public final static StringTAGprivate final Observable<EngagementTrackerListener.Update>changeObservableprivate final Observable<Channel>channelObservable
-
Constructor Summary
Constructors Constructor Description EngagementTracker(InternalEngagement initEngagementData, Observable<Array<InternalEngagement>> engagementsObservable, Observable<NetworkState.State> networkStateObservable)EngagementTracker(InternalEngagement initEngagementData, Observable<Array<InternalEngagement>> engagementsObservable, Observable<NetworkState.State> networkStateObservable, Joiner joiner)
-
Method Summary
-
-
Constructor Detail
-
EngagementTracker
EngagementTracker(InternalEngagement initEngagementData, Observable<Array<InternalEngagement>> engagementsObservable, Observable<NetworkState.State> networkStateObservable)
-
EngagementTracker
EngagementTracker(InternalEngagement initEngagementData, Observable<Array<InternalEngagement>> engagementsObservable, Observable<NetworkState.State> networkStateObservable, Joiner joiner)
-
-
Method Detail
-
getChangeObservable
Observable<EngagementTrackerListener.Update> getChangeObservable()
Returns Observable that emits an Update object every Engagement information changed. Update object contains new Engagement information as well as information of what changed: isMediaChangeisOperatorChange If engagement ended then new Engagement information will be 'null' and isEngagementEnd will be true.
-
getChannelObservable
Observable<Channel> getChannelObservable()
-
getEngagementStateChangeObservable
Observable<out Object> getEngagementStateChangeObservable(ApiDeps apiDeps)
-
isEngagementChanged
boolean isEngagementChanged(InternalEngagement previousEngagement, InternalEngagement currentEngagement)
-
getEngagementEndObservable
Completable getEngagementEndObservable()
-
addListener
void addListener(@Nullable() EngagementTrackerListener callback)
-
start
void start()
-
endEngagement
void endEngagement()
-
release
void release()
-
getEngagementInfo
@Nullable() InternalEngagement getEngagementInfo()
-
getOperator
@Nullable() PublicOperator getOperator()
-
getOperatorObservable
@Nullable() Observable<PublicOperator> getOperatorObservable()
-
getEngagementMediaObservable
@Nullable() Observable<Optional<EngagementMedia>> getEngagementMediaObservable()
-
getAudioStateObservable
@Nullable() Observable<Optional<EngagementMedia.MediaInfo>> getAudioStateObservable()
-
getVideoStateObservable
@Nullable() Observable<Optional<EngagementMedia.MediaInfo>> getVideoStateObservable()
-
getMediaInfo
@NonNull() Optional<EngagementMedia> getMediaInfo()
-
getTransferrableSites
@Nullable() List<InternalSite> getTransferrableSites()
-
getEngagementId
@Nullable() String getEngagementId()
-
getEngagementStatus
@Nullable() String getEngagementStatus()
-
-
-
-