FoxitPDFSDKforWeb v10.0.0
Foxit PDF SDK for Web
CollaborationCommunicator Interface Reference

An interface defines several methods that user should follow to implement custom CollaborationCommunicator. Collaboration communicator is used to process and generate collaboration sessions, synchronize collaboration data, send collaboration data, and receive collaboration data from other clients. More...

Inheritance diagram for CollaborationCommunicator:
WebSocketCommunicator

Public Member Functions

Promise< boolean > connect (shareId:string)
 Connect to the collabroation server with a specified shareId. More...
 
Promise< string > createSession (doc:PDFDoc)
 Create an collaboration session and returns a unique shareId. Collaboration sessions always be created when open a new PDF file and be closed after PDF file closed or the browser closed. In the server side, a session holds many client connections and collaboration data, the server should allow all clients to reuse the shareId, once all connections of the session are losted, collaboration data should be clear in the server. More...
 
void destroy ()
 destroy the communicator. More...
 
Promise< boolean > disconnect ()
 Disconnect the collaboration communicator from server. More...
 
Promise< CollaborationData[]> getLostData (shareId:string, fromVersion:number)
 If a client is disconnected from the server for a period of time, it is very likely that the data will be out of sync. This is where the data needs to be synchronized from the server. The server should store all the data and identify it with a digital version number, which should start at 0 and add 1 for each collaborative data generated by the user. More...
 
Promise< CollaborationSessionInfo|undefined > getSessionInfo (shareId:string)
 Obtains current session info by share id. More...
 
Promise< boolean > isConnected ()
 detect the communicator is or not connected to server. If the communicator is lost connection. It automatically reconnects until the connection is confirmed multiple times and fails. More...
 
void registerLostConnectionListener (callback:()=> void)
 register a callback that used to receive and sync data from server. This method will be called only once. More...
 
void registerMessageReceiver (receiver:(data:string)=> void)
 register a callback that used receive message from server . This method will be called only once. More...
 
Promise< void > send (shareId:string, data:string)
 Sends the collaboration data to server, and then transmit the data to other clients. More...
 

Detailed Description

An interface defines several methods that user should follow to implement custom CollaborationCommunicator. Collaboration communicator is used to process and generate collaboration sessions, synchronize collaboration data, send collaboration data, and receive collaboration data from other clients.

Since
7.6.0
Deprecated:
Deprecated after version 8.5.2, Please refer to the new collaboration solution: collab-developer-guide , collab_client_api_reference and collab_server_api_reference

Member Function Documentation

◆ connect()

Promise<boolean> CollaborationCommunicator::connect ( shareId:string  )

Connect to the collabroation server with a specified shareId.

Parameters
shareIdstring -
Returns
Promise<boolean>

Implemented in WebSocketCommunicator.

◆ createSession()

Promise<string> CollaborationCommunicator::createSession ( doc:PDFDoc  )

Create an collaboration session and returns a unique shareId. Collaboration sessions always be created when open a new PDF file and be closed after PDF file closed or the browser closed. In the server side, a session holds many client connections and collaboration data, the server should allow all clients to reuse the shareId, once all connections of the session are losted, collaboration data should be clear in the server.

Parameters
docPDFDoc - ViewerPDF.PDFDoc
Returns
Promise<string> -

◆ destroy()

void CollaborationCommunicator::destroy ( )

destroy the communicator.

Returns
void

◆ disconnect()

Promise<boolean> CollaborationCommunicator::disconnect ( )

Disconnect the collaboration communicator from server.

Returns
Promise<boolean>

Implemented in WebSocketCommunicator.

◆ getLostData()

Promise<CollaborationData[]> CollaborationCommunicator::getLostData ( shareId:string  ,
fromVersion:number   
)

If a client is disconnected from the server for a period of time, it is very likely that the data will be out of sync. This is where the data needs to be synchronized from the server. The server should store all the data and identify it with a digital version number, which should start at 0 and add 1 for each collaborative data generated by the user.

Parameters
shareIdstring -
fromVersionnumber -
Returns
Promise<CollaborationData[]>

Implemented in WebSocketCommunicator.

◆ getSessionInfo()

Promise<CollaborationSessionInfo | undefined> CollaborationCommunicator::getSessionInfo ( shareId:string  )

Obtains current session info by share id.

Parameters
shareIdstring - Target share id
Returns
Promise<CollaborationSessionInfo | undefined> - Returns the session info inluding shareId and current openning file options.

Implemented in WebSocketCommunicator.

◆ isConnected()

Promise<boolean> isConnected ( )

detect the communicator is or not connected to server. If the communicator is lost connection. It automatically reconnects until the connection is confirmed multiple times and fails.

Returns
Promise<boolean>

Implemented in WebSocketCommunicator.

◆ registerLostConnectionListener()

void CollaborationCommunicator::registerLostConnectionListener ( callback:()  ,
void   
)

register a callback that used to receive and sync data from server. This method will be called only once.

Parameters
receiver()=>void -
Returns
void

◆ registerMessageReceiver()

void CollaborationCommunicator::registerMessageReceiver ( receiver:(data:string)  ,
void   
)

register a callback that used receive message from server . This method will be called only once.

Parameters
receiver(data:string)=>void
Returns
void

◆ send()

Promise<void> CollaborationCommunicator::send ( shareId:string  ,
data:string   
)

Sends the collaboration data to server, and then transmit the data to other clients.

Parameters
shareIdstring - current session id.
datastring - collabroation data(a valid JSON format)
Returns
Promise<void>

Implemented in WebSocketCommunicator.

Foxit Software Corporation Logo
@2024 Foxit Software Incorporated. All rights reserved.