@ale-rainbow/web-sdk 5.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +44 -0
- package/lib/index.d.ts +8 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +501 -0
- package/lib/index.js.map +7 -0
- package/lib/libs/index.d.ts +3 -0
- package/lib/libs/index.d.ts.map +1 -0
- package/lib/libs/strophe/strophe-plugin.d.ts +13 -0
- package/lib/libs/strophe/strophe-plugin.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.jingle.d.ts +35 -0
- package/lib/libs/strophe/strophe.jingle.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.jingle.sdp.d.ts +44 -0
- package/lib/libs/strophe/strophe.jingle.sdp.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.jingle.session.d.ts +624 -0
- package/lib/libs/strophe/strophe.jingle.session.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.jingle.session.stats.d.ts +791 -0
- package/lib/libs/strophe/strophe.jingle.session.stats.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.lastactivity.d.ts +9 -0
- package/lib/libs/strophe/strophe.lastactivity.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.mam.d.ts +11 -0
- package/lib/libs/strophe/strophe.mam.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.ping.d.ts +39 -0
- package/lib/libs/strophe/strophe.ping.d.ts.map +1 -0
- package/lib/libs/strophe/strophe.rsm.d.ts +24 -0
- package/lib/libs/strophe/strophe.rsm.d.ts.map +1 -0
- package/lib/libs/strophe/types.d.ts +23 -0
- package/lib/libs/strophe/types.d.ts.map +1 -0
- package/lib/models/authSettings.model.d.ts +38 -0
- package/lib/models/authSettings.model.d.ts.map +1 -0
- package/lib/models/bubble.model.d.ts +1114 -0
- package/lib/models/bubble.model.d.ts.map +1 -0
- package/lib/models/bubbleConferenceRecap.model.d.ts +532 -0
- package/lib/models/bubbleConferenceRecap.model.d.ts.map +1 -0
- package/lib/models/call.model.d.ts +1271 -0
- package/lib/models/call.model.d.ts.map +1 -0
- package/lib/models/callLog.model.d.ts +361 -0
- package/lib/models/callLog.model.d.ts.map +1 -0
- package/lib/models/channel.model.d.ts +692 -0
- package/lib/models/channel.model.d.ts.map +1 -0
- package/lib/models/channelMessage.model.d.ts +300 -0
- package/lib/models/channelMessage.model.d.ts.map +1 -0
- package/lib/models/cli.model.d.ts +59 -0
- package/lib/models/cli.model.d.ts.map +1 -0
- package/lib/models/common/context.d.ts +37 -0
- package/lib/models/common/context.d.ts.map +1 -0
- package/lib/models/common/error.d.ts +26 -0
- package/lib/models/common/error.d.ts.map +1 -0
- package/lib/models/common/fileDescriptor.d.ts +317 -0
- package/lib/models/common/fileDescriptor.d.ts.map +1 -0
- package/lib/models/common/filePublicDownload.d.ts +26 -0
- package/lib/models/common/filePublicDownload.d.ts.map +1 -0
- package/lib/models/common/fileViewer.d.ts +20 -0
- package/lib/models/common/fileViewer.d.ts.map +1 -0
- package/lib/models/common/index.d.ts +9 -0
- package/lib/models/common/index.d.ts.map +1 -0
- package/lib/models/common/theme.d.ts +185 -0
- package/lib/models/common/theme.d.ts.map +1 -0
- package/lib/models/common/themeColor.d.ts +47 -0
- package/lib/models/common/themeColor.d.ts.map +1 -0
- package/lib/models/common/userTheme.d.ts +42 -0
- package/lib/models/common/userTheme.d.ts.map +1 -0
- package/lib/models/company-invitation.model.d.ts +42 -0
- package/lib/models/company-invitation.model.d.ts.map +1 -0
- package/lib/models/company.model.d.ts +639 -0
- package/lib/models/company.model.d.ts.map +1 -0
- package/lib/models/contact.model.d.ts +1208 -0
- package/lib/models/contact.model.d.ts.map +1 -0
- package/lib/models/conversation.model.d.ts +768 -0
- package/lib/models/conversation.model.d.ts.map +1 -0
- package/lib/models/customManifest.model.d.ts +82 -0
- package/lib/models/customManifest.model.d.ts.map +1 -0
- package/lib/models/dataChannel.model.d.ts +178 -0
- package/lib/models/dataChannel.model.d.ts.map +1 -0
- package/lib/models/dial-in-phone-numbers.model.d.ts +18 -0
- package/lib/models/dial-in-phone-numbers.model.d.ts.map +1 -0
- package/lib/models/directoryContact.model.d.ts +205 -0
- package/lib/models/directoryContact.model.d.ts.map +1 -0
- package/lib/models/event.model.d.ts +14 -0
- package/lib/models/event.model.d.ts.map +1 -0
- package/lib/models/favorite.model.d.ts +94 -0
- package/lib/models/favorite.model.d.ts.map +1 -0
- package/lib/models/fileDocument.model.d.ts +345 -0
- package/lib/models/fileDocument.model.d.ts.map +1 -0
- package/lib/models/geoLoc.model.d.ts +6 -0
- package/lib/models/geoLoc.model.d.ts.map +1 -0
- package/lib/models/index.d.ts +46 -0
- package/lib/models/index.d.ts.map +1 -0
- package/lib/models/invitation.model.d.ts +88 -0
- package/lib/models/invitation.model.d.ts.map +1 -0
- package/lib/models/invoices.model.d.ts +76 -0
- package/lib/models/invoices.model.d.ts.map +1 -0
- package/lib/models/logEntry.model.d.ts +23 -0
- package/lib/models/logEntry.model.d.ts.map +1 -0
- package/lib/models/message.model.d.ts +400 -0
- package/lib/models/message.model.d.ts.map +1 -0
- package/lib/models/messageAdditionalContent.parsers.d.ts +32 -0
- package/lib/models/messageAdditionalContent.parsers.d.ts.map +1 -0
- package/lib/models/offer.model.d.ts +16 -0
- package/lib/models/offer.model.d.ts.map +1 -0
- package/lib/models/p2pRecap.model.d.ts +372 -0
- package/lib/models/p2pRecap.model.d.ts.map +1 -0
- package/lib/models/paymentMethods.model.d.ts +98 -0
- package/lib/models/paymentMethods.model.d.ts.map +1 -0
- package/lib/models/personalRoutine.model.d.ts +173 -0
- package/lib/models/personalRoutine.model.d.ts.map +1 -0
- package/lib/models/poll.model.d.ts +139 -0
- package/lib/models/poll.model.d.ts.map +1 -0
- package/lib/models/rainbow-auth.model.d.ts +137 -0
- package/lib/models/rainbow-auth.model.d.ts.map +1 -0
- package/lib/models/searchTextConvResults.model.d.ts +30 -0
- package/lib/models/searchTextConvResults.model.d.ts.map +1 -0
- package/lib/models/site.model.d.ts +165 -0
- package/lib/models/site.model.d.ts.map +1 -0
- package/lib/models/subscription.model.d.ts +592 -0
- package/lib/models/subscription.model.d.ts.map +1 -0
- package/lib/models/telephonyConfig.model.d.ts +144 -0
- package/lib/models/telephonyConfig.model.d.ts.map +1 -0
- package/lib/models/telephonyForward.model.d.ts +47 -0
- package/lib/models/telephonyForward.model.d.ts.map +1 -0
- package/lib/models/todo.model.d.ts +103 -0
- package/lib/models/todo.model.d.ts.map +1 -0
- package/lib/models/transcription.model.d.ts +59 -0
- package/lib/models/transcription.model.d.ts.map +1 -0
- package/lib/models/user.model.d.ts +1008 -0
- package/lib/models/user.model.d.ts.map +1 -0
- package/lib/models/userProfileTemplate.model.d.ts +735 -0
- package/lib/models/userProfileTemplate.model.d.ts.map +1 -0
- package/lib/models/usersList.model.d.ts +117 -0
- package/lib/models/usersList.model.d.ts.map +1 -0
- package/lib/models/webConferenceParticipant.model.d.ts +135 -0
- package/lib/models/webConferenceParticipant.model.d.ts.map +1 -0
- package/lib/models/webConferenceSession.model.d.ts +658 -0
- package/lib/models/webConferenceSession.model.d.ts.map +1 -0
- package/lib/models/webinar.model.d.ts +738 -0
- package/lib/models/webinar.model.d.ts.map +1 -0
- package/lib/models/webinarRecap.model.d.ts +118 -0
- package/lib/models/webinarRecap.model.d.ts.map +1 -0
- package/lib/node.d.ts +3 -0
- package/lib/node.d.ts.map +1 -0
- package/lib/node.js +423 -0
- package/lib/node.js.map +7 -0
- package/lib/node.sdk.d.ts +41 -0
- package/lib/node.sdk.d.ts.map +1 -0
- package/lib/plugins/admin.plugin.d.ts +6 -0
- package/lib/plugins/admin.plugin.d.ts.map +1 -0
- package/lib/plugins/bubbleConference.plugin.d.ts +6 -0
- package/lib/plugins/bubbleConference.plugin.d.ts.map +1 -0
- package/lib/plugins/bubbleTag.plugin.d.ts +6 -0
- package/lib/plugins/bubbleTag.plugin.d.ts.map +1 -0
- package/lib/plugins/bubbles.plugin.d.ts +6 -0
- package/lib/plugins/bubbles.plugin.d.ts.map +1 -0
- package/lib/plugins/businessDirectory.plugin.d.ts +6 -0
- package/lib/plugins/businessDirectory.plugin.d.ts.map +1 -0
- package/lib/plugins/callRecorder.plugin.d.ts +6 -0
- package/lib/plugins/callRecorder.plugin.d.ts.map +1 -0
- package/lib/plugins/calllog.plugin.d.ts +6 -0
- package/lib/plugins/calllog.plugin.d.ts.map +1 -0
- package/lib/plugins/calls.plugin.d.ts +6 -0
- package/lib/plugins/calls.plugin.d.ts.map +1 -0
- package/lib/plugins/channels.plugin.d.ts +6 -0
- package/lib/plugins/channels.plugin.d.ts.map +1 -0
- package/lib/plugins/dataChannel.plugin.d.ts +6 -0
- package/lib/plugins/dataChannel.plugin.d.ts.map +1 -0
- package/lib/plugins/deviceManagement.plugin.d.ts +6 -0
- package/lib/plugins/deviceManagement.plugin.d.ts.map +1 -0
- package/lib/plugins/favorites.plugin.d.ts +6 -0
- package/lib/plugins/favorites.plugin.d.ts.map +1 -0
- package/lib/plugins/fileDocument.plugin.d.ts +6 -0
- package/lib/plugins/fileDocument.plugin.d.ts.map +1 -0
- package/lib/plugins/helpCenter.plugin.d.ts +6 -0
- package/lib/plugins/helpCenter.plugin.d.ts.map +1 -0
- package/lib/plugins/index.d.ts +27 -0
- package/lib/plugins/index.d.ts.map +1 -0
- package/lib/plugins/microsoft0365Ad.plugin.d.ts +6 -0
- package/lib/plugins/microsoft0365Ad.plugin.d.ts.map +1 -0
- package/lib/plugins/pbxUsers.plugin.d.ts +6 -0
- package/lib/plugins/pbxUsers.plugin.d.ts.map +1 -0
- package/lib/plugins/personalDirectory.plugin.d.ts +6 -0
- package/lib/plugins/personalDirectory.plugin.d.ts.map +1 -0
- package/lib/plugins/plugin.d.ts +8 -0
- package/lib/plugins/plugin.d.ts.map +1 -0
- package/lib/plugins/polls.plugin.d.ts +6 -0
- package/lib/plugins/polls.plugin.d.ts.map +1 -0
- package/lib/plugins/rpc.plugin.d.ts +6 -0
- package/lib/plugins/rpc.plugin.d.ts.map +1 -0
- package/lib/plugins/telemetry.plugin.d.ts +6 -0
- package/lib/plugins/telemetry.plugin.d.ts.map +1 -0
- package/lib/plugins/telephony.plugin.d.ts +6 -0
- package/lib/plugins/telephony.plugin.d.ts.map +1 -0
- package/lib/plugins/telephonyConfig.plugin.d.ts +6 -0
- package/lib/plugins/telephonyConfig.plugin.d.ts.map +1 -0
- package/lib/plugins/transcription.plugin.d.ts +6 -0
- package/lib/plugins/transcription.plugin.d.ts.map +1 -0
- package/lib/plugins/usersList.plugin.d.ts +6 -0
- package/lib/plugins/usersList.plugin.d.ts.map +1 -0
- package/lib/plugins/virtualBackground.plugin.d.ts +6 -0
- package/lib/plugins/virtualBackground.plugin.d.ts.map +1 -0
- package/lib/plugins/webinar.plugin.d.ts +6 -0
- package/lib/plugins/webinar.plugin.d.ts.map +1 -0
- package/lib/rainbow.sdk.d.ts +309 -0
- package/lib/rainbow.sdk.d.ts.map +1 -0
- package/lib/services/admin/admin-alarm.service.d.ts +42 -0
- package/lib/services/admin/admin-alarm.service.d.ts.map +1 -0
- package/lib/services/admin/admin-company.service.d.ts +167 -0
- package/lib/services/admin/admin-company.service.d.ts.map +1 -0
- package/lib/services/admin/admin-department.service.d.ts +39 -0
- package/lib/services/admin/admin-department.service.d.ts.map +1 -0
- package/lib/services/admin/admin-invitation.service.d.ts +114 -0
- package/lib/services/admin/admin-invitation.service.d.ts.map +1 -0
- package/lib/services/admin/admin-management.service.d.ts +100 -0
- package/lib/services/admin/admin-management.service.d.ts.map +1 -0
- package/lib/services/admin/admin-rvcp.service.d.ts +43 -0
- package/lib/services/admin/admin-rvcp.service.d.ts.map +1 -0
- package/lib/services/admin/admin-site.service.d.ts +64 -0
- package/lib/services/admin/admin-site.service.d.ts.map +1 -0
- package/lib/services/admin/admin-subscription.service.d.ts +135 -0
- package/lib/services/admin/admin-subscription.service.d.ts.map +1 -0
- package/lib/services/admin/admin-tag.service.d.ts +79 -0
- package/lib/services/admin/admin-tag.service.d.ts.map +1 -0
- package/lib/services/admin/admin-user-profile.service.d.ts +76 -0
- package/lib/services/admin/admin-user-profile.service.d.ts.map +1 -0
- package/lib/services/admin/admin-user.service.d.ts +338 -0
- package/lib/services/admin/admin-user.service.d.ts.map +1 -0
- package/lib/services/admin/admin.common.d.ts +40 -0
- package/lib/services/admin/admin.common.d.ts.map +1 -0
- package/lib/services/admin/admin.service.d.ts +138 -0
- package/lib/services/admin/admin.service.d.ts.map +1 -0
- package/lib/services/admin/index.d.ts +14 -0
- package/lib/services/admin/index.d.ts.map +1 -0
- package/lib/services/bot/bot.service.d.ts +121 -0
- package/lib/services/bot/bot.service.d.ts.map +1 -0
- package/lib/services/bubbles/bubble.service.d.ts +889 -0
- package/lib/services/bubbles/bubble.service.d.ts.map +1 -0
- package/lib/services/bubbles/bubbleTag.service.d.ts +132 -0
- package/lib/services/bubbles/bubbleTag.service.d.ts.map +1 -0
- package/lib/services/bubbles/index.d.ts +3 -0
- package/lib/services/bubbles/index.d.ts.map +1 -0
- package/lib/services/call/call.service.d.ts +297 -0
- package/lib/services/call/call.service.d.ts.map +1 -0
- package/lib/services/call/callRecorder.service.d.ts +358 -0
- package/lib/services/call/callRecorder.service.d.ts.map +1 -0
- package/lib/services/call/index.d.ts +3 -0
- package/lib/services/call/index.d.ts.map +1 -0
- package/lib/services/callLog/callLog.service.d.ts +563 -0
- package/lib/services/callLog/callLog.service.d.ts.map +1 -0
- package/lib/services/callLog/index.d.ts +5 -0
- package/lib/services/callLog/index.d.ts.map +1 -0
- package/lib/services/callLog/p2pRecap.service.d.ts +206 -0
- package/lib/services/callLog/p2pRecap.service.d.ts.map +1 -0
- package/lib/services/channels/channel.service.d.ts +626 -0
- package/lib/services/channels/channel.service.d.ts.map +1 -0
- package/lib/services/channels/index.d.ts +3 -0
- package/lib/services/channels/index.d.ts.map +1 -0
- package/lib/services/citrix/citrix.service.d.ts +30 -0
- package/lib/services/citrix/citrix.service.d.ts.map +1 -0
- package/lib/services/citrix/index.d.ts +3 -0
- package/lib/services/citrix/index.d.ts.map +1 -0
- package/lib/services/company/company-directory.service.d.ts +222 -0
- package/lib/services/company/company-directory.service.d.ts.map +1 -0
- package/lib/services/conference/bubbleConference.service.d.ts +1237 -0
- package/lib/services/conference/bubbleConference.service.d.ts.map +1 -0
- package/lib/services/conference/bubbleConferenceRecap.service.d.ts +159 -0
- package/lib/services/conference/bubbleConferenceRecap.service.d.ts.map +1 -0
- package/lib/services/conference/index.d.ts +5 -0
- package/lib/services/conference/index.d.ts.map +1 -0
- package/lib/services/conference/webConferenceHelper.d.ts +25 -0
- package/lib/services/conference/webConferenceHelper.d.ts.map +1 -0
- package/lib/services/conversation/conversation.service.d.ts +723 -0
- package/lib/services/conversation/conversation.service.d.ts.map +1 -0
- package/lib/services/conversation/conversationServiceBulkHistoryHandler.d.ts +39 -0
- package/lib/services/conversation/conversationServiceBulkHistoryHandler.d.ts.map +1 -0
- package/lib/services/conversation/conversationServiceEventHandler.d.ts +78 -0
- package/lib/services/conversation/conversationServiceEventHandler.d.ts.map +1 -0
- package/lib/services/conversation/index.d.ts +3 -0
- package/lib/services/conversation/index.d.ts.map +1 -0
- package/lib/services/core/account.service.d.ts +98 -0
- package/lib/services/core/account.service.d.ts.map +1 -0
- package/lib/services/core/auth.service.d.ts +303 -0
- package/lib/services/core/auth.service.d.ts.map +1 -0
- package/lib/services/core/company.service.d.ts +30 -0
- package/lib/services/core/company.service.d.ts.map +1 -0
- package/lib/services/core/connection.service.d.ts +209 -0
- package/lib/services/core/connection.service.d.ts.map +1 -0
- package/lib/services/core/contact.service.d.ts +617 -0
- package/lib/services/core/contact.service.d.ts.map +1 -0
- package/lib/services/core/country.service.d.ts +66 -0
- package/lib/services/core/country.service.d.ts.map +1 -0
- package/lib/services/core/directorySearch.service.d.ts +305 -0
- package/lib/services/core/directorySearch.service.d.ts.map +1 -0
- package/lib/services/core/event.service.d.ts +31 -0
- package/lib/services/core/event.service.d.ts.map +1 -0
- package/lib/services/core/i18n.service.d.ts +19 -0
- package/lib/services/core/i18n.service.d.ts.map +1 -0
- package/lib/services/core/imageUtils.service.d.ts +15 -0
- package/lib/services/core/imageUtils.service.d.ts.map +1 -0
- package/lib/services/core/index.d.ts +19 -0
- package/lib/services/core/index.d.ts.map +1 -0
- package/lib/services/core/logger.service.d.ts +143 -0
- package/lib/services/core/logger.service.d.ts.map +1 -0
- package/lib/services/core/logging.service.d.ts +51 -0
- package/lib/services/core/logging.service.d.ts.map +1 -0
- package/lib/services/core/main.service.d.ts +124 -0
- package/lib/services/core/main.service.d.ts.map +1 -0
- package/lib/services/core/presenceHelper.service.d.ts +73 -0
- package/lib/services/core/presenceHelper.service.d.ts.map +1 -0
- package/lib/services/core/profile.service.d.ts +453 -0
- package/lib/services/core/profile.service.d.ts.map +1 -0
- package/lib/services/core/settings.service.d.ts +82 -0
- package/lib/services/core/settings.service.d.ts.map +1 -0
- package/lib/services/core/userInfo.service.d.ts +25 -0
- package/lib/services/core/userInfo.service.d.ts.map +1 -0
- package/lib/services/core/userNetwork.service.d.ts +171 -0
- package/lib/services/core/userNetwork.service.d.ts.map +1 -0
- package/lib/services/core/xmpp.service.d.ts +99 -0
- package/lib/services/core/xmpp.service.d.ts.map +1 -0
- package/lib/services/dataChannel/dataChannel.service.d.ts +102 -0
- package/lib/services/dataChannel/dataChannel.service.d.ts.map +1 -0
- package/lib/services/dataChannel/index.d.ts +3 -0
- package/lib/services/dataChannel/index.d.ts.map +1 -0
- package/lib/services/deviceManagement/deviceEchoFilter.d.ts +86 -0
- package/lib/services/deviceManagement/deviceEchoFilter.d.ts.map +1 -0
- package/lib/services/deviceManagement/deviceManagement.service.d.ts +290 -0
- package/lib/services/deviceManagement/deviceManagement.service.d.ts.map +1 -0
- package/lib/services/deviceManagement/index.d.ts +2 -0
- package/lib/services/deviceManagement/index.d.ts.map +1 -0
- package/lib/services/deviceManagement/webHidManager.service.d.ts +616 -0
- package/lib/services/deviceManagement/webHidManager.service.d.ts.map +1 -0
- package/lib/services/directory/directory.service.d.ts +108 -0
- package/lib/services/directory/directory.service.d.ts.map +1 -0
- package/lib/services/directory/index.d.ts +3 -0
- package/lib/services/directory/index.d.ts.map +1 -0
- package/lib/services/directory/office365ad.service.d.ts +74 -0
- package/lib/services/directory/office365ad.service.d.ts.map +1 -0
- package/lib/services/directory/personal-directory.service.d.ts +425 -0
- package/lib/services/directory/personal-directory.service.d.ts.map +1 -0
- package/lib/services/directory/phonebook.service.d.ts +43 -0
- package/lib/services/directory/phonebook.service.d.ts.map +1 -0
- package/lib/services/event-mixin.d.ts +75 -0
- package/lib/services/event-mixin.d.ts.map +1 -0
- package/lib/services/favorites/favorites.service.d.ts +313 -0
- package/lib/services/favorites/favorites.service.d.ts.map +1 -0
- package/lib/services/favorites/index.d.ts +3 -0
- package/lib/services/favorites/index.d.ts.map +1 -0
- package/lib/services/fileDocument/fileDocument.service.d.ts +229 -0
- package/lib/services/fileDocument/fileDocument.service.d.ts.map +1 -0
- package/lib/services/fileDocument/index.d.ts +5 -0
- package/lib/services/fileDocument/index.d.ts.map +1 -0
- package/lib/services/files/fileDescriptorEventHandler.service.d.ts +18 -0
- package/lib/services/files/fileDescriptorEventHandler.service.d.ts.map +1 -0
- package/lib/services/files/fileServer.service.d.ts +268 -0
- package/lib/services/files/fileServer.service.d.ts.map +1 -0
- package/lib/services/files/fileStorage.service.d.ts +426 -0
- package/lib/services/files/fileStorage.service.d.ts.map +1 -0
- package/lib/services/helpcenter/helpCenter.service.d.ts +207 -0
- package/lib/services/helpcenter/helpCenter.service.d.ts.map +1 -0
- package/lib/services/helpcenter/index.d.ts +4 -0
- package/lib/services/helpcenter/index.d.ts.map +1 -0
- package/lib/services/helpcenter/whatsNew.service.d.ts +47 -0
- package/lib/services/helpcenter/whatsNew.service.d.ts.map +1 -0
- package/lib/services/horizon/horizon.service.d.ts +31 -0
- package/lib/services/horizon/horizon.service.d.ts.map +1 -0
- package/lib/services/horizon/index.d.ts +3 -0
- package/lib/services/horizon/index.d.ts.map +1 -0
- package/lib/services/index.d.ts +35 -0
- package/lib/services/index.d.ts.map +1 -0
- package/lib/services/launcher/config/sdkLaunchConfig.d.ts +8 -0
- package/lib/services/launcher/config/sdkLaunchConfig.d.ts.map +1 -0
- package/lib/services/localTranslation/chromeTranslation.engine.d.ts +79 -0
- package/lib/services/localTranslation/chromeTranslation.engine.d.ts.map +1 -0
- package/lib/services/localTranslation/index.d.ts +6 -0
- package/lib/services/localTranslation/index.d.ts.map +1 -0
- package/lib/services/localTranslation/localTranslation.service.d.ts +129 -0
- package/lib/services/localTranslation/localTranslation.service.d.ts.map +1 -0
- package/lib/services/localTranslation/translationEngine.d.ts +81 -0
- package/lib/services/localTranslation/translationEngine.d.ts.map +1 -0
- package/lib/services/metrics/analytics.service.d.ts +63 -0
- package/lib/services/metrics/analytics.service.d.ts.map +1 -0
- package/lib/services/metrics/index.d.ts +2 -0
- package/lib/services/metrics/index.d.ts.map +1 -0
- package/lib/services/notifications/index.d.ts +2 -0
- package/lib/services/notifications/index.d.ts.map +1 -0
- package/lib/services/notifications/notificationCenter.service.d.ts +178 -0
- package/lib/services/notifications/notificationCenter.service.d.ts.map +1 -0
- package/lib/services/notifications/notificationsViewer.service.d.ts +46 -0
- package/lib/services/notifications/notificationsViewer.service.d.ts.map +1 -0
- package/lib/services/personalRoutines/personal-routines.service.d.ts +159 -0
- package/lib/services/personalRoutines/personal-routines.service.d.ts.map +1 -0
- package/lib/services/polls/index.d.ts +2 -0
- package/lib/services/polls/index.d.ts.map +1 -0
- package/lib/services/polls/polls.service.d.ts +139 -0
- package/lib/services/polls/polls.service.d.ts.map +1 -0
- package/lib/services/ringing/index.d.ts +2 -0
- package/lib/services/ringing/index.d.ts.map +1 -0
- package/lib/services/ringing/ringing.service.d.ts +535 -0
- package/lib/services/ringing/ringing.service.d.ts.map +1 -0
- package/lib/services/rpc/index.d.ts +2 -0
- package/lib/services/rpc/index.d.ts.map +1 -0
- package/lib/services/rpc/rpc.service.d.ts +75 -0
- package/lib/services/rpc/rpc.service.d.ts.map +1 -0
- package/lib/services/service.d.ts +9 -0
- package/lib/services/service.d.ts.map +1 -0
- package/lib/services/speechRecognitionService/speechRecognition.service.d.ts +87 -0
- package/lib/services/speechRecognitionService/speechRecognition.service.d.ts.map +1 -0
- package/lib/services/subscription/index.d.ts +4 -0
- package/lib/services/subscription/index.d.ts.map +1 -0
- package/lib/services/subscription/invoices.service.d.ts +78 -0
- package/lib/services/subscription/invoices.service.d.ts.map +1 -0
- package/lib/services/subscription/paymentMethods.service.d.ts +164 -0
- package/lib/services/subscription/paymentMethods.service.d.ts.map +1 -0
- package/lib/services/subscription/subscription.service.d.ts +510 -0
- package/lib/services/subscription/subscription.service.d.ts.map +1 -0
- package/lib/services/support/index.d.ts +2 -0
- package/lib/services/support/index.d.ts.map +1 -0
- package/lib/services/support/support.model.d.ts +143 -0
- package/lib/services/support/support.model.d.ts.map +1 -0
- package/lib/services/support/support.service.d.ts +162 -0
- package/lib/services/support/support.service.d.ts.map +1 -0
- package/lib/services/telemetry/index.d.ts +3 -0
- package/lib/services/telemetry/index.d.ts.map +1 -0
- package/lib/services/telemetry/jsonRPC.service.d.ts +25 -0
- package/lib/services/telemetry/jsonRPC.service.d.ts.map +1 -0
- package/lib/services/telemetry/telemetry.service.d.ts +22 -0
- package/lib/services/telemetry/telemetry.service.d.ts.map +1 -0
- package/lib/services/telephony/index.d.ts +4 -0
- package/lib/services/telephony/index.d.ts.map +1 -0
- package/lib/services/telephony/supervision.service.d.ts +277 -0
- package/lib/services/telephony/supervision.service.d.ts.map +1 -0
- package/lib/services/telephony/telephony.service.d.ts +1476 -0
- package/lib/services/telephony/telephony.service.d.ts.map +1 -0
- package/lib/services/telephony/telephonyCcdAgent.service.d.ts +63 -0
- package/lib/services/telephony/telephonyCcdAgent.service.d.ts.map +1 -0
- package/lib/services/telephony/telephonyHybridEventHandler.d.ts +360 -0
- package/lib/services/telephony/telephonyHybridEventHandler.d.ts.map +1 -0
- package/lib/services/telephony/telephonyKeys.service.d.ts +86 -0
- package/lib/services/telephony/telephonyKeys.service.d.ts.map +1 -0
- package/lib/services/telephony/telephonySipWise.service.d.ts +543 -0
- package/lib/services/telephony/telephonySipWise.service.d.ts.map +1 -0
- package/lib/services/telephony/telephonySipWiseEventHandler.d.ts +462 -0
- package/lib/services/telephony/telephonySipWiseEventHandler.d.ts.map +1 -0
- package/lib/services/telephonyConfig/index.d.ts +3 -0
- package/lib/services/telephonyConfig/index.d.ts.map +1 -0
- package/lib/services/telephonyConfig/telephonyConfig.service.d.ts +150 -0
- package/lib/services/telephonyConfig/telephonyConfig.service.d.ts.map +1 -0
- package/lib/services/todo/todo.service.d.ts +358 -0
- package/lib/services/todo/todo.service.d.ts.map +1 -0
- package/lib/services/transcription/index.d.ts +2 -0
- package/lib/services/transcription/index.d.ts.map +1 -0
- package/lib/services/transcription/liveTranscription.service.d.ts +94 -0
- package/lib/services/transcription/liveTranscription.service.d.ts.map +1 -0
- package/lib/services/ulrMetadata/urlMetadata.service.d.ts +51 -0
- package/lib/services/ulrMetadata/urlMetadata.service.d.ts.map +1 -0
- package/lib/services/users/index.d.ts +3 -0
- package/lib/services/users/index.d.ts.map +1 -0
- package/lib/services/users/user.service.d.ts +146 -0
- package/lib/services/users/user.service.d.ts.map +1 -0
- package/lib/services/users/usersLists.service.d.ts +239 -0
- package/lib/services/users/usersLists.service.d.ts.map +1 -0
- package/lib/services/utilities/browserDatabase.service.d.ts +69 -0
- package/lib/services/utilities/browserDatabase.service.d.ts.map +1 -0
- package/lib/services/utilities/errorHelper.service.d.ts +24 -0
- package/lib/services/utilities/errorHelper.service.d.ts.map +1 -0
- package/lib/services/utilities/index.d.ts +4 -0
- package/lib/services/utilities/index.d.ts.map +1 -0
- package/lib/services/utilities/utilities.service.d.ts +74 -0
- package/lib/services/utilities/utilities.service.d.ts.map +1 -0
- package/lib/services/virtualBackground/RBVirtualBackground.service.d.ts +228 -0
- package/lib/services/virtualBackground/RBVirtualBackground.service.d.ts.map +1 -0
- package/lib/services/virtualBackground/index.d.ts +4 -0
- package/lib/services/virtualBackground/index.d.ts.map +1 -0
- package/lib/services/virtualBackground/personalVideoBackground.d.ts +190 -0
- package/lib/services/virtualBackground/personalVideoBackground.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/canvas2D/canvas2DPipeline.d.ts +66 -0
- package/lib/services/virtualBackground/pipeline/canvas2D/canvas2DPipeline.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/blurStage.d.ts +88 -0
- package/lib/services/virtualBackground/pipeline/webgl2/blurStage.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/imageStage.d.ts +69 -0
- package/lib/services/virtualBackground/pipeline/webgl2/imageStage.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/jointBilateralFilter.d.ts +55 -0
- package/lib/services/virtualBackground/pipeline/webgl2/jointBilateralFilter.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/resizingStage.d.ts +59 -0
- package/lib/services/virtualBackground/pipeline/webgl2/resizingStage.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/softMax.d.ts +34 -0
- package/lib/services/virtualBackground/pipeline/webgl2/softMax.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/webgl2Pipeline.d.ts +62 -0
- package/lib/services/virtualBackground/pipeline/webgl2/webgl2Pipeline.d.ts.map +1 -0
- package/lib/services/virtualBackground/pipeline/webgl2/webglHelper.d.ts +56 -0
- package/lib/services/virtualBackground/pipeline/webgl2/webglHelper.d.ts.map +1 -0
- package/lib/services/virtualBackground/virtualBackground.service.d.ts +399 -0
- package/lib/services/virtualBackground/virtualBackground.service.d.ts.map +1 -0
- package/lib/services/webinars/index.d.ts +10 -0
- package/lib/services/webinars/index.d.ts.map +1 -0
- package/lib/services/webinars/telemetry/webinarTelemetry.model.d.ts +71 -0
- package/lib/services/webinars/telemetry/webinarTelemetry.model.d.ts.map +1 -0
- package/lib/services/webinars/telemetry/webinarTelemetry.service.d.ts +86 -0
- package/lib/services/webinars/telemetry/webinarTelemetry.service.d.ts.map +1 -0
- package/lib/services/webinars/telemetry/webinarTelemetryDatabase.d.ts +31 -0
- package/lib/services/webinars/telemetry/webinarTelemetryDatabase.d.ts.map +1 -0
- package/lib/services/webinars/webinarAudioMixer.d.ts +45 -0
- package/lib/services/webinars/webinarAudioMixer.d.ts.map +1 -0
- package/lib/services/webinars/webinarConference.service.d.ts +323 -0
- package/lib/services/webinars/webinarConference.service.d.ts.map +1 -0
- package/lib/services/webinars/webinarConference.utils.d.ts +24 -0
- package/lib/services/webinars/webinarConference.utils.d.ts.map +1 -0
- package/lib/services/webinars/webinarParticipants.service.d.ts +43 -0
- package/lib/services/webinars/webinarParticipants.service.d.ts.map +1 -0
- package/lib/services/webinars/webinarSpeakers.service.d.ts +25 -0
- package/lib/services/webinars/webinarSpeakers.service.d.ts.map +1 -0
- package/lib/services/webinars/webinarStoryLine.service.d.ts +117 -0
- package/lib/services/webinars/webinarStoryLine.service.d.ts.map +1 -0
- package/lib/services/webinars/webinars.service.d.ts +600 -0
- package/lib/services/webinars/webinars.service.d.ts.map +1 -0
- package/lib/services/webrtc/index.d.ts +5 -0
- package/lib/services/webrtc/index.d.ts.map +1 -0
- package/lib/services/webrtc/webrtcConfigAndUtils.d.ts +170 -0
- package/lib/services/webrtc/webrtcConfigAndUtils.d.ts.map +1 -0
- package/lib/services/webrtc/webrtcP2P.service.d.ts +521 -0
- package/lib/services/webrtc/webrtcP2P.service.d.ts.map +1 -0
- package/lib/services/webrtc/webrtcP2PEventHandler.d.ts +55 -0
- package/lib/services/webrtc/webrtcP2PEventHandler.d.ts.map +1 -0
- package/lib/services/webrtcGateway/webrtcGateway.service.d.ts +605 -0
- package/lib/services/webrtcGateway/webrtcGateway.service.d.ts.map +1 -0
- package/lib/strophejs.d.ts +3 -0
- package/lib/strophejs.d.ts.map +1 -0
- package/lib/typings/helpers.d.ts +3 -0
- package/lib/typings/helpers.d.ts.map +1 -0
- package/lib/utils/allSettled.d.ts +2 -0
- package/lib/utils/allSettled.d.ts.map +1 -0
- package/lib/utils/anonymizer.d.ts +28 -0
- package/lib/utils/anonymizer.d.ts.map +1 -0
- package/lib/utils/branded.d.ts +4 -0
- package/lib/utils/branded.d.ts.map +1 -0
- package/lib/utils/browser.d.ts +231 -0
- package/lib/utils/browser.d.ts.map +1 -0
- package/lib/utils/index.d.ts +12 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/mediaPermissionError.d.ts +2 -0
- package/lib/utils/mediaPermissionError.d.ts.map +1 -0
- package/lib/utils/promiseQueue.d.ts +10 -0
- package/lib/utils/promiseQueue.d.ts.map +1 -0
- package/lib/utils/randomString.d.ts +3 -0
- package/lib/utils/randomString.d.ts.map +1 -0
- package/lib/utils/recordingArchiveName.d.ts +13 -0
- package/lib/utils/recordingArchiveName.d.ts.map +1 -0
- package/lib/utils/serverTimestamp.d.ts +15 -0
- package/lib/utils/serverTimestamp.d.ts.map +1 -0
- package/lib/utils/stringifyError.d.ts +2 -0
- package/lib/utils/stringifyError.d.ts.map +1 -0
- package/lib/utils/video.d.ts +27 -0
- package/lib/utils/video.d.ts.map +1 -0
- package/lib/utils/wait.d.ts +2 -0
- package/lib/utils/wait.d.ts.map +1 -0
- package/lib/utils/xmlParser.d.ts +102 -0
- package/lib/utils/xmlParser.d.ts.map +1 -0
- package/lib/utils/xmlValidation.d.ts +119 -0
- package/lib/utils/xmlValidation.d.ts.map +1 -0
- package/package.json +58 -0
|
@@ -0,0 +1,1237 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @module BubbleConferences
|
|
3
|
+
*/
|
|
4
|
+
import type { Subscription } from "rxjs";
|
|
5
|
+
import type { Bubble } from "../../models/bubble.model";
|
|
6
|
+
import type { BubbleConference, BubbleConferenceJoinParameters, BubbleConferenceVideoQuality } from "../../models/webConferenceSession.model";
|
|
7
|
+
import { BubbleConferenceMedia, BubbleConferenceMediaAction, BubbleConferenceStatus, WebConferenceSession } from "../../models/webConferenceSession.model";
|
|
8
|
+
import { BubbleConferenceParticipant } from "../../models/webConferenceParticipant.model";
|
|
9
|
+
import { Contact } from "../../models/contact.model";
|
|
10
|
+
import { WebConferenceHelper } from "./webConferenceHelper";
|
|
11
|
+
import { WebrtcConfigAndUtils } from "../../services/webrtc/webrtcConfigAndUtils";
|
|
12
|
+
import type { EventableService } from "../../services/service";
|
|
13
|
+
import { BubbleConferenceRecapParams } from "./bubbleConferenceRecap.service";
|
|
14
|
+
import type { BubbleConferenceRecap } from "../../models/bubbleConferenceRecap.model";
|
|
15
|
+
import type { WebrtcStatisticsData } from "../../libs/strophe/strophe.jingle.session.stats";
|
|
16
|
+
/**
|
|
17
|
+
* @internal
|
|
18
|
+
*/
|
|
19
|
+
export declare const BUBBLE_CONFERENCE_SVC = "BubbleConferenceService";
|
|
20
|
+
export interface IBubbleConferenceServiceEvents {
|
|
21
|
+
ON_CONFERENCE_ENDED: {
|
|
22
|
+
/** The ended conference session */
|
|
23
|
+
bubbleConference: WebConferenceSession;
|
|
24
|
+
};
|
|
25
|
+
/** @eventProperty Fired when a new recap recording is created. */
|
|
26
|
+
ON_CONFERENCE_RECAP_CREATED: {
|
|
27
|
+
/** DB ID of the bubble where the recording was created */
|
|
28
|
+
roomDbId: string;
|
|
29
|
+
/** The newly created recap */
|
|
30
|
+
recap: BubbleConferenceRecap;
|
|
31
|
+
};
|
|
32
|
+
/** @eventProperty Fired when a recap recording is ready to be displayed. */
|
|
33
|
+
ON_CONFERENCE_RECAP_READY: {
|
|
34
|
+
/** DB ID of the bubble */
|
|
35
|
+
roomDbId: string;
|
|
36
|
+
/** The ready recap */
|
|
37
|
+
recap: BubbleConferenceRecap;
|
|
38
|
+
};
|
|
39
|
+
/** @eventProperty Fired when a recap is removed. */
|
|
40
|
+
ON_CONFERENCE_RECAP_REMOVED: {
|
|
41
|
+
/** DB ID of the bubble */
|
|
42
|
+
roomDbId: string;
|
|
43
|
+
/** The removed recap */
|
|
44
|
+
recap: BubbleConferenceRecap;
|
|
45
|
+
};
|
|
46
|
+
/** @eventProperty Fired when a recap is shared. */
|
|
47
|
+
ON_CONFERENCE_RECAP_SHARED: {
|
|
48
|
+
/** DB ID of the bubble */
|
|
49
|
+
roomDbId: string;
|
|
50
|
+
/** The shared recap */
|
|
51
|
+
recap: BubbleConferenceRecap;
|
|
52
|
+
};
|
|
53
|
+
/** @eventProperty Fired when the status of the current conference changes. */
|
|
54
|
+
ON_CONFERENCE_STATUS_UPDATE: {
|
|
55
|
+
/** The conference session */
|
|
56
|
+
bubbleConference: WebConferenceSession;
|
|
57
|
+
/** New status — "connecting" | "connected" | "reconnecting" | "onhold" | "ended" */
|
|
58
|
+
status: BubbleConferenceStatus;
|
|
59
|
+
/** Recording config, present only when conference started with record */
|
|
60
|
+
recordConfig?: {
|
|
61
|
+
params: BubbleConferenceRecapParams;
|
|
62
|
+
saveConfig: boolean;
|
|
63
|
+
};
|
|
64
|
+
};
|
|
65
|
+
/** @eventProperty @internal Fired when the participant list is modified (participant added or removed). */
|
|
66
|
+
ON_WEBCONFERENCE_PARTICIPANT_LIST_UPDATE: {
|
|
67
|
+
/** DB ID of the bubble related to the conference */
|
|
68
|
+
roomDbId: string;
|
|
69
|
+
};
|
|
70
|
+
/** @eventProperty @internal Fired when a new participant is added to the conference. */
|
|
71
|
+
ON_WEBCONFERENCE_PARTICIPANT_ADD: {
|
|
72
|
+
/** DB ID of the bubble */
|
|
73
|
+
roomDbId: string;
|
|
74
|
+
/** DB ID of the added participant (the phone number for a PSTN participant) */
|
|
75
|
+
participantId: string;
|
|
76
|
+
/** SIP Call-ID of the call that brought the participant in, when the server provides it */
|
|
77
|
+
callId?: string;
|
|
78
|
+
};
|
|
79
|
+
/** @eventProperty @internal Fired when a participant is removed from the conference. */
|
|
80
|
+
ON_WEBCONFERENCE_PARTICIPANT_REMOVE: {
|
|
81
|
+
/** DB ID of the bubble */
|
|
82
|
+
roomDbId: string;
|
|
83
|
+
/** DB ID of the removed participant */
|
|
84
|
+
participantId: string;
|
|
85
|
+
};
|
|
86
|
+
/** @eventProperty @internal Fired when a new video or sharing media is available in the conference. */
|
|
87
|
+
ON_WEBCONFERENCE_PUBLISHER_ADD: {
|
|
88
|
+
/** DB ID of the bubble */
|
|
89
|
+
roomDbId: string;
|
|
90
|
+
};
|
|
91
|
+
/** @eventProperty @internal Fired when a video or sharing media is removed from the conference. */
|
|
92
|
+
ON_WEBCONFERENCE_PUBLISHER_REMOVE: {
|
|
93
|
+
/** DB ID of the bubble */
|
|
94
|
+
roomDbId: string;
|
|
95
|
+
};
|
|
96
|
+
/** @eventProperty @internal Fired when the lock state of the conference changes. */
|
|
97
|
+
ON_WEBCONFERENCE_LOCKSTATE_UPDATE: {
|
|
98
|
+
/** DB ID of the bubble */
|
|
99
|
+
roomDbId: string;
|
|
100
|
+
/** Whether the conference is now locked */
|
|
101
|
+
isLock: boolean;
|
|
102
|
+
/** DB ID of the user that locked/unlocked the conference */
|
|
103
|
+
lockedById: string;
|
|
104
|
+
};
|
|
105
|
+
/** @eventProperty @internal Fired when the local user is asked to unmute by a remote party. */
|
|
106
|
+
ON_WEBCONFERENCE_UNMUTE_DEMAND_RECEIVED: {
|
|
107
|
+
/** DB ID of the bubble */
|
|
108
|
+
roomDbId: string;
|
|
109
|
+
/** DB ID of the user that requested unmute */
|
|
110
|
+
askedBy: string;
|
|
111
|
+
};
|
|
112
|
+
/** @eventProperty @internal Fired when a local media (video or sharing) is added or removed. */
|
|
113
|
+
ON_WEBCONFERENCE_LOCALMEDIA_UPDATE: {
|
|
114
|
+
/** DB ID of the bubble */
|
|
115
|
+
roomDbId: string;
|
|
116
|
+
/** Type of media updated — video | sharing */
|
|
117
|
+
mediaType: BubbleConferenceMedia;
|
|
118
|
+
/** Whether the media was added or removed */
|
|
119
|
+
action: BubbleConferenceMediaAction;
|
|
120
|
+
};
|
|
121
|
+
/** @eventProperty @internal Fired when the local participant is updated (mute, delegation, etc.). */
|
|
122
|
+
ON_WEBCONFERENCE_LOCAL_PARTICIPANT_UPDATE: {
|
|
123
|
+
/** DB ID of the bubble */
|
|
124
|
+
roomDbId: string;
|
|
125
|
+
};
|
|
126
|
+
/** @eventProperty @internal Fired when a remote media session is subscribed (video, sharing, mozaic, or dynamic feed). */
|
|
127
|
+
ON_WEBCONFERENCE_REMOTEMEDIA_UPDATE: {
|
|
128
|
+
/** DB ID of the bubble */
|
|
129
|
+
roomDbId: string;
|
|
130
|
+
/** Type of media — video | sharing | mozaic | dynamicFeed */
|
|
131
|
+
mediaType: BubbleConferenceMedia;
|
|
132
|
+
/** Whether the media was added, removed, or put on hold */
|
|
133
|
+
action: BubbleConferenceMediaAction;
|
|
134
|
+
};
|
|
135
|
+
/** @eventProperty @internal Fired when a participant is updated (mute, role, raise-hand, delegation…). */
|
|
136
|
+
ON_WEBCONFERENCE_PARTICIPANT_UPDATE: {
|
|
137
|
+
/** DB ID of the bubble */
|
|
138
|
+
roomDbId: string;
|
|
139
|
+
/** DB ID of the specific participant that was updated (when applicable) */
|
|
140
|
+
participantId?: string;
|
|
141
|
+
/** Type of update (e.g. "askToUnmute", "raise-hand", "lower-hand") */
|
|
142
|
+
action?: string;
|
|
143
|
+
/** The updated participant object (for hand events) */
|
|
144
|
+
participant?: BubbleConferenceParticipant;
|
|
145
|
+
};
|
|
146
|
+
/** @eventProperty @internal Fired when the active talker changes. */
|
|
147
|
+
ON_WEBCONFERENCE_TALKER_UPDATE: {
|
|
148
|
+
/** DB ID of the bubble */
|
|
149
|
+
roomDbId: string;
|
|
150
|
+
};
|
|
151
|
+
/** @eventProperty @internal Fired when the conference is delegated (ownership transferred). */
|
|
152
|
+
ON_WEBCONFERENCE_DELEGATE: {
|
|
153
|
+
/** DB ID of the bubble */
|
|
154
|
+
roomDbId: string;
|
|
155
|
+
/** DB ID of the new conference owner */
|
|
156
|
+
userDbId: string;
|
|
157
|
+
/** True if the previous owner was the local user */
|
|
158
|
+
gaveOwnership: boolean;
|
|
159
|
+
};
|
|
160
|
+
/** @eventProperty @internal Fired when a conference service state changes (Grid49, etc.). */
|
|
161
|
+
ON_WEBCONFERENCE_SERVICE_UPDATE: {
|
|
162
|
+
/** DB ID of the bubble */
|
|
163
|
+
roomDbId: string;
|
|
164
|
+
};
|
|
165
|
+
/** @eventProperty @internal Fired when a conference starts in a bubble (not started by the local user). */
|
|
166
|
+
ON_WEBCONFERENCE_STARTED_EVENT_IN_BUBBLE: {
|
|
167
|
+
/** DB ID of the bubble */
|
|
168
|
+
roomDbId: string;
|
|
169
|
+
};
|
|
170
|
+
/** @eventProperty @internal Fired to instruct the UI to stop the current call-area highlight animation. No payload. */
|
|
171
|
+
ON_WEBCONFERENCE_STOP_HIGHLIGHTING: unknown;
|
|
172
|
+
/** @eventProperty @internal Fired when echo-test statistics are available. */
|
|
173
|
+
ON_WEBCONFERENCE_ECHOTEST_STATS_UPDATE: {
|
|
174
|
+
/** DB ID of the bubble */
|
|
175
|
+
roomDbId: string;
|
|
176
|
+
/** WebRTC statistics snapshot */
|
|
177
|
+
stats: WebrtcStatisticsData;
|
|
178
|
+
};
|
|
179
|
+
/** @eventProperty @internal Fired when a Jingle session is fully established and media is flowing. */
|
|
180
|
+
ON_SESSION_ESTABLISHED: {
|
|
181
|
+
/** SID of the established JingleSession */
|
|
182
|
+
sessionId: string;
|
|
183
|
+
};
|
|
184
|
+
/** @eventProperty @internal Fired to instruct the UI to start highlighting the sharing participant. No payload. */
|
|
185
|
+
ON_WEBCONFERENCE_START_HIGHLIGHTING: unknown;
|
|
186
|
+
/** @eventProperty @internal Fired when getUserMedia fails, prompting the caller to join without audio. No payload. */
|
|
187
|
+
ON_JOIN_WITHOUT_AUDIO: unknown;
|
|
188
|
+
/** @eventProperty Fired when a conference has started in a bubble. */
|
|
189
|
+
ON_CONFERENCE_STARTED: {
|
|
190
|
+
/** The started conference session */
|
|
191
|
+
bubbleConference: WebConferenceSession;
|
|
192
|
+
};
|
|
193
|
+
/**
|
|
194
|
+
* @eventProperty @internal This RB event is fired when the local sharing is aborted because another participant
|
|
195
|
+
* started sharing while the local user was still selecting the screen to share
|
|
196
|
+
*/
|
|
197
|
+
ON_WEBCONFERENCE_SHARING_CONFLICT: {
|
|
198
|
+
/** DB ID of the bubble related to the web conference */
|
|
199
|
+
roomDbId: string;
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* This service manages web conferences in Rainbow (web conferences that take place in bubbles).
|
|
204
|
+
* Any Rainbow user in the bubble can take part of the conference (the maximum number of participants is based on the licence of the organiser of the conference)
|
|
205
|
+
* In each conference, there's only one "organizer" (the user that has started the conference), but every administrator in the bubble is allowed to make additional actions on all other participants (like drop, mute, etc)
|
|
206
|
+
* Only the organizer of the conference can stop the conference, or delegate it to another user.
|
|
207
|
+
*
|
|
208
|
+
* By default, the web conference service is going to use a web conference helper service that will manage
|
|
209
|
+
* an automatic subscription to all available videos, the management of the dynamic feed.
|
|
210
|
+
* This service configuration can be managed by setHelperServiceConfiguration API
|
|
211
|
+
*
|
|
212
|
+
* NB !! The CPU and bandwidth consumption should/can be managed via additionnal APIs that can be used so that the application is adapted;
|
|
213
|
+
* As all incoming videos are available in 3 sublayers (high HD, medium VGA and low QVGA) the user can change the sublayer he wants to receive from the server (managed by the Method updateParticipant)
|
|
214
|
+
* In addition, some session can be put on hold / unhold so that the user can "pause" all incoming videos that are not needed at the moment (managed by putRemoteVideoSessionOnHold)
|
|
215
|
+
*/
|
|
216
|
+
export interface BubbleConferenceService extends EventableService<IBubbleConferenceServiceEvents> {
|
|
217
|
+
/**
|
|
218
|
+
* Subscribe to updates from the service (all events are of RBEvent type {name: string, data:any});
|
|
219
|
+
* @deprecated Use `events()` instead, which returns a typed RxJS Observable.
|
|
220
|
+
* @example
|
|
221
|
+
* ```typescript
|
|
222
|
+
* service.events('ON_CONFERENCE_STARTED').subscribe(event => {
|
|
223
|
+
* console.log(event.data.bubbleConference);
|
|
224
|
+
* });
|
|
225
|
+
* ```
|
|
226
|
+
*
|
|
227
|
+
* @param handler - The call-back function that will be subscribed to the RxJS subject
|
|
228
|
+
* @param eventNames - array of event to listen
|
|
229
|
+
* @returns Returns RxJS Subscription
|
|
230
|
+
*/
|
|
231
|
+
subscribe: (handler: any, eventNames?: string | string[]) => Subscription;
|
|
232
|
+
/**
|
|
233
|
+
* Create a web conference in the given bubble
|
|
234
|
+
* @param bubble - The bubble associated with this conference
|
|
235
|
+
*/
|
|
236
|
+
startConference: (bubble: Bubble) => Promise<BubbleConference>;
|
|
237
|
+
/**
|
|
238
|
+
* Get bubble web conference if exists
|
|
239
|
+
* @param bubble - The bubble associated with this conference
|
|
240
|
+
*/
|
|
241
|
+
getConference: (bubble: Bubble) => BubbleConference | undefined;
|
|
242
|
+
/**
|
|
243
|
+
* API used to update the bubble conferences configuration
|
|
244
|
+
* @param disableDynamicFeed - If true, this will disable the subscription mecanisme for the dynamic feed
|
|
245
|
+
* In case the subscription is already done, this will not effect the current session;
|
|
246
|
+
* NB The default value is FALSE for all conferences (i.e. by default, dynamic feed is activated)
|
|
247
|
+
* @param disableAutoSubscriptions - If true, this will disable the auto subscription mecanisme for all incoming publishers (except sharing)
|
|
248
|
+
* In case the subscription is already done, this will not effect the current session;
|
|
249
|
+
* NB The default value is FALSE for all conferences (i.e. by default, subscription is done for all publsihers)
|
|
250
|
+
*/
|
|
251
|
+
setBubbleConferencesConfiguration: (disableDynamicFeed: boolean, disableAutoSubscriptions: boolean) => void;
|
|
252
|
+
/**
|
|
253
|
+
* Add media (video or sharing) to an existing web conference
|
|
254
|
+
* @internal
|
|
255
|
+
* @param webConference - the WebConference object where we want to add the media
|
|
256
|
+
* @param mediaType - the type of the media to be added. Accepted values are 'video' or 'sharing';
|
|
257
|
+
* @param existingStream - if we want to use an already existing stream
|
|
258
|
+
* @param getAudioForSharing - if we want to add audio from system to sharing
|
|
259
|
+
*/
|
|
260
|
+
addMediaToWebConference: (webConference: BubbleConference, mediaType: BubbleConferenceMedia, existingStream?: MediaStream, getAudioForSharing?: boolean) => Promise<void>;
|
|
261
|
+
/**
|
|
262
|
+
* Remove Media from the current web conference. It could be either 'video' or 'sharing'
|
|
263
|
+
* @internal
|
|
264
|
+
* @param webConference - The Web conference
|
|
265
|
+
* @param mediaType - the media to be removed 'video' or 'sharing'
|
|
266
|
+
*/
|
|
267
|
+
removeMediaFromWebConference: (webConference: BubbleConference, mediaType: BubbleConferenceMedia) => void;
|
|
268
|
+
/**
|
|
269
|
+
* Update a conference participant (ourself, or any other participant if the user is a moderator of the conference)
|
|
270
|
+
* @internal
|
|
271
|
+
* @param webConference -The Web Conference
|
|
272
|
+
* @param participantId -ID of participant to update
|
|
273
|
+
* @param option -update data ( could be on of: mute, unmute, hold, retrieve, plug, unplug, update);
|
|
274
|
+
* With 'update' option we can :
|
|
275
|
+
* - Update media bandwidth as publisher. Two parameters must be present: media and bitRate
|
|
276
|
+
* - Update substream level as subscriber. One parameter must be present: subStreamLevel. Parameter publisherId is optional.
|
|
277
|
+
* @param media - type of media to be updated (video/sharing)
|
|
278
|
+
* @param bitRate - the max bitrate to be set (0 is unlimited)
|
|
279
|
+
* @param subStreamLevel - set new sub-stream level. Only available for publishers and in simulcast mode (0 - low, 1 - medium, 2 - high)
|
|
280
|
+
* @param publisherId - the publisher id related to the update
|
|
281
|
+
* @returns a promise that resolve when particpant state is updated
|
|
282
|
+
*/
|
|
283
|
+
updateParticipant: (webConference: BubbleConference, participantId: string, option: string, media?: string, bitRate?: string, subStreamLevel?: string, publisherId?: string) => Promise<void>;
|
|
284
|
+
/**
|
|
285
|
+
* Method askToAddSharingToWebConferenceSession
|
|
286
|
+
* Used only on desktop application : choose which screen to share
|
|
287
|
+
* FIX SIGNATURE
|
|
288
|
+
* @internal
|
|
289
|
+
*/
|
|
290
|
+
askToAddSharingToWebConferenceSession: (conversation: any, conferenceSession: any, shouldAskForAudio?: boolean) => void;
|
|
291
|
+
/**
|
|
292
|
+
* Returns WebConferenceSession if the user has an active web conference session (that he has joined)
|
|
293
|
+
* @returns {WebConferenceSession} Returns WebConferenceSession or null instead
|
|
294
|
+
* @internal
|
|
295
|
+
* FIX SIGNATURE
|
|
296
|
+
*/
|
|
297
|
+
getActiveWebConferenceSession: () => WebConferenceSession | null;
|
|
298
|
+
/**
|
|
299
|
+
* Returns WebConferenceSession if the user has an unjoined web conference session owned by the user identified by displayname
|
|
300
|
+
* @returns {WebConferenceSession} Returns WebConferenceSession or null instead
|
|
301
|
+
* @internal
|
|
302
|
+
* FIX SIGNATURE
|
|
303
|
+
*/
|
|
304
|
+
getUnjoinedWebConferenceSessionByOwnerName: (name: string) => Promise<WebConferenceSession | null>;
|
|
305
|
+
/**
|
|
306
|
+
* Decline incoming invitation to join a web conference. This API will send update to all other connected devices to the user to notify;
|
|
307
|
+
* @param bubble - The bubble to decline the web conference invitation
|
|
308
|
+
* @internal
|
|
309
|
+
* Returns on API call success
|
|
310
|
+
*/
|
|
311
|
+
declineInvitationToJoinConference: (bubble: Bubble) => Promise<void>;
|
|
312
|
+
/**
|
|
313
|
+
* Removes a user from the web conference in the given bubble; This API can be used by
|
|
314
|
+
* the moderators of the bubble to remove other participants too
|
|
315
|
+
* @param webConferenceSession - The current web conference session
|
|
316
|
+
* @param participantId - The participant ID that should be removed from the conference
|
|
317
|
+
* @internal
|
|
318
|
+
* @returns Return promise
|
|
319
|
+
*/
|
|
320
|
+
disconnectUserFromWebConference: (webConferenceSession: WebConferenceSession, participantId: string) => Promise<void>;
|
|
321
|
+
/**
|
|
322
|
+
* Add audio to an existing web conference session (ONLY IN CASE THE JOIN IS DONE VIA NOAUDIO OPTION)
|
|
323
|
+
* @param webConferenceSession - the WebConferenceSession object where we want to add the media
|
|
324
|
+
* @internal
|
|
325
|
+
*/
|
|
326
|
+
addAudioToWebConferenceSession: (webConferenceSession: WebConferenceSession) => void;
|
|
327
|
+
/**
|
|
328
|
+
* API used to update the conference parameters (can be used by the conference moderator)
|
|
329
|
+
* @param webConferenceSession - The Web Conference session
|
|
330
|
+
* @param option - could be one of:
|
|
331
|
+
* - mute (Mutes all participants, except requester.)
|
|
332
|
+
* - unmute (Unmutes all participants)
|
|
333
|
+
* - lock (Disables any future participant from joining conference)
|
|
334
|
+
* - unlock (Unlocks the conference)
|
|
335
|
+
* @returns a promise that resolve when conference parameters are updated
|
|
336
|
+
* @internal
|
|
337
|
+
*/
|
|
338
|
+
updateConferenceParameters: (webConferenceSession: WebConferenceSession, option: string) => Promise<void>;
|
|
339
|
+
/**
|
|
340
|
+
* Method used to stop the echo test
|
|
341
|
+
* @param roomDbId - the DB Id of the room where we want to get the stats
|
|
342
|
+
* @internal
|
|
343
|
+
*/
|
|
344
|
+
getConferenceTalkingTimeStats: (roomDbId: string) => Promise<any>;
|
|
345
|
+
/**
|
|
346
|
+
* Raise your hand in the concerned Conference
|
|
347
|
+
* @param session - The conference session where the user is going to lower their hand
|
|
348
|
+
* @returns Returns WebConferenceSession object that is related to the web conference session in that bubble
|
|
349
|
+
* @internal
|
|
350
|
+
*/
|
|
351
|
+
raiseHand: (session: WebConferenceSession) => Promise<WebConferenceSession>;
|
|
352
|
+
/** @internal */
|
|
353
|
+
putActiveConferenceOnHold: (call?: any) => any;
|
|
354
|
+
/** @internal */
|
|
355
|
+
retrieveConferenceOnHold: () => any;
|
|
356
|
+
/**
|
|
357
|
+
* Method used to remove all incoming video sessions; Also the dynamic feed / active talker video is removed
|
|
358
|
+
* @param webConferenceSession - The Web conference participant
|
|
359
|
+
* @returns returns when it's done
|
|
360
|
+
* @internal
|
|
361
|
+
*/
|
|
362
|
+
removeAllRemoteVideoSessions: (webConferenceSession: WebConferenceSession) => void;
|
|
363
|
+
/**
|
|
364
|
+
* Method used to start the echo test
|
|
365
|
+
* @internal
|
|
366
|
+
*/
|
|
367
|
+
startMediaEchoTest: () => Promise<void>;
|
|
368
|
+
/**
|
|
369
|
+
* Method used to stop the echo test
|
|
370
|
+
* @internal
|
|
371
|
+
*/
|
|
372
|
+
stopMediaEchoTest: () => Promise<void>;
|
|
373
|
+
/**
|
|
374
|
+
* Method used to start a pilot test conference.
|
|
375
|
+
* @returns the identifyer of the bubble used for the test
|
|
376
|
+
* @internal
|
|
377
|
+
*/
|
|
378
|
+
startMediaEchoTestV2: () => Promise<string>;
|
|
379
|
+
/** @internal */
|
|
380
|
+
hasActiveWebConferenceSession: () => boolean;
|
|
381
|
+
/** @internal */
|
|
382
|
+
waitWebConferenceConnection: (session: BubbleConference) => Promise<void>;
|
|
383
|
+
/**
|
|
384
|
+
* Lower your hand in the concerned conference (you can also lower the hand of someone else if you are a Bubble Organizer)
|
|
385
|
+
* @param session - The conference session where the user is going to lower their hand
|
|
386
|
+
* @param user - The user lowering their hand
|
|
387
|
+
* @returns Returns WebConferenceSession object that is related to the web conference session in that bubble
|
|
388
|
+
* @internal
|
|
389
|
+
*/
|
|
390
|
+
lowerHand: (session: WebConferenceSession, user: BubbleConferenceParticipant) => Promise<WebConferenceSession>;
|
|
391
|
+
/**
|
|
392
|
+
* Get all conference recaps that belong to the connected user
|
|
393
|
+
*/
|
|
394
|
+
getRecaps: (bubble?: Bubble) => Promise<BubbleConferenceRecap[]>;
|
|
395
|
+
/**
|
|
396
|
+
* Get conference recaps shared with the connected user
|
|
397
|
+
*/
|
|
398
|
+
getSharedWithMeRecaps: (bubble?: Bubble) => Promise<BubbleConferenceRecap[]>;
|
|
399
|
+
/** @internal */
|
|
400
|
+
sendInnerEvent: (name: string, data?: any) => void;
|
|
401
|
+
/** @internal */
|
|
402
|
+
subscribeToInnerEvents: (handler: any) => Subscription;
|
|
403
|
+
}
|
|
404
|
+
/**
|
|
405
|
+
* @deprecated Use {@link BubbleConferenceServiceRB.events} directly instead, which returns a typed RxJS Observable.
|
|
406
|
+
*/
|
|
407
|
+
export declare enum BubbleConferenceServiceEvents {
|
|
408
|
+
/**
|
|
409
|
+
* @eventProperty ON_CONFERENCE_STARTED
|
|
410
|
+
* This RB event is fired when a conference has started in a bubble
|
|
411
|
+
*
|
|
412
|
+
* **Event Data**
|
|
413
|
+
* - **bubbleConference** : The newly started webConference
|
|
414
|
+
*/
|
|
415
|
+
ON_CONFERENCE_STARTED = "ON_CONFERENCE_STARTED",
|
|
416
|
+
/**
|
|
417
|
+
* @eventProperty ON_CONFERENCE_ENDED
|
|
418
|
+
* This event is send when the conference in the given bubble is no longer active. This event is received after the owner has
|
|
419
|
+
* stopped the conference (it could also be us)
|
|
420
|
+
*
|
|
421
|
+
* **Event Data**
|
|
422
|
+
* - **bubbleConference** : The webConference
|
|
423
|
+
*/
|
|
424
|
+
ON_CONFERENCE_ENDED = "ON_CONFERENCE_ENDED",
|
|
425
|
+
/**
|
|
426
|
+
* @eventProperty ON_CONFERENCE_RECAP_CREATED
|
|
427
|
+
* @internal
|
|
428
|
+
* This RB event is fired when a new recap recording is created
|
|
429
|
+
*/
|
|
430
|
+
ON_CONFERENCE_RECAP_CREATED = "ON_CONFERENCE_RECAP_CREATED",
|
|
431
|
+
/**
|
|
432
|
+
* @eventProperty ON_CONFERENCE_RECAP_READY
|
|
433
|
+
* @internal
|
|
434
|
+
* This RB event is fired when a new recap recording is ready to be displayed
|
|
435
|
+
*/
|
|
436
|
+
ON_CONFERENCE_RECAP_READY = "ON_CONFERENCE_RECAP_READY",
|
|
437
|
+
/**
|
|
438
|
+
* @eventProperty ON_CONFERENCE_RECAP_REMOVED
|
|
439
|
+
* @internal
|
|
440
|
+
* This RB event is fired when a new recap is removed
|
|
441
|
+
*/
|
|
442
|
+
ON_CONFERENCE_RECAP_REMOVED = "ON_CONFERENCE_RECAP_REMOVED",
|
|
443
|
+
/**
|
|
444
|
+
* @eventProperty ON_CONFERENCE_RECAP_SHARED
|
|
445
|
+
* @internal
|
|
446
|
+
* This RB event is fired when a recap is shared
|
|
447
|
+
*/
|
|
448
|
+
ON_CONFERENCE_RECAP_SHARED = "ON_CONFERENCE_RECAP_SHARED",
|
|
449
|
+
/**
|
|
450
|
+
* @eventProperty ON_CONFERENCE_STATUS_UPDATE
|
|
451
|
+
* This RB event is send when the status of the current conference has changed.
|
|
452
|
+
*
|
|
453
|
+
* **Event Data**
|
|
454
|
+
* - **bubbleConference** : The DB ID of the bubble related to the bubble conference
|
|
455
|
+
* - **status** : The new status for the web conference;It could be "connecting", "connected", "reconnecting", "onhold", "ended"s
|
|
456
|
+
*/
|
|
457
|
+
ON_CONFERENCE_STATUS_UPDATE = "ON_CONFERENCE_STATUS_UPDATE",
|
|
458
|
+
/**
|
|
459
|
+
* @eventProperty ON_WEBCONFERENCE_PARTICIPANT_LIST_UPDATE
|
|
460
|
+
* @internal
|
|
461
|
+
* This RB event is when there's a modification in the list of the participants (participants are added or removed)
|
|
462
|
+
*
|
|
463
|
+
* **Event Data**
|
|
464
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
465
|
+
*/
|
|
466
|
+
ON_WEBCONFERENCE_PARTICIPANT_LIST_UPDATE = "ON_WEBCONFERENCE_PARTICIPANT_LIST_UPDATE",
|
|
467
|
+
/**
|
|
468
|
+
* @eventProperty ON_WEBCONFERENCE_PARTICIPANT_ADD
|
|
469
|
+
* @internal
|
|
470
|
+
* This RB event is when there's a new participant that has been added in the participant list / conference
|
|
471
|
+
*
|
|
472
|
+
* **Event Data**
|
|
473
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
474
|
+
* - **participantId** : The DB ID of the participant that is added in the conference
|
|
475
|
+
*/
|
|
476
|
+
ON_WEBCONFERENCE_PARTICIPANT_ADD = "ON_WEBCONFERENCE_PARTICIPANT_ADD",
|
|
477
|
+
/**
|
|
478
|
+
* @eventProperty ON_WEBCONFERENCE_PARTICIPANT_REMOVE
|
|
479
|
+
* @internal
|
|
480
|
+
* This RB event is when there's a participant that has been removed in the participant list / conference
|
|
481
|
+
*
|
|
482
|
+
* **Event Data**
|
|
483
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
484
|
+
* - **participantId** : The DB ID of the participant that have been removed from the conference
|
|
485
|
+
*/
|
|
486
|
+
ON_WEBCONFERENCE_PARTICIPANT_REMOVE = "ON_WEBCONFERENCE_PARTICIPANT_REMOVE",
|
|
487
|
+
/**
|
|
488
|
+
* @eventProperty ON_WEBCONFERENCE_PUBLISHER_ADD
|
|
489
|
+
* @internal
|
|
490
|
+
* This RB event is when there's a new video or sharing media available in the conference.
|
|
491
|
+
* This could be in the list of the participants (participants have now video available)
|
|
492
|
+
* Or this could be an update on the sharing session (added)
|
|
493
|
+
* This event is also fired when the current user adds sharing or video
|
|
494
|
+
*
|
|
495
|
+
* **Event Data**
|
|
496
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
497
|
+
*/
|
|
498
|
+
ON_WEBCONFERENCE_PUBLISHER_ADD = "ON_WEBCONFERENCE_PUBLISHER_ADD",
|
|
499
|
+
/**
|
|
500
|
+
* @eventProperty ON_WEBCONFERENCE_PUBLISHER_REMOVE
|
|
501
|
+
* @internal
|
|
502
|
+
* This RB event is when there's a video or sharing media removed from the conference.
|
|
503
|
+
* This could be in the list of the participants (participants have no longer video available)
|
|
504
|
+
* Or this could be an update on the sharing session (removed)
|
|
505
|
+
* This event is also fired when the current user removes sharing or video
|
|
506
|
+
*
|
|
507
|
+
* **Event Data**
|
|
508
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
509
|
+
*/
|
|
510
|
+
ON_WEBCONFERENCE_PUBLISHER_REMOVE = "ON_WEBCONFERENCE_PUBLISHER_REMOVE",
|
|
511
|
+
/**
|
|
512
|
+
* @eventProperty ON_WEBCONFERENCE_LOCKSTATE_UPDATE
|
|
513
|
+
* @internal
|
|
514
|
+
* This RB event is when there's an update in the lock state of the conference
|
|
515
|
+
* If a conference is locked, no other user can join it (the JOIN is rejected)
|
|
516
|
+
* Conference can be locked or unlocked by any moderator of the bubble / room
|
|
517
|
+
*
|
|
518
|
+
* **Event Data**
|
|
519
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
520
|
+
* - **isLock** : Boolean indicating whether the conference is locked
|
|
521
|
+
* - **lockedById** : The DB ID of the user that locked / unlocked the conference
|
|
522
|
+
*/
|
|
523
|
+
ON_WEBCONFERENCE_LOCKSTATE_UPDATE = "ON_WEBCONFERENCE_LOCKSTATE_UPDATE",
|
|
524
|
+
/**
|
|
525
|
+
* @eventProperty ON_WEBCONFERENCE_UNMUTE_DEMAND_RECEIVED
|
|
526
|
+
* @internal
|
|
527
|
+
* This RB event is received when we're asked to unmute ourselves from a distant party;
|
|
528
|
+
*
|
|
529
|
+
* **Event Data**
|
|
530
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
531
|
+
* - **askedBy** : The DB ID of the user that asked ourselves to be unmuted
|
|
532
|
+
*/
|
|
533
|
+
ON_WEBCONFERENCE_UNMUTE_DEMAND_RECEIVED = "ON_WEBCONFERENCE_UNMUTE_DEMAND_RECEIVED",
|
|
534
|
+
/**
|
|
535
|
+
* @eventProperty ON_WEBCONFERENCE_SHARING_CONFLICT
|
|
536
|
+
* @internal
|
|
537
|
+
* This RB event is fired when the local sharing is aborted because another participant
|
|
538
|
+
* started sharing while the local user was still selecting the screen to share
|
|
539
|
+
*
|
|
540
|
+
* **Event Data**
|
|
541
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
542
|
+
*/
|
|
543
|
+
ON_WEBCONFERENCE_SHARING_CONFLICT = "ON_WEBCONFERENCE_SHARING_CONFLICT",
|
|
544
|
+
/**
|
|
545
|
+
* @eventProperty ON_WEBCONFERENCE_LOCALMEDIA_UPDATE
|
|
546
|
+
* @internal
|
|
547
|
+
* This RB event is when there's an update in the local medias.
|
|
548
|
+
* It could be when we add media (video or sharing)
|
|
549
|
+
* It could be when we remove media (video or sharing)
|
|
550
|
+
*
|
|
551
|
+
* **Event Data**
|
|
552
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
553
|
+
* - **mediaType** : The type of media that is updated : 'video' or 'sharing'
|
|
554
|
+
* - **action** : Could be 'added' or 'removed'
|
|
555
|
+
*/
|
|
556
|
+
ON_WEBCONFERENCE_LOCALMEDIA_UPDATE = "ON_WEBCONFERENCE_LOCALMEDIA_UPDATE",
|
|
557
|
+
/**
|
|
558
|
+
* @eventProperty ON_WEBCONFERENCE_LOCAL_PARTICIPANT_UPDATE
|
|
559
|
+
* @internal
|
|
560
|
+
* This RB event is send when the local participant is updated (mute, delegation, etc)
|
|
561
|
+
*
|
|
562
|
+
* **Event Data**
|
|
563
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
564
|
+
*/
|
|
565
|
+
ON_WEBCONFERENCE_LOCAL_PARTICIPANT_UPDATE = "ON_WEBCONFERENCE_LOCAL_PARTICIPANT_UPDATE",
|
|
566
|
+
/**
|
|
567
|
+
* @eventProperty ON_WEBCONFERENCE_REMOTEMEDIA_UPDATE
|
|
568
|
+
* @internal
|
|
569
|
+
* This RB event is when there's an update in the remote media sessions
|
|
570
|
+
* It could be when another user adds media (video or sharing)
|
|
571
|
+
* The media type is 'mozaic' in case the session is related to the Large Grid service (49 videos at once), available via WebConferenceSession.gridServiceSubscription
|
|
572
|
+
* It could be when another user removes media (video or sharing)
|
|
573
|
+
* NB Not the same thing as ON_WEBCONFERENCE_PUBLISHER_ADD, as this event indicates
|
|
574
|
+
* that there's a publisher available, but the ON_WEBCONFERENCE_REMOTEMEDIA_UPDATE is fired
|
|
575
|
+
* when we actually subscribe to a remote media (either sharing or video) and the media can be played
|
|
576
|
+
* by using attachVideoSessionToHtmlElement API
|
|
577
|
+
*
|
|
578
|
+
* **Event Data**
|
|
579
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
580
|
+
* - **mediaType** : The type of media that is updated : 'video' or 'sharing' or 'mozaic' (the large grid of 49 videos) or 'dynamicFeed' (The active talker video)
|
|
581
|
+
* - **action** : Could be 'added' or 'removed' or 'hold'
|
|
582
|
+
*/
|
|
583
|
+
ON_WEBCONFERENCE_REMOTEMEDIA_UPDATE = "ON_WEBCONFERENCE_REMOTEMEDIA_UPDATE",
|
|
584
|
+
/**
|
|
585
|
+
* @eventProperty ON_WEBCONFERENCE_PARTICIPANT_UPDATE
|
|
586
|
+
* @internal
|
|
587
|
+
* This RB event is when there's an update in one of the participants
|
|
588
|
+
* It could be when a user is muted/unmuted
|
|
589
|
+
* It could be when the role or the delegation capability has changed
|
|
590
|
+
* It could be when the user microphone capability has changed
|
|
591
|
+
* It could be when the distant user is asked to be unmuted. In that case, participant ID and action "askToUnmute" will be sent to the event
|
|
592
|
+
* It could be when a user raises/lowers their hand. In that case, participant ID and action "raise-hand" or "lower-hand" will be sent to the event
|
|
593
|
+
*
|
|
594
|
+
* **Event Data**
|
|
595
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
596
|
+
*/
|
|
597
|
+
ON_WEBCONFERENCE_PARTICIPANT_UPDATE = "ON_WEBCONFERENCE_PARTICIPANT_UPDATE",
|
|
598
|
+
/**
|
|
599
|
+
* @eventProperty ON_WEBCONFERENCE_TALKER_UPDATE
|
|
600
|
+
* @internal
|
|
601
|
+
* This RB event is when there's an update in the talker participant
|
|
602
|
+
* It could be when a user starts speaking
|
|
603
|
+
* It could be when the current speaker changes
|
|
604
|
+
* It could be when the last speaker stops speaking (noone is speaking)
|
|
605
|
+
*
|
|
606
|
+
* **Event Data**
|
|
607
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
608
|
+
*/
|
|
609
|
+
ON_WEBCONFERENCE_TALKER_UPDATE = "ON_WEBCONFERENCE_TALKER_UPDATE",
|
|
610
|
+
/**
|
|
611
|
+
* @eventProperty ON_WEBCONFERENCE_DELEGATE
|
|
612
|
+
* @internal
|
|
613
|
+
* This RB event is fired when the conference is delegated, i.e. the owner of the conference has changed
|
|
614
|
+
*
|
|
615
|
+
* **Event Data**
|
|
616
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
617
|
+
* - **userDbId** : The DB ID of the user that is the new owner
|
|
618
|
+
* - **gaveOwnership** : If true it means that the last owner of the conference was the "myself"
|
|
619
|
+
*/
|
|
620
|
+
ON_WEBCONFERENCE_DELEGATE = "ON_WEBCONFERENCE_DELEGATE",
|
|
621
|
+
/**
|
|
622
|
+
* @eventProperty ON_WEBCONFERENCE_SERVICE_UPDATE
|
|
623
|
+
* @internal
|
|
624
|
+
* This RB event is when there's an update in the "conference services"
|
|
625
|
+
* It's used for other services like Grid 49, etc
|
|
626
|
+
*
|
|
627
|
+
* **Event Data**
|
|
628
|
+
* - **roomDbId** : The DB ID of the bubble related to the web conference
|
|
629
|
+
*/
|
|
630
|
+
ON_WEBCONFERENCE_SERVICE_UPDATE = "ON_WEBCONFERENCE_SERVICE_UPDATE",
|
|
631
|
+
/**
|
|
632
|
+
* @eventProperty ON_WEBCONFERENCE_STARTED_EVENT_IN_BUBBLE
|
|
633
|
+
* @internal
|
|
634
|
+
* This RB event is fired when a conference has started in a bubble/room (not by user itself)
|
|
635
|
+
*
|
|
636
|
+
* **Event Data**
|
|
637
|
+
* - **roomDbId** : The DB ID of the bubble where the web conference has started
|
|
638
|
+
*/
|
|
639
|
+
ON_WEBCONFERENCE_STARTED_EVENT_IN_BUBBLE = "ON_WEBCONFERENCE_STARTED_EVENT_IN_BUBBLE",
|
|
640
|
+
/**
|
|
641
|
+
* @eventProperty ON_WEBCONFERENCE_STOP_HIGHLIGHTING
|
|
642
|
+
* @internal
|
|
643
|
+
* This RB event is fired to instruct the UI to stop the current call-area highlight animation.
|
|
644
|
+
*/
|
|
645
|
+
ON_WEBCONFERENCE_STOP_HIGHLIGHTING = "ON_WEBCONFERENCE_STOP_HIGHLIGHTING",
|
|
646
|
+
/**
|
|
647
|
+
* @eventProperty ON_WEBCONFERENCE_START_HIGHLIGHTING
|
|
648
|
+
* @internal
|
|
649
|
+
* This RB event is fired to instruct the UI to start highlighting the sharing participant.
|
|
650
|
+
*/
|
|
651
|
+
ON_WEBCONFERENCE_START_HIGHLIGHTING = "ON_WEBCONFERENCE_START_HIGHLIGHTING",
|
|
652
|
+
/**
|
|
653
|
+
* @eventProperty ON_JOIN_WITHOUT_AUDIO
|
|
654
|
+
* @internal
|
|
655
|
+
* Fired when getUserMedia fails, prompting the caller to join without audio.
|
|
656
|
+
*/
|
|
657
|
+
ON_JOIN_WITHOUT_AUDIO = "ON_JOIN_WITHOUT_AUDIO",
|
|
658
|
+
/**
|
|
659
|
+
* @eventProperty ON_WEBCONFERENCE_ECHOTEST_STATS_UPDATE
|
|
660
|
+
* @internal
|
|
661
|
+
* This RB event is fired when an echo test conference generates stats
|
|
662
|
+
*
|
|
663
|
+
* **Event Data**
|
|
664
|
+
* - **roomDbId** : The DB ID of the bubble where the web conference has started
|
|
665
|
+
* - **stats** : The WebrtcStatisticsData received
|
|
666
|
+
*/
|
|
667
|
+
ON_WEBCONFERENCE_ECHOTEST_STATS_UPDATE = "ON_WEBCONFERENCE_ECHOTEST_STATS_UPDATE",
|
|
668
|
+
/**
|
|
669
|
+
* @eventProperty ON_SESSION_ESTABLISHED
|
|
670
|
+
* This event SHOULD NOT BE HERE AT ALL !!!!
|
|
671
|
+
*
|
|
672
|
+
* * **Event Data**
|
|
673
|
+
* - **sessionId**: the id of the session that is part of the bubble conference that is now ACTIVE and flow is coming;
|
|
674
|
+
* This event is mostly used to attach the session on the HTML audio / video tag as we know that now the flow is active.
|
|
675
|
+
*/
|
|
676
|
+
ON_SESSION_ESTABLISHED = "ON_SESSION_ESTABLISHED"
|
|
677
|
+
}
|
|
678
|
+
/**
|
|
679
|
+
* @internal
|
|
680
|
+
*/
|
|
681
|
+
export declare enum WebConferenceServiceInnerEvents {
|
|
682
|
+
/**
|
|
683
|
+
* @eventProperty ON_WEBCONFERENCE_HIDE_INVITATION
|
|
684
|
+
* This event is send when we the user has either joined the conference in that bubble, or rejected the incoming call, or joined with other device
|
|
685
|
+
* It's used so that we need to hide the incoming call for these additional cases; For end of conference, check also ON_CONFERENCE_ENDED
|
|
686
|
+
*
|
|
687
|
+
* **Event Data**
|
|
688
|
+
* - **roomDbId** : The DB ID of the bubble
|
|
689
|
+
*/
|
|
690
|
+
ON_WEBCONFERENCE_HIDE_INVITATION = "ON_WEBCONFERENCE_HIDE_INVITATION",
|
|
691
|
+
/**
|
|
692
|
+
* @eventProperty ON_WEBCONFERENCE_SHOW_INVITATION
|
|
693
|
+
* This event is send when we need to show an invitation to join the bubble conf
|
|
694
|
+
*
|
|
695
|
+
* **Event Data**
|
|
696
|
+
* - **roomDbId** : The DB ID of the bubble
|
|
697
|
+
*/
|
|
698
|
+
ON_WEBCONFERENCE_SHOW_INVITATION = "ON_WEBCONFERENCE_SHOW_INVITATION",
|
|
699
|
+
/**
|
|
700
|
+
* @eventProperty ON_CONFERENCE_UPDATE_SUPERVISION_STATE
|
|
701
|
+
* This RB event is send when our participation in a conference is updated and we need to send a supervision state change to our ressources
|
|
702
|
+
*/
|
|
703
|
+
ON_CONFERENCE_UPDATE_SUPERVISION_STATE = "ON_CONFERENCE_UPDATE_SUPERVISION_STATE"
|
|
704
|
+
}
|
|
705
|
+
declare const BubbleConferenceServiceRB_base: object & (abstract new (...args: any[]) => import("../../services/service").EventsMixinTemplate<IBubbleConferenceServiceEvents>);
|
|
706
|
+
/**
|
|
707
|
+
* @internal
|
|
708
|
+
*/
|
|
709
|
+
export declare class BubbleConferenceServiceRB extends BubbleConferenceServiceRB_base implements BubbleConferenceService {
|
|
710
|
+
webConferenceSessions: Record<string, WebConferenceSession>;
|
|
711
|
+
webConferenceHelper: WebConferenceHelper;
|
|
712
|
+
webrtcConfigAndUtils: WebrtcConfigAndUtils;
|
|
713
|
+
private logger;
|
|
714
|
+
private authService;
|
|
715
|
+
private errorHelperService;
|
|
716
|
+
private contactService;
|
|
717
|
+
private xmppService;
|
|
718
|
+
private profileService;
|
|
719
|
+
private mainService;
|
|
720
|
+
private eventService;
|
|
721
|
+
private settingsService;
|
|
722
|
+
private deviceManagementService;
|
|
723
|
+
private virtualBackgroundService?;
|
|
724
|
+
private bubbleConferenceRecapService?;
|
|
725
|
+
private innerRxSubject;
|
|
726
|
+
private conferenceRef;
|
|
727
|
+
private xmppJingleListener;
|
|
728
|
+
private makingCall;
|
|
729
|
+
/**
|
|
730
|
+
* In-flight conference REST requests (start/join), keyed by bubble dbId. Lets us abort a request whose
|
|
731
|
+
* outcome nobody wants any more -- the user cancelled, stopped or left the conference -- so that it cannot
|
|
732
|
+
* settle minutes later and tear down whatever conference is running by then (CRRAINB-54760).
|
|
733
|
+
*/
|
|
734
|
+
private pendingConferenceRequests;
|
|
735
|
+
private addingMedia;
|
|
736
|
+
private connected;
|
|
737
|
+
private xmppServiceSubscription;
|
|
738
|
+
private xmppConnectionSubscription;
|
|
739
|
+
private subscriptions;
|
|
740
|
+
private eventServiceSubscriptions;
|
|
741
|
+
private statsIntervals;
|
|
742
|
+
private reconnectionsInProgress;
|
|
743
|
+
private audioProfileChanging;
|
|
744
|
+
private videoProfileChanging;
|
|
745
|
+
private promiseInProgress;
|
|
746
|
+
private nameSpaceJingle;
|
|
747
|
+
private promiseQueue;
|
|
748
|
+
private raiseHandTemp;
|
|
749
|
+
adhocConferenceStarting: boolean;
|
|
750
|
+
static getInstance(): BubbleConferenceServiceRB;
|
|
751
|
+
static build(): BubbleConferenceServiceRB;
|
|
752
|
+
private constructor();
|
|
753
|
+
start(): Promise<void>;
|
|
754
|
+
stop(): Promise<void>;
|
|
755
|
+
private attachXmppHandlers;
|
|
756
|
+
subscribe(handler: any, eventNames?: string | string[]): Subscription;
|
|
757
|
+
/**
|
|
758
|
+
* Subscribe to all events from the service (internal + public).
|
|
759
|
+
* @deprecated Use `events()` instead.
|
|
760
|
+
* @example
|
|
761
|
+
* ```typescript
|
|
762
|
+
* service.events('ON_WEBCONFERENCE_LOCALMEDIA_UPDATE').subscribe(event => {
|
|
763
|
+
* console.log(event.data.roomDbId, event.data.mediaType, event.data.action);
|
|
764
|
+
* });
|
|
765
|
+
* ```
|
|
766
|
+
*/
|
|
767
|
+
eventSubscribe(handler: any, eventNames?: string | string[]): Subscription;
|
|
768
|
+
sendEvent<const EventName extends keyof IBubbleConferenceServiceEvents & string>(eventName: EventName, data: IBubbleConferenceServiceEvents[EventName]): void;
|
|
769
|
+
/**
|
|
770
|
+
* Subscribe to inner events for the web conference sessions (all events are of RBEvent type {name: string, data:any});
|
|
771
|
+
* Most of the events are not documentated, and they're usually not to be used by external app;
|
|
772
|
+
* @param handler - The call-back function that will be subscribed to the RxJS subject
|
|
773
|
+
* @returns Returns RxJS Subscription
|
|
774
|
+
*/
|
|
775
|
+
subscribeToInnerEvents(handler: any): Subscription;
|
|
776
|
+
sendInnerEvent(name: string, data?: any): void;
|
|
777
|
+
startConference(bubble: Bubble): Promise<BubbleConference>;
|
|
778
|
+
getConference(bubble: Bubble): BubbleConference | undefined;
|
|
779
|
+
/**
|
|
780
|
+
* Start a web conference in the given bubble
|
|
781
|
+
* @param bubble - The bubble where the user is going to start the conference
|
|
782
|
+
* @param recordConfig - Allows to start recording immediately when the conference begins with the specified params.
|
|
783
|
+
* @returns Returns WebConference object that is related to the web conference session in that bubble
|
|
784
|
+
*/
|
|
785
|
+
startWebConference(bubble: Bubble, recordConfig?: {
|
|
786
|
+
params: BubbleConferenceRecapParams;
|
|
787
|
+
saveConfig: boolean;
|
|
788
|
+
}): Promise<BubbleConference>;
|
|
789
|
+
/**
|
|
790
|
+
* Start a web conference in the given bubble with the audio being available on the deskphone
|
|
791
|
+
* @param bubble - The bubble where the user is going to start the conference
|
|
792
|
+
* @returns Returns WebConference object that is related to the web conference session in that bubble
|
|
793
|
+
*/
|
|
794
|
+
startWebConferenceByPhone(bubble: Bubble): Promise<BubbleConference>;
|
|
795
|
+
/**
|
|
796
|
+
* Stop a web conference in the given bubble
|
|
797
|
+
* @param bubble - The bubble where the user wants to end the conference
|
|
798
|
+
*/
|
|
799
|
+
stopWebConference(bubble: Bubble): Promise<void>;
|
|
800
|
+
/**
|
|
801
|
+
* Joins a web conference in the given bubble
|
|
802
|
+
* @param bubble - The bubble where the user wants to join a conference (there should be an active conference in the bubble)
|
|
803
|
+
* @param joinParams - The join conference parameters
|
|
804
|
+
* @returns Returns WebConferenceSession object that is related to the web conference session in that bubble
|
|
805
|
+
*/
|
|
806
|
+
joinWebConference(bubble: Bubble, joinParams?: BubbleConferenceJoinParameters): Promise<BubbleConference>;
|
|
807
|
+
/**
|
|
808
|
+
* Joins a web conference in the given bubble by his deskphone (only for RB Hub users); The user will also join the bubble in "no audio mode"
|
|
809
|
+
* @param bubble - The bubble where the user wants to join a conference (there should be an active conference in the bubble)
|
|
810
|
+
* @returns Returns WebConference object that is related to the web conference session in that bubble.
|
|
811
|
+
*/
|
|
812
|
+
joinWebConferenceByPhone(bubble: Bubble): Promise<BubbleConference>;
|
|
813
|
+
/**
|
|
814
|
+
* Joins a web conference for media echo test
|
|
815
|
+
* @param bubble - The bubble where the user wants to join a conference (there should be an active conference in the bubble)
|
|
816
|
+
* @param joinParams - The join conference parameters
|
|
817
|
+
* @returns Returns WebConferenceSession object that is related to the web conference session in that bubble
|
|
818
|
+
*/
|
|
819
|
+
joinEchoTestWebConference(bubble: Bubble, joinParams?: BubbleConferenceJoinParameters): Promise<BubbleConference>;
|
|
820
|
+
/**
|
|
821
|
+
* Removes me from the current conference. A "shortcut" for API disconnectUserFromWebConference
|
|
822
|
+
* @param webConference - The current web conference
|
|
823
|
+
*/
|
|
824
|
+
leaveWebConference(webConference: BubbleConference): Promise<void>;
|
|
825
|
+
/**
|
|
826
|
+
* SDK-level recording-consent gate. Throws when the conference requires explicit
|
|
827
|
+
* recording consent and the local participant has not given it. This is defense-in-depth on top
|
|
828
|
+
* of the app's own UI-level consent popup: it also protects CPaaS/SDK integrations that call the
|
|
829
|
+
* SDK directly without going through Rainbow's own UI (and therefore never show that popup).
|
|
830
|
+
* Also fires BubbleConferenceEvents.ON_RECORDING_CONSENT_REQUIRED on the session first, so a
|
|
831
|
+
* subscriber can react without needing to catch the rejection specifically.
|
|
832
|
+
* Callers must catch/reject on this -- it never resolves silently.
|
|
833
|
+
*/
|
|
834
|
+
private assertRecordingConsentGiven;
|
|
835
|
+
/**
|
|
836
|
+
* Add media (video or sharing) to an existing web conference
|
|
837
|
+
* @param webConference - the WebConference object where we want to add the media
|
|
838
|
+
* @param mediaType - the type of the media to be added. Accepted values are 'video' or 'sharing';
|
|
839
|
+
* @param existingStream - if we want to use an already existing stream
|
|
840
|
+
* @param getAudioForSharing - if we want to add audio from system to sharing
|
|
841
|
+
*/
|
|
842
|
+
addMediaToWebConference(webConference: BubbleConference, mediaType: BubbleConferenceMedia, existingStream?: MediaStream, getAudioForSharing?: boolean): Promise<void>;
|
|
843
|
+
/**
|
|
844
|
+
* Remove Media from the current web conference. It could be either 'video' or 'sharing'
|
|
845
|
+
* @param webConference - The Web conference
|
|
846
|
+
* @param mediaType - the media to be removed 'video' or 'sharing'
|
|
847
|
+
*/
|
|
848
|
+
removeMediaFromWebConference(webConference: BubbleConference, mediaType: BubbleConferenceMedia): void;
|
|
849
|
+
/**
|
|
850
|
+
* Update a conference participant (ourself, or any other participant if the user is a moderator of the conference)
|
|
851
|
+
* @param webConference -The Web Conference
|
|
852
|
+
* @param participantId -ID of particpant to update
|
|
853
|
+
* @param option -update data ( could be on of: mute, unmute, hold, retrieve, plug, unplug, update);
|
|
854
|
+
* With 'update' option we can :
|
|
855
|
+
* - Update media bandwidth as publisher. Two parameters must be present: media and bitRate
|
|
856
|
+
* - Update substream level as subscriber. One parameter must be present: subStreamLevel. Parameter publisherId is optional.
|
|
857
|
+
* @param media - type of media to be updated (video/sharing)
|
|
858
|
+
* @param bitRate - the max bitrate to be set (0 is unlimited)
|
|
859
|
+
* @param subStreamLevel - set new sub-stream level. Only available for publishers and in simulcast mode (0 - low, 1 - medium, 2 - high)
|
|
860
|
+
* @param publisherId - the publisher id related to the update
|
|
861
|
+
* @returns a promise that resolve when particpant state is updated
|
|
862
|
+
*/
|
|
863
|
+
updateParticipant(webConference: BubbleConference, participantId: string, option: string, media?: string, bitRate?: string, subStreamLevel?: any, publisherId?: any): Promise<void>;
|
|
864
|
+
/**
|
|
865
|
+
* Mute or unmute the local participant's own audio locally only (client-side), without notifying the server or other participants.
|
|
866
|
+
* Used in stage mode so a participant can silence themselves without leaving the stage.
|
|
867
|
+
* @param webConference - the web conference session
|
|
868
|
+
* @param option - "mute" or "unmute"
|
|
869
|
+
*/
|
|
870
|
+
localMuteParticipant(webConference: BubbleConference, option: "mute" | "unmute"): void;
|
|
871
|
+
sendWebConferenceEvent(name: keyof IBubbleConferenceServiceEvents, bubble: Bubble): void;
|
|
872
|
+
/**
|
|
873
|
+
* Attach the video session to a given HTML <video> tag element (by id)
|
|
874
|
+
* @param videoElementId - the ID of the HTML video tag element
|
|
875
|
+
* @param videoSession - the videoSession object that is inside the WebConferenceParticipant object
|
|
876
|
+
*/
|
|
877
|
+
attachVideoSessionToHtmlElement(videoElementId: string, videoSession: any): void;
|
|
878
|
+
/**
|
|
879
|
+
* Detach all stream from an HTML <video> tag element (by id)
|
|
880
|
+
* @param videoElementId - the ID of the HTML video tag element
|
|
881
|
+
*/
|
|
882
|
+
detachMediaToHtmlElement(videoElementId: string): void;
|
|
883
|
+
/**
|
|
884
|
+
* Get the owner contact for the webConference session
|
|
885
|
+
* @param webConferenceSession - the ID of the HTML video tag element (should be found by document.getElementById)
|
|
886
|
+
* @returns the Contact that is the "owner" / leader of the web conference
|
|
887
|
+
*/
|
|
888
|
+
getConferenceLeaderContact(webConferenceSession: WebConferenceSession): Contact;
|
|
889
|
+
/**
|
|
890
|
+
* API used to update the bubble conferences configuration
|
|
891
|
+
* @param disableDynamicFeed - If true, the webConferenceHelper will disable the subscription mecanisme for the dynamic feed
|
|
892
|
+
* In case the subscription is already done, this will not effect the current session;
|
|
893
|
+
* NB The default value is FALSE for all conferences (i.e. by default, dynamic feed is activated)
|
|
894
|
+
* @param disableAutoSubscriptions - If true, the webConferenceHelper will disable the auto subscription mecanisme for all incoming publishers (except sharing)
|
|
895
|
+
* In case the subscription is already done, this will not effect the current session;
|
|
896
|
+
* NB The default value is FALSE for all conferences (i.e. by default, subscription is done for all publsihers)
|
|
897
|
+
*/
|
|
898
|
+
setBubbleConferencesConfiguration(disableDynamicFeed?: boolean, disableAutoSubscriptions?: boolean): void;
|
|
899
|
+
private attachHandlers;
|
|
900
|
+
/**
|
|
901
|
+
* Get the web conference session by it's ID
|
|
902
|
+
* @param id - The ID of the web conference session (i.e. also equal to the DB ID of the room)
|
|
903
|
+
* @returns Returns the WebConferenceSession (or null otherwise)
|
|
904
|
+
*/
|
|
905
|
+
getWebConferenceSessionById(id?: string): WebConferenceSession | undefined;
|
|
906
|
+
/**
|
|
907
|
+
* Returns true if the user is currenty participating in any web conference
|
|
908
|
+
* @returns Returns true if the user is currenty participating in any web conference
|
|
909
|
+
*/
|
|
910
|
+
hasActiveWebConferenceSession(): boolean;
|
|
911
|
+
/**
|
|
912
|
+
* Returns WebConferenceSession if the user has an active web conference session (that he has joined)
|
|
913
|
+
* @returns Returns WebConferenceSession or null instead
|
|
914
|
+
*/
|
|
915
|
+
getActiveWebConferenceSession(): WebConferenceSession | null;
|
|
916
|
+
/**
|
|
917
|
+
* CRRAINB-54746: names compared here come from two different worlds -- raw server values
|
|
918
|
+
* (bubble name, contact data) and values rebuilt by the client (Contact.computeDisplayName()
|
|
919
|
+
* upper-cases the first letter). Normalize both sides before comparing so the match does not
|
|
920
|
+
* depend on casing or on stray surrounding spaces.
|
|
921
|
+
*/
|
|
922
|
+
private normalizeNameForComparison;
|
|
923
|
+
/**
|
|
924
|
+
* RQRAINB-14771: RED users can opt in (general settings) to the beta conference infrastructure.
|
|
925
|
+
* The profile is re-checked here so a stale localStorage value never sends the flag.
|
|
926
|
+
*/
|
|
927
|
+
private isBetaConferenceActivated;
|
|
928
|
+
getUnjoinedWebConferenceSessionByOwnerName(name: string): Promise<WebConferenceSession | null>;
|
|
929
|
+
putActiveConferenceOnHold(call?: any): void;
|
|
930
|
+
retrieveConferenceOnHold(): void;
|
|
931
|
+
/**
|
|
932
|
+
* Joins a web conference in no audio mode. Only video & sharing sessions are available
|
|
933
|
+
* @param bubble - The bubble where the user wants to join a conference (there should be an active conference in the bubble)
|
|
934
|
+
* @param audioOnDeskphone - If true, the user has already joined with audio on the deskphone, so dont set the noAudio flag
|
|
935
|
+
* @returns Returns WebConferenceSession object that is related to the web conference session in that bubble
|
|
936
|
+
*/
|
|
937
|
+
private joinWebConferenceWithoutAudio;
|
|
938
|
+
private manageCodecs;
|
|
939
|
+
/**
|
|
940
|
+
* API that tells if the user can use the addPSTNParticipantToConference with external phone numbers, or only to call rainbow users
|
|
941
|
+
* @returns Returns TRUE if user can add participantPhoneNumbers to the conference
|
|
942
|
+
*/
|
|
943
|
+
canAddPSTNParticipantToWebConference(): boolean;
|
|
944
|
+
/**
|
|
945
|
+
* Add (call) rainbow users or PSTN participants in the conference
|
|
946
|
+
* @param webConferenceSession - The web conference where we want to add the participants
|
|
947
|
+
* @param participantPhoneNumbers - The phone numbers to be added to the conference
|
|
948
|
+
* @param userIds - the rainbow user Ids to be added to the conference
|
|
949
|
+
*/
|
|
950
|
+
addPSTNParticipantToWebConference(webConferenceSession: WebConferenceSession, participantPhoneNumbers: string[], userIds: string[]): Promise<void>;
|
|
951
|
+
/**
|
|
952
|
+
* Decline incoming invitation to join a web conference. This API will send update to all other connected devices to the user to notify;
|
|
953
|
+
* @param bubble - The bubble to decline the web conference invitation
|
|
954
|
+
* @returns Returns on API call success
|
|
955
|
+
*/
|
|
956
|
+
declineInvitationToJoinConference(bubble: Bubble): Promise<void>;
|
|
957
|
+
/**
|
|
958
|
+
* Add audio to an existing web conference session (ONLY IN CASE THE JOIN IS DONE VIA NOAUDIO OPTION)
|
|
959
|
+
* @param webConferenceSession - the WebConferenceSession object where we want to add the media
|
|
960
|
+
*/
|
|
961
|
+
addAudioToWebConferenceSession(webConferenceSession: WebConferenceSession): Promise<void>;
|
|
962
|
+
private applyConstraintsToSharingStream;
|
|
963
|
+
/**
|
|
964
|
+
* Removes a PSTN user from the web conference in the given bubble; This API can be used by
|
|
965
|
+
* the moderators of the bubble to remove other participants too
|
|
966
|
+
* @param webConferenceSession - The current web conference session
|
|
967
|
+
* @param participantId - The participant ID that should be removed from the conference
|
|
968
|
+
*/
|
|
969
|
+
private disconnectPstnParticipantFromWebConference;
|
|
970
|
+
private innerDisconnectUserFromWebConference;
|
|
971
|
+
/**
|
|
972
|
+
* Removes a user from the web conference in the given bubble; This API can be used by
|
|
973
|
+
* the moderators of the bubble to remove other participants too
|
|
974
|
+
* @param webConferenceSession - The current web conference session
|
|
975
|
+
* @param participantId - The participant ID that should be removed from the conference
|
|
976
|
+
*/
|
|
977
|
+
disconnectUserFromWebConference(webConferenceSession: WebConferenceSession, participantId: string): Promise<void>;
|
|
978
|
+
/**
|
|
979
|
+
* API used to subscribe to the dynamic feed (if not done already)
|
|
980
|
+
* @param webConferenceSession - The Web Conference session
|
|
981
|
+
*/
|
|
982
|
+
subscribeToDynamicFeed(webConferenceSession: WebConferenceSession): Promise<void>;
|
|
983
|
+
/**
|
|
984
|
+
* Subscribe to a conference service (like the grid 49 / mozaic)
|
|
985
|
+
* @param webConferenceSession - The Web Conference session
|
|
986
|
+
* @param serviceId - The serviceId to who we want to subscribe
|
|
987
|
+
*/
|
|
988
|
+
subscribeToService(webConferenceSession: WebConferenceSession, serviceId: string): Promise<void>;
|
|
989
|
+
/**
|
|
990
|
+
* Subscribe to an echo test service
|
|
991
|
+
* @param webConferenceSession - The Web Conference session
|
|
992
|
+
* @param serviceId - The serviceId to who we want to subscribe
|
|
993
|
+
*/
|
|
994
|
+
subscribeToEchoTestService(webConferenceSession: WebConferenceSession, serviceId: string): Promise<void>;
|
|
995
|
+
/**
|
|
996
|
+
* Subscribe to a video of a participant
|
|
997
|
+
* @param webConferenceSession - The Web Conference session
|
|
998
|
+
* @param participant - The WebConferenceParticipant to who we want to subscribe
|
|
999
|
+
* @param media - The type of media you want to subscribe to: video or sharing
|
|
1000
|
+
*/
|
|
1001
|
+
subscribeToParticipantVideo(webConferenceSession: WebConferenceSession, participant: BubbleConferenceParticipant, media?: string): Promise<void>;
|
|
1002
|
+
/**
|
|
1003
|
+
* Method updatePstnParticipant
|
|
1004
|
+
* @param webConferenceSession - The Web Conference session
|
|
1005
|
+
* @param participantId - ID of particpant to update
|
|
1006
|
+
* @param option - update data (could be on of: mute, unmute);
|
|
1007
|
+
*/
|
|
1008
|
+
private updatePstnParticipant;
|
|
1009
|
+
/**
|
|
1010
|
+
* API used to update the conference parameters (can be used by the conference moderator)
|
|
1011
|
+
* @param webConferenceSession - The Web Conference session
|
|
1012
|
+
* @param option - could be one of:
|
|
1013
|
+
* - mute (Mutes all participants, except requester.)
|
|
1014
|
+
* - unmute (Unmutes all participants)
|
|
1015
|
+
* - lock (Disables any future participant from joining conference)
|
|
1016
|
+
* - unlock (Unlocks the conference)
|
|
1017
|
+
*/
|
|
1018
|
+
updateConferenceParameters(webConferenceSession: WebConferenceSession, option: string): Promise<void>;
|
|
1019
|
+
/**
|
|
1020
|
+
* Method used to delegate the conference to another participant
|
|
1021
|
+
* @param webConferenceSession - The Web conference session
|
|
1022
|
+
* @param participantId - the ID of the participant to whom we will delegate the conference
|
|
1023
|
+
*/
|
|
1024
|
+
delegateConferenceToParticipant(webConferenceSession: WebConferenceSession, participantId: string): Promise<void>;
|
|
1025
|
+
/**
|
|
1026
|
+
* Method used to stop the echo test
|
|
1027
|
+
* @param roomDbId - the DB Id of the room where we want to get the stats
|
|
1028
|
+
*/
|
|
1029
|
+
getConferenceTalkingTimeStats(roomDbId: string): Promise<any>;
|
|
1030
|
+
/**
|
|
1031
|
+
* Method used to start the echo test
|
|
1032
|
+
*/
|
|
1033
|
+
startMediaEchoTest(): Promise<any>;
|
|
1034
|
+
/**
|
|
1035
|
+
* Method used to stop the echo test
|
|
1036
|
+
*/
|
|
1037
|
+
stopMediaEchoTest(): Promise<void>;
|
|
1038
|
+
/**
|
|
1039
|
+
* Method used to initiates a conference for pilot test.
|
|
1040
|
+
* https://git.openrainbow.org/cloud-services/webrtc-documentation/-/blob/main/chapters/pilot_test.md
|
|
1041
|
+
* @returns Identifyer of the bubble used for test
|
|
1042
|
+
*/
|
|
1043
|
+
startMediaEchoTestV2(): Promise<string>;
|
|
1044
|
+
/**
|
|
1045
|
+
* Transfer P2P call to Conference
|
|
1046
|
+
* @param oldSession - Jingle session object related to the P2P session
|
|
1047
|
+
* @param jingleJid - The jid of the Janus server where we want to join
|
|
1048
|
+
* @param bubble - The bubble where the adhoc is done
|
|
1049
|
+
* @param myConference - Is this my conference (initiator of the conf adhoc)
|
|
1050
|
+
* @param shouldMute - Whether the user should mute after join in the conference
|
|
1051
|
+
*/
|
|
1052
|
+
transferP2pCallToConference(oldSession: any, jingleJid: string, bubble: Bubble, myConference?: boolean, shouldMute?: boolean): Promise<void>;
|
|
1053
|
+
/**
|
|
1054
|
+
* Method used to put all current incoming video sessions on hold
|
|
1055
|
+
* @param webConferenceSession - The Web conference session
|
|
1056
|
+
*/
|
|
1057
|
+
putAllRemoteVideoSessionsOnHold(webConferenceSession: WebConferenceSession): void;
|
|
1058
|
+
/**
|
|
1059
|
+
* Method used to put the video session of the participant on hold; Cannot be done on sharing session !
|
|
1060
|
+
* @param participant - The Web conference participant
|
|
1061
|
+
*/
|
|
1062
|
+
putRemoteVideoSessionOnHold(participant: BubbleConferenceParticipant): Promise<void>;
|
|
1063
|
+
/**
|
|
1064
|
+
* Method used to unhold the remote video session for participant; Cannot be done on sharing session !
|
|
1065
|
+
* @param participant - The Web conference participant
|
|
1066
|
+
*/
|
|
1067
|
+
putRemoteVideoSessionOnUnhold(participant: BubbleConferenceParticipant): Promise<void>;
|
|
1068
|
+
/**
|
|
1069
|
+
* Method used to remove all incoming video sessions; Also the dynamic feed / active talker video is removed
|
|
1070
|
+
* @param webConferenceSession - The Web conference participant
|
|
1071
|
+
*/
|
|
1072
|
+
removeAllRemoteVideoSessions(webConferenceSession: WebConferenceSession): void;
|
|
1073
|
+
private onVideoInputDeviceChange;
|
|
1074
|
+
private onAudioInputDeviceChange;
|
|
1075
|
+
private onReplaceBackgroundChangeEvent;
|
|
1076
|
+
/**
|
|
1077
|
+
* Method askToAddSharingToWebConferenceSession
|
|
1078
|
+
* Used only on desktop application : choose which screen to share
|
|
1079
|
+
*/
|
|
1080
|
+
askToAddSharingToWebConferenceSession(conversation: any, conferenceSession: any, shouldAskForAudio?: boolean): void;
|
|
1081
|
+
/**
|
|
1082
|
+
* Method getUserMediaForSession
|
|
1083
|
+
* @param dbId - the ID of the web conference session
|
|
1084
|
+
*/
|
|
1085
|
+
private getUserMediaForSession;
|
|
1086
|
+
/**
|
|
1087
|
+
* Shown only when the microphone hasn't answered within {@link GET_USER_MEDIA_TIMEOUT_MS} (e.g. a flaky
|
|
1088
|
+
* USB/Bluetooth device stuck reconnecting) -- lets the user decide instead of the join silently hanging.
|
|
1089
|
+
* @returns "noMic" if the user agrees to join without audio, "cancelled" if they decline
|
|
1090
|
+
*/
|
|
1091
|
+
private confirmJoinWithoutMicrophone;
|
|
1092
|
+
private disableMediaStream;
|
|
1093
|
+
private getSilentStream;
|
|
1094
|
+
/**
|
|
1095
|
+
* Method initCall
|
|
1096
|
+
* @param jid - the JID of the distant party to make call
|
|
1097
|
+
* @param dbId - the ID of the web conference session
|
|
1098
|
+
* @param callId - unique call ID for this session
|
|
1099
|
+
* @param forceTurn - a flag whether we should go only through TURN servers or not
|
|
1100
|
+
*/
|
|
1101
|
+
private initJingleCall;
|
|
1102
|
+
/**
|
|
1103
|
+
* Creates a new entry for metrics on the server related to this session
|
|
1104
|
+
* @param webConfId - the id of the conference
|
|
1105
|
+
* @param sessionId - the session id related to the conference
|
|
1106
|
+
*/
|
|
1107
|
+
private createStatisticsForSession;
|
|
1108
|
+
/**
|
|
1109
|
+
* Updates the metrics for the given session which is part of the conference
|
|
1110
|
+
* @param webConferenceSession - the WebConferenceSession
|
|
1111
|
+
* @param sessionId - the session id related to the conference
|
|
1112
|
+
*/
|
|
1113
|
+
private updateStatisticsForSession;
|
|
1114
|
+
/**
|
|
1115
|
+
* Called when the conference is delegated to another user
|
|
1116
|
+
* @param webConfId - the webConfId
|
|
1117
|
+
* @param userId - the userId that is now the owner of the conference
|
|
1118
|
+
*/
|
|
1119
|
+
onConferenceDelegated(webConfId: string, userId: string): void;
|
|
1120
|
+
/**
|
|
1121
|
+
* Make snapshot to room and get the conference session info related to that room
|
|
1122
|
+
* Data received from Server
|
|
1123
|
+
* data Object
|
|
1124
|
+
active Boolean -- Is there an active conference?
|
|
1125
|
+
participants Object[]
|
|
1126
|
+
userId optional String
|
|
1127
|
+
phoneNumber optional String
|
|
1128
|
+
participantRole optional String (moderator, member, guest)
|
|
1129
|
+
total optional Number
|
|
1130
|
+
limit optional Number (Default value: 100)
|
|
1131
|
+
offset optional Number
|
|
1132
|
+
* @param roomDbId - The Web conference session
|
|
1133
|
+
*/
|
|
1134
|
+
private makeSnapshotByRoomDbId;
|
|
1135
|
+
private createSessionParticipantFromSnapshotData;
|
|
1136
|
+
private updateWebConferenceFromSnapshotData;
|
|
1137
|
+
private disableAllLocalStreamsForSession;
|
|
1138
|
+
private removeActiveConferenceSession;
|
|
1139
|
+
private resetBusyStateIfNeeded;
|
|
1140
|
+
/**
|
|
1141
|
+
* Registers a new in-flight conference request (start/join) for the given room and returns its abort
|
|
1142
|
+
* controller. Any request still pending for that room is abandoned first: only the latest attempt is
|
|
1143
|
+
* allowed to act on its own outcome.
|
|
1144
|
+
*/
|
|
1145
|
+
private beginConferenceRequest;
|
|
1146
|
+
/**
|
|
1147
|
+
* Abandons the conference request still in flight for the given room, if any. Called from every path that
|
|
1148
|
+
* gives up on joining or ends the conference, so that a start/join request left hanging by the network
|
|
1149
|
+
* cannot outlive the intent that triggered it.
|
|
1150
|
+
*/
|
|
1151
|
+
private abortPendingConferenceRequest;
|
|
1152
|
+
/**
|
|
1153
|
+
* True when the rejection is our own abort (see abortPendingConferenceRequest) rather than an actual
|
|
1154
|
+
* failure. Such a rejection must stay silent: no error popup and no teardown, since whoever aborted the
|
|
1155
|
+
* request has already cleaned up.
|
|
1156
|
+
*/
|
|
1157
|
+
private isAbortedConferenceRequest;
|
|
1158
|
+
/**
|
|
1159
|
+
* True when the session this call was working on is no longer the one registered for the room -- the user
|
|
1160
|
+
* gave up and started/joined again in the meantime. A late failure must then be reported to its own caller
|
|
1161
|
+
* but must not touch the session that took its place (CRRAINB-54760).
|
|
1162
|
+
*/
|
|
1163
|
+
private isStaleConferenceSession;
|
|
1164
|
+
private createSessionParticipantFromElem;
|
|
1165
|
+
private onXmppJingleMessage;
|
|
1166
|
+
private onConferenceMessage;
|
|
1167
|
+
attachRemoteAudioStream(webConferenceSession: WebConferenceSession): void;
|
|
1168
|
+
private getWebConferenceByJingleSessionId;
|
|
1169
|
+
private onJingleUpdateStream;
|
|
1170
|
+
private webrtcConfigAndUtilsEvent;
|
|
1171
|
+
private onJingleMessage;
|
|
1172
|
+
private answerPexipSession;
|
|
1173
|
+
private removePexipMedia;
|
|
1174
|
+
private addVideoPexip;
|
|
1175
|
+
private onJingleSessionInvite;
|
|
1176
|
+
private onSessionTerminated;
|
|
1177
|
+
private onJingleSessionStats;
|
|
1178
|
+
private onJingleVideoQualityChangeEvent;
|
|
1179
|
+
private onJingleErrorEvent;
|
|
1180
|
+
private onConfSessionReconnectNeeded;
|
|
1181
|
+
private onConfSessionConnected;
|
|
1182
|
+
/**
|
|
1183
|
+
* Reconnects all the audio / video / sharing jingle sessions related to the active conference session (if any)
|
|
1184
|
+
*/
|
|
1185
|
+
private reconnectActiveConferenceSession;
|
|
1186
|
+
/**
|
|
1187
|
+
* This event occurs when the ICE connection for a given webrtc session goes to "FAILED" state
|
|
1188
|
+
* @param webConferenceSession - the conference session impacted
|
|
1189
|
+
* @param session - the jingle session
|
|
1190
|
+
*/
|
|
1191
|
+
private onIceConnectionFailedForSession;
|
|
1192
|
+
/**
|
|
1193
|
+
* This event occurs when the ICE connection for a given webrtc session goes to "disconnected" stat
|
|
1194
|
+
* @param webConference - the conference session impacted
|
|
1195
|
+
* @param session - the jingle session
|
|
1196
|
+
*/
|
|
1197
|
+
private onIceConnectionDisconnectedForSession;
|
|
1198
|
+
/**
|
|
1199
|
+
* This event occurs when the ICE connection for a given webrtc session goes to "disconnected" state
|
|
1200
|
+
* @param webConferenceSession - the web conference session impacted
|
|
1201
|
+
* @param session - the jingle session to reconnect
|
|
1202
|
+
* @param timeout - the timeout in ms to wait before doing any action. Default value is 1000ms
|
|
1203
|
+
*/
|
|
1204
|
+
private sendTransportReplaceForSession;
|
|
1205
|
+
/**
|
|
1206
|
+
* This method is used to check the current state of the conference and update the local conference
|
|
1207
|
+
* @param webConferenceSession - the web conference session impacted
|
|
1208
|
+
*/
|
|
1209
|
+
private updateWebConferenceAfterReconnection;
|
|
1210
|
+
dropAudio(): Promise<void>;
|
|
1211
|
+
waitWebConferenceConnection(session: BubbleConference): Promise<void>;
|
|
1212
|
+
/**
|
|
1213
|
+
* Raise your hand in the concerned Conference
|
|
1214
|
+
* @param webConferenceSession - The conference session where the user is going to lower their hand
|
|
1215
|
+
*/
|
|
1216
|
+
raiseHand(webConferenceSession: WebConferenceSession): Promise<WebConferenceSession>;
|
|
1217
|
+
/**
|
|
1218
|
+
* Lower your hand in the concerned conference (you can also lower the hand of someone else if you are a Bubble Organizer)
|
|
1219
|
+
* @param webConferenceSession - The conference session where the user is going to lower their hand
|
|
1220
|
+
* @param user - The user lowering their hand
|
|
1221
|
+
*/
|
|
1222
|
+
lowerHand(webConferenceSession: WebConferenceSession, user: BubbleConferenceParticipant): Promise<WebConferenceSession>;
|
|
1223
|
+
/**
|
|
1224
|
+
* Get all conference recaps that belong to the connected user
|
|
1225
|
+
*/
|
|
1226
|
+
getRecaps(bubble?: Bubble, forceUpdate?: boolean): Promise<BubbleConferenceRecap[]>;
|
|
1227
|
+
/**
|
|
1228
|
+
* Get conference recaps shared with the connected user
|
|
1229
|
+
*/
|
|
1230
|
+
getSharedWithMeRecaps(bubble?: Bubble): Promise<BubbleConferenceRecap[]>;
|
|
1231
|
+
disableIncomingSharing(webConferenceSession: WebConferenceSession, disable: boolean): void;
|
|
1232
|
+
updateVideoQualityForPublisher(conferenceId: string, quality: BubbleConferenceVideoQuality, publisher?: BubbleConferenceParticipant): Promise<void>;
|
|
1233
|
+
startLiveTranscription(webConference: WebConferenceSession, translationLanguage?: string): Promise<void>;
|
|
1234
|
+
stopLiveTranscription(webConference: WebConferenceSession): Promise<void>;
|
|
1235
|
+
}
|
|
1236
|
+
export {};
|
|
1237
|
+
//# sourceMappingURL=bubbleConference.service.d.ts.map
|