Course13:IT Connect - 08.1 Conferencing

From innovaphone wiki
Jump to navigation Jump to search

Configuring conferences and maintain overview.

Overview

The purpose of the Conferencing object is to administer conference rooms that enable multi-party conferencing. While ad-hoc conferences, which can be initiated over the phone, are limited to 3 parties, a multi-party conference can handle a larger number of participants. The actual number a gateway can handle depends on how many conference channels are available on this device. In case you wonder what a conference channels is, consider it simply as a hardware property of a gateway/device (e.g. an IP811 has 10, an IP3011 has 30) - we will go more into detail later (you will find the respective characteristics of your gateway device in the corresponding data sheet or in the CONF column of the table in fish-help.png How to implement large PBXs or on the devices screenshot.png home page).

In addition to a hardware conference interface, screenshot.png a soft conference interface (SCNF) is available on all modern innovaphone appliances, which allows for audio, video and application sharing conferences as well. The soft conference interface is not bound to a hardware device, which means it can run on an IPVA.

Please note that the SCNF and CONF interfaces are separate interfaces. Since a single conference cannot run on more than one interface, you cannot combine the two to get one large conference room, but you can combine them to have several small ones.

How the conference interface works

Both types of interfaces perform the following tasks:
  • mix the audio streams received from the participants, which is then sent back to all participants
  • receive the video streams from all participants, which are then distributed to requesting participants on demand. In other words, video streams are not mixed, but multiplexed to all receiving participants
Audio mixing is based on PCM. Therefore, incoming audio streams using anything but G.711u/a as codec must be converted to PCM first. For this, a coder channel is required and must be available. Note that only the CONF interface can do this, not the SCNF interface. As a result, participants can call in to a conference running on an SCNF interface with G.711u/a only. Calling into a conference running on a CONF interface however is possible using any coder that is supported by the platform used (as screenshot.png can be seen in the General/Info page as Coder, e.g. 10 Channels of G.711,G.722,G.729,G.723,OPUS on an IP811).

As said before, for video and app-sharing (which is implemented as a video stream) no mixing is done. Instead, each client can offer up to three streams with different resolution to the conference interface. These streams are established but not data is sent unless a participant requests it. When multiple participants request the same stream, it is multiplexed by the conference interface.

For video, in contrast to audio (see above), no transcoding whatsoever is done. Therefore, all video connections must be established using the same coder (either VP8 or H.264). This is a configuration option of the conference object.

(Further Hints) At the time of writing (13r3final), H.264 is not supported by all platforms. We therefore recommend always using VP8 (which is also the default setting). For an up-to-date listing of supported codecs, see the Codecs section in fish-help.png Concept myApps platform services.

You can find a more in-depth explanation in this wiki article fish-help.png Concept Multi-Video-Conference.

When you initiate application sharing, your shared application is transmitted instead of the high-definition video.

Configuration

