Reference13r3:Concept Conference Meeting Invitations

From innovaphone wiki
Jump to navigation Jump to search


Applies To

  • innovaphone PBX from version 13r3

Overview

Conference meeting invitations is a new feature of the Conference Object. Meeting invitations are used to create temporary conference rooms.

Requirements

  • CONF or SCNF interface with appropriate channel licensing
  • Conference App license (App(innovaphone-pbx-conference)13), necessary to create meeting links and invitations.
  • If announcements should be played, announcement files must be available. The file names are listed here.

Configuration

The configuration of the conference object remains as described in this wiki article.

In addition, two new options have been introduced:

Web Access allowed
Needs to be enabled to use the temporary meeting links
International Number
Needs to be set to add a phone number in the meeting invitations.

Features

The conference web access features are available.

  • Dial-in with web access link
  • Dial-in with a SIP uri.
  • Dial-in with a number and an additional meeting id if this id is not used several times and the meeting room is created.

Usage

The conference doesn't save meeting links and so, it doesn't reserve any conference channel for them. The conference reserves channels if a meeting link is used and a meeting room is created.

Creating Meetings

A meeting is defined by a meeting id, the start and end of the date and time and the number of participants. The number of participants specifies how many channels will be allocated for this meeting.

A meeting HTTP link and a SIP uri can be generated in the conference app by clicking the invitation button, create link, which can be directly sent to participants via email. If the mail link button is used, a mail-to link is generated and opened, so the operation system opens an email client with a prefilled message subject and body.

In addition, a meeting can be scheduled. A calendar file (ICS) is created by clicking the open calendar button. It depends on the current browser configuration if the calendar file is saved to the client system or opened with a supported application.

The generated HTTP link can be used to take part in the meeting with a browser, the generated SIP uri can be used with a phone app, internal or with federation.

It is also possible to take part in the meeting with a dial-in number. The room number must be dialed followed by the meeting id with DTMF. This is possible not before someone else has used the HTTP link or the SIP uri.

Joining Meetings

A meeting link can be used between one hour before the defined starting time and the defined end time, or if the meeting is being on. If you call the meeting room one hour till five minutes before the meeting starts, a predefined announcement is played. No room is created and no conference channels are reserved at this time.

If you call or have a call to the meeting room five minutes or less before the meeting starts, a room is created, channels are reserved and the meeting room is listed in the conference app. The conference reserves as many channels as previously defined as number of participants. If not enough channels are available, the caller is announced and the call is disconnected.

Moderating Meetings

All current meetings of a room can be listed in the corresponding conference room app. If a meeting is chosen, the participants of this meeting room are shown. A meeting room only appears five minutes before the meeting starts.

Data Content

The base64-encoded data of the HTTP link or SIP URI includes following content:

  1. the version number, currently 0, 1 byte (hex: 00)
  2. flags for optional content, currently 0, 1 byte (hex: 00)
  3. the room number length, 1 byte (e.g. 2 digits, hex: 02)
  4. the room number, 4 bytes (e.g. room number 1, hex: 00 00 00 01)
  5. meeting id, 4 bytes (random unique 6-digit id e.g. hex: 00 00 00 01)
  6. start timestamp, 4 bytes (e.g. 20-03-2023 12:00 unix-timestamp: 1679310000, hex: 64 18 3c b0)
  7. end timestamp, 4 bytes (e.g. 20-03-2024 17:00 unix-timestamp: 1710950400, hex: 65 fb 08 00)
  8. number of reserved channels, 2 bytes (e.g. 5, hex: 00 05)
  9. m-key from the conference object, read in the config-show from the PBX, the m-key value from the used conference object and convert in hex, 4e5344534f537153
  10. creation timestamp, not used for the hash calculation, 4 bytes (e.g. 20-03-2023 12:00 unix-timestamp: 1679310000, hex: 64 18 3c b0)
  11. MD5 hash, 16 bytes The MD5 hash is calculated with the content above from point 1 until 8, followed by point 9, the meeting password ("m-key") from the conference object in your configuration.


Example for the link creation:

  • The data for the MD5 hash calculation contain the Bytes from points 1 to 9: 00 00 02 00000001 00000001 64183cb0 65fb0800 0005 4e5344534f537153
  • Calculated MD5 hash from above data, bytes: b42f6e2c0f130900f6b62c51e74dc2aa
  • The data for the Base64 encoded link contain the point 1 to 8, 10 and 11, the above MD5 hash value: 00 00 02 00000001 00000001 64183cb0 65fb0800 0005 64183cb0 b42f6e2c0f130900f6b62c51e74dc2aa
  • Base64 encoded: AAACAAAAAQAAAAFkGDywZfsIAAAFZBg8sLQvbiwPEwkA9rYsUedNwqo=
  • Link to the temporary conference room: https://pbx.domain.com/PBX0/APPS/conference-en/webaccess.htm?m=AAACAAAAAQAAAAFkGDywZfsIAAAFZBg8sLQvbiwPEwkA9rYsUedNwqo


Note that from the base64-encoded result, some character needs to be replaced to be URL-compatible. Replace the '+' with a '-' and the '/' with a '_' .


Online converters that can be used:

Example implementation for innovaphone JavaScript Runtime can be found here:

https://github.com/innovaphone/confinvite

Troubleshooting

The same as for conference web access.