Installation

quickROOMS installieren und konfigurieren

In dieser Anleitung werden folgende Platzhalter-URLs verwendet:

KomponenteBeispiel-URL
ROOMShttps://rooms.example.com/Default
IDPhttps://idp.example.com
quickROOMS (Wizard)https://wizard.example.com

Voraussetzungen

Folgende Voraussetzungen müssen erfüllt sein:

  • Eine laufende ROOMS- und IDP-Instanz.
  • ROOMS muss den IDP als Authentisierung nutzen. Dies wird über die RoomsAppSettings aktiviert:
<RoomsAppSettings>
	...
	<!-- IDP Communication -->
	<add key="UseLegacyAuth" value="false"/>
	<add key="Authority" value="https://idp.example.com"/>
	<add key="ClientSecret" value="xxx"/>
	<add key="RedirectUri" value="https://rooms.example.com/Default/"/>
	<add key="CallbackPath" value="/Default/"/>
	<add key="CorsOrigins" value="https://rooms.example.com,https://wizard.example.com,https://idp.example.com" />
	...
</RoomsAppSettings>

Unterstützte Browser

Alle aktuellen Major-Browser werden unterstützt (Edge, Chrome, Firefox, Safari).

Voraussetzungen Outlook Add-In

Der Wizard wird als Add-In bezeichnet, wenn er in einem Outlook Client oder in Outlook on the Web (OWA) integriert läuft.

Das Add-In benötigt mindestens das Outlook API Requirement Set 1.7.

Unterstützte Exchange-Versionen

Exchange-VersionDesktop ClientOWA (Webmail)
Exchange OnlineJaJa
Exchange on-premises 2016JaNein
Exchange on-premises 2019JaNein
Exchange on-premises SEJaNein

Benötigte Outlook API Requirement Sets nach Funktion

Das Add-In nutzt APIs aus verschiedenen Outlook API Requirement Sets. Die folgende Tabelle zeigt, welche Funktion welches Requirement Set voraussetzt:

FunktionRequirement SetBeschreibungMicrosoft-Dokumentation
Erkennung bestehender Buchungen1.1Custom Properties zum Verknüpfen von Outlook-Terminen mit ROOMS-BuchungenCustom Properties
Kategorien auf Termin-Ebene1.3ROOMS-Kategorie auf einzelnen Termin setzenCategories
Einzelbuchungen (Start, Ende, Teilnehmer, Ort)1.5Basis-BuchungsfunktionalitätRequirement Set 1.5
Serienbuchungen1.7Serienmuster lesen/schreiben — zwingend für Serienanlage, -bearbeitung und -löschungRecurrence
Stellvertreterbuchungen / Shared Calendars1.8Shared Calendar Erkennung und DelegiertenberechtigungenDelegate Access
Enhanced Location / Raum-Ressourcen1.8Raum-Ressourcen als Enhanced Location auslesenRequirement Set 1.8
Master-Kategorien1.10ROOMS-Kategorie in Mailbox-Master-Liste registrieren (Fallback auf Item-Level vorhanden)Requirement Set 1.10

Warum Requirement Set 1.7 das Minimum ist: Serienbuchungen gehören zu den meistgenutzten Funktionen und sind für den produktiven Einsatz unverzichtbar. Die dafür benötigte Recurrence-API ist erst ab Requirement Set 1.7 verfügbar. On-premises Exchange (2016/2019/SE) stellt via OWA nur Requirement Set 1.5–1.6 bereit — daher wird OWA auf on-premises Exchange nicht unterstützt. Der Desktop Outlook Client unterstützt auch auf on-premises Exchange höhere Requirement Sets, weshalb das Add-In dort funktioniert.

Unterstützte Outlook-Versionen

Windows:

  • Microsoft 365 Subscription
  • Retail: Outlook 2016, Outlook 2019, Outlook 2021, Outlook 2024
  • Volume License: Outlook 2021, Outlook 2024

Mac:

  • Classic UI
  • New UI

WebView-Anforderungen

Das Add-In wird innerhalb einer WebView-Engine gerendert. Für aktuelle Windows- und Office-Clients muss die WebView2 Runtime installiert sein:

Installation Wizard

Für die Installation wird die .zip-Datei der neusten Version extrahiert und auf den Webserver kopiert.

Konfiguration

Die Konfiguration erfolgt in der Datei config.json:

{
  "deployUrl": "",
  "rootUrl": "https://rooms.example.com/Default",
  "oauthConfig": {
    "authority": "https://idp.example.com",
    "clientId": "rooms-addin",
    "redirectUri": "https://wizard.example.com/callback.html",
    "useWindowsAuthAsDefault": false,
    "useCustomAuthHeader": false
  },
  "filterConfig": {
    "hideAllSeatingsOptions": false,
    "showAllSeatingsButton": false
  },
  "bookingsConfig": {
    "timeInterval": 15,
    "enableFileUpload": false
  },
  "bookingListConfig": {
    "bookingsAsPersonInChargeEnabledPerDefault": false
  },
  "ui": {
    "showResourceImages": true,
    "hideOutlookBodyInfo": false
  }
}
EinstellungBeschreibung
rootUrlURL der ROOMS-Instanz
oauthConfig.authorityURL des IDP-Servers
oauthConfig.clientIdClient-ID im IDP (Standard: rooms-addin)
oauthConfig.redirectUriCallback-URL des Wizards
oauthConfig.useWindowsAuthAsDefaulttrue um Windows-Authentisierung als Standard zu verwenden

IDP-Konfiguration

Damit der Wizard / das Add-In funktioniert, muss im IDP ein Client konfiguriert sein:

"Clients": [
  {
    "Enabled": true,
    "ClientId": "rooms-addin",
    "ClientName": "ROOMS Outlook Addin",
    "AllowedGrantTypes": [
      "authorization_code",
      "translation",
      "apikey"
    ],
    "AllowedScopes": [
      "openid",
      "profile",
      "rooms_api"
    ],
    "RedirectUris": [
      "https://wizard.example.com/callback.html",
      "https://wizard.example.com/office-auth-callback.html"
    ],
    "PostLogoutRedirectUris": [
      "https://wizard.example.com/auth-logout"
    ],
    "AllowedCorsOrigins": [
      "https://wizard.example.com"
    ],
    "RequireConsent": false,
    "RequirePkce": true,
    "RequireClientSecret": "false",
    "ManifestId": "<GUID einfügen, z.B. 3fd613ed-d9a6-4096-8008-70d4d635d915>"
  }
]

Nach der Konfiguration sollte der Wizard unter https://wizard.example.com erreichbar sein. Der Login erfolgt über Forms- oder Windows-Authentisierung.