If you want to configure conferencing you need to create a Conferencing object at first.
Therefore go to the PbxManager plugin called screenshot.png Conferences and press screenshot.png add a conference. A configuration dialog will appear which allows you to configure the following parameter which have to be unique in the system.
  • Name: This is the name of the Conference object
  • SIP: This value is used for the internal communication. You don't need to change it.
  • Number: Any number you configure here will be the prefix for your conference rooms. If you assign the number 60 and your room number is 10, you need to dial 6010 to get to the conference room
  • Allow web access: This option has to be enabled to invite external participants via an HTTP link (don't worry we will talk about this feature in more detail later on in this book)
  • International number: External phone number of the PBX. This number is used for the construction of dial-in numbers within meeting invitations
Let's go ahead and screenshot.png create a Conference object called Conference, SIP conference and using 60 as Number. Please activate the Allow web access option and add the number +496213428231 as international number.
     

Announcements

If you call the conference room, you will probably expect to hear a greeting or a prompt to enter your PIN. Therefore the PBX needs to retrieve media files via HTTPS to be able to play an announcement.

You can use https://class.innovaphone.com/moodle2/pix/f/zip.png English announcement files or you can refer to fish-help.png our wiki to find the files in different languages.

These files are already converted, so you can video2.png upload them to the Files App right away:
  • open the Files App and create a new folder called conference
  • click on Mark on the upper right and then select only the new folder (you can also press and hold your left mouse key for a few seconds to see a check-mark next to it)
  • click the share icon on the right
  • select Share as link with filekey and leave User and Password empty
  • afterwards drag the announcement files you just downloaded to your conference folder
  • switch to the Conference PbxManager plug-in, open the details of your conference object, open the Announcements section and video2.png select the dvl-ckl2.net/files/UI/conference folder

(Further Hints) If you wonder how the plugin knows which of your shared folders to display: it simply looks in to all of those and considers only those, where a file input_room_number.<coder> exists in (which is one of the audio prompts used by the conference object).

Conference Interface

As said before, there are two types of conference interfaces. You can either use a purely software-based interface (SCNF) that uses only G.711a/u as a codec, or you can use the hardware resources (CONF) of a device to use as a conference interface.

To link the conference object to the conference interface you just have to press the screenshot.png search button which will show all conference interfaces on all previously provisioned gateways. If you can't see your IP811 you need to redo the step Adding a Gateway in the Managing Devices book. When your IP811 is visible you can screenshot.png select the conference interface you want to use. The software based interfaces (SCNF) are marked as Software Conference.

Conferencing- and Coder-channels

Let's talk about the different interface types in some more detail.

You can use either the hardware based CONF interface or the software based SCNF interface to implement conferences.

The CONF interface is not present on all models (e.g. it is missing on your IP411 and also on the virtual IPVA). The benefit of using a CONF interface is that it is able to connect with VoIP endpoints that do not use G.711u/a as a codec (e.g. due to bandwidth considerations). However, in order to do so, it requires an additional Coder channel per audio call.

The SCNF interface must connect callers using G.711u/a and therefore also does not require Coder channels.


Let's take an example. Your IP411 has
  • 6 Coder channels
  • no Conference channels for CONF (and hence no CONF interface)
  • 5 Soft Conference channels (and hence an SCNF interface)
So a conference object using the IP411 can support 5 G.711u/a-only participants. 5 Soft Conference channels but no Coder channels would be used for this.

The IP811 has
  • 10 Coder channels
  • 10 Conference channels for CONF (and hence a CONF interface)
  • 10 Soft Conference channels (and hence an SCNF interface)
So a conference object using the IP811 can support
  • 10 G.711u/a-only participants on the SNCF using 10 Soft Conference channels and
  • 10 multi-coder participants on the CONF using 10 Coder channels and 10 Conference channels
(Further Hints) Note that Coder channels are also required for using B-channels on ISDN interfaces as well as for Audio-Fax transmissions! If you use either of them on the same box, you might want to utilize the SCNF instead of the CONF in order to not cannibalize the Coder channels which are available.

The screenshot.png the Conferences PBX Manager plugin will show you how many Conference/Soft Conference Channels are available on your device. The number of such channels actually used is configurable. This may make sense if you are using a CONF interface which will also consume Coder channels and you need to reserve some for ISDN or audio-fax.

(Further Hints) Note that each participant of a conference, regardless if running on a CONF or SCNF interface requires a PBX-Channels license! You should therefore always screenshot.png activate the PBX Channels licenses switch so that these licenses are fetched from the PBX (that has all the licenses installed). To be even more precise, the number of PBX Channels licenses set forth in the Used channels field are allocated when the conference is configured

More details about how that interferes with using an ISDN interface on the same platform can be found in fish-help.png Conferences, Resources and Licenses.




Now let's get practical and video2.png link the conference object to the CONF interface on your IP811:
  • in the Conferences PBX Manager plugin, open the Conference interface section
  • click the Search button and see all the CONF/SCNF interfaces available
  • select the hq-Gateway-IP811-my little IP811 interface (this is the CONF interface, the SCNF interface has an additional (Software conference) attached to the name
  • leave the Used channels as is (so all available channels are used)
  • activate the PBX Channels licenses switch

Rooms

As a next step to get your conference object up and running you have to create rooms for dial-in.

A room conceptually is the place where a single conference happens. The conference object can manage multiple rooms and each of them has a distinct extension. Users will select a specific room by dialing its corresponding extension. All rooms share the resources of the conference interface we have linked to the Conference App in the previous step.

The PBX will create an App for each room you create. This app can be assigned to users and enables managing of a conference room in real-time.

To video2.png create a room, proceed as follows:
  • click on screenshot.png Add room in the Rooms section of the conference object in the PBX Manager plugin

  • a screenshot.png new dialog will appear which allows you to configure the following parameter:

    • Display name
      This will be the name of your room and also its corresponding conference App. Please use HQ Conf

    • Number
      Together with the previously defined prefix (60 in our case) this number will be the extension of your conference room to dial in. You can leave the default (which is 01), which results in an extension 6001 for your new room

    • Reserved channels
      You can leave the default (which is 0). Callers can always call in to a room even if the number of participants then would exceed the reservation, as long as there are free conference (and coder) channels available. This will take into account the channels which are reserved by other rooms. The reservation of channels takes place when the first participant calls in to a room. In other words: if you call in to a room with reservations, the call will only succeed if there are enough free channels available to satisfy the reservation. If so, you can be sure that there will be enough channels for participants calling in later. If not, you get a busy right away. This avoids setting up a conference where some of the participants can not call in due to missing channels

    • PIN
      To protect non-authorized access to this room, you can define a PIN. If you don't set any PIN, the room is not restricted and everybody can join. We suggest you use 0000 (in the training, not in real life wink). Note that the PIN Must be either 4-digit or empty

    • Video coder
      You can define a preferred video coder here. As mentioned in Conferencing, use VP8

  • do not forget to click on OK wink

Configuration Templates

As a final step, we want to allow all users who inherit their configuration from the Config User template to use the HQ Conf App (the App that has been created by the PBX for your new HQ Conf room).

In order to do this we just need to tick the screenshot.png check mark Config User which will result in a new App in the user's All Apps overview.

Yeah, more Apps!

Searching for a Conference room


Open your phone app and screenshot.png search for con. This will find the HQ Conf room and you will see the number and the SIP URI to call the conference room.

When enabling the Config User template in the Conference PBX Manager Plugin, the plugin activated two checkmarks in the screenshot.png Apps part of the Config User template. It activates the conference room itself so that any user who inherits from the Config User can use the conference app and the conference (search) API. The Conference (search) API must be active to find conference rooms in your phone app.

Go for it!

We can now try it and call 6001 (60 for the conference object and 01 for our room). We should hear a welcome message asking us for the PIN (as we already selected the room number. If we'd called 60 only, we would be asked for the room number first). You are now connected to the HQ Conf room, however, you're alone.

Call 6001 again from another phone (or from the myApps phone app) and you can talk to yourself.




(Further Hints) In case your conferencing app isn't working as expected and you already did the Reverse Proxy configuration, we recommend to read section Allowing Registrations via Reverse Proxy in The individual Device User Interface to fix it.

How to call in

There are the following options to call in to a room:

  • calling from the PSTN using a phone
    This is the standard method when using a (hard- or soft-phone). You would call the Conference object's extension number (60 in our case) followed by the room number (01 in our case). You are then asked for a PIN.

    Obviously, only audio is supported then.

    You can also call from extern by calling the PBX's subscriber number followed by the conference object's extension and the room number (+4962134282316001 in our case)

  • calling through VoIP federation
    This allows external users whose PBX is connected to yours (this setup is also known as federation) using the SIP id of your room (which is conference?room=01@dvl-ckl2.net in our case).

    Audio and Video is possible then.

    Setting up federation is beyond the scope of this course, see fish-help.png Setup Federation with innovaphone V12r1 for details if need be

  • using a web browser using the web link
    This is the preferred method to allow external users to participate. The only thing required is a standard web browser with internet access

    The web link looks similar to https://hq.dvl-ckl2.net/PBX0/APPS/conference/webaccess.htm?k=jw_BwL6tYAv1GAf_D6LSIw
Creating the web link
The latter method (web access) requires the Allow web access switch to be activated in the conference object (we have already done this). Also the individual room must be made available.

Here is how:
As soon as the link is shown, you have the screenshot.png option to copy it to the clipboard, create an invitation e-mail or create a calendar item.

You can now copy the link to your clipboard and then paste it to the address bar of a new browser tab or windows. Try it out!

(Further Hints) Using the web access consumes a single Port license on the PBX.

Access the conference room from a MSN trunk


If your customer has a limited number of MSN numbers from your provider, you can implement a two-stage dialing mechanism to reach conference rooms. As you probably remember, we have already implemented such a mechanism in our book Waiting Queues.

Please repeat the steps below.
  • Afterwards please go back to the DTMF two stage dialing section in our Headquarter Switchboard Waiting Queue (Waiting Queue- PBX Manager Plugin) and add another DTMF map to it.
  • Click on the + icon and select the empty line
  • Type 4 on the left side of the map
  • Type 6001 on the right side of the map
  • Click on the check-mark icon and then on OK
Now call the switchboard from outside (+4962134282310) and select 4 from the voice menu. You will be transferred to the conference room.

(Further Hints) Note that the Tel link of a meeting invitation is always generated by the previously configured international number to which the conference object number and the conference room number are appended. This means that the user must manually edit the generated number in the meeting invitation if he or she has an MSN trunk.

Meetings

Meetings are temporary rooms. They are related to static rooms (a room as we have configured it in the previous chapters). The App created for such static room (for example the HQ Conf App created for the HQ Conf room before) can create such a Meeting related to its main room. This is done by filling in the Create meeting form underneath the room sharing area we discussed in the previous chapter.


To create a Meeting (that is, a temporary room)
  • start the screenshot.png App that corresponds to the room (HQ Conf)
  • click on the screenshot.png share button. A new dialog showing a This conference room is not available message appears
  • fill in screenshot.png the form underneath the Create meeting header
    • set Start date and Time to the current date and time
    • set End date and Time an hour later
    • set Number of participants to a reasonable number (less or equal to the number of channels available for the conference as set in the Used channels field in the conference object). Use 5 in our case
As soon as the link is shown, you have the screenshot.png option to copy it to the clipboard, create an invitation e-mail or create a calendar item.

You can now copy the link to your clipboard and then paste it to the address bar of a new browser tab or windows. Try it out!

(Further Hints) screenshot.png The Number of participants option allows you to define a minimum number of participants that need to be able to join the conference. This option is not the maximum number as you might assume. The conference room can be overbooked, so more people can join the meeting as initially anticipated.

Let me give you an example. You ordered a table for 4 people in a restaurant. When you enter the restaurant, you expect to get a table with at least 4 seats. If less than 4 people show up, it doesn't matter, you just don't use the extra seats. If you meet a friend who would also like to join the table, they can simply pull up a chair and sit at the table.

Calling in to a meeting using a phone

To call in to a meeting using a phone, you would dial into the room as we did before (that is, you would call 6001). If there is a meeting taking place currently, a voice prompt would ask for the screenshot.png meeting ID instead of the room PIN. As soon as you type it in, you will be connected to the meeting.

If you ignore the question for the meeting ID, you will be asked for the main room's PIN instead. If you type it in, you will be connected to the main room instead.

(Further Hints) Note that the meeting must be opened by accessing it using the web link before people can dial in to it as described above.

Using the App

When you start screenshot.png the HQ Conf App you'll see a header bar with multiple options.
  • screenshot.png the top left button is called Show meetings. If you click on it you can see a list of current meetings besides the main conference room. We will talk later in this book how to create those meeting rooms
  • by pressing the screenshot.png handset icon the conference room's full extension number (6001) will be called if you aren't already connected. As a nice benefit if you use this button, you don't have to enter the PIN. The needed DTMF digits will be dialed automatically
  • the number of already connected participants and the number of reserved channels screenshot.png are visible at a glance
  • screenshot.png the next button allows you to activate the web access UI and to create meetings
  • you can see the screenshot.png current PIN and edit it by pressing the pen icon
In the list below you can
  • screenshot.png mute a participant (e.g. if noise is disturbing the conference)
  • set the participant to screenshot.png exclusive speaker mode (that is, all other participants are muted)
  • or screenshot.png disconnect a specific participant
To identify the speaking person the participant is highlighted and screenshot.png marked as Speaking.

(Further Hints) Be aware that a innovaphone-pbx-conference license is required for opening the conference app.