共用方式為


會議室分析

會議室保留與佔用量感測器數據結合,可為房地產和設施管理員提供重要見解,以進一步瞭解、分析及優化房間使用率。 藉由分析反映預定房間使用量的保留數據,以及顯示實際佔用量的感測器數據,管理員可以瞭解佔用量和預約行為,並識別高無顯示率。 此數據可協助管理員針對會議室可用性做出更好的決策。

根據使用意圖的房間使用率

會議室分析會使用會議室保留數據來追蹤會議室的預期用途,以提供規劃的房間佔用量深入解析。

保留數據會透過每天執行的服務,從 Exchange 上與租使用者相關聯的所有會議室信箱收集。

根據實際佔用量的房間使用率

會議室分析會使用佔用量訊號來偵測人員的實際存在情況,以允許測量實際房間使用量。

目前,Microsoft支援下列佔用量訊號:

  • 來自 Teams 會議的 CRS (通話記錄摘要)
  • MTR (Microsoft Teams 會議室)
  • 其他佔用量或人員計數感測器

將 CRS 數據上線

通話記錄摘要訊號包含 Teams 會議開始和結束時間,可用來推斷會議室佔用量。 CRS 資料是由 SIP (SIP) 小組發佈至 SIGS 數據集。

CallRecordSummarized 訊號可在事件後 4 天於 SIGS 數據集中使用。 它仍可使用 28 天。

啟用 CRS 的程式

這些主要區域目前支援 CRS:NAM、EUR、JPN 和 APAC。 如果您的組織位於其中一個支援的區域內,CRS 數據上線程式會完全自動化。

數據整合不需要手動動作。 一旦系統偵測到您位於支援的區域內,數據流就會自動啟動。

數據集架構

欄位 類型 描述
AadTenantId 字串 記錄的租用戶標識碼。 它用來將數據分割至租使用者容器,並在分割之後 除。
ActorId 字串 動作專案的 Microsoft Entra ID,可以是用戶或房間。 它稍後會用來與會議室清查中的會議室標識符聯結,以從會議室取得訊號。
StartTime 字串 會議開始時間,表示會議室已佔用。
EndTime 字串 會議結束時間,表示不再佔用會議室。
PrimarySmtp 字串 人員或房間的 SMTP。
ActorIdType 字串 動作項目標識碼類型,應 Microsoft Entra ID。 此字串用於偵錯。
ActorType 字串 動作專案類型,不論人員或房間為何,一律為「使用者」。
CreationTime 字串 此記錄的建立時間。
DatasetCategory 字串 數據集類別,可以是商業或 MSIT。
SignalType 字串 CallRecordSummarized,這是 SIGS 數據集中的訊號類型。

將 MTR 數據上線

MTR 訊號包含 Teams 會議開始和結束時間,可用來判斷會議室佔用量。 此訊號與 CRS 訊號相同,但會由租用戶系統管理員手動匯出和上傳。因此,它是 CRS 的替代方案,或可用於在租用戶上線之前進行測試。

啟用 MTR 的程式

  1. 下載 MTR 數據。

  2. 使用下列架構,將資料格式化為 CSV 格式:

    下列範例顯示 CSV 範例檔案內容。

    ConferenceId,MeetingId,StartTime,EndTime,CallParticipants,DurationSeconds,alias,Display name,Device Type 
    
    3f60f7d2-cbb9-4493-9681-05400035e728,meeting_15cd6425-ff12-4b7f-b360-2d880748de48,2024-08-01 04:30:00,2024-08-01 06:00:00,19,5400.0,user,Floor6-NonOnboarded-Room4,MTR 
    
    c0aad920-430e-4dc0-bd05-09d93c44213f,meeting_02fdae08-e742-4bd7-a5c8-fb4c59235a7f,2024-08-01 07:30:00,2024-08-01 08:30:00,11,3600.0,user,Floor6-NonOnboarded-Room4,MTR 
    
  3. 執行 Push-Dataset Cmdlet 來上傳數據。

    下列範例顯示 Push-Dataset Cmdlet。

