# Class: Collaborations

## Constructor

#### new Collaborations(factory, callService)

  Collaborations module provides functionality of screen sharing and whiteboard drawing to the Client application.
  For Collaboration module namespace, see Collaboration.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `factory` | AvayaClientServices.Services.Collaboration.CollaborationFactory |
  `callService` | AvayaClientServices.Base.CallService |

## Methods

#### getCollaborationById(collaborationId) → {AvayaClientServices.Services.Collaboration.Collaboration}

  Gets collaboration with given collaboration ID or creates the new collaboration session.
  Returns the collaboration if the collaboration with that ID exists.
  Otherwise creates new collaboration with random ID.

  ##### Parameters:

  Name | Type | Argument | Description
  --- | --- | --- | ---
  `collaborationId` | String | <optional> | ID of a collaboration.

  ##### Returns:

  { AvayaClientServices.Services.Collaboration.Collaboration }

#### getCollaborationForCall(callId) → {AvayaClientServices.Services.Collaboration.Collaboration}

  Gets or creates a new collaboration session for the given Call id.
  Returns the collaboration if the call already has the collaboration.
  Otherwise create the new collaboration for specified call.

  ##### Parameters:

  Name | Type | Description
  --- | --- | ---
  `callId` | String | ID of a call.

  ##### Returns:

  { AvayaClientServices.Services.Collaboration.Collaboration }