NotificationService

The NotificationService allows an application to subscribe to and unsubscribe from notifications related to:

The ConferenceStatusNotificationEvent informs about the conference status.

The NotificationService also allows inviting participants to a conference.

Typical application workflow for the inviter:

The application calls the invite method to invite specific participants to a conference. The application can also call the inviteWithPermissions method that includes participants' permissions, which allow conference participants to perform a specific set of actions within a protected conference.

Typical application workflow for the receiver:

1. The application calls the register method to register the effective notification mode.

2. The application calls the register method to customize notifications. This method registers filters which reject specific invitations.

3. The application calls the setNotificationTokenProvider method to change the notification provider. The getNotificationTokenProvider method checks if the INotificationTokeProvider model is registered to the SDK.

4. Optionally, the application can change the notification management mode into the enforcedNotificationMode by calling the setEnforcedNotificationMode method.

5. The application calls the InvitationBundle constructor from the InvitationBundle model to transform notifications.

6. The application calls the onInvitationReceived or onInvitationCanceledReceived method to show the proper notification.

Participants who do not wish to participate at a conference can decline the conference invitation.

For more information about the NotificationService, see the Using notifications article.

Available in the package com.voxeet.sdk.services.NotificationService.

Methods

subscribe

subscribe(@NonNull subscriptions: BaseSubscription): Promise<Boolean>

Turns on the specific subscription.

Parameters

NameTypeDescription
subscriptionsBaseSubscriptionnon null list of subscriptions

Returns: Promise<Boolean> - a flag indicating if the subscription is possible


subscribe

subscribe(@NonNull subscriptions: List<BaseSubscription>): Promise<Boolean>

Turns on the specific subscription.

Parameters

NameTypeDescription
subscriptionsList<BaseSubscription>non null list of subscriptions

Returns: Promise<Boolean> - a flag indicating if the subscription is possible


unsubscribe

unsubscribe(@NonNull subscriptions: BaseSubscription): Promise<Boolean>

Turns off the specific subscription.

Parameters

NameTypeDescription
subscriptionsBaseSubscriptionnon null list of Subscription

Returns: Promise<Boolean> - a flag indicating if the operation is possible


unsubscribe

unsubscribe(@NonNull subscriptions: List<BaseSubscription>): Promise<Boolean>

Turns off the specific subscription.

Parameters

NameTypeDescription
subscriptionsList<BaseSubscription>non null list of Subscription

Returns: Promise<Boolean> - a flag indicating if the operation is possible


invite

invite(@NonNull conference: Conference, @NonNull participantOptions: List<ParticipantInfo>): Promise<List>

Notifies conference participants about a conference invitation.

The Dolby.io Communications APIs offer the invite and inviteWithPermissions method. The inviteWithPermissions method includes participants' permissions, which allow conference participants to perform a specific set of actions within a protected conference.

Both invite methods include the Conference object:

  • In the case of inviting participants to a conference that is not protected, inviters can invite participants to any conference.
  • In the case of inviting participants to a protected conference, inviters can invite participants only to the current conference. Therefore, if you wish to invite participants to a protected conference, include in the invitation the Conference object related to the current conference.

For more information about invitations, see the Inviting Participants article.

Parameters

NameTypeDescription
conferenceConferencenon null The conference object.
participantOptionsList<ParticipantInfo>non null Information about the invited application users.

Returns: @NonNull Promise<List> - a non null promise to resolve.


inviteWithPermissions

inviteWithPermissions(@NonNull conference: Conference, @NonNull participantsInvited: List<ParticipantInvited>): Promise<List>

Notifies conference participants about a conference invitation. This method includes participants' permissions.

Participants who have permission to invite additional participants to a conference can also use the inviteWithPermissions method. In the invitation, inviters can only grant permissions that the inviters have. For example, a participant who does not have permission to record a conference can only invite new participants who also cannot record this conference.

Protected conferences require assigning proper conference permissions to all invited participants. However, the inviter can invite participants to the protected conference without specifying the participants' permissions. If permissions are not specified, the platform assigns the default permissions, which include Join, SendAudio, SendVideo, ShareScreen, ShareVideo, ShareFile, SendMessage, Record, and Stream.

If you wish to invite participants to a protected conference, use the invite method after joining the conference.

The inviteWithPermissions method includes the Conference object. In the case of inviting participants to a protected conference, inviters can invite participants only to the current conference. Therefore, the invitation has to include the Conference object related to the current conference.

For more information about invitations, see the Inviting Participants article.

Parameters

NameTypeDescription
conferenceConferencenon null The conference object.
participantsInvitedList<ParticipantInvited>non null Information about the invited application users.

Returns: @NonNull Promise<List> - a non null promise to resolve.


decline

decline(@NonNull conference: Conference): Promise<Boolean>

Declines the conference invitation.

Parameters

NameTypeDescription
conferenceConferencenon null the conference to decline the invitation from

Returns: @NonNull Promise<Boolean> - the promise to resolve.

Events

ActiveParticipantsEvent

Emitted when a list of active participants changes. The event informs how many participants are present at a conference.

Available in the package com.voxeet.sdk.push.center.subscription.event.ActiveParticipantsEvent.

ConferenceCreatedNotificationEvent

Emitted when the subscribed conference has been created.

Available in the package com.voxeet.sdk.push.center.subscription.event.ConferenceCreatedNotificationEvent.

ConferenceEndedNotificationEvent

Emitted when a subscribed conference has ended.

Available in the package com.voxeet.sdk.push.center.subscription.event.ConferenceEndedNotificationEvent.

ConferenceStatusNotificationEvent

Informs the application about the status of the subscribed conference.

Available in the package com.voxeet.sdk.services.notification.events.ConferenceStatusNotificationEvent.

participants (List)

InvitationReceivedNotificationEvent

Emitted when the invitation has been received.

Available in the package com.voxeet.sdk.push.center.subscription.event.InvitationReceivedNotificationEvent.

invitation (InvitationBundle)

The invitation bundle

ParticipantJoinedNotificationEvent

Emitted when a participant has joined a specific conference.

Available in the package com.voxeet.sdk.push.center.subscription.event.ParticipantJoinedNotificationEvent.

ParticipantLeftNotificationEvent

Emitted when a participant has left a specific conference.

Available in the package com.voxeet.sdk.push.center.subscription.event.ParticipantLeftNotificationEvent.