PS C:\> Push-Dataset -Type TeamsDeviceCalls -Path "C:\Datasets\Datasets\TeamsDeviceCalls" 

注意事項

在path參數內,指定 CSV 檔案所在的資料夾名稱。 MTR 數據僅支援歷程記錄數據擷取。

使用 Push-Dataset Cmdlet 的步驟

  1. 開啟 PowerShell 7 (不是系統管理員) 。

  2. 執行下列 Windows PowerShell Cmdlet 來安裝 Microsoft Places。 如需 Microsoft Places 安裝的詳細資訊,請參閱 Microsoft Places PowerShell 資源庫

    Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force 
    
  3. 執行下列 Windows PowerShell Cmdlet 來匯入 Microsoft Places 模組。

    Import-Module -Name MicrosoftPlaces 
    
  4. 執行下列 Places PowerShell Cmdlet 來連線到 Microsoft Places 模組。

    Connect-MicrosoftPlaces 
    
  5. 執行下列 Places PowerShell Cmdlet,使用資料夾和路徑) ,從裝置上的位置上傳數據集 (。

    PS C:\> Push-Dataset -Type TeamsDeviceCalls -Path "<path-to-csv-file-folder>"
    
會議室分析的數據集架構
欄位 類型 描述
ConferenceId 字串 會議標識碼。
MeetingId 字串 會議標識碼。
StartTime 字串 會議開始時的 UTC 時間。
EndTime 字串 會議結束時的 UTC 時間。
CallParticipants 字串 加入會議的參與者數目。
DurationSeconds 字串 會議持續時間。
別名 字串 可唯一識別 MTR 裝置的別名。
顯示名稱 字串 此欄位包含會議室的名稱。
裝置類型 字串 在此案例中,裝置類型一律為 「MTR」 () 。

線上佔用量和人員計數感測器有四個步驟。

  1. 裝置上線。
  2. 上傳遙測。
  3. 即時遙測擷取。
  4. 確認數據可在 Places 中使用。

裝置上線

第一個步驟涉及上傳具有裝置元數據的 CSV 檔案,包括裝置如何對應至 Microsoft Places 中的 PlaceId。 此步驟有助於在遙測達到 Places 時將其內容化。

下圖顯示如何將裝置和感測器上線至 Places。

此圖顯示如何將裝置和感測器上線至 Microsoft Places。

首先,必須準備裝置數據。

  1. 從 Microsoft Places 下載地點資訊。 首先,執行下列 PowerShell Cmdlet 來安裝 PowerShell 7 。 若要深入瞭解 Windows 上的 PowerShell,請參閱 在 Windows 上安裝 PowerShell

    Install-Module -Name ExchangeOnlineManagement  
    
    Import-Module -Name ExchangeOnlineManagement  
    
    Connect-ExchangeOnline
    
  2. 以系統管理員身分開啟 PowerShell 並執行下列 ExchangeOnline PowerShell 命令,以檢查您的帳戶是否具有必要的 TenantPlacesManagement 角色,並確定已列出您的用戶名稱。

    Get-ManagementRoleAssignment -Role TenantPlacesManagement -GetEffectiveUsers
    
  3. 如果您有正確的許可權,您應該會看到下列名稱和指派的角色。

    • 名稱:P lacesAdmin
    • 指派的角色:TenantPlacesManagement
  4. 若要取得建築物的 PlaceId,請開啟新的 PowerShell 視窗,然後執行下列 Windows PowerShell Cmdlet。

    Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force  
    
    Connect-MicrosoftPlaces
    
  5. 執行下列命令以下載樓層和房間的清單。

    $buildingName = “” 
    $allPlaces = Get-PlaceV3 | Select-Object PlaceId, DisplayName, Type, ParentId 
    $building = $allPlaces | Where-Object { $_.DisplayName -eq $buildingName -and $_.Type -eq "Building" } 
    $floors = $allPlaces | Where-Object { $_.ParentId -eq $building.PlaceId } 
    $spacesAndRooms = $floors | ForEach-Object { 
    $floor = $_; 
    $allPlaces | Where-Object { $_.ParentId -eq $floor.PlaceId }   
    } 
    $places = @() 
    $floors | ForEach-Object { $places += $_ } 
    $spacesAndRooms | ForEach-Object { $places += $_ } 
    $outputPath = 'C:\places.csv' 
    $places | Select-Object PlaceId, DisplayName, Type | Export-Csv -Path $outputPath -NoTypeInformation
    
  6. CSV 檔案路徑中的輸出檔案應該包含下列資訊:

    PlaceId DisplayName 類型
    5d275bba-5d7d-487f-855e-75cd2943204f 樓層 1 Floor
    0fa1b1eb-6066-45ea-8f7c-09b4e8cc4e74 Conf Room 1202/3455 (9) 會議室
  7. 從合作夥伴解決方案或系統下載裝置元數據,包括所有裝置。

  8. 使用下列 PlacesDevice 數據格式,或手動將裝置對應至 PlaceId。

描述 附註 範例
需要 deviceId () 建議 (裝置的唯一標識碼:Manufacturer_DeviceUniqueId) 。 必須符合傳送之遙測的標識碼。 Manuf1_3455
DisplayName 裝置的顯示名稱。 如果適用,您可以使用易記名稱。 Manuf1_3455
描述 裝置的描述。
MacAddress 裝置的 Mac 位址。 供應商提供 (如果有) 。
需要製造商 () 裝置的製造商。 由IT系統管理員提供。 Manuf1
IPV4Address 裝置的 IPV4Address。 供應商提供 (如果有) 。
IPV6Address 裝置的 IPV6Address。 提供供應商,如果有的話。
需要 (PlaceId) 裝置在 Places 中對應到的 PlaceId。 IT 系統管理員會將 DeviceID 對應至會議室清單中的 DisplayName 欄位。 76fe540f-01a9-425e-acd5-5d7d1da44fbf
標記 與裝置相關聯的自定義標籤清單,以協助搜尋。 [ “IsVirtual_False”, “Building_121”]
Sensor.SensorId (必要) 裝置內感測器的唯一標識符。 必須包含在標準遙測承載中。 PeopleCount、Occupancy
Sensor.DisplayName 感測器的顯示名稱。 如果適用) ,您可以使用易記名稱 (。 佔用率、人員計數
Sensor.SensorType (必要) 感測器的類型。 已驗證的清單 (請參閱範例) 。 Paperclip
Sensor.PlaceId 感測器所提供之位置的唯一標識碼 (您只需要在感測器位於與裝置位置) 不同的位置時,才需要提供此資訊。 76fe540f-01a9-425e-acd5-5d7d1da44fbf

裝置和感測器的一般指導方針

  • 建議您提供 DeviceId 作為Manufacturer_DeviceUniqueId。 不過,如果您的合作夥伴無法在裝置層級 (傳送遙測,例如,它們結合了來自多個裝置的遙測) ,則可以將虛擬DeviceId建立為Manufacturer_Building_VirtualDeviceId。 在此情況下,VirtualDeviceId 可以是空間的一些自然索引鍵。 如果您的客戶提供 VirtualDeviceId,您應該包含要從中計算遙測之實體裝置的相關信息。 實體裝置資訊可以位於標籤中。

  • 如果 Sensor.SensorType 對裝置而言是唯一的,您只需要提供 SensorType。 如果裝置的特定感測器類型有多個數據流,則需要唯一的 SensorId。 在大部分情況下,SensorType 和 SensorId 都是 PeopleCount、Occupancy 等,除非 SensorType 不是裝置的唯一。 在此情況下,SensorId 會SensorType_SomeUnique標識符。

備妥裝置元數據之後,即可透過下列方式將裝置資訊上傳至 Microsoft Places。

  • 使用 PowerShell Cmdlet
  • 使用 Microsoft Graph API

使用 PowerShell Cmdlet

若要個別管理裝置,可以直接使用 Microsoft Places PowerShell Cmdlet。 若要深入瞭解 Places Cmdlet,請參閱適用於 PowerShell 的 Microsoft Places Cmdlet 模組。

注意事項

若要執行 Cmdlet,您必須指派 TenantPlacesManagement 角色。

Cmdlet 名稱 描述 參數
New-PlaceDevice 建立新的裝置 需要 () 、DisplayName、Description、MACAddress、Manufacturer () 、IPV4Address、IPV6Address、PlaceId (必要) 、捲標、感測器 (所需的 DeviceId)
Remove-PlaceDevice 刪除裝置 需要標識碼 ()
Set-PlaceDevice 匯報裝置 需要標識符 () 、需要 deviceId () 、DisplayName、Description、MACAddress、Manufacturer (必要) 、IPV4Address、IPV6Address、PlaceId、Tags、Sensors (必要)
Get-PlaceDevice 取得裝置 Id、Filter、Top
  1. 開啟 PowerShell 7 (不是系統管理員) 。

  2. 執行下列 Windows PowerShell Cmdlet 來安裝 Microsoft Places。 如需 Microsoft Places 安裝的詳細資訊,請參閱 Microsoft Places PowerShell 資源庫

    Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force 
    
  3. 執行下列 Windows PowerShell Cmdlet 來匯入 Microsoft Places 模組。

    Import-Module -Name MicrosoftPlaces 
    
  4. 安裝並匯入模組之後,請執行下列 Places PowerShell Cmdlet 來連線到 Microsoft Places 模組。

    Connect-MicrosoftPlaces
    
  5. 使用下列 New-PlaceDevice Cmdlet 範例來新增裝置。 Sensors 參數是類型為 MicrosoftPlaces.PlacesDevices.Sensor 的物件,具有上述字段。

    New-PlaceDevice -DeviceId "contoso_9D6816" -DisplayName "Contoso 9D6816 Device" -Description "Contoso 9D6816 Device" -MACAddress "00:0A:95:9D:68:16" -Manufacturer "Contoso" -IPV4Address "192.168.1.100" -IPV6Address "2001:db8::ff00:42:8329" -PlaceId "acfa3bc0- 2b83-425b-8910-84a0250e9671" -Tags "BuildingA" -Sensors (New-Object MicrosoftPlaces.PlacesDevices.Sensor -Property @{SensorType="occupancy"})
    
  6. 使用 Get-PlaceDevice 來檢視裝置清單。 根據預設,它會傳回 10 部裝置。 若要傳回更多裝置,請新增 -top 參數,如下所示。

    Get-PlaceDevice -top 100
    
  7. 使用 Set-PlaceDevice 更新具有現有標識碼的裝置。

    Set-PlaceDevice -Id "e5a216ff-1d32-4647-8dab-a2523ee5796e" -DeviceId "contoso_7D6816" -DisplayName "Contoso 7D6816 Device" -Description "Contoso 9D6816 Device" -MACAddress "00:0A:95:9D:68:16" -Manufacturer "Contoso" -IPV4Address "192.168.1.100" -IPV6Address "2001:db8::ff00:42:8329" -PlaceId "acfa3bc0- 2b83-425b-8910-84a0250e9671" -Tags "BuildingA" -Sensors (New-Object MicrosoftPlaces.PlacesDevices.Sensor -Property @{SensorType="peopleCount"}) 
    
  8. 使用 Remove-PlaceDevice 刪除裝置。

    Remove-PlaceDevice -Id "e5a216ff-1d32-4647-8dab-a2523ee5796e" 
    

使用 Microsoft Graph API

若要修改程式或將現有系統自動化並整合,可以使用 Microsoft Graph API。

若要使用 API,請遵循下列步驟。

  1. 在 Microsoft Entra.im 中建立應用程式註冊。 若要深入瞭解 PlaceDeviceRead.All 和 PlaceDevice.ReadWrite.All 許可權,請參閱Microsoft圖形許可權參考。

  2. 建置和部署應用程式,以跨 Microsoft Places 和您的合作夥伴同步裝置資訊。

若要深入瞭解感測器裝置,請參閱下列 Microsoft Graph API 和裝置檔:

範例裝置:

POST https://graph.microsoft.com/beta/workplace/sensorDevices

{ 
            "deviceId": "contoso_9D6821_occ_new", 
            "displayName": "Contoso 9D6816 Device", 
            "description": "Contoso 9D6816 Device", 
            "macAddress": "00:0A:95:9D:68:16", 
            "manufacturer": "Contoso", 
            "ipV4Address": "192.168.1.100", 
            "ipV6Address": "2001:db8::ff00:42:8329", 
            "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671", 
            "tags": [ 
                "BuildingA", 
                "Floor 3", 
                "Room 300", 
                "Conference Room" 
            ], 
            "sensors": [ 
                { 
                    "sensorId": "Occupancy", 
                    "displayName": null, 
                    "sensorType": "occupancy", 
                    "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671" 
                } 
            ] 
        } 

範例:

GET
https://graph.microsoft.com/beta/workplace/sensorDevices/<workplacesensordevice-id> 

GET 
https://graph.microsoft.com/beta/workplace/sensorDevices/8e404458-e9b1-4153-b6b5-4858ccee1486 

範例回應:

{ 
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#workplace/sensorDevices/$entity", 
    "@microsoft.graph.tips": "Use $select to choose only the properties your app needs, as this can lead to performance improvements. For example: GET workplace/sensorDevices('<guid>')?$select=description,deviceId", 
    "id": "8e404458-e9b1-4153-b6b5-4858ccee1486", 
    "deviceId": "contoso_9D6821_occ_new", 
    "displayName": "Contoso 9D6816 Device", 
    "description": "Contoso 9D6816 Device", 
    "macAddress": "00:0A:95:9D:68:16", 
    "manufacturer": "Contoso", 
    "ipV4Address": "192.168.1.100", 
    "ipV6Address": "2001:db8::ff00:42:8329", 
    "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671", 
    "tags": [ 
        "BuildingA", 
        "Floor 3", 
        "Room 300", 
        "Conference Room" 
    ], 
    "sensors": [ 
        { 
            "sensorId": "Occupancy", 
            "displayName": null, 
            "sensorType": "occupancy", 
            "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671" 
        } 
    ] 
}

範例:

PATCH https://graph.microsoft.com/beta/workplace/sensorDevices/8e404458-e9b1-4153-b6b5-4858ccee1486 

{ 
            "deviceId": "contoso_9D6821_occ_new", 
            "displayName": "Contoso 9D6816 Device New", 
            "description": "Contoso 9D6816 Device", 
            "macAddress": "00:0A:95:9D:68:16", 
            "manufacturer": "Contoso", 
            "ipV4Address": "192.168.1.100", 
            "ipV6Address": "2001:db8::ff00:42:8329", 
            "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671", 
            "tags": [ 
                "BuildingA", 
                "Floor 3", 
                "Room 300", 
                "Conference Room" 
            ], 
            "sensors": [ 
                { 
                    "sensorId": "Occupancy", 
                    "displayName": null, 
                    "sensorType": "occupancy", 
                    "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671" 
                } 
            ] 
        } 

範例回應:

{ 
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#workplace/sensorDevices/$entity", 
    "id": "8e404458-e9b1-4153-b6b5-4858ccee1486", 
    "deviceId": "contoso_9D6821_occ_new", 
    "displayName": "Contoso 9D6816 Device New", 
    "description": "Contoso 9D6816 Device", 
    "macAddress": "00:0A:95:9D:68:16", 
    "manufacturer": "Contoso", 
    "ipV4Address": "192.168.1.100", 
    "ipV6Address": "2001:db8::ff00:42:8329", 
    "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671", 
    "tags": [ 
        "BuildingA", 
        "Floor 3", 
        "Room 300", 
        "Conference Room" 
    ], 
    "sensors": [ 
        { 
            "sensorId": "Occupancy", 
            "displayName": null, 
            "sensorType": "occupancy", 
            "placeId": "acfa3bc0-2b83-425b-8910-84a0250e9671" 
        } 
    ] 
}

範例:

DELETE https://graph.microsoft.com/beta/workplace/sensorDevices/<workplaceSensorDevice-Id>

DELETE https://graph.microsoft.com/beta/workplace/sensorDevices/052062b9-38f6-48d4-a638-05a72c79419b

上傳遙測

將裝置上線至 Microsoft Places 后,您可以執行歷程記錄數據的一次性回填,以使用歷程記錄遙測填入 Places。 然後,您可以設定 Places 從裝置接收連續遙測,以保持最新狀態。 下圖概述 (上半部) 的回填檔案上傳流程,以及 (下半部) 的連續裝置遙測流程。

此圖顯示如何將歷程記錄數據執行一次性回填至 Microsoft Places。

選項 1:使用 Push-Dataset Cmdlet

Microsoft Places 接受特定 CSV 檔案格式和架構的歷程記錄數據。 您必須從現有的系統匯出此數據,然後使用下列 PowerShell Cmdlet 上傳數據。

Cmdlet 名稱 描述 參數 範例
Push-Dataset 將數據集上傳至ADLS。 類型、路徑 Push-Dataset -Type RoomOccupancy -Path C:\sensordata\

注意事項

類型可以是 RoomOccupancy 和 PeopleCount。 角色應指派給 TenantPlacesManagement。 若要深入瞭解 PowerShell Cmdlet,請參閱 Microsoft Places PowerShell 資源庫

  1. 開啟 PowerShell 7 (不是系統管理員) 。

  2. 執行下列 Windows PowerShell Cmdlet 來安裝 Microsoft Places。 如需 Microsoft Places 安裝的詳細資訊,請參閱 Microsoft Places PowerShell 資源庫

    Install-Module –Name MicrosoftPlaces –AllowPrerelease –Force
    
  3. 執行下列 Windows PowerShell Cmdlet 來匯入 Microsoft Places 模組。

    Import-Module -Name MicrosoftPlaces 
    
  4. 執行下列 Places PowerShell Cmdlet 來連線到 Microsoft Places 模組。

    Connect-MicrosoftPlaces 
    
  5. 執行下列 Places PowerShell Cmdlet,使用資料夾和路徑) ,從裝置上的位置上傳數據集 (。

    Push-Dataset -Type RoomOccupancy -Path <folder path> 
    
PeopleCount 的 CSV 檔案格式
資料行名稱 數據行順序 註解 範例
DeviceId 1 裝置標識碼。 Manuf1_1202_3455
SensorId 2 感測器標識碼。 PeopleCount
3 無符號整數。 PeopleCount (任何不帶正負號的整數;例如,5) 。
IngestionTime 4 遙測中的時間戳,UTC 格式。 2023-06-27T18:24:20.808Z
locationHint 字串 指出裝置位置的其他資訊。 Building-1

範例 CSV:

19966d8e-4434-477a-a38a-2df5651cd90f,6afe1ea7-82aa-451c-b2e1-48e48ca39ec0,5, 2023-06-27T18:24:20.808Z,building1 

19966d8e-4434-477a-a38a-2df5651cd90f,6afe1ea7-82aa-451c-b2e1-48e48ca39ec0,5, 2023-06-27T18:24:20.808Z,building1 

457702f3-c58d-44fa-9d26-f153fcd27452,a7387ed0-b540-47b0-8170-bc9c80f6c5b9,5, 2023-06-27T18:24:20.808Z,building1 

457702f3-c58d-44fa-9d26-f153fcd27452,a7387ed0-b540-47b0-8170-bc9c80f6c5b9,5, 2023-06-27T18:24:20.808Z,building1 
佔用量的 CSV 檔案格式
資料行名稱 數據行順序 註解 範例
DeviceId 1 裝置標識碼。 Manuf1_1202_3455
SensorId 2 感測器標識碼。 RoomOccupancy
3 無符號整數。 佔用率:True 或 False。
IngestionTime 4 遙測中的時間戳,UTC 格式。 2023-06-27T18:24:20.808Z
locationHint 字串 指出裝置位置的其他資訊。 Building-1

範例 CSV:


19966d8e-4434-477a-a38a-2df5651cd90f,6afe1ea7-82aa-451c-b2e1-48e48ca39ec0,true, 2023-06-27T18:24:20.808Z,building1 

19966d8e-4434-477a-a38a-2df5651cd90f,6afe1ea7-82aa-451c-b2e1-48e48ca39ec0,true, 2023-06-27T18:30:20.808Z,building1 

457702f3-c58d-44fa-9d26-f153fcd27452,a7387ed0-b540-47b0-8170-bc9c80f6c5b9,false, 2023-06-27T18:40:20.808Z,building1 

457702f3-c58d-44fa-9d26-f153fcd27452,a7387ed0-b540-47b0-8170-bc9c80f6c5b9,true, 2023-06-27T18:45:20.808Z,building1 

選項 2:使用Microsoft 圖形 API

若要建置應用程式以自動上傳遙測,以及建置應用程式以自動註冊和上架裝置,您可以透過 Microsoft Graph 取得 API。 若要使用 API,請遵循下列步驟。

  1. 在 Microsoft Entra 中建立應用程式註冊。 若要深入瞭解 PlaceDeviceRead.All 和 PlaceDevice.ReadWrite.All 許可權,請參閱Microsoft圖形許可權參考。

  2. 建置和部署應用程式,以跨 Microsoft Places和您的合作夥伴同步遙測。

  3. 使用 IngestTelemetry API 將佔用率和人員計數數據推送至 Microsoft Places。

如需有關擷取工作場所感測器感測器遙測的詳細資訊,以及深入瞭解 IngestTelemetry API,請參閱 workplaceSensorDevice: ingestTelemetry

使用Microsoft 圖形 API 將佔用率和人員計數數據推送至 Microsoft Places
  1. 如先前所述,從現有系統下載數據。
  2. 根據下列佔用量數據訊號數據格式來準備遙測。
佔用量數據訊號數據格式
參數 Type 描述
需要遙測 () workplaceSensorDeviceTelemetry 會議室裝置上感測器所收集和報告的遙測數據集合。
deviceId (必要) 字串 建立時所提供裝置的使用者定義唯一標識符。 請勿使用系統產生的裝置標識碼。 使用僅使用 new-device Cmdlet 上線的裝置識別碼。
sensorId 字串 裝置上感測器的使用者定義唯一標識碼。 如果裝置有多個相同類型的感測器,則必須提供 屬性來識別每個感測器。 如果裝置只有一個類型的感測器,則可以省略 屬性。 預設值是感測器類型。 選用
boolValue (必要) 布林值 根據房間是否已佔用,則為 True 或 false。
需要時間戳 () DateTimeOffset 感測器測量並報告其值的日期和時間。 時間戳類型代表使用 ISO 8601 格式的日期和時間資訊,且一律為 UTC。 例如,2024 年 1 月 1 日午夜 UTC 為 2024-01-01T00:00:00Z。
sensorType (必要) workplaceSensorType 佔有
需要LocationHint () 字串 用來指出裝置位置的其他資訊。
人員 計數數據訊號數據格式
參數 Type 描述
需要遙測 () workplaceSensorDeviceTelemetry 會議室裝置上感測器所收集和報告的遙測數據集合。
deviceId (必要) 字串 建立時所提供裝置的使用者定義唯一標識符。 請勿使用系統產生的裝置標識碼。 使用僅使用 new-device Cmdlet 上線的裝置識別碼。
sensorId 字串 裝置上感測器的使用者定義唯一標識碼。 如果裝置有多個相同類型的感測器,則必須提供 屬性來識別每個感測器。 如果裝置只有一個類型的感測器,則可以省略 屬性。 預設值是感測器類型。 選用
intValue (必要) Int32 佔用會議室的人數。
需要時間戳 () DateTimeOffset 感測器測量並報告其值的日期和時間。 時間戳類型代表使用 ISO 8601 格式的日期和時間資訊,且一律為 UTC。 例如,2024 年 1 月 1 日午夜 UTC 為 2024-01-01T00:00:00Z。
sensorType (必要) workplaceSensorType peopleCount
需要LocationHint () 字串 用來指出裝置位置的其他資訊。
  • 執行 API 以將數據推送至 Microsoft Places。

下列命令是佔用量的範例 API 要求。

{     
"telemetry": [     
        {    
            "deviceId": "19966d8e-4434-477a-a38a-2df5651cd90f", 
            "sensorid":"6afe1ea7-82aa-451c-b2e1-48e48ca39ec0",   
            "sensorType": "occupancy",    
            "boolValue": false,    
            "timestamp": "2021-03-31T09:36:05.144Z",  
            "locationHint":"building1"    
        }    
    ]     
} 

下列命令是人員計數的範例 API 要求:

{     
"telemetry": [     
        {    
            "deviceId": "457702f3-c58d-44fa-9d26-f153fcd27452", 
            "sensorid":"a7387ed0-b540-47b0-8170-bc9c80f6c5b9",   
            "sensorType": "peopleCount",   
            "intValue": 5,    
            "timestamp": "2023-06-27T18:24:20.808Z",  
            "locationHint":"building1"    
        }    
    ]     
}

即時遙測擷取

範圍中所述的連接器需要下列許可權,才能要求即時遙測擷取服務。

  • PlaceDeviceTelemetry.ReadWrite.All

您必須完成系統管理員同意,或根據選取的架構建立具有許可權的 Microsoft Entra 應用程式。 若要深入瞭解 PlaceDeviceTelemetry.ReadWrite.All 許可權,請參閱Microsoft圖形許可權參考。

下圖概述遙測擷取的架構。

此圖顯示用於遙測擷取的架構。

對於選擇這些整合類型的客戶,您必須完成全租用戶系統管理員同意,以將許可權授與合作夥伴服務,以代表他們擷取遙測。

  1. 當硬體提供者已建立多租使用者 SaaS 連接器, (單一與多租使用者應用程式) 時,即適用此方法。 若要深入瞭解多租用戶連接器,請參閱 Microsoft Entra ID 中的租用

  2. 從代表您的服務擷取遙測的合作夥伴取得 (GUID) 的應用程式識別碼。

  3. 使用應用程式標識碼建立服務主體。 有數個選項可供選擇。 如需詳細資訊,請參閱在 Microsoft Entra ID 中從多租使用者應用程式建立企業應用程式

如果您使用 Microsoft Graph PowerShell、Graph 或 Azure CLI,請 (頁面中所提及的命令取代標識碼或應用程式識別碼) ,以建立服務主體,然後在 Azure 上的服務主體中授與管理員同意。

顯示 [Microsoft Places 整合許可權] 對話框的螢幕快照。

如果您使用系統管理員同意 URL,請將頁面中的應用程式識別碼取代為合作夥伴應用程式識別碼,然後在瀏覽器中開啟它。 它會建立服務主體,並要求您授與系統管理員同意。 若要授與管理員同意,請選取 [接受]。

[系統管理員許可權要求] 對話框的螢幕快照。

Microsoft Places 提供可接受透過 Microsoft Graph 公開之標準格式遙測的 API。 API 接受一批遙測訊息。

  • 針對 B 類型架構,客戶依賴其裝載於客戶環境中的硬體合作夥伴所提供的整合。

  • 針對 C 類型架構,客戶可以使用 Azure 函式建立長時間執行的進程或事件型進程,以呼叫 Microsoft Places API 來傳送建置遙測。

  • 類型 B 和 C 整合架構都需要客戶在 Microsoft Entra 中建立應用程式註冊,如下圖所示,並提供管理員同意 PlaceDeviceTelemetry.ReadWrite.All。 若要深入瞭解 Microsoft Graph 公開的許可權,請參 閱 Microsoft Graph 許可權參考]

顯示 [註冊 asn 應用程式] 對話框的螢幕快照。

確認數據可在 Microsoft Places 中使用

一旦您的裝置上線,且 API 正在內嵌即時感測器數據,Microsoft Places 分析報告就會開始填入。 若要解除鎖定有助於優化工作區的深入解析,請確認數據會在 72 小時內流入您的分析儀錶板。