Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Guard ¶
type Guard struct { Reconnect chan struct{} // contains filtered or unexported fields }
Guard is responsible for the reconnection logic. It will trigger to send an offer to the peer then has connection issues. Watch these events: - Relay client reconnected to home server - Signal server connection state changed - ICE connection disconnected - Relayed connection disconnected - ICE candidate changes
func (*Guard) SetICEConnDisconnected ¶
func (*Guard) SetRelayedConnDisconnected ¶
type ICEMonitor ¶
type ICEMonitor struct { ReconnectCh chan struct{} // contains filtered or unexported fields }
func NewICEMonitor ¶
func NewICEMonitor(iFaceDiscover stdnet.ExternalIFaceDiscover, config icemaker.Config) *ICEMonitor
func (*ICEMonitor) Start ¶
func (cm *ICEMonitor) Start(ctx context.Context, onChanged func())
type SRWatcher ¶
type SRWatcher struct {
// contains filtered or unexported fields
}
func NewSRWatcher ¶
func NewSRWatcher(signalClient chNotifier, relayManager chNotifier, iFaceDiscover stdnet.ExternalIFaceDiscover, iceConfig ice.Config) *SRWatcher
NewSRWatcher creates a new SRWatcher. This watcher will notify the listeners when the ICE candidates change or the Relay connection is reconnected or the Signal client reconnected.
func (*SRWatcher) NewListener ¶
func (w *SRWatcher) NewListener() chan struct{}
func (*SRWatcher) RemoveListener ¶
func (w *SRWatcher) RemoveListener(listenerChan chan struct{})
Click to show internal directories.
Click to hide internal directories.