Package com.avaya.clientservices.call.conference

## Interface Conference

-     public interface Conference

  Conference interface is accessible from the `Call` interface, and provides access to conferencing related capabilities and actions. The Conference interface provides a set of APIs that allow application developers to access the different features and services provided by Avaya's different conferencing solutions. In general, the capabilities and the set of allowed operations are not only dependent on the capabilities of the conferencing server, but also on the specific privileges assigned to the local user on the conference call. For example, if the local user is a moderator of the call, (s)he will be able to perform conference operations such as lock/unlock the call, start/stop recording, as well as operations on participants such as mute/unmute, add a new participant to the call, or drop an existing participant from the call. Status updates reported by the conference server are reported through the `ConferenceListener` objects registered with the Conference object.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addListener​(ConferenceListener listener)` | Adds a new `ConferenceListener` to the conference object.
    `void` | `addParticipant​(java.lang.String participantAddress, CallCompletionHandler handler)` | Add a participant to a call.
    `void` | `addParticipantFromCall​(Call existingCall, CallCompletionHandler handler)` | If the method is called on a 2-party call, the two calls are merged together to create a conference call.
    `void` | `addTerminal​(java.lang.String terminalIPAddress, CallCompletionHandler handler)` | Add a terminal to a conference call by terminal IP address.
    `boolean` | `areMultiplePresentersAllowed()` | Returns the multi-presenter mode status of the conference call.
    `void` | `endConference​(CallCompletionHandler handler)` | Ends the conference call for all conference participants.
    `void` | `extendMeeting​(int additionalTimeInMinutes, CallCompletionHandler handler)` | Extends the current meeting end time by the specified number of minutes.
    `Capability` | `getAcceptDenyPendingParticipantCapability()` | Returns whether the local user can accept or deny a waiting participant's entry to the locked conference.
    `Capability` | `getActiveTalkerCapability()` | Returns whether the conference call reports the active talker information.
    `java.util.List<ActiveParticipant>` | `getActiveTalkers()` | Returns the active talkers participant list for the conference call.
    `Capability` | `getAddParticipantFromCallCapability​(Call callToAdd)` | Returns whether the local user can request the conference server to add a participant from a specified call to current call, for example, to add a new user to the conference call.
    `Capability` | `getAddParticipantViaDialoutCapability()` | Returns whether the local user can request the conference server to dial out towards a specified address, for example, to add a new user to the conference call.
    `Capability` | `getAddTerminalIPAddressViaDialoutCapability()` | Returns whether the local user can request the conference server to dial out towards a terminal IP address to add a terminal as a new user to the conference call.
    `Capability` | `getAssignRecordingNameCapability()` | Returns whether the local user can assign name and description for the meeting recording.
    `java.lang.String` | `getBrandName()` | Returns the brand name of the conference if one is provided by the conference server.
    `java.lang.String` | `getCollaborationURI()` | Returns the collaboration URI associated with the conference call, if the conference call is capable of supporting collaboration.
    `java.lang.String` | `getConferenceWebURI()` | Returns the Conference Web URI associated with the conference call, as provided by the meeting server.
    `ConferenceSlideViewer` | `getContentSlideViewer()` | Returns the content slide viewer associated with the conference call.
    `Capability` | `getContentSlideViewerCapability()` | Returns whether viewing of previously shared slides is supported by the conference call.
    `VideoLayout` | `getCurrentVideoLayout()` | Returns the currently selected video layout option, if the conference server supports layout selection.
    `java.util.List<DroppedParticipant>` | `getDroppedParticipants()` | Returns the list of participants who are no longer on the conference call.
    `ConferenceEncryptionStatus` | `getEncryptionStatus()` | Returns the encryption status for the conference call.
    `Capability` | `getEndConferenceCapability()` | Returns whether the local user can terminate the conference call for all participants.
    `Capability` | `getExtendMeetingCapability()` | Returns whether the local user can extend the end time of the conference call, if the conference has an end time set.
    `Chat` | `getInConferenceChat()` | Returns the `Chat` object associated with the conference call.
    `Capability` | `getInConferenceChatCapability()` | Returns whether in-conference chat is supported.
    `Capability` | `getLowerHandCapability()` | Returns whether the local user can lower hand, when hand was previously raised to get moderator's or panelists' attention.
    `java.util.Date` | `getMeetingEndTime()` | Returns the meeting end time if an end time is specified for the conference call.
    `MeetingMinutes` | `getMeetingMinutes()` | Returns the `MeetingMinutes` object associated with the conference call.
    `Capability` | `getMeetingMinutesCapability()` | Returns whether the meeting minutes feature is supported.
    `ConferenceMobileLink` | `getMobileLink()` | Returns the mobile link associated with the conference call.
    `Capability` | `getMobileLinkCapability()` | Returns whether the conference mobile link feature is supported for the conference call.
    `Capability` | `getModerateConferenceCapability()` | Returns whether the local user can moderate the conference call.
    `Capability` | `getMuteAllParticipantsCapability()` | Returns whether local user can mute all participants at once.
    `java.util.List<ActiveParticipant>` | `getParticipants()` | Returns the participant list for the conference call.
    `Capability` | `getPauseRecordingCapability()` | Returns whether the local user can pause recording of the conference call.
    `java.util.List<PendingParticipant>` | `getPendingParticipants()` | Returns the pending participant list for the conference call.
    `Capability` | `getRaiseHandCapability()` | Returns whether the local user can raise hand (e.g., to get moderator's or panelists' attention).
    `java.util.List<ActiveParticipant>` | `getRecentTalkers()` | Returns the recent talkers participant list for the conference call.
    `java.lang.String` | `getRecordingDescription()` | Returns the description of the conference recording.
    `java.lang.String` | `getRecordingName()` | Returns the name of the conference recording.
    `Capability` | `getRemoveLastParticipantCapability()` | Returns whether the last participant can be removed without indicating the participant's ID.
    `Capability` | `getRemoveSelectParticipantCapability()` | Returns whether the local user can specify a participant to be removed from the call.
    `Capability` | `getRequestToBecomeModeratorCapability()` | Returns whether the conference server allows the local user to request to become a moderator.
    `Capability` | `getResumeRecordingCapability()` | Returns whether the local user can resume recording of the conference call.
    `Capability` | `getRetrieveDialInInformationCapability()` | Returns whether the user can retrieve dialing information from the conference server The capability returns not supported if the conference server doesn't support this indication.
    `Capability` | `getRetrieveParticipantListCapability()` | Returns whether the conference call can be queried to get the list of conference participants.
    `Capability` | `getSignInCapability()` | Returns whether local user can sign in as named user in current conference session.
    `Capability` | `getStartRecordingCapability()` | Returns whether the local user can start conference recording.
    `Capability` | `getStopRecordingCapability()` | Returns whether the local user can stop conference recording.
    `ConferenceStreamingStatus` | `getStreamingStatus()` | Returns whether streaming is enabled for the conference call.
    `java.lang.String` | `getStreamingURI()` | Returns the streaming URI for the conference call.
    `java.lang.String` | `getSubject()` | Returns the subject of the conference if one is provided by the conference server.
    `VideoLayout[]` | `getSupportedVideoLayoutList()` | Returns the list of video layouts that the user can choose from.
    `Capability` | `getUnmuteAllParticipantsCapability()` | Returns whether the local user can unmute all participants at once.
    `Capability` | `getUpdateContinuationStatusCapability()` | Returns whether the local user can change the conference call continuation mode.
    `Capability` | `getUpdateDisplayVideoParticipantNameCapability()` | Returns whether the local user can control the display of participant names in the personal video layout received from the conference server.
    `Capability` | `getUpdateEntryExitToneStatusCapability()` | Returns whether the local user can control the entry/exit tone setting of the conference call.
    `Capability` | `getUpdateLectureModeStatusCapability()` | Returns whether local user can put the conference call into lecture mode.
    `Capability` | `getUpdateLockStatusCapability()` | Returns whether local user can lock/unlock the conference call.
    `Capability` | `getUpdateMultiplePresentersCapability()` | Returns whether local user can control panel mode status of the conference call.
    `Capability` | `getUpdateVideoAllowedStatusCapability()` | Returns whether the local user can enable/disable video for the conference call.
    `Capability` | `getUpdateVideoLayoutCapability()` | Returns whether the local user can control the video layout setting of the video received from the conference server.
    `Capability` | `getUpdateVideoSelfSeeCapability()` | Returns whether the local user can control the display of the local user's video in the personal video layout received from the conference server.
    `Capability` | `getVideoPinCapability()` | Returns whether the local user can pin a specific participant's video in a specific position of the current video layout.
    `boolean` | `isActiveSpeakerVideoAlwaysDisplayed()` | Returns whether 'always display active speaker's video' option is currently enabled.
    `boolean` | `isConferenceWaitingToStart()` | Returns whether the conference call is waiting to be started.
    `boolean` | `isContinuationActive()` | Returns continuation status of the conference call.
    `boolean` | `isEntryExitToneActive()` | Returns the entry/exit tone status of the conference call.
    `boolean` | `isEventConference()` | Indicates whether the call is an event conference or a regular conference.
    `boolean` | `isExternalAdmissionRequiredToEnterConference()` | Returns whether the current conference is in waiting external admission state or not.
    `boolean` | `isHandRaised()` | Returns whether the local user's hand is currently raised.
    `boolean` | `isLectureModeActive()` | Returns the lecture mode status of the conference call.
    `boolean` | `isLocked()` | Returns the lock status of the conference call.
    `boolean` | `isPasscodeRequiredToEnterConference()` | Returns whether the current conference is in waiting passcode state or not.
    `boolean` | `isPermissionRequiredToEnterLockedConference()` | Indicates whether the current conference is waiting access to join locked conference.
    `boolean` | `isPinRequiredToBecomeModerator()` | Returns whether the conference call requires entry of a moderator PIN before the local user is allowed to become a moderator.
    `boolean` | `isRecordingActive()` | Returns the recording status of the conference call.
    `boolean` | `isRecordingPaused()` | Returns an indication of whether conference call recording is paused.
    `boolean` | `isVideoAllowed()` | Returns the video allowed status of the conference call.
    `boolean` | `isVideoParticipantNameDisplayActive()` | Returns whether the display participant option is currently active.
    `boolean` | `isVideoSelfSeeActive()` | Returns whether the self-see option is currently active.
    `void` | `lowerHand​(CallCompletionHandler handler)` | Called to lower local user's hand on the conference call to indicate that the user no longer wants to get the moderator's attention.
    `void` | `muteAllParticipants​(CallCompletionHandler handler)` | Used by a conference moderator to mute all participants on the conference call.
    `void` | `pauseRecording​(CallCompletionHandler handler)` | Pauses conference recording.
    `void` | `pinVideo​(float sourceXCoordinate, float sourceYCoordinate, float destinationXCoordinate, float destinationYCoordinate, CallCompletionHandler handler)` | Requests for a specific participant's video to be pinned in a certain area of the video image.
    `void` | `raiseHand​(CallCompletionHandler handler)` | Called to raise local user's hand on the conference call to get the moderator's attention, who can unmute and hence allow the participant to speak.
    `void` | `removeLastParticipant​(CallCompletionHandler handler)` | Removes the last participant that was added to a conference call either locally or remotely.
    `void` | `removeListener​(ConferenceListener listener)` | Removes a `ConferenceListener` from the conference.
    `void` | `removeParticipant​(ActiveParticipant participant, CallCompletionHandler handler)` | Initiates removal of the selected participant from the conference call.
    `void` | `requestToBecomeModerator​(java.lang.String moderatorPin, CallCompletionHandler handler)` | Issues a request to promote the local user to become a conference moderator.
    `void` | `resumeRecording​(CallCompletionHandler handler)` | Resumes conference recording.
    `void` | `retrieveDialInInformation​(CompletionHandlerWithResult<java.lang.String> handler)` | Send a request to retrieve dialing information.
    `void` | `sendPasscode​(java.lang.String passcode, CallCompletionHandler handler)` | Request for admission to enter a conference call that is passcode-protected.
    `void` | `sendRequestToEnterLockedConference​(CallCompletionHandler handler)` | Request for permission to enter a locked conference call.
    `void` | `setContinuation​(boolean continuation, CallCompletionHandler handler)` | Enables or disables conference continuation mode for the conference call.
    `void` | `setDisplayVideoParticipantName​(boolean displayParticipantName, CallCompletionHandler handler)` | Controls whether participant names are displayed in the personal video layout received from the conference server.
    `void` | `setEntryExitTone​(boolean entryExitTone, CallCompletionHandler handler)` | Controls whether entry and exit tones are allowed for the conference call.
    `void` | `setLectureMode​(boolean lecture, CallCompletionHandler handler)` | Enables or disables lecture mode for the conference call.
    `void` | `setLocked​(boolean lock, CallCompletionHandler handler)` | Locks or unlocks the conference call.
    `void` | `setMultiplePresentersAllowed​(boolean allowed, CallCompletionHandler handler)` | Controls whether there can be multiple presenters (panelists) on the call.
    `void` | `setVideoAllowed​(boolean video, CallCompletionHandler handler)` | Controls whether video is allowed on the conference call.
    `void` | `setVideoLayout​(VideoLayout layout, CallCompletionHandler handler)` | Sets the local user's personal video layout preference.
    `void` | `setVideoSelfSee​(boolean selfSee, CallCompletionHandler handler)` | Controls the display of the local user's video in the personal video layout received from the conference server.
    `void` | `signIn​(java.lang.String portalUserToken, CallCompletionHandler handler)` | Sign in to become a named user in the conference.
    `void` | `startRecording​(CallCompletionHandler handler)` | Starts conference recording.
    `void` | `startRecording​(java.lang.String recordingName, java.lang.String recordingDescription, CallCompletionHandler handler)` | Starts conference recording.
    `void` | `stopRecording​(CallCompletionHandler handler)` | Stops conference recording.
    `void` | `unmuteAllParticipants​(CallCompletionHandler handler)` | Used by a conference moderator to unmute all participants on the conference call.

- - ### Method Detail

    - #### addListener

          void addListener​(ConferenceListener listener)

      Adds a new `ConferenceListener` to the conference object.
      Parameters:
        `listener` - Listener to be added to the conference.

    - #### removeListener

          void removeListener​(ConferenceListener listener)

      Removes a `ConferenceListener` from the conference.
      Parameters:
        `listener` - Listener instance that is removed from the conference.

    - #### isConferenceWaitingToStart

          boolean isConferenceWaitingToStart()

      Returns whether the conference call is waiting to be started. If the conference has not started, because the conference requires a moderator to join before start, the method call returns true.

      Note: This feature is not fully supported across all conferencing platforms.

      Returns:
        Conference start status.

    - #### getInConferenceChatCapability

          Capability getInConferenceChatCapability()

      Returns whether in-conference chat is supported. In-conference chat allows conference participants to exchange messages amongst each other without interrupting the speaker. These messages can either be private between selected participants or shared with all conference participants. The application may use the result of this query to enable or disable chat functions. See `Chat` for more information about the in-conference chat feature. In-conference chat capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        In-conference chat capability information.
      See Also:
        `getInConferenceChat()`

    - #### getInConferenceChat

          Chat getInConferenceChat()

      Returns the `Chat` object associated with the conference call. The Chat object can be used to query for the current list of messages or to send a new message.
      Returns:
        `Chat` object associated with the conference call.
      See Also:
        `getInConferenceChatCapability()`

    - #### getMeetingMinutesCapability

          Capability getMeetingMinutesCapability()

      Returns whether the meeting minutes feature is supported. The meeting minutes feature allows conference participants to enter notes, for example, to mark the beginning of a new topic during a conference call. See `MeetingMinutes` for more information about the meeting minutes feature. The application may use the result of this query to enable or disable meeting minutes related functions. Meeting minutes capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Meeting minutes capability information.
      See Also:
        `getMeetingMinutes()`

    - #### getMeetingMinutes

          MeetingMinutes getMeetingMinutes()

      Returns the `MeetingMinutes` object associated with the conference call. The MeetingMinutes object can be used to query for the list of meeting notes, add a new note, or edit or remove an existing note.
      Returns:
        `MeetingMinutes` object associated with the conference call.
      See Also:
        `getMeetingMinutesCapability()`

    - #### getMobileLinkCapability

          Capability getMobileLinkCapability()

      Returns whether the conference mobile link feature is supported for the conference call. The mobile link feature allows an application to control a conference call while terminating audio and video on a conferencing room system. The application may use the result of this query to enable or disable mobile link related functions. The support for the mobile link is dependent on the conferencing system version. See `ConferenceMobileLink` for more information about the conference mobile link feature. Mobile link capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Conference mobile link capability information.
      See Also:
        `getMobileLink()`

    - #### getMobileLink

          ConferenceMobileLink getMobileLink()

      Returns the mobile link associated with the conference call.
      Returns:
        `ConferenceMobileLink` object associated with the conference call.
      See Also:
        `getMobileLinkCapability()`

    - #### getContentSlideViewerCapability

          Capability getContentSlideViewerCapability()

      Returns whether viewing of previously shared slides is supported by the conference call. For example, a person who joins a conference call late can use the content slide viewer feature to view the document pages that have already been shared during the call. The application may use the result of this query to enable or disable functions related to viewing of previously shared slides during the conference. The support for the content slide viewer is dependent on the conferencing system version. See `ConferenceSlideViewer` for more information. The content slide viewer capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Content slide viewer capability information.
      See Also:
        `getContentSlideViewer()`

    - #### getContentSlideViewer

          ConferenceSlideViewer getContentSlideViewer()

      Returns the content slide viewer associated with the conference call.
      Returns:
        `ConferenceSlideViewer` object associated with the conference call.
      See Also:
        `getContentSlideViewerCapability()`

    - #### getCollaborationURI

          java.lang.String getCollaborationURI()

      Returns the collaboration URI associated with the conference call, if the conference call is capable of supporting collaboration. If the conference is not capable of supporting collaboration, null is returned.
      Returns:
        Collaboration URI associated with the conference call.

    - #### getConferenceWebURI

          java.lang.String getConferenceWebURI()

      Returns the Conference Web URI associated with the conference call, as provided by the meeting server.
      Returns:
        Conference Web URI associated with the conference call.

    - #### getRequestToBecomeModeratorCapability

          Capability getRequestToBecomeModeratorCapability()

      Returns whether the conference server allows the local user to request to become a moderator. This capability is not supported if the conference server does not support a self-promotion mechanism to become a moderator, or if the local user is already a moderator. The application may use the result of this query to enable or disable functions related to requesting to become a moderator. Conference moderation features are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Capability information.
      See Also:
        `isPinRequiredToBecomeModerator()`, `requestToBecomeModerator(String, CallCompletionHandler)`

    - #### isPinRequiredToBecomeModerator

          boolean isPinRequiredToBecomeModerator()

      Returns whether the conference call requires entry of a moderator PIN before the local user is allowed to become a moderator. The method returns true only if getRequestToBecomeModeratorCapability() returns supported indication. The application may use this method to prompt the user for moderator PIN before calling `requestToBecomeModerator`.
      Returns:
        Status of whether PIN is required to become a moderator.
      See Also:
        `getRequestToBecomeModeratorCapability()`

    - #### requestToBecomeModerator

          void requestToBecomeModerator​(java.lang.String moderatorPin,
                                        CallCompletionHandler handler)

      Issues a request to promote the local user to become a conference moderator. The result of the operation is reported through the `CallCompletionHandler` object. In addition, a separate participant status update notification is reported through the `ActiveParticipantListener` associated with the local user's `ActiveParticipant` object.
      Parameters:
        `moderatorPin` - Optional PIN required to become a moderator. If a PIN is not required, an empty string can be provided as the input argument.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getRequestToBecomeModeratorCapability()`, `isPinRequiredToBecomeModerator()`

    - #### getModerateConferenceCapability

          Capability getModerateConferenceCapability()

      Returns whether the local user can moderate the conference call. The capability returns not supported if the conference call does not have a moderator, or if the local user is not a moderator. Conference moderation features are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Moderate conference capability information.

    - #### getActiveTalkerCapability

          Capability getActiveTalkerCapability()

      Returns whether the conference call reports the active talker information. Reporting of active talkers is dependent on the capabilities of the conferencing system. Active talker capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Active talker capability information.
      See Also:
        `getActiveTalkers()`

    - #### getUpdateLockStatusCapability

          Capability getUpdateLockStatusCapability()

      Returns whether local user can lock/unlock the conference call. The capability returns not supported if the conference call does not support lock/unlock, or if the local user does not have permission to lock/unlock the conference call. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Update lock status capability information.
      See Also:
        `isLocked()`, `setLocked(boolean, CallCompletionHandler)`

    - #### isLocked

          boolean isLocked()

      Returns the lock status of the conference call. If the call is not a conference call or the conference call is not locked, the method returns false.
      Returns:
        Lock status of the conference call.
      See Also:
        `getUpdateLockStatusCapability()`, `setLocked(boolean, CallCompletionHandler)`

    - #### setLocked

          void setLocked​(boolean lock,
                         CallCompletionHandler handler)

      Locks or unlocks the conference call. If the call is not a conference call or the conference call is not locked, an error indication is returned through the `CallCompletionHandler` object. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `lock` - Set to true to lock the call or false to unlock the call.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateLockStatusCapability()`, `isLocked()`

    - #### getUpdateLectureModeStatusCapability

          Capability getUpdateLectureModeStatusCapability()

      Returns whether local user can put the conference call into lecture mode. The capability returns not supported if the conference call does not support lecture mode, or if the local user does not have permission to set the call into lecture mode. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Set lecture mode capability information.
      See Also:
        `isLectureModeActive()`, `setLectureMode(boolean, CallCompletionHandler)`

    - #### isLectureModeActive

          boolean isLectureModeActive()

      Returns the lecture mode status of the conference call. It returns false if the call is not a conference call, or if the conference call does not have lecture mode active.
      Returns:
        Lecture mode status of the conference call.
      See Also:
        `getUpdateLectureModeStatusCapability()`, `setLectureMode(boolean, CallCompletionHandler)`

    - #### setLectureMode

          void setLectureMode​(boolean lecture,
                              CallCompletionHandler handler)

      Enables or disables lecture mode for the conference call. The result of the operation is reported through the input `CallCompletionHandler` object. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `lecture` - Set to true to enable lecture mode for the conference call; false to turn off lecture mode.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateLectureModeStatusCapability()`, `isLocked()`

    - #### getUpdateContinuationStatusCapability

          Capability getUpdateContinuationStatusCapability()

      Returns whether the local user can change the conference call continuation mode. Call continuation mode allows the conference call to continue after the moderator leaves the conference call. This feature is not applicable to all Avaya conferencing solutions. The capability returns not supported if the conference call does not support conference continuation after the moderator leaves the call, or if the local user does not have permission to set the call continuation mode. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Update conference continuation capability information.
      See Also:
        `isContinuationActive()`, `setContinuation(boolean, CallCompletionHandler)`

    - #### isContinuationActive

          boolean isContinuationActive()

      Returns continuation status of the conference call. If the call is not a conference call, or if the conference call's continuation status is not set or if the feature is not supported, the method returns false.
      Returns:
        Continuation status of the conference call.
      See Also:
        `getUpdateContinuationStatusCapability()`, `setContinuation(boolean, CallCompletionHandler)`

    - #### setContinuation

          void setContinuation​(boolean continuation,
                               CallCompletionHandler handler)

      Enables or disables conference continuation mode for the conference call. Call continuation mode allows the conference call to continue after the moderator leaves the conference call. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `continuation` - Set to true to enable conference continuation after moderator exits the call; false to end the conference call when the moderator exits the call.
        `handler` - `CallCompletionHandler` object that wants to know success or failure of the operation.
      See Also:
        `getUpdateContinuationStatusCapability()`, `isContinuationActive()`

    - #### getExtendMeetingCapability

          Capability getExtendMeetingCapability()

      Returns whether the local user can extend the end time of the conference call, if the conference has an end time set. The capability returns not supported if the conference call does not support meeting extension, or if the local user does not have permission to extend the conference call. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Extend meeting capability information.
      See Also:
        `getMeetingEndTime()`, `extendMeeting(int, CallCompletionHandler)`

    - #### getMeetingEndTime

          java.util.Date getMeetingEndTime()

      Returns the meeting end time if an end time is specified for the conference call. If there is no meeting end time specified, the method returns null.
      Returns:
        Meeting end time, if one is specified, null, otherwise.
      See Also:
        `Date`, `getExtendMeetingCapability()`, `extendMeeting(int, CallCompletionHandler)`

    - #### extendMeeting

          void extendMeeting​(int additionalTimeInMinutes,
                             CallCompletionHandler handler)

      Extends the current meeting end time by the specified number of minutes. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `additionalTimeInMinutes` - Additional time by which the conference call is extended.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      Throws:
        `java.lang.IllegalArgumentException` - if the additionalTimeInMinutes value is negative
      See Also:
        `getExtendMeetingCapability()`, `getMeetingEndTime()`

    - #### getStartRecordingCapability

          Capability getStartRecordingCapability()

      Returns whether the local user can start conference recording. The capability returns not supported if the conference call does not support recording, or if the local user does not have permission to start recording of the call, or if recording is already active. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Start recording capability information.
      See Also:
        `isRecordingActive()`, `startRecording(CallCompletionHandler)`, `stopRecording(CallCompletionHandler)`

    - #### getStopRecordingCapability

          Capability getStopRecordingCapability()

      Returns whether the local user can stop conference recording. The capability returns not supported if the conference call does not support recording, or if the local user does not have permission to stop recording of the call, or if recording is not active. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Stop recording capability information.
      See Also:
        `isRecordingActive()`, `startRecording(CallCompletionHandler)`, `stopRecording(CallCompletionHandler)`

    - #### isRecordingActive

          boolean isRecordingActive()

      Returns the recording status of the conference call. If the call is not a conference call, or if the conference is not being recorded, the method returns false.
      Returns:
        Recording status of the conference call.
      See Also:
        `getStartRecordingCapability()`, `getStopRecordingCapability()`, `startRecording(CallCompletionHandler)`, `stopRecording(CallCompletionHandler)`

    - #### startRecording

          void startRecording​(CallCompletionHandler handler)

      Starts conference recording. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getStartRecordingCapability()`, `getStopRecordingCapability()`, `isRecordingActive()`, `stopRecording(CallCompletionHandler)`

    - #### startRecording

          void startRecording​(java.lang.String recordingName,
                              java.lang.String recordingDescription,
                              CallCompletionHandler handler)

      Starts conference recording. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `recordingName` - Name for the meeting recording.
        `recordingDescription` - Description for the meeting recording.
        `handler` - object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getStartRecordingCapability()`, `getStopRecordingCapability()`, `isRecordingActive()`, `stopRecording(CallCompletionHandler)`

    - #### stopRecording

          void stopRecording​(CallCompletionHandler handler)

      Stops conference recording. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `handler` - Object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getStartRecordingCapability()`, `getStopRecordingCapability()`, `isRecordingActive()`, `startRecording(CallCompletionHandler)`

    - #### getPauseRecordingCapability

          Capability getPauseRecordingCapability()

      Returns whether the local user can pause recording of the conference call. The capability returns not supported if the conference call does not support pause/resume of recording, or if the local user does not have permission to start/stop recording of the call, or if the recording is already paused. Only a conference moderator can pause or resume recording. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Pause recording capability information.
      See Also:
        `getResumeRecordingCapability()`, `isRecordingPaused()`, `pauseRecording(CallCompletionHandler)`, `resumeRecording(CallCompletionHandler)`

    - #### getResumeRecordingCapability

          Capability getResumeRecordingCapability()

      Returns whether the local user can resume recording of the conference call. The capability returns not supported if the conference call does not support pause/resume of recording, or if the local user does not have permission to start/stop recording of the call, or if the recording is already active. Only a conference moderator can pause or resume recording. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Resume recording capability information.
      See Also:
        `getPauseRecordingCapability()`, `isRecordingPaused()`, `pauseRecording(CallCompletionHandler)`, `resumeRecording(CallCompletionHandler)`

    - #### getRecordingName

          java.lang.String getRecordingName()

      Returns the name of the conference recording.
      Returns:
        Meeting recording name.
      See Also:
        `startRecording(String, String, CallCompletionHandler)`

    - #### getRecordingDescription

          java.lang.String getRecordingDescription()

      Returns the description of the conference recording.
      Returns:
        Meeting recording name.
      See Also:
        `startRecording(String, String, CallCompletionHandler)`

    - #### getAssignRecordingNameCapability

          Capability getAssignRecordingNameCapability()

      Returns whether the local user can assign name and description for the meeting recording.
      Returns:
        Assign recording name capability information.
      See Also:
        `getPauseRecordingCapability()`, `isRecordingPaused()`, `pauseRecording(CallCompletionHandler)`, `resumeRecording(CallCompletionHandler)`

    - #### isRecordingPaused

          boolean isRecordingPaused()

      Returns an indication of whether conference call recording is paused. If the call is not a conference call, or if the conference recording is not paused, or if recording pause/resume is not supported by the conference server, the method returns false. `isRecordingActive()` in conjunction with this method provide the current status of the conference recording.
      Returns:
        Recording paused status of the conference call.
      See Also:
        `getPauseRecordingCapability()`, `getResumeRecordingCapability()`, `pauseRecording(CallCompletionHandler)`, `resumeRecording(CallCompletionHandler)`

    - #### pauseRecording

          void pauseRecording​(CallCompletionHandler handler)

      Pauses conference recording. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getPauseRecordingCapability()`, `getResumeRecordingCapability()`, `isRecordingPaused()`, `resumeRecording(CallCompletionHandler)`

    - #### resumeRecording

          void resumeRecording​(CallCompletionHandler handler)

      Resumes conference recording. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getPauseRecordingCapability()`, `getResumeRecordingCapability()`, `isRecordingPaused()`, `pauseRecording(CallCompletionHandler)`

    - #### getUpdateVideoAllowedStatusCapability

          Capability getUpdateVideoAllowedStatusCapability()

      Returns whether the local user can enable/disable video for the conference call. The capability returns not supported if the conference call does not support control of video allow/disallow, or if the local user does not have permission to control video allow/disallow status of the call. Conference video capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        capability information.
      See Also:
        `isVideoAllowed()`, `setVideoAllowed(boolean, CallCompletionHandler)`

    - #### isVideoAllowed

          boolean isVideoAllowed()

      Returns the video allowed status of the conference call. If the call is not a conference call, or if video on the conference call is not allowed, the method returns false.
      Returns:
        Video allowed status of the conference call.
      See Also:
        `getUpdateVideoAllowedStatusCapability()`, `setVideoAllowed(boolean, CallCompletionHandler)`

    - #### setVideoAllowed

          void setVideoAllowed​(boolean video,
                               CallCompletionHandler handler)

      Controls whether video is allowed on the conference call. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `video` - Set to true to enable video on the conference call; false to disable video.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateVideoAllowedStatusCapability()`, `isVideoAllowed()`

    - #### getUpdateEntryExitToneStatusCapability

          Capability getUpdateEntryExitToneStatusCapability()

      Returns whether the local user can control the entry/exit tone setting of the conference call. The capability returns not supported if the conference call does not support entry/exit tones, or if the local user does not have permission to control the entry/exit tones. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        capability information.
      See Also:
        `isEntryExitToneActive()`, `setEntryExitTone(boolean, CallCompletionHandler)`

    - #### isEntryExitToneActive

          boolean isEntryExitToneActive()

      Returns the entry/exit tone status of the conference call. If the call is not a conference call, or if the conference call's entry/exit tone is not enabled, the method returns false.
      Returns:
        Entry/exit tone status of the conference call.
      See Also:
        `getUpdateEntryExitToneStatusCapability()`, `setEntryExitTone(boolean, CallCompletionHandler)`

    - #### setEntryExitTone

          void setEntryExitTone​(boolean entryExitTone,
                                CallCompletionHandler handler)

      Controls whether entry and exit tones are allowed for the conference call. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `entryExitTone` - Set to true to enable entry/exit tones.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateEntryExitToneStatusCapability()`, `isEntryExitToneActive()`

    - #### getStreamingStatus

          ConferenceStreamingStatus getStreamingStatus()

      Returns whether streaming is enabled for the conference call. The streaming option is specified at conference creation/reservation time, prior to the endpoints joining the conference call.
      Returns:
        Current conference streaming status.
      See Also:
        `ConferenceStreamingStatus`, `getStreamingURI()`

    - #### getStreamingURI

          java.lang.String getStreamingURI()

      Returns the streaming URI for the conference call. The method returns an empty string if streaming is not enabled for the call, or is not supported by the conference server.
      Returns:
        Streaming URI.
      See Also:
        `getStreamingStatus()`

    - #### getEncryptionStatus

          ConferenceEncryptionStatus getEncryptionStatus()

      Returns the encryption status for the conference call.
      Returns:
        Conference's overall encryption status.
      See Also:
        `ConferenceEncryptionStatus`

    - #### getSubject

          java.lang.String getSubject()

      Returns the subject of the conference if one is provided by the conference server. If there is no subject provided, the method returns null.
      Returns:
        Subject of the conference call.

    - #### getBrandName

          java.lang.String getBrandName()

      Returns the brand name of the conference if one is provided by the conference server. If there is no brand name provided, the method returns null.
      Returns:
        Brand name of the conference call, e.g., Scopia.

    - #### getEndConferenceCapability

          Capability getEndConferenceCapability()

      Returns whether the local user can terminate the conference call for all participants. The capability returns not supported if the local user does not have permission to terminate the conference. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Terminate conference capability information.
      See Also:
        `endConference(CallCompletionHandler)`

    - #### endConference

          void endConference​(CallCompletionHandler handler)

      Ends the conference call for all conference participants. This action can only be invoked by a conference moderator.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getEndConferenceCapability()`

    - #### getRetrieveDialInInformationCapability

          Capability getRetrieveDialInInformationCapability()

      Returns whether the user can retrieve dialing information from the conference server The capability returns not supported if the conference server doesn't support this indication.
      Returns:
        Retrieve Dialing Information conference capability information.
      See Also:
        `retrieveDialInInformation(CompletionHandlerWithResult)`

    - #### retrieveDialInInformation

          void retrieveDialInInformation​(CompletionHandlerWithResult<java.lang.String> handler)

      Send a request to retrieve dialing information. Dial-in information is general text similar to outlook invitation.
      Parameters:
        `handler` - The `CompletionHandlerWithResult` object that wants to learn about the result of the operation, i.e., whether it was successful and result object of operation.
      See Also:
        `getRetrieveDialInInformationCapability()`

    - #### signIn

          void signIn​(java.lang.String portalUserToken,
                      CallCompletionHandler handler)

      Sign in to become a named user in the conference.
      Parameters:
        `portalUserToken` - User token received from the portal.
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.

    - #### getUpdateMultiplePresentersCapability

          Capability getUpdateMultiplePresentersCapability()

      Returns whether local user can control panel mode status of the conference call. The capability returns not supported if the conference call does not support panel mode setting, or if the local user does not have permission to control the panel mode setting. Update multiple presenters capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Update allowance of multiple presenters capability information.
      See Also:
        `areMultiplePresentersAllowed()`, `setMultiplePresentersAllowed(boolean, CallCompletionHandler)`

    - #### areMultiplePresentersAllowed

          boolean areMultiplePresentersAllowed()

      Returns the multi-presenter mode status of the conference call. If the call is not a conference call, or if the multi-presenter mode is not enabled, the method returns false.
      Returns:
        Multi-presenter mode of the conference call.
      See Also:
        `getUpdateMultiplePresentersCapability()`, `setMultiplePresentersAllowed(boolean, CallCompletionHandler)`

    - #### isPasscodeRequiredToEnterConference

          boolean isPasscodeRequiredToEnterConference()

      Returns whether the current conference is in waiting passcode state or not. see #sendPasscode(String, CallCompletionHandler)
      Returns:
        True if the current conference is in waiting passcode state.

    - #### isExternalAdmissionRequiredToEnterConference

          boolean isExternalAdmissionRequiredToEnterConference()

      Returns whether the current conference is in waiting external admission state or not. External admission should be done through DTMF.
      Returns:
        True if the current conference is in waiting external admission state.

    - #### isPermissionRequiredToEnterLockedConference

          boolean isPermissionRequiredToEnterLockedConference()

      Indicates whether the current conference is waiting access to join locked conference.
      Returns:
        True if the current conference is waiting access to join locked conference.

    - #### setMultiplePresentersAllowed

          void setMultiplePresentersAllowed​(boolean allowed,
                                            CallCompletionHandler handler)

      Controls whether there can be multiple presenters (panelists) on the call.
      Parameters:
        `allowed` - True if multiple presenters are allowed; false otherwise.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateMultiplePresentersCapability()`, `areMultiplePresentersAllowed()`

    - #### getUpdateVideoSelfSeeCapability

          Capability getUpdateVideoSelfSeeCapability()

      Returns whether the local user can control the display of the local user's video in the personal video layout received from the conference server. The capability returns not supported if the conference call does not support this feature. Conference video capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Video self see capability information.
      See Also:
        `isVideoSelfSeeActive()`, `setVideoSelfSee(boolean, CallCompletionHandler)`

    - #### isVideoSelfSeeActive

          boolean isVideoSelfSeeActive()

      Returns whether the self-see option is currently active.
      Returns:
        Current status of the self-see option.
      See Also:
        `getUpdateVideoSelfSeeCapability()`, `setVideoSelfSee(boolean, CallCompletionHandler)`

    - #### setVideoSelfSee

          void setVideoSelfSee​(boolean selfSee,
                               CallCompletionHandler handler)

      Controls the display of the local user's video in the personal video layout received from the conference server. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `selfSee` - true if local video is to be shown in the video; false if local video is to be hidden.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateVideoSelfSeeCapability()`, `isVideoSelfSeeActive()`

    - #### getUpdateDisplayVideoParticipantNameCapability

          Capability getUpdateDisplayVideoParticipantNameCapability()

      Returns whether the local user can control the display of participant names in the personal video layout received from the conference server. The capability returns not supported if the conference call does not support this feature. Conference video capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Update display video participant name capability.
      See Also:
        `isVideoParticipantNameDisplayActive()`, `setDisplayVideoParticipantName(boolean, CallCompletionHandler)`

    - #### isVideoParticipantNameDisplayActive

          boolean isVideoParticipantNameDisplayActive()

      Returns whether the display participant option is currently active.
      Returns:
        Current status of the display participant name option.
      See Also:
        `getUpdateDisplayVideoParticipantNameCapability()`, `setDisplayVideoParticipantName(boolean, CallCompletionHandler)`

    - #### setDisplayVideoParticipantName

          void setDisplayVideoParticipantName​(boolean displayParticipantName,
                                              CallCompletionHandler handler)

      Controls whether participant names are displayed in the personal video layout received from the conference server. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `displayParticipantName` - true if display name is to be shown; false otherwise.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUpdateDisplayVideoParticipantNameCapability()`, `isVideoParticipantNameDisplayActive()`

    - #### isActiveSpeakerVideoAlwaysDisplayed

          boolean isActiveSpeakerVideoAlwaysDisplayed()

      Returns whether 'always display active speaker's video' option is currently enabled. This property cannot be changed programmatically.
      Returns:
        Current status of the 'always display active speaker's video' option.

    - #### getUpdateVideoLayoutCapability

          Capability getUpdateVideoLayoutCapability()

      Returns whether the local user can control the video layout setting of the video received from the conference server. The capability returns not supported if the conference call does not support video layout setting. Conference video capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Update video layout capability information.
      See Also:
        `getCurrentVideoLayout()`, `getSupportedVideoLayoutList()`, `setVideoLayout(VideoLayout, CallCompletionHandler)`

    - #### getCurrentVideoLayout

          VideoLayout getCurrentVideoLayout()

      Returns the currently selected video layout option, if the conference server supports layout selection. Otherwise, NONE is returned to indicate that the conference server does not support video layout selection.
      Returns:
        Currently selected video layout option.
      See Also:
        `Current video layout.`, `getUpdateVideoLayoutCapability()`, `getSupportedVideoLayoutList()`, `setVideoLayout(VideoLayout, CallCompletionHandler)`

    - #### setVideoLayout

          void setVideoLayout​(VideoLayout layout,
                              CallCompletionHandler handler)

      Sets the local user's personal video layout preference. When the operation is successful, a status update is reported through the `ConferenceListener` registered with this Conference object.
      Parameters:
        `layout` - New video layout to be set.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `Selected video layout.`, `getUpdateVideoLayoutCapability()`, `getCurrentVideoLayout()`, `getSupportedVideoLayoutList()`

    - #### getSupportedVideoLayoutList

          VideoLayout[] getSupportedVideoLayoutList()

      Returns the list of video layouts that the user can choose from. If the conference server does not support video layout selection, an empty list is returned.
      Returns:
        List of supported video layouts.
      See Also:
        `VideoLayout`, `getUpdateVideoLayoutCapability()`, `getCurrentVideoLayout()`, `setVideoLayout(VideoLayout, CallCompletionHandler)`

    - #### getVideoPinCapability

          Capability getVideoPinCapability()

      Returns whether the local user can pin a specific participant's video in a specific position of the current video layout. This capability returns not supported if the conference call does not support video pinning, or video pin requests. Conference video capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Pin video capability information.
      See Also:
        `pinVideo(float, float, float, float, CallCompletionHandler)`

    - #### pinVideo

          void pinVideo​(float sourceXCoordinate,
                        float sourceYCoordinate,
                        float destinationXCoordinate,
                        float destinationYCoordinate,
                        CallCompletionHandler handler)

      Requests for a specific participant's video to be pinned in a certain area of the video image. The source and destination coordinates can be any point within a video region inside the video image. They do not have to be a point at the boundary of the video region. In order to undo a previous video pin operation, the application needs to call `setVideoLayout(com.avaya.clientservices.call.conference.VideoLayout, com.avaya.clientservices.call.CallCompletionHandler)` and specify the VideoLayoutType.DYNAMIC layout option.
      Parameters:
        `sourceXCoordinate` - Horizontal coordinate of the participant's initial video position in the video image. The float type value in range (0.0, 1.0), with 0.0 referring to the left most side, and 1.0 to the right most side of the video image.
        `sourceYCoordinate` - Vertical coordinate of the participant's initial video position in the video image. The float type value in range (0.0, 1.0), with 0.0 referring to the top, and 1.0 to the bottom of the video image.
        `destinationXCoordinate` - Horizontal coordinate of the participant's final video position in the video image. The float type value in range (0.0, 1.0), with 0.0 referring to the left most side, and 1.0 to the right most side of the video image.
        `destinationYCoordinate` - Vertical coordinate of the participant's final video position in the video image. The float type value in range (0.0, 1.0), with 0.0 referring to the top, and 1.0 to the bottom of the video image.
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      Throws:
        `java.lang.IllegalArgumentException` - if either of the coordinates is outside of the allowed range (0.0, 1.0)
      See Also:
        `getVideoPinCapability()`

    - #### getRaiseHandCapability

          Capability getRaiseHandCapability()

      Returns whether the local user can raise hand (e.g., to get moderator's or panelists' attention). The capability returns not supported if the conference call does not support raising hand. Raise hand capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Raise hand capability information.
      See Also:
        `isHandRaised()`, `raiseHand(CallCompletionHandler)`

    - #### getLowerHandCapability

          Capability getLowerHandCapability()

      Returns whether the local user can lower hand, when hand was previously raised to get moderator's or panelists' attention. The capability returns not supported if the conference call does not support lowering hand. Lower hand capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Lower hand capability information.
      See Also:
        `isHandRaised()`, `lowerHand(CallCompletionHandler)`

    - #### isHandRaised

          boolean isHandRaised()

      Returns whether the local user's hand is currently raised.
      Returns:
        Local user's hand raised status.
      See Also:
        `raiseHand(CallCompletionHandler)`, `lowerHand(CallCompletionHandler)`

    - #### raiseHand

          void raiseHand​(CallCompletionHandler handler)

      Called to raise local user's hand on the conference call to get the moderator's attention, who can unmute and hence allow the participant to speak. If the operation is successful, a participant status update notification is reported through the `ActiveParticipantListener` associated with the local user's `ActiveParticipant` object.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getRaiseHandCapability()`, `isHandRaised()`, `lowerHand(CallCompletionHandler)`

    - #### lowerHand

          void lowerHand​(CallCompletionHandler handler)

      Called to lower local user's hand on the conference call to indicate that the user no longer wants to get the moderator's attention. If the operation is successful, a participant status update notification is reported through the `ActiveParticipantListener` associated with the local user's `ActiveParticipant` object.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getLowerHandCapability()`, `isHandRaised()`, `raiseHand(CallCompletionHandler)`

    - #### getRetrieveParticipantListCapability

          Capability getRetrieveParticipantListCapability()

      Returns whether the conference call can be queried to get the list of conference participants.
      Returns:
        Retrieve participant list capability.
      See Also:
        `getParticipants()`

    - #### getParticipants

          java.util.List<ActiveParticipant> getParticipants()

      Returns the participant list for the conference call. Updates to the participant list (add, remove or update) are reported through the `ConferenceListener.onConferenceParticipantsChanged(Conference, DataCollectionChangeType, List)` listener callback registered with the conference object.
      Returns:
        List of participants on the conference call.
      See Also:
        `getRetrieveParticipantListCapability()`, `getPendingParticipants()`, `getDroppedParticipants()`

    - #### getActiveTalkers

          java.util.List<ActiveParticipant> getActiveTalkers()

      Returns the active talkers participant list for the conference call. Updates to the participant list (add, remove or update) are reported through the `ConferenceListener.onConferenceActiveTalkersChanged(Conference, DataCollectionChangeType, List)` listener callback registered with the conference object.
      Returns:
        list of active talker participants on the conference call.
      See Also:
        `getRecentTalkers()`

    - #### getRecentTalkers

          java.util.List<ActiveParticipant> getRecentTalkers()

      Returns the recent talkers participant list for the conference call. Updates to the participant list (add, remove or update) are reported through the `ConferenceListener.onConferenceRecentTalkersChanged(Conference, DataCollectionChangeType, List)` listener callback registered with the conference object.
      Returns:
        list of recent talker participants on the conference call.
      See Also:
        `getActiveTalkers()`

    - #### getPendingParticipants

          java.util.List<PendingParticipant> getPendingParticipants()

      Returns the pending participant list for the conference call. A pending participant is a person who is waiting to join a conference call that is locked. A moderator of the conference call may allow entry of a pending participant into the conference call. During the time that a participant is pending, the same participant could also appear in the active participants list as an `ActiveParticipant` whose "ConnectionStatus" property is set to "Authorizing". When a pending participant is allowed to enter the locked conference call, the corresponding entry is removed from the pending participant list. Subsequently, a corresponding `ActiveParticipant` will change it's state to "connected" in list of conference participants. Updates to the participant list (add, remove or update) are reported through the `ConferenceListener.onConferencePendingParticipantsChanged(Conference, DataCollectionChangeType, List)` listener callback registered with the conference object.
      Returns:
        list of pending participants associated with the conference call.
      See Also:
        `getParticipants()`, `getDroppedParticipants()`

    - #### getDroppedParticipants

          java.util.List<DroppedParticipant> getDroppedParticipants()

      Returns the list of participants who are no longer on the conference call. When an `ActiveParticipant` leaves the call, or is forced out by a moderator, the corresponding entry is removed from the conference roster list, and a new entry is added to the dropped participant list. Updates to the participant list (add, remove or update) are reported through the `ConferenceListener.onConferenceDroppedParticipantsChanged(Conference, DataCollectionChangeType, List)` listener callback registered with the conference object.
      Returns:
        List of dropped participants associated with the conference call.
      See Also:
        `getParticipants()`, `getPendingParticipants()`

    - #### getMuteAllParticipantsCapability

          Capability getMuteAllParticipantsCapability()

      Returns whether local user can mute all participants at once. The capability returns not supported if the conference call does not support this control, or if the local user does not have permission to mute all on the call. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Mute all participants capability.
      See Also:
        `muteAllParticipants(CallCompletionHandler)`

    - #### getUnmuteAllParticipantsCapability

          Capability getUnmuteAllParticipantsCapability()

      Returns whether the local user can unmute all participants at once. The capability returns not supported if the conference call does not support this control, or if the local user does not have permission to unmute all on the call. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Unmute all participants capability.
      See Also:
        `unmuteAllParticipants(CallCompletionHandler)`

    - #### muteAllParticipants

          void muteAllParticipants​(CallCompletionHandler handler)

      Used by a conference moderator to mute all participants on the conference call. Other moderators, lecturers and presenters are not affected by this operation.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getMuteAllParticipantsCapability()`

    - #### unmuteAllParticipants

          void unmuteAllParticipants​(CallCompletionHandler handler)

      Used by a conference moderator to unmute all participants on the conference call.
      Parameters:
        `handler` - `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getUnmuteAllParticipantsCapability()`

    - #### getAddParticipantViaDialoutCapability

          Capability getAddParticipantViaDialoutCapability()

      Returns whether the local user can request the conference server to dial out towards a specified address, for example, to add a new user to the conference call. The capability returns not supported if the conference call does not support the participant dial-out feature, or if the local user does not have permission to initiate dial-out. Conference moderation capabilities are not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Add participant via dial-out capability.
      See Also:
        `addParticipant(String, CallCompletionHandler)`

    - #### addParticipant

          void addParticipant​(java.lang.String participantAddress,
                              CallCompletionHandler handler)

      Add a participant to a call. If the method is called on a 2-party call, the call is escalated to a conference call. This call change is reported via `CallListener`.onCallConferenceStatusChanged() callback. If the method is called on a conference call, the participant is added to the conference call using the dial-out mechanism initiated by the conference server. The method may be called multiple times to add multiple participants to the conference call. When the dial-out is successful, a new `ActiveParticipant` object is added to the conference roster list, and the application is notified through `ConferenceListener` interface registered with this Conference object.
      Parameters:
        `participantAddress` - Participant to be added to the conference call.
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getAddParticipantViaDialoutCapability()`

    - #### getAddParticipantFromCallCapability

          Capability getAddParticipantFromCallCapability​(Call callToAdd)

      Returns whether the local user can request the conference server to add a participant from a specified call to current call, for example, to add a new user to the conference call. The capability returns not supported if the conference call does not support the merge feature, or if the local user does not have permission to initiate it.
      Parameters:
        `callToAdd` - Call to be merged to the conference call.
      Returns:
        Add participant from call capability.
      See Also:
        `addParticipantFromCall(Call, CallCompletionHandler)`

    - #### addParticipantFromCall

          void addParticipantFromCall​(Call existingCall,
                                      CallCompletionHandler handler)

      If the method is called on a 2-party call, the two calls are merged together to create a conference call. This call status change is reported via `CallListener`.onCallConferenceStatusChanged() callback. If addParticipantFromCall() is called on a conference call, the input argument call is transferred over to the conference call represented by this object. If the user wants to create a conference call by merging multiple existing calls, addParticipantFromCall(call) can be called multiple times. For each successful addition, a new `ActiveParticipant` object is added to the conference roster list, and the application is notified through `ConferenceListener` interface registered with this Conference object.
      Parameters:
        `existingCall` - Call to be transferred over to the conference call.
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.

    - #### getAddTerminalIPAddressViaDialoutCapability

          Capability getAddTerminalIPAddressViaDialoutCapability()

      Returns whether the local user can request the conference server to dial out towards a terminal IP address to add a terminal as a new user to the conference call. The capability returns not supported if the conference call does not support the terminal dial-out feature, or if the local user does not have permission to initiate dial-out.
      Returns:
        Add terminal IP address via dial-out capability.
      See Also:
        `addTerminal(String, CallCompletionHandler)`

    - #### addTerminal

          void addTerminal​(java.lang.String terminalIPAddress,
                           CallCompletionHandler handler)

      Add a terminal to a conference call by terminal IP address. The terminal is added using bridge-assisted dial-out. The method may be called multiple times to add multiple terminals to the conference call. If the dial-out is successful, a new `ActiveParticipant` object is added to the conference roster list. The application is notified through `ConferenceListener` interface registered with this Conference object. In order to cancel dial-out terminal please use the method removeParticipant(ActiveParticipant, CallCompletionHandler)
      Parameters:
        `terminalIPAddress` - Terminal IP address to add the terminal to the conference call.
        `handler` - The `CallCompletionHandler` object for this operation. Operation success or failure is reported through this handler.
      See Also:
        `getAddTerminalIPAddressViaDialoutCapability()`

    - #### getRemoveSelectParticipantCapability

          Capability getRemoveSelectParticipantCapability()

      Returns whether the local user can specify a participant to be removed from the call. The capability returns not supported if the conference call does not support specification of a participant for removal, or if the local user does not have permission to select and drop a participant from the call.
      Returns:
        Remove specified participant capability.
      See Also:
        `removeParticipant(ActiveParticipant, CallCompletionHandler)`

    - #### removeParticipant

          void removeParticipant​(ActiveParticipant participant,
                                 CallCompletionHandler handler)

      Initiates removal of the selected participant from the conference call. The method call is not successful if this is a two party call or if the server returns an error. For each successful removal, the corresponding `ActiveParticipant` object is removed from the conference roster list, and the application is notified through `ConferenceListener` interface registered with this Conference object.
      Parameters:
        `participant` - Participant to be removed from the call
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getRemoveSelectParticipantCapability()`

    - #### getRemoveLastParticipantCapability

          Capability getRemoveLastParticipantCapability()

      Returns whether the last participant can be removed without indicating the participant's ID. This is only supported in Avaya Communication Manager environment.
      Returns:
        Remove last participant capability.
      See Also:
        `removeLastParticipant(CallCompletionHandler)`

    - #### removeLastParticipant

          void removeLastParticipant​(CallCompletionHandler handler)

      Removes the last participant that was added to a conference call either locally or remotely. This method is only supported on conference systems that do not support conference roster list. Calling this method for a conference call that supports conference roster information results in error through the supplied handler object. This method can only be used for conference calls where getRemoveLastParticipantCapability() indicates that this operation is supported. If, as a result of removing the last party, the participant count goes down to 2, the `Call` object transition to a 2-party call. In this case, `CallListener`.onCallConferenceStatusChanged() is called to report the conference status change.
      Parameters:
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `getRemoveLastParticipantCapability()`

    - #### getAcceptDenyPendingParticipantCapability

          Capability getAcceptDenyPendingParticipantCapability()

      Returns whether the local user can accept or deny a waiting participant's entry to the locked conference. The capability returns not supported if the conference call does not support the feature where a user can request entry to a conference call that is locked, or if the local user does not have permission to accept/deny a pending participant's entry request, or if there is no one waiting to be admitted to the call. Accept\Deny pending participant capability is not supported when the client is used in shared control mode. See `SharedControlService`
      Returns:
        Accept\Deny pending participant capability.
      See Also:
        `PendingParticipant`

    - #### getSignInCapability

          Capability getSignInCapability()

      Returns whether local user can sign in as named user in current conference session.
      Returns:
        capability information.

    - #### sendRequestToEnterLockedConference

          void sendRequestToEnterLockedConference​(CallCompletionHandler handler)

      Request for permission to enter a locked conference call. This is preceded by onConferencePermissionToEnterLockedConferenceRequired() call to the application. If the user decides to request permission to enter the locked conference call, this method should be called. If the user decides not to request permission from the moderator, end() should be called to end local user's connection to the conference call.
      Parameters:
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.

    - #### sendPasscode

          void sendPasscode​(java.lang.String passcode,
                            CallCompletionHandler handler)

      Request for admission to enter a conference call that is passcode-protected. This is preceded by onConferencePasscodeRequired() call to the application. If the user provides the passcode to enter the conference call, this method should be called to provide the passcode to the conference server. If the user does not want to provide the passcode, end() should be called to end the local endpoint's request to enter the conference call.
      Parameters:
        `passcode` - Admission passcode.
        `handler` - The `CallCompletionHandler` object that wants to learn about the result of the operation, i.e., whether it was successful.
      See Also:
        `isPasscodeRequiredToEnterConference()`

    - #### isEventConference

          boolean isEventConference()

      Indicates whether the call is an event conference or a regular conference. Event conference is a large meeting (up to 2000 active participants) which is mainly used for large events and training. See `ConferenceListener.onEventConferenceStatusChanged(Conference, boolean)` listener callback registered with the conference object.
      Returns:
        True if the conference has Event type, false for regular type.