Blog

Platzbuchung mit Microsoft 365 und Outlook

Michael
IT-Consultant

In Zeit von Hybrid-Arbeit verzichten immer mehr Unternehmen auf fest zugewiesene Arbeitsplätze. Vielmehr darf sich ein ein Mitarbeiter häufig relativ frei einen Arbeitsplatz aussuchen, wenn die Bürotage anstehen.

Natürlich will das geregelt sein, sei es um Streit um einen möglichen Lieblingsplatz, wie auch einer Überlastung wenn viele Kollegen auf einmal im Büro auftauchen, entgegen zu wirken.

Also wird ein Buchungssystem für Arbeitsplätze notwendig. Der Markt hat hier natürlich entsprechend reagiert und es findet sich eine Vielzahl von Lösungen hierfür - viele davon kostenpflichtig.

Setzt man als Unternehmen aber auf Microsoft 365, hat man bereits ein Buchungssystem für Arbeitsplätze - alles was es braucht ist Outlook, Exchange Online und ein bisschen Konfigurationsarbeit

Erstellen der Workspaces

Wir benötigen das PowerShell-Modul “Exchange PowerShell”, welches sich aus der PowerShell Galerie kostenfrei laden lässt.

Als erstes erstellen wir die Arbeitsplatzobjekte in Exchange Online. Diese sind Postfächer vom Typ Workspace, im Prinzip also Ressourcenpostfächer.

Hierfür verbinden wir uns mit Exchange Online.

Connect-ExchangeOnline

Nun erstellen wir das Postfach.

Wir definieren einen Namen (hier mit Hilfe einer Variable) und danach legen wir das Postfach als Raumpostfach an und setzen dann den Typ des Postfachs auf Workspace.

$Workspace = "Taunusstrasse72-Office2-Desk1"

New-Mailbox -Room $Workspace | Set-Mailbox -Type Workspace

Das Workspace-Postfach statten wir nun mit weiteren Daten aus. Dafür verwenden wir das Cmdlet Set-Place.

Set-Place -Identity $Workspace -City "Mainz" -PostalCode "55118" `
-Street "Taunusstrasse 72" -Building "Taunusstrasse72" -CountryOrRegion DE -Capacity 1 `
-GeoCoordinates "50.014085891499796; 8.263745449277936" -Floor 0 -FloorLabel "Erdgeschoß" `
-Label "Consultant Desk 1" -Tags "Dual Monitor","Docking Station", "Keyboard", "Mouse"

Wir geben hier hauptsächlich Daten zum Standort des Arbeitsplatzes an (Adresse, Gebäude, Land, Lokationskoordinaten), aber auch bspw. die Kapazität (Capacity), die später noch wichtig wird.

Nun geben wir dem Workspace-Postfach noch das Feature mit, Terminen automatisch zuzustimmen/abzulehnen und in der jeweils zugehörigen Nachricht den anfragenden Organisator im Betreff aufzuführen.

Terminliche oder kapazitätsbedingte Konflikte sollen nicht erlaubt sein. Für letzteres müssen wir die oben definierte Kapazität erzwingen (d.h. ist der Workspace einmal gebucht, ist er für den Tag nicht mehr verfügbar). Wir etablieren auch eine Mindestbuchungsdauer - für einen Arbeitsplatz setzen wir hier einfach mal einen halben Arbeitstag (4 Stunden).

Set-CalendarProcessing -Identity $Workspace `
-AutomateProcessing AutoAccept -AddOrganizerToSubject $true `
-AllowConflicts $false


Set-CalendarProcessing -Identity $Workspace `
-EnforceCapacity $True -MinimumDurationInMinutes 240

In unserer Testumgebung haben wir das ganze dreimal ausgeführt.

Buchungsprozess

Wie verhält sich das nun mit der Buchung per Outlook und OWA?

Über die Zimmersuche (Roomfinder) sind nun die Arbeitsbereiche (Workspaces) auffindbar und auch buchbar. D.h. konkret, man stellt einen Termin ein und wählt einen (verfügbaren) Arbeitsbereich. Bereits gebuchte Arbeitsbereiche sind hier als Nicht verfügbar markiert.

Nun sendet man die Einladung und bekommt in Kürze eine Antwort des Arbeitsbereichs.

Sollte man versuchen einen Arbeitsbereich zu buchen, der bereits belegt ist, wird man eine entsprechende Antwort bekommen.

Zum Abschluss haben wir hier alle PowerShell Befehle in einem grundlegenden Skript zusammengefasst.

$Workspace = "Taunusstrasse72-Office2-Desk3"

$Roomlist = "Taunusstrasse 72 - HQ"

New-Mailbox -Room $Workspace | Set-Mailbox -Type Workspace

Set-Place -Identity $Workspace -City "Mainz" -PostalCode "55118" `
-Street "Taunusstrasse 72" -Building "Taunusstrasse72" -CountryOrRegion DE -Capacity 1 `
-GeoCoordinates "50.014085891499796; 8.263745449277936" -Floor 0 -FloorLabel "Erdgeschoß" `
-Label "Consultant Desk 1" -Tags "Dual Monitor","Docking Station", "Keyboard", "Mouse"



New-DistributionGroup -Name $Roomlist -RoomList

Add-DistributionGroupMember -Identity $Roomlist `
-Member $Workspace



Set-CalendarProcessing -Identity $Workspace `
-AutomateProcessing AutoAccept -AddOrganizerToSubject $true `
-AllowConflicts $false


Set-CalendarProcessing -Identity $Workspace `
-EnforceCapacity $True -MinimumDurationInMinutes 240



Add-MailboxFolderPermission -Identity $Workspace:\calendar -User [email protected] -AccessRights Editor -SharingPermissionFlags Delegate,CanViewPrivateItems

Fazit

Für eine Platzbuchungslösung benötigt man keine teure Software, wenn man bereits Microsoft 365 produktiv einsetzt. Eine gangbare Lösung ist wie so oft mit Bordmitteln und ein wenig Arbeit umsetzbar.

Die Vorteile liegen auf der Hand: Keine zusätzlichen Kosten, keine Abhängigkeit von einem weiteren Service.

Wollen Sie wissen, was mit Ihrem Microsoft 365 Abonnement alles möglich ist? Kontaktieren Sie uns gerne über unser Kontaktformular oder rufen Sie uns an!

Interesse geweckt?
Vielen Dank! Wir haben Ihre Anfrage erhalten!
Oops! Beim Senden ist etwas schiefgegangen, versuche es erneut.