/* * Jicofo, the Jitsi Conference Focus. * * Distributable under LGPL license. * See terms of license at gnu.org. */ package org.jitsi.jicofo; import net.java.sip.communicator.impl.protocol.jabber.extensions.colibri.*; import net.java.sip.communicator.service.protocol.*; import org.jitsi.protocol.xmpp.*; /** * Class adds utility methods that require use of package protected methods of * {@link JitsiMeetConference}. These are used only for test purposes, so are * placed in separate class to reduce size of the conference focus class. * * @author Pawel Domas */ public class ConferenceUtility { /** * Conference instance. */ private final JitsiMeetConference conference; /** * Creates new instance for given <tt>JitsiMeetConference</tt>. * @param conference the conference that wil be used by this instance. */ public ConferenceUtility(JitsiMeetConference conference) { this.conference = conference; } /** * Returns the ID of Colibri conference hosted on the videobridge. */ public String getJvbConferenceId() { ProtocolProviderService pps = conference.getXmppProvider(); OperationSetColibriConference colibri = pps.getOperationSet(OperationSetColibriConference.class); return colibri.getConferenceId(); } /** * Returns the id of video channel allocated for the participant with given * JID. * @param participantJid the MUC JID of the participant for whom we want to * get video channel id. */ public String getParticipantVideoChannelId(String participantJid) { Participant participant = conference.findParticipantForRoomJid(participantJid); ColibriConferenceIQ channelsInfo = participant.getColibriChannelsInfo(); ColibriConferenceIQ.Content videoContent = channelsInfo.getContent("video"); ColibriConferenceIQ.Channel videoChannel = videoContent.getChannel(0); return videoChannel.getID(); } }