Class WebRtcProtocolHandler
- java.lang.Object
-
- com.openfin.desktop.channel.AbstractProtocolHandler
-
- com.openfin.desktop.channel.webrtc.WebRtcProtocolHandler
-
- All Implemented Interfaces:
DataChannelListener,EventListener,dev.onvoid.webrtc.PeerConnectionObserver
public class WebRtcProtocolHandler extends AbstractProtocolHandler implements dev.onvoid.webrtc.PeerConnectionObserver, EventListener, DataChannelListener
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.openfin.desktop.channel.webrtc.DataChannelListener
DataChannelListener.State
-
-
Field Summary
Fields Modifier and Type Field Description protected dev.onvoid.webrtc.RTCPeerConnectionpeerConnection-
Fields inherited from class com.openfin.desktop.channel.AbstractProtocolHandler
channel, clientEndpointIdentity, endpointIdentity, isProvider, logger
-
-
Constructor Summary
Constructors Constructor Description WebRtcProtocolHandler(Channel channel)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidacceptAnswer(org.json.JSONObject answer, java.util.concurrent.CompletableFuture<java.lang.Boolean> future)Accept answer from a channel providerprotected voidacceptOffer(org.json.JSONObject payload)protected voidcleanup()protected dev.onvoid.webrtc.RTCSessionDescriptioncreateAnswer()voideventReceived(ActionEvent actionEvent)Invoked when registered event occursProtocolOptionsgetProtocolOptions()protected org.json.JSONObjectgetSupportedAnswerProtocol()protected org.json.JSONObjectgetSupportedOfferProtocol()voidinitializeClient()voidonAddStream(dev.onvoid.webrtc.media.MediaStream stream)voidonAddTrack(dev.onvoid.webrtc.RTCRtpReceiver receiver, dev.onvoid.webrtc.media.MediaStream[] mediaStreams)voidonConnectionChange(dev.onvoid.webrtc.RTCPeerConnectionState state)voidonDataChannel(dev.onvoid.webrtc.RTCDataChannel dataChannel)voidonIceCandidate(dev.onvoid.webrtc.RTCIceCandidate rtcIceCandidate)voidonIceCandidateError(dev.onvoid.webrtc.RTCPeerConnectionIceErrorEvent event)voidonIceCandidatesRemoved(dev.onvoid.webrtc.RTCIceCandidate[] candidates)voidonIceConnectionChange(dev.onvoid.webrtc.RTCIceConnectionState state)voidonIceConnectionReceivingChange(boolean receiving)voidonIceGatheringChange(dev.onvoid.webrtc.RTCIceGatheringState state)voidonMessage(DataChannel source, java.lang.String message)voidonRemoveStream(dev.onvoid.webrtc.media.MediaStream stream)voidonRemoveTrack(dev.onvoid.webrtc.RTCRtpReceiver receiver)voidonRenegotiationNeeded()voidonSignalingChange(dev.onvoid.webrtc.RTCSignalingState state)voidonStandardizedIceConnectionChange(dev.onvoid.webrtc.RTCIceConnectionState state)voidonStateChange(DataChannel source, DataChannelListener.State state)voidonTrack(dev.onvoid.webrtc.RTCRtpTransceiver transceiver)voidsendChannelMessage(java.lang.String action, org.json.JSONObject destionationIdentity, org.json.JSONObject providerIdentity, org.json.JSONObject actionPayload, AckListener ackListener)java.util.concurrent.CompletableFuture<Ack>sendChannelMessageAsync(java.lang.String action, org.json.JSONObject destionationIdentity, org.json.JSONObject providerIdentity, java.lang.Object actionPayload)-
Methods inherited from class com.openfin.desktop.channel.AbstractProtocolHandler
createProtocolHandler, getChannel, getChannelConnectPayload, getChannelCreatePayload, getOfferProtocolByType, initializeProvider, processConnectAnswer, processConnectOffer, setClientEndpointIdentity
-
-
-
-
Constructor Detail
-
WebRtcProtocolHandler
public WebRtcProtocolHandler(Channel channel)
-
-
Method Detail
-
getProtocolOptions
public ProtocolOptions getProtocolOptions()
- Overrides:
getProtocolOptionsin classAbstractProtocolHandler
-
initializeClient
public void initializeClient() throws java.lang.Exception- Overrides:
initializeClientin classAbstractProtocolHandler- Throws:
java.lang.Exception
-
getSupportedOfferProtocol
protected org.json.JSONObject getSupportedOfferProtocol()
- Overrides:
getSupportedOfferProtocolin classAbstractProtocolHandler
-
acceptAnswer
protected void acceptAnswer(org.json.JSONObject answer, java.util.concurrent.CompletableFuture<java.lang.Boolean> future) throws java.lang.ExceptionAccept answer from a channel provider- Overrides:
acceptAnswerin classAbstractProtocolHandler- Parameters:
answer- answer objectfuture- future for returning true if accepted- Throws:
java.lang.Exception- Exception
-
acceptOffer
protected void acceptOffer(org.json.JSONObject payload) throws java.lang.Exception- Overrides:
acceptOfferin classAbstractProtocolHandler- Throws:
java.lang.Exception
-
getSupportedAnswerProtocol
protected org.json.JSONObject getSupportedAnswerProtocol()
- Overrides:
getSupportedAnswerProtocolin classAbstractProtocolHandler
-
createAnswer
protected dev.onvoid.webrtc.RTCSessionDescription createAnswer() throws java.lang.Exception- Throws:
java.lang.Exception
-
sendChannelMessage
public void sendChannelMessage(java.lang.String action, org.json.JSONObject destionationIdentity, org.json.JSONObject providerIdentity, org.json.JSONObject actionPayload, AckListener ackListener)- Overrides:
sendChannelMessagein classAbstractProtocolHandler
-
sendChannelMessageAsync
public java.util.concurrent.CompletableFuture<Ack> sendChannelMessageAsync(java.lang.String action, org.json.JSONObject destionationIdentity, org.json.JSONObject providerIdentity, java.lang.Object actionPayload)
- Overrides:
sendChannelMessageAsyncin classAbstractProtocolHandler
-
onSignalingChange
public void onSignalingChange(dev.onvoid.webrtc.RTCSignalingState state)
- Specified by:
onSignalingChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onConnectionChange
public void onConnectionChange(dev.onvoid.webrtc.RTCPeerConnectionState state)
- Specified by:
onConnectionChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceConnectionChange
public void onIceConnectionChange(dev.onvoid.webrtc.RTCIceConnectionState state)
- Specified by:
onIceConnectionChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onStandardizedIceConnectionChange
public void onStandardizedIceConnectionChange(dev.onvoid.webrtc.RTCIceConnectionState state)
- Specified by:
onStandardizedIceConnectionChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceConnectionReceivingChange
public void onIceConnectionReceivingChange(boolean receiving)
- Specified by:
onIceConnectionReceivingChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceGatheringChange
public void onIceGatheringChange(dev.onvoid.webrtc.RTCIceGatheringState state)
- Specified by:
onIceGatheringChangein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceCandidate
public void onIceCandidate(dev.onvoid.webrtc.RTCIceCandidate rtcIceCandidate)
- Specified by:
onIceCandidatein interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceCandidateError
public void onIceCandidateError(dev.onvoid.webrtc.RTCPeerConnectionIceErrorEvent event)
- Specified by:
onIceCandidateErrorin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onIceCandidatesRemoved
public void onIceCandidatesRemoved(dev.onvoid.webrtc.RTCIceCandidate[] candidates)
- Specified by:
onIceCandidatesRemovedin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onAddStream
public void onAddStream(dev.onvoid.webrtc.media.MediaStream stream)
- Specified by:
onAddStreamin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onRemoveStream
public void onRemoveStream(dev.onvoid.webrtc.media.MediaStream stream)
- Specified by:
onRemoveStreamin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onDataChannel
public void onDataChannel(dev.onvoid.webrtc.RTCDataChannel dataChannel)
- Specified by:
onDataChannelin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onRenegotiationNeeded
public void onRenegotiationNeeded()
- Specified by:
onRenegotiationNeededin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onAddTrack
public void onAddTrack(dev.onvoid.webrtc.RTCRtpReceiver receiver, dev.onvoid.webrtc.media.MediaStream[] mediaStreams)- Specified by:
onAddTrackin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onRemoveTrack
public void onRemoveTrack(dev.onvoid.webrtc.RTCRtpReceiver receiver)
- Specified by:
onRemoveTrackin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
onTrack
public void onTrack(dev.onvoid.webrtc.RTCRtpTransceiver transceiver)
- Specified by:
onTrackin interfacedev.onvoid.webrtc.PeerConnectionObserver
-
eventReceived
public void eventReceived(ActionEvent actionEvent)
Description copied from interface:EventListenerInvoked when registered event occurs- Specified by:
eventReceivedin interfaceEventListener- Parameters:
actionEvent- Event object- See Also:
ActionEvent
-
onStateChange
public void onStateChange(DataChannel source, DataChannelListener.State state)
- Specified by:
onStateChangein interfaceDataChannelListener
-
onMessage
public void onMessage(DataChannel source, java.lang.String message)
- Specified by:
onMessagein interfaceDataChannelListener
-
cleanup
protected void cleanup()
- Overrides:
cleanupin classAbstractProtocolHandler
-
-