us.zoom.sdk

## Interface InMeetingService

-     public interface InMeetingService

  Zoom in-meeting service. Note: All the interfaces must be called in meeting process

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `activeShareUserID()` This method is used to get active share user id in the meeting.
    `long` | `activeVideoUserID()` This method is used to get active video user id in the meeting.
    `void` | `addListener(InMeetingServiceListener listener)` Register a listener for in-meeting event
    `boolean` | `askAttendeeStartVideo(long userId)` This method is used for host to adk the user to start video
    `boolean` | `changeName(java.lang.String inputName, long userId)` This method is used to change user's display name in meeting.
    `java.lang.String` | `getCurrentMeetingID()` Get current meeting unique ID, the format is just like DVLObefSZizM0xQLhtrCQ==
    `java.lang.String` | `getCurrentMeetingInviteEmailContent()` Get current meeting's invitation email content
    `java.lang.String` | `getCurrentMeetingInviteEmailSubject()` Get current meeting's invitation email subject
    `long` | `getCurrentMeetingNumber()` Get current meeting number, the format is just like 123456789
    `java.lang.String` | `getCurrentMeetingUrl()` Get current meeting's URL
    `InMeetingUserList` | `getInMeetingUserList()` Note: Don't call this interface frequently.
    `long` | `getMyUserID()` This method is used to get my user id in the meeting.
    `InMeetingUserInfo` | `getMyUserInfo()` This method is used to get my user info in the meeting.
    `InMeetingUserInfo` | `getUserInfoById(long userId)` This method is used to get user info by certain userId
    `boolean` | `isHostUser(long userId)` This method is used to check the user is host or not.
    `boolean` | `isMeetingHost()` Check if current user is the host of current meeting or not
    `boolean` | `isMeetingLocked()` This method is used to tell whether the meeting is locked by host or not.
    `boolean` | `isMuteOnEntryOn()` This method is used to check whether MuteOnEntry is on in the meeting.
    `boolean` | `isMyself(long userId)` This method is used to check the user is myself or not.
    `boolean` | `isPlayChimeOn()` This method is used to check PlayChime or not while user join/leave meeting.
    `boolean` | `isSameUser(long user1, long user2)` This method is used to judge the same user.
    `boolean` | `isShareLocked()` This method is used to tell whether the screen share is locked by host or not.
    `boolean` | `isUserVideoSpotLighted(long userId)` This method is used to check the user's video spotlighted or not.
    `boolean` | `lowerHand(long userId)` This method is used to lower user's hand.
    `boolean` | `makeHost(long userId)` This method is used to assign host role to another user in the meeting.
    `boolean` | `muteAllAttendeeAudio(boolean allowUnmuteSelf)` This method is used for host to mute all atteedees' audio.
    `boolean` | `muteAttendeeAudio(boolean isMute, long userId)` This method is used for host to mute/umute the user's audio.
    `boolean` | `raiseMyHand()` This method is used to raise my hand.
    `void` | `removeListener(InMeetingServiceListener listener)` Unregister a listener
    `boolean` | `removeUser(long userId)` This method is used to remove a user in the meeting.
    `boolean` | `setMuteOnEntry(boolean on)` This method is used to set whether MuteOnEntry is on in the meeting.
    `boolean` | `setPlayChimeOnOff(boolean on)` This method is used to set PlayChime or not while user join/leave meeting.
    `boolean` | `spotLightVideo(boolean on, long userId)` This method is used to spotlight the user's video or not.
    `boolean` | `stopAttendeeVideo(long userId)` This method is used for host to mute the user's video
    `boolean` | `unmuteAllAttendeeAudio()` This method is used for host to unmute all atteedees' audio.

- - ### Method Detail

    - #### addListener

          void addListener(InMeetingServiceListener listener)

      Register a listener for in-meeting event
      Parameters:
        `listener` - the listener instance

    - #### removeListener

          void removeListener(InMeetingServiceListener listener)

      Unregister a listener
      Parameters:
        `listener` - the listener instance

    - #### isMeetingLocked

          boolean isMeetingLocked()

      This method is used to tell whether the meeting is locked by host or not.
      Returns:
        true, the meeting has been locked by host.

    - #### changeName

          boolean changeName(java.lang.String inputName,
                             long userId)

      This method is used to change user's display name in meeting.
      Parameters:
        `inputName,` - the display name which will be used in meeting.
        `userId,` - user's ID in meeting.
      Returns:
        Api call success or not

    - #### isShareLocked

          boolean isShareLocked()

      This method is used to tell whether the screen share is locked by host or not.
      Returns:
        YES, the screen share has been locked by host.

    - #### getInMeetingUserList

          InMeetingUserList getInMeetingUserList()

      Note: Don't call this interface frequently. This method will return all the users in the meeting.
      Returns:
        InMeetingUserList object.

    - #### getMyUserID

          long getMyUserID()

      This method is used to get my user id in the meeting.
      Returns:
        my user id.

    - #### getMyUserInfo

          InMeetingUserInfo getMyUserInfo()

      This method is used to get my user info in the meeting.
      Returns:
        my user info, a InMeetingUserInfo object.

    - #### getUserInfoById

          InMeetingUserInfo getUserInfoById(long userId)

      This method is used to get user info by certain userId
      Parameters:
        `userId` - User id
      Returns:
        user info, a InMeetingUserInfo object.

    - #### isUserVideoSpotLighted

          boolean isUserVideoSpotLighted(long userId)

      This method is used to check the user's video spotlighted or not.
      Parameters:
        `userId,` - the user id in meeting.
      Returns:
        user video is spotlighted or not

    - #### spotLightVideo

          boolean spotLightVideo(boolean on,
                                 long userId)

      This method is used to spotlight the user's video or not.
      Parameters:
        `on,` - if true to spotlight user's video; if NO to cancel spotlight user's video.
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not

    - #### makeHost

          boolean makeHost(long userId)

      This method is used to assign host role to another user in the meeting.
      Parameters:
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not *Note*: the user should not be myself, and can assign the host role .

    - #### removeUser

          boolean removeUser(long userId)

      This method is used to remove a user in the meeting.
      Parameters:
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not

    - #### setMuteOnEntry

          boolean setMuteOnEntry(boolean on)

      This method is used to set whether MuteOnEntry is on in the meeting.
      Parameters:
        `on` - means that MuteOnEntry is on.
      Returns:
        Api call success or not

    - #### isMuteOnEntryOn

          boolean isMuteOnEntryOn()

      This method is used to check whether MuteOnEntry is on in the meeting.
      Returns:
        true means that MuteOnEntry is on.

    - #### setPlayChimeOnOff

          boolean setPlayChimeOnOff(boolean on)

      This method is used to set PlayChime or not while user join/leave meeting.
      Parameters:
        `on` - means that PlayChime is on.
      Returns:
        Api call success or not

    - #### isPlayChimeOn

          boolean isPlayChimeOn()

      This method is used to check PlayChime or not while user join/leave meeting.
      Returns:
        true means that PlayChime is on.

    - #### activeVideoUserID

          long activeVideoUserID()

      This method is used to get active video user id in the meeting.
      Returns:
        active video user id.

    - #### activeShareUserID

          long activeShareUserID()

      This method is used to get active share user id in the meeting.
      Returns:
        active share user id.

    - #### isSameUser

          boolean isSameUser(long user1,
                             long user2)

      This method is used to judge the same user.
      Parameters:
        `user1` - the user id in meeting.
        `user2` - the user id in meeting.
      Returns:
        is same user or not

    - #### isHostUser

          boolean isHostUser(long userId)

      This method is used to check the user is host or not.
      Parameters:
        `userId` - User id
      Returns:
        true means host.

    - #### isMyself

          boolean isMyself(long userId)

      This method is used to check the user is myself or not.
      Parameters:
        `userId` - User id
      Returns:
        true means myself.

    - #### raiseMyHand

          boolean raiseMyHand()

      This method is used to raise my hand.
      Returns:
        true means api call success.

    - #### lowerHand

          boolean lowerHand(long userId)

      This method is used to lower user's hand.
      Parameters:
        `userId` - User id
      Returns:
        true api call success

    - #### isMeetingHost

          boolean isMeetingHost()

      Check if current user is the host of current meeting or not
      Returns:
        true if current user is the host of current meeting

    - #### getCurrentMeetingID

          java.lang.String getCurrentMeetingID()

      Get current meeting unique ID, the format is just like DVLObefSZizM0xQLhtrCQ==
      Returns:
        current meeting's ID

    - #### getCurrentMeetingNumber

          long getCurrentMeetingNumber()

      Get current meeting number, the format is just like 123456789
      Returns:
        current meeting's number

    - #### getCurrentMeetingUrl

          java.lang.String getCurrentMeetingUrl()

      Get current meeting's URL
      Returns:
        current meeting's URL

    - #### getCurrentMeetingInviteEmailSubject

          java.lang.String getCurrentMeetingInviteEmailSubject()

      Get current meeting's invitation email subject
      Returns:
        current meeting's invitation email subject

    - #### getCurrentMeetingInviteEmailContent

          java.lang.String getCurrentMeetingInviteEmailContent()

      Get current meeting's invitation email content
      Returns:
        current meeting's invitation email content

    - #### stopAttendeeVideo

          boolean stopAttendeeVideo(long userId)

      This method is used for host to mute the user's video
      Parameters:
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not

    - #### askAttendeeStartVideo

          boolean askAttendeeStartVideo(long userId)

      This method is used for host to adk the user to start video
      Parameters:
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not

    - #### muteAttendeeAudio

          boolean muteAttendeeAudio(boolean isMute,
                                    long userId)

      This method is used for host to mute/umute the user's audio.
      Parameters:
        `isMute,` - if true to mute user's audio; if NO to umute user's audio.
        `userId,` - the user id in meeting.
      Returns:
        Api call success or not

    - #### muteAllAttendeeAudio

          boolean muteAllAttendeeAudio(boolean allowUnmuteSelf)

      This method is used for host to mute all atteedees' audio.
      Parameters:
        `allowUnmuteSelf,` - if allow attendee ummute audio by themselves
      Returns:
        Api call success or not

    - #### unmuteAllAttendeeAudio

          boolean unmuteAllAttendeeAudio()

      This method is used for host to unmute all atteedees' audio.
      Returns:
        Api call success or not