/** * Creates new instance of {@link MeetExtensionsHandler}. * * @param focusManager <tt>FocusManager</tt> that will be used by new instance to access active * conferences and focus XMPP connection. */ public MeetExtensionsHandler(FocusManager focusManager) { this.focusManager = focusManager; MuteIqProvider muteIqProvider = new MuteIqProvider(); muteIqProvider.registerMuteIqProvider(ProviderManager.getInstance()); RayoIqProvider rayoIqProvider = new RayoIqProvider(); rayoIqProvider.registerRayoIQs(ProviderManager.getInstance()); StartMutedProvider startMutedProvider = new StartMutedProvider(); startMutedProvider.registerStartMutedProvider(ProviderManager.getInstance()); }
/** Starts this manager for given <tt>hostName</tt>. */ public void start() { expireThread.start(); ConfigurationService config = FocusBundleActivator.getConfigService(); String hostName = config.getString(HOSTNAME_PNAME); String xmppDomain = config.getString(XMPP_DOMAIN_PNAME); focusUserDomain = config.getString(FOCUS_USER_DOMAIN_PNAME); focusUserName = config.getString(FOCUS_USER_NAME_PNAME); String focusUserPassword = config.getString(FOCUS_USER_PASSWORD_PNAME); protocolProviderHandler.start(hostName, focusUserDomain, focusUserPassword, focusUserName); jitsiMeetServices = new JitsiMeetServices( protocolProviderHandler.getOperationSet(OperationSetSubscription.class)); String statsPubSubNode = config.getString(SHARED_STATS_PUBSUB_NODE_PNAME); componentsDiscovery = new ComponentsDiscovery(jitsiMeetServices); componentsDiscovery.start(xmppDomain, statsPubSubNode, protocolProviderHandler); meetExtensionsHandler = new MeetExtensionsHandler(this); ProviderManager.getInstance() .addExtensionProvider( LogPacketExtension.LOG_ELEM_NAME, LogPacketExtension.NAMESPACE, new LogExtensionProvider()); FocusBundleActivator.bundleContext.registerService( JitsiMeetServices.class, jitsiMeetServices, null); protocolProviderHandler.addRegistrationListener(this); protocolProviderHandler.register(); }