Professional Documents
Culture Documents
Jumpto365 - 365admin Room Manager Implementation Guide
Jumpto365 - 365admin Room Manager Implementation Guide
IMPLEMENTATION GUIDE
Version 0.1
Room Manager – IMPLEMENTATION GUIDE version 0.1
Contents
Introduction.............................................................................................................................. 4
Prerequisites ......................................................................................................................... 4
Components .......................................................................................................................... 6
Task 1: Verify access to your environment ................................................................................. 7
Task 2: Capture secrets during implementation .......................................................................... 9
Step 1: Configure Office Graph access ..........................................................................................10
Task 1: Create an Azure AD Application ....................................................................................10
Task 2: Assign secrets to the Azure AD Application .....................................................................12
Task 3: Configure Application permissions ................................................................................13
Step 2: Create a service account..................................................................................................17
Task 1: Create an Azure AD User..............................................................................................17
Step 3: Setup Microsoft Teams ...................................................................................................21
Task 1: Create a Microsoft Team..............................................................................................21
Task 2: Grant permission to your service account .......................................................................25
Step 4: Prepare for setup ...........................................................................................................28
Task 1: Get supporting files .....................................................................................................28
Task 2: Setup configuration file ...............................................................................................29
Task 3: Validate access ...........................................................................................................31
Step 5: Setup SharePoint Lists.....................................................................................................32
Task 1: Download necessary PowerShell modules ......................................................................32
Task 2: Login to SharePoint using PNP Management Shell ...........................................................33
Task 3: Create SharePoint lists and pages..................................................................................37
Step 6: Import existing data........................................................................................................38
Task 1: Import rooms .............................................................................................................38
Task 2: Import room distributions lists......................................................................................38
Task 2: Import room policies ...................................................................................................38
Step 7: Setup Azure subscription (optional) ..................................................................................39
Task 1: Sign in the Azure portal................................................................................................39
Step 8: Setup Azure Functions for hosting (optional) ......................................................................45
Task 1: Setup an App Service...................................................................................................45
Prerequisites
Components
- Azure functions
The work of touching the Microsoft 365 API, by either using PowerShell and Office Graph, is
delegated to a number of Azure functions. Each function is either running on request, or
according to a predefined schedule.
- 2 accounts
Access to the resources is given to a service account and to an application identity. Note that
both accounts are getting high privileges to do their job. You’ll need 2 accounts for controlling
access to your tenant – A traditional account to be used by PowerShell, and an application
account to be used when accessing e.g. Office Graph API’s.
We suggest that you copy this table to e.g. a spreadsheet, then save this securely using e.g. Azure
Information Protection or Azure Key Vault.
We will not cover how you safely store and dispose secrets in this document though.
2 ROOMMGRAPPCLIENT_SECRET 5-_S.4A1ACnU-SsdafsdDtyoL.C7qasdfAa0ou
3 ROOMMGRAPPCLIENT_DOMAI N df96b8c9-51a1-40cf-b8b1-4514be8e9668
4 AADUSER room-manager@jumpto365.com
5 AADPASSWORD Jadfx1511
6 AADDOMAIN jumpto365.com
7 TEAMSITE https://365adm.sharepoint.com/sites/room-
manager
8 POWERAPPS APP ID 4a57cc40-23e9-4994-83b4-54f139a2d268
Table 1 Captured access codes
1. Navigate to https://portal.azure.com
2. In the Azure Portal navigate to Active Directory / App Registrations – Then click “New
registration”
3. Capture the Application ID and the Directory ID and store them as #1 and #3 (Table 1 Captured
access codes)
1. Navigate to the Certificates & secrets section, and click “New client secret”
2. Depending on your organization’s requirements for renewal, select the appropriate value of
“Expires” and click “Add”
3. When done, copy the value of client secret and store it as #2 (Table 1 Captured access codes)
5. Wait for the permissions to get updated, then click “Grant admin consent …”
6. Click Yes
7. Wait a few seconds then press refresh, repeat until Status is “Granted”
2. Enter basic details of the user, then configure the password settings like here so that you don’t
have to login and change them afterwards
4. Capture username, password and domain as #4,#5 and #6 (Table 1 Captured access codes)
1. Navigate to https://teams.microsoft.com
2. Select Teams
4. Follow the dialogues, suggest that you make the Teams private and give it a name which reflects
Meeting Rooms management within you organization.
7. Copy the first part of the URL – marked with blue here
3. Select the site you previously created (You might not know it, but every time you create a
Microsoft Teams, you also create a SharePoint site).
5. Enter the name of the AADUSER (ref. #4 Table 1 Captured access codes)
https://blob.jumpto365.com/recipes/Setup%20Room%20Manager.zip
4. Extract the content by right clicking the file, then click Extract All …
3. Navigate to https://microsoft.com/devicelogin
This will start the process of importing the lists and pages supporting the solution. While
importing you will see a status similar to this. Import takes approx. 5-10 minutes
5. Agree to terms
6. Enter feedback
Apparently you are require to enter a value, you cannot just close this box.
7. Check the subscription by entering “Subsc” in the search field, then click Subscriptions
10. Verify
Task 1: Setup an App Service If you are just testing, then you
Consumtion or plan – depends on your processing times – can run all PowerShell
Consumption is default to 5 min, max 10. commands locally
https://docs.microsoft.com/en-us/azure/azure-functions/functions-
host-json#manageddependency
https://docs.microsoft.com/en-us/azure/azure-functions/functions-reference-
powershell?tabs=portal#dependency-management
ROOMMGRAPPCLIENT_ID
ROOMMGRAPPCLIENT_SECRET
ROOMMGRAPPCLIENT_DOMAIN
ROOMMGRAPPSITE
AADUSER
AADPASSWORD
AADDOMAIN
6. Copy the content of the file “RoomManager.ps1.txt” and paste it into the editor, then click Save
7. Click Test/Run
3. Click Upload
4. Select RoomManagerV1.zip
1. Open the app by clicking “Open app” in the last task of the previous step or find the app in the
App Studio by navigating to https://make.powerapps.com/ the select
2. Click Edit
3. Allow SharePoint
4. Navigate to connections
2. The delete all existing by clicking the ellipsis then click Remove
2. Click Save
4. Click Share
Summary of Step 7
You now have a PowerApp
1. Navigate to
https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/Overview
2. Select Enterprise applications
4. Click “Properties”