IClientProxy

interface IClientProxy : IMessageSender, Closeable

Functions

Link copied to clipboard
abstract suspend fun addScreenSharing(videoStreamConfiguration: ScreenFormat): Boolean

Share the app screen with the remote peer

Link copied to clipboard
abstract suspend fun addVideoStream(videoStreamConfiguration: CameraFormat): Boolean

Add a video stream to the remote support session.

Link copied to clipboard
abstract override fun close()
Link copied to clipboard
abstract suspend fun connectToSupportSession(pin: String)

Initializes the data transport and connects to the remote support session with the given pin and com.cygnusreach.internal.SignalClientRole.ANSWER role.

Link copied to clipboard
abstract suspend fun isConnected(): Boolean

true indicates a IRemoteSupportClient is connected; false otherwise.

Link copied to clipboard
abstract suspend fun sendCommand(cmd: Command): ICommandReceipt
Link copied to clipboard
abstract suspend fun sendNotification(notif: Notification): Int
Link copied to clipboard
abstract suspend fun sendQuery(query: Query): IQueryReceipt
Link copied to clipboard
abstract suspend fun updateLogger(logger: ILogger)

Update the proxied IRemoteSupportClient logger

Properties

Link copied to clipboard
abstract val connectionState: StateFlow<RemoteSupportClientConnectionState>

Connection state of the proxied IRemoteSupportClient

Link copied to clipboard
abstract val onCommand: SharedFlow<CommandEventArgs>

Event raised when a Command is received from the remote peer. The remote peer is notified when the command is acknowledged using the ICommandContext.

Link copied to clipboard
abstract val onConnect: SharedFlow<Unit>

Event raised when the proxied IRemoteSupportClient is connected.

Link copied to clipboard
abstract val onDisconnect: SharedFlow<DisconnectEventArgs>

Event raised when the proxied IRemoteSupportClient is disconnected.

Link copied to clipboard
abstract val onMessageError: SharedFlow<MessageErrorEventArgs>

Event raised when a message error is raised locally, or when the remote client raises a message error.

Link copied to clipboard
abstract val onNotification: SharedFlow<NotificationEventArgs>

Raised when a Notification is received from the remote peer.

Link copied to clipboard
abstract val onPartialMessage: SharedFlow<PartialMessageReceivedEventArgs>

Event raised when a chunk of a large message has been received.

Link copied to clipboard
abstract val onQuery: SharedFlow<QueryEventArgs>

Event raised when a Query is received from the remote peer. Responses sent using the IQueryContext are sent to the remote peer. If multiple responses are required, pass false to IQueryContext.respond's isFinal parameter for the initial series of responses and true for the final response

Link copied to clipboard
abstract val onScreenCapture: SharedFlow<ScreenCaptureEventArgs>

Event raised when an outbound media stream created by a screen capture session has been connected

Link copied to clipboard
abstract val onVideoCapture: SharedFlow<VideoCaptureEventArgs>

Event raised when an outbound local media stream has been connected