Analisi della sala
Le prenotazioni delle camere, combinate con i dati del sensore di occupazione, offrono informazioni chiave per i gestori di immobili e strutture per comprendere, analizzare e ottimizzare meglio l'utilizzo delle camere. Analizzando i dati di prenotazione che riflettono l'uso previsto delle camere insieme ai dati del sensore che mostrano l'occupazione effettiva, i manager possono comprendere il comportamento di occupazione e prenotazione e identificare tassi elevati di mancata visualizzazione. Questi dati consentono ai manager di prendere decisioni migliori sulla disponibilità delle sale.
Utilizzo della sala in base alla finalità di utilizzo
L'analisi delle camere usa i dati di prenotazione delle camere per tenere traccia dell'uso previsto delle camere, fornendo informazioni dettagliate sull'occupazione pianificata delle camere.
I dati della prenotazione vengono raccolti da tutte le cassette postali della sala in Exchange associate a un tenant tramite un servizio eseguito quotidianamente.
Utilizzo delle camere in base all'occupazione effettiva
L'analisi della stanza usa i segnali di occupazione per rilevare la presenza effettiva di persone, consentendo la misurazione dell'uso effettivo della stanza.
Attualmente, Microsoft supporta i segnali di occupazione seguenti:
- CRS (riepiloghi dei record di chiamata dalle riunioni di Teams)
- MTR (Microsoft Teams Room)
- Altri sensori di occupazione o conteggio persone
Onboarding dei dati CRS
Il segnale riepilogato del record di chiamata contiene l'ora di inizio e fine della riunione di Teams, che può essere usata per dedurre l'occupazione della sala. I dati CRS sono pubblicati dal team SIP (Substrate Intelligence Platform) nel set di dati SIGS.
Il segnale CallRecordSummarized è disponibile nel set di dati SIGS 4 giorni dopo l'ora dell'evento. E rimane disponibile per 28 giorni.
Processo per abilitare CRS
CRS è attualmente supportato in queste aree principali: NAM, EUR, JPN e APAC. Se l'organizzazione si trova all'interno di una di queste aree supportate, il processo di onboarding dei dati CRS è completamente automatizzato.
Per l'integrazione dei dati non è necessaria alcuna azione manuale. Dopo che il sistema rileva che ci si trova all'interno di un'area supportata, il flusso di dati viene avviato automaticamente.
Schema del set di dati
Colonna | Tipo | Descrizione |
---|---|---|
AadTenantId | Stringa | ID tenant del record. Viene usato per partizionare i dati nel contenitore tenant ed eliminato dopo la partizione. |
ActorId | Stringa | Microsoft Entra ID dell'attore, che può essere un utente o una stanza. In seguito viene usato per unirsi all'ID sala dall'inventario delle sale per ottenere segnali dalle stanze. |
StartTime | Stringa | Ora di inizio riunione, che indica che la sala è occupata. |
EndTime | Stringa | Ora di fine riunione, che indica che la sala non è più occupata. |
PrimarySmtp | Stringa | SMTP della persona o della stanza. |
ActorIdType | Stringa | Tipo di ID attore, che deve essere Microsoft Entra ID. Questa stringa viene usata per il debug. |
ActorType | Stringa | Tipo di attore, che è sempre "utente" indipendentemente dalla persona o dalla stanza. |
CreationTime | Stringa | Ora di creazione di questo record. |
DatasetCategory | Stringa | Categoria del set di dati, che può essere Commerciale o MSIT. |
SignalType | Stringa | CallRecordSummarized, ovvero il tipo di segnale nel set di dati SIGS. |
Onboarding dei dati MTR
Il segnale MTR contiene gli orari di inizio e fine della riunione di Teams, che possono essere usati per determinare l'occupazione della sala. Questo segnale è uguale al segnale CRS, ma viene esportato e caricato manualmente dall'amministratore del tenant. Si tratta pertanto di un'alternativa a CRS o può essere usato per il test prima dell'onboarding del tenant.
Processo per abilitare MTR
Scaricare i dati MTR.
Formattare i dati nel formato CSV usando lo schema seguente:
L'esempio seguente mostra il contenuto del file di esempio 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
Eseguire il cmdlet Push-Dataset per caricare i dati.
Nell'esempio seguente viene illustrato il cmdlet Push-Dataset.
PS C:\> Push-Dataset -Type TeamsDeviceCalls -Path "C:\Datasets\Datasets\TeamsDeviceCalls"
Nota
All'interno del parametro path specificare il nome della cartella in cui si trova il file CSV. Solo l'inserimento di dati cronologici è supportato per i dati MTR.
Procedura per l'uso del cmdlet Push-Dataset
Aprire PowerShell 7 (non come amministratore).
Installare Microsoft Places eseguendo il cmdlet di Windows PowerShell seguente. Per altre informazioni sull'installazione di Microsoft Places, vedere il Microsoft Places PowerShell Gallery.
Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force
Importare il modulo Microsoft Places eseguendo il cmdlet Windows PowerShell seguente.
Import-Module -Name MicrosoftPlaces
Connettersi al modulo Microsoft Places eseguendo il cmdlet di PowerShell Places seguente.
Connect-MicrosoftPlaces
Caricare il set di dati dal percorso nel dispositivo (usando la cartella e il percorso) eseguendo il cmdlet di PowerShell Places seguente.
PS C:\> Push-Dataset -Type TeamsDeviceCalls -Path "<path-to-csv-file-folder>"
Schema del set di dati per l'analisi delle sale
Colonna | Tipo | Descrizione |
---|---|---|
ConferenceId | Stringa | ID conferenza. |
MeetingId | Stringa | ID riunione. |
StartTime | Stringa | Ora UTC all'inizio della riunione. |
EndTime | Stringa | Ora UTC al termine della riunione. |
CallParticipants | Stringa | Numero di partecipanti che hanno partecipato alla riunione. |
DurationSeconds | Stringa | Durata della riunione. |
alias | Stringa | Alias che identifica in modo univoco un dispositivo MTR. |
Nome visualizzato | Stringa | Questo campo contiene il nome della sala riunioni. |
Tipo di dispositivo | Stringa | Il tipo di dispositivo è sempre "MTR" (in questo caso). |
La connessione dei sensori di occupazione e conteggio delle persone viene eseguita in quattro passaggi.
- Onboarding del dispositivo.
- Caricamento dei dati di telemetria.
- Inserimento dei dati di telemetria in tempo reale.
- Verificare che i dati siano disponibili in Places.
Onboarding del dispositivo
Il primo passaggio prevede il caricamento di un file CSV con i metadati del dispositivo, incluso il modo in cui i dispositivi vengono mappati a un PlaceId in Microsoft Places. Questo passaggio consente di contestualizzare i dati di telemetria quando raggiunge Places.
Il diagramma seguente illustra come eseguire l'onboarding di dispositivi e sensori in Places.
In primo luogo, i dati del dispositivo devono essere preparati.
Scaricare le informazioni sulla posizione da Microsoft Places. Per prima cosa, installare PowerShell 7 eseguendo il cmdlet di PowerShell seguente. Per altre informazioni su PowerShell in Windows, vedere Installazione di PowerShell in Windows.
Install-Module -Name ExchangeOnlineManagement Import-Module -Name ExchangeOnlineManagement Connect-ExchangeOnline
Aprire PowerShell come amministratore ed eseguire il comando di PowerShell di ExchangeOnline seguente per verificare se l'account ha il ruolo TenantPlacesManagement necessario e per assicurarsi che il nome utente sia elencato.
Get-ManagementRoleAssignment -Role TenantPlacesManagement -GetEffectiveUsers
Se si dispone delle autorizzazioni corrette, verranno visualizzati il nome e il ruolo assegnati seguenti.
- Nome: PlacesAdmin
- Ruolo assegnato: TenantPlacesManagement
Per ottenere il PlaceId degli edifici, aprire una nuova finestra di PowerShell ed eseguire il cmdlet Windows PowerShell seguente.
Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force Connect-MicrosoftPlaces
Eseguire i comandi seguenti per scaricare l'elenco di pavimenti e stanze.
$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
Il file di output nel percorso del file CSV deve contenere le informazioni seguenti:
PlaceId DisplayName Tipo 5d275bba-5d7d-487f-855e-75cd2943204f Piano 1 Pavimento 0fa1b1eb-6066-45ea-8f7c-09b4e8cc4e74 Sala conf 1202/3455 (9) Room Scaricare i metadati del dispositivo da una soluzione partner o dal sistema, inclusi tutti i dispositivi.
Usare uno script o eseguire manualmente il mapping dei dispositivi a PlaceId usando il formato di dati seguente per PlacesDevice.
Colonna | Descrizione | Note | Esempio |
---|---|---|---|
DeviceId (obbligatorio) | Identificatore univoco del dispositivo (consigliato: Manufacturer_DeviceUniqueId). | Deve corrispondere all'ID dei dati di telemetria inviati. | Manuf1_3455 |
DisplayName | Nome visualizzato del dispositivo. | Se applicabile, è possibile usare un nome descrittivo. | Manuf1_3455 |
Descrizione | Descrizione del dispositivo. | ||
MacAddress | Indirizzo Mac del dispositivo. | Fornitore fornito (se disponibile). | |
Produttore (obbligatorio) | Produttore del dispositivo. | Fornito dall'amministratore IT. | Manuf1 |
IPV4Address | IPV4Address del dispositivo. | Fornitore fornito (se disponibile). | |
IPV6Address | IPV6Address del dispositivo. | Fornitore fornito, se disponibile. | |
PlaceId (obbligatorio) | PlaceId a cui viene eseguito il mapping del dispositivo in Places. | L'amministratore IT esegue il mapping di DeviceID al campo DisplayName da un elenco di sale. | 76fe540f-01a9-425e-acd5-5d7d1da44fbf |
Tag | Elenco di tag personalizzati associati al dispositivo per facilitare la ricerca. | [ "IsVirtual_False", "Building_121"] | |
Sensor.SensorId (obbligatorio) | Identificatore univoco di un sensore all'interno del dispositivo. | Deve essere incluso nel payload di telemetria standard. | PeopleCount, Occupazione |
Sensor.DisplayName | Nome visualizzato del sensore. | È possibile usare un nome descrittivo (se applicabile). | Occupazione, PeopleCount |
Sensor.SensorType (obbligatorio) | Tipo di sensore. | Elenco convalidato (vedere gli esempi). | Graffetta |
Sensor.PlaceId | Identificatore univoco del luogo servito dal sensore (è necessario fornire queste informazioni solo se il sensore si trova in una posizione diversa dalla posizione del dispositivo). | 76fe540f-01a9-425e-acd5-5d7d1da44fbf |
Linee guida generali per dispositivi e sensori
È consigliabile specificare DeviceId come Manufacturer_DeviceUniqueId. Tuttavia, nei casi in cui i partner non possono inviare dati di telemetria a livello di dispositivo (ad esempio, combinano i dati di telemetria da più dispositivi), è possibile creare un DeviceId virtuale come Manufacturer_Building_VirtualDeviceId. In questo caso, VirtualDeviceId può essere una chiave naturale di uno spazio. Se il cliente fornisce VirtualDeviceId, è necessario includere informazioni sui dispositivi fisici da cui vengono calcolati i dati di telemetria. Le informazioni sul dispositivo fisico possono essere incluse nei tag.
Se Sensor.SensorType è univoco per un dispositivo, è sufficiente specificare SensorType. Nei casi in cui sono presenti più flussi di dati per un particolare tipo di sensore per un dispositivo, è necessario un SensorId univoco. SensorType e SensorId, nella maggior parte dei casi, sono PeopleCount, Occupancy e così via, a meno che SensorType non sia univoco per un dispositivo. In questo caso, SensorId è SensorType_SomeUnique identificatore.
Dopo aver preparato i metadati del dispositivo, le informazioni sul dispositivo possono essere caricate in Microsoft Places nei modi seguenti.
- Uso dei cmdlet di PowerShell
- Uso delle API Microsoft Graph
Uso dei cmdlet di PowerShell
Per gestire singolarmente i dispositivi, è possibile usare direttamente i cmdlet Microsoft Places PowerShell. Per altre informazioni sui cmdlet di Places, vedere il modulo Microsoft Places cmdlet per PowerShell.
Nota
Per eseguire i cmdlet, è necessario avere il ruolo TenantPlacesManagement assegnato.
Nome del cmdlet | Descrizione | Parametri |
---|---|---|
New-PlaceDevice | Crea un nuovo dispositivo | DeviceId (obbligatorio), DisplayName, Description, MACAddress, Manufacturer (obbligatorio), IPV4Address, IPV6Address, PlaceId (obbligatorio), Tags, Sensors (obbligatorio) |
Remove-PlaceDevice | Elimina un dispositivo | ID (obbligatorio) |
Set-PlaceDevice | Aggiornamenti un dispositivo | ID (obbligatorio), DeviceId (obbligatorio), DisplayName, Description, MACAddress, Manufacturer (obbligatorio), IPV4Address, IPV6Address, PlaceId, Tags, Sensors (obbligatorio) |
Get-PlaceDevice | Ottiene un dispositivo | Id, Filter, Top |
Aprire PowerShell 7 (non come amministratore).
Installare Microsoft Places eseguendo il cmdlet di Windows PowerShell seguente. Per altre informazioni sull'installazione di Microsoft Places, vedere il Microsoft Places PowerShell Gallery.
Install-Module -Name MicrosoftPlaces -AllowPrerelease -Force
Importare il modulo Microsoft Places eseguendo il cmdlet Windows PowerShell seguente.
Import-Module -Name MicrosoftPlaces
Dopo aver installato e importato il modulo, connettersi al modulo Microsoft Places eseguendo il cmdlet di PowerShell Places seguente.
Connect-MicrosoftPlaces
Usare New-PlaceDevice esempio di cmdlet illustrato di seguito per aggiungere un dispositivo. Il parametro Sensors è un oggetto di tipo MicrosoftPlaces.PlacesDevices.Sensor con i campi indicati in precedenza.
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"})
Usare Get-PlaceDevice per visualizzare l'elenco dei dispositivi. Per impostazione predefinita, restituisce 10 dispositivi. Per restituire altri dispositivi, aggiungere il parametro -top come illustrato di seguito.
Get-PlaceDevice -top 100
Usare Set-PlaceDevice per aggiornare un dispositivo con l'ID esistente.
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"})
Usare Remove-PlaceDevice per eliminare un dispositivo.
Remove-PlaceDevice -Id "e5a216ff-1d32-4647-8dab-a2523ee5796e"
Uso delle API Microsoft Graph
Per modificare il processo o automatizzare e integrare con i sistemi esistenti, è possibile usare le API di Microsoft Graph.
Per usare le API, seguire questa procedura.
Creare una registrazione dell'app in Microsoft Entra.im. Per altre informazioni sull'autorizzazione PlaceDeviceRead.All e PlaceDevice.ReadWrite.All, vedere Informazioni di riferimento sulle autorizzazioni di Microsoft Graph.
Compilare e distribuire un'applicazione per sincronizzare le informazioni sui dispositivi tra Microsoft Places e i partner.
Per altre informazioni sui dispositivi sensore, vedere le API e la documentazione dei dispositivi di Microsoft Graph seguenti:
- Elencare i sensoriDispositivi
- Creare workplaceSensorDevice
- Ottenere workplaceSensorDevice
- Aggiornare workplaceSensorDevice
- Eliminare workplaceSensorDevice
- Per altre informazioni sulla visualizzazione dei dispositivi, vedere Elencare i sensoriDispositivi.
- Per altre informazioni sulla creazione di un nuovo dispositivo, vedere Creare workplaceSensorDevice.
Dispositivo di esempio:
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"
}
]
}
- Per informazioni su come visualizzare un dispositivo specifico, vedere Get workplaceSensorDevice.To learn how to view a specific device, see Get workplaceSensorDevice.
Esempio:
GET
https://graph.microsoft.com/beta/workplace/sensorDevices/<workplacesensordevice-id>
GET
https://graph.microsoft.com/beta/workplace/sensorDevices/8e404458-e9b1-4153-b6b5-4858ccee1486
Risposta di esempio:
{
"@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"
}
]
}
- Per altre informazioni sull'aggiornamento del dispositivo esistente, vedere Aggiornare workplaceSensorDevice.
Esempio:
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"
}
]
}
Risposta di esempio:
{
"@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"
}
]
}
- Per altre informazioni sull'eliminazione di un dispositivo, vedere Eliminare workplaceSensorDevice.
Esempio:
DELETE https://graph.microsoft.com/beta/workplace/sensorDevices/<workplaceSensorDevice-Id>
DELETE https://graph.microsoft.com/beta/workplace/sensorDevices/052062b9-38f6-48d4-a638-05a72c79419b
Caricamento dei dati di telemetria
Dopo aver eseguito l'onboarding dei dispositivi in Microsoft Places, è possibile eseguire una sola volta il riempimento dei dati cronologici per popolare Places con dati di telemetria cronologici. È quindi possibile configurare Places per ricevere dati di telemetria continui dai dispositivi per rimanere aggiornati. Il diagramma seguente descrive il flusso di caricamento del file di backfill (metà superiore) e il flusso di telemetria continuo del dispositivo (metà inferiore).
Opzione 1: uso del cmdlet Push-Dataset
Microsoft Places accetta dati cronologici in uno schema e un formato di file CSV specifici. È necessario esportare questi dati da un sistema esistente e quindi usare il cmdlet di PowerShell seguente per caricare i dati.
Nome del cmdlet | Descrizione | Parametri | Esempio |
---|---|---|---|
Push-Dataset | Carica il set di dati in ADLS. | Tipo, Percorso | Push-Dataset -Type RoomOccupancy -Path C:\sensordata\ |
Nota
Il tipo può essere RoomOccupancy e PeopleCount. Il ruolo deve essere assegnato a TenantPlacesManagement. Per altre informazioni sui cmdlet di PowerShell, vedere il Microsoft Places PowerShell Gallery.
Aprire PowerShell 7 (non come amministratore).
Installare Microsoft Places eseguendo il cmdlet di Windows PowerShell seguente. Per altre informazioni sull'installazione di Microsoft Places, vedere il Microsoft Places PowerShell Gallery.
Install-Module –Name MicrosoftPlaces –AllowPrerelease –Force
Importare il modulo Microsoft Places eseguendo il cmdlet Windows PowerShell seguente.
Import-Module -Name MicrosoftPlaces
Connettersi al modulo Microsoft Places eseguendo il cmdlet di PowerShell Places seguente.
Connect-MicrosoftPlaces
Caricare il set di dati dal percorso nel dispositivo (usando la cartella e il percorso) eseguendo il cmdlet di PowerShell Places seguente.
Push-Dataset -Type RoomOccupancy -Path <folder path>
Formato di file CSV per PeopleCount
Nome colonna | Ordine di colonna | Comment | Esempio |
---|---|---|---|
DeviceId | 1 | ID dispositivo. | Manuf1_1202_3455 |
SensorId | 2 | ID sensore. | PeopleCount |
Valore | 3 | Intero senza segno. | PeopleCount (qualsiasi intero senza segno, ad esempio 5). |
IngestionTime | 4 | Timestamp dai dati di telemetria, in formato UTC. | 2023-06-27T18:24:20.808Z |
locationHint | Stringa | Informazioni aggiuntive per indicare la posizione del dispositivo. | Edificio 1 |
Csv di esempio:
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
Formato di file CSV per l'occupazione
Nome colonna | Ordine di colonna | Comment | Esempio |
---|---|---|---|
DeviceId | 1 | ID dispositivo. | Manuf1_1202_3455 |
SensorId | 2 | ID sensore. | RoomOccupancy |
Valore | 3 | Intero senza segno. | Occupazione: True o False. |
IngestionTime | 4 | Timestamp dai dati di telemetria, in formato UTC. | 2023-06-27T18:24:20.808Z |
locationHint | Stringa | Informazioni aggiuntive per indicare la posizione del dispositivo. | Edificio 1 |
Csv di esempio:
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
Opzione 2: automatizzare l'uso di Microsoft API Graph
Per compilare un'applicazione per automatizzare il caricamento dei dati di telemetria e per creare un'applicazione per automatizzare la registrazione e l'onboarding dei dispositivi, le API sono disponibili tramite Microsoft Graph. Per usare le API, seguire questa procedura.
Creare una registrazione dell'app in Microsoft Entra. Per altre informazioni sull'autorizzazione PlaceDeviceRead.All e PlaceDevice.ReadWrite.All, vedere Informazioni di riferimento sulle autorizzazioni di Microsoft Graph.
Compilare e distribuire un'applicazione per sincronizzare i dati di telemetria tra Microsoft Places e i partner.
Usare l'API IngestTelemetry per eseguire il push dei dati relativi all'occupazione e al conteggio delle persone in Microsoft Places.
Per altre informazioni sull'inserimento dei dati di telemetria dei sensori per un sensore dell'area di lavoro e per altre informazioni sull'API IngestTelemetry, vedere workplaceSensorDevice: ingestTelemetry.
Per eseguire il push dei dati relativi all'occupazione e al conteggio delle persone in Microsoft Places tramite microsoft API Graph
- Scaricare i dati dai sistemi esistenti come descritto in precedenza.
- Preparare i dati di telemetria in base al formato dati di segnalazione dei dati di occupazione seguente.
Formato segnale-dati dei dati di occupazione
Parametro | Tipo | Descrizione |
---|---|---|
telemetria (obbligatorio) | workplaceSensorDeviceTelemetry | Raccolta dei dati di telemetria raccolti e segnalati da un sensore in un dispositivo della stanza. |
deviceId (obbligatorio) | Stringa | Identificatore univoco definito dall'utente del dispositivo fornito al momento della creazione. Non usare l'identificatore generato dal sistema del dispositivo. Usare gli ID dispositivo di cui è stato eseguito l'onboarding usando solo il cmdlet new-device. |
sensorId | Stringa | Identificatore univoco definito dall'utente del sensore nel dispositivo. Se il dispositivo dispone di più sensori dello stesso tipo, è necessario specificare la proprietà per identificare ogni sensore. Se il dispositivo ha un solo sensore di un tipo, la proprietà può essere omessa. Il valore predefinito è il tipo di sensore. Facoltativo. |
boolValue (obbligatorio) | Booleano | True o false in base al fatto che la stanza sia occupata o meno. |
timestamp (obbligatorio) | DateTimeOffset | Data e ora in cui il sensore ha misurato e segnalato il valore. Il tipo timestamp rappresenta le informazioni di data e ora usando il formato ISO 8601 ed è sempre in formato UTC. Ad esempio, la mezzanotte UTC del 1° gennaio 2024 è 2024-01-01T00:00:00Z. |
sensorType (obbligatorio) | workplaceSensorType | occupazione |
LocationHint (obbligatorio) | Stringa | Informazioni aggiuntive usate per indicare la posizione del dispositivo. |
Persone formato dei dati signal-data
Parametro | Tipo | Descrizione |
---|---|---|
telemetria (obbligatorio) | workplaceSensorDeviceTelemetry | Raccolta dei dati di telemetria raccolti e segnalati da un sensore in un dispositivo della stanza. |
deviceId (obbligatorio) | Stringa | Identificatore univoco definito dall'utente del dispositivo fornito al momento della creazione. Non usare l'identificatore generato dal sistema del dispositivo. Usare gli ID dispositivo di cui è stato eseguito l'onboarding usando solo il cmdlet new-device. |
sensorId | Stringa | Identificatore univoco definito dall'utente del sensore nel dispositivo. Se il dispositivo dispone di più sensori dello stesso tipo, è necessario specificare la proprietà per identificare ogni sensore. Se il dispositivo ha un solo sensore di un tipo, la proprietà può essere omessa. Il valore predefinito è il tipo di sensore. Facoltativo. |
intValue (obbligatorio) | Int32 | Numero di persone che occupano la stanza. |
timestamp (obbligatorio) | DateTimeOffset | Data e ora in cui il sensore ha misurato e segnalato il valore. Il tipo timestamp rappresenta le informazioni di data e ora usando il formato ISO 8601 ed è sempre in formato UTC. Ad esempio, la mezzanotte UTC del 1° gennaio 2024 è 2024-01-01T00:00:00Z. |
sensorType (obbligatorio) | workplaceSensorType | peopleCount |
LocationHint (obbligatorio) | Stringa | Informazioni aggiuntive per indicare la posizione del dispositivo. |
- Eseguire l'API per eseguire il push dei dati in Microsoft Places.
Il comando seguente è una richiesta API di esempio per l'occupazione.
{
"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"
}
]
}
Il comando seguente è una richiesta API di esempio per il conteggio delle persone:
{
"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"
}
]
}
Inserimento dei dati di telemetria in tempo reale
I connettori descritti in Ambito richiedono l'autorizzazione seguente per richiedere il servizio di inserimento dei dati di telemetria in tempo reale.
- PlaceDeviceTelemetry.ReadWrite.All
È necessario completare il consenso dell'amministratore o creare un'applicazione Microsoft Entra con l'autorizzazione in base all'architettura selezionata. Per altre informazioni sull'autorizzazione PlaceDeviceTelemetry.ReadWrite.All, vedere Informazioni di riferimento sulle autorizzazioni di Microsoft Graph.
Il diagramma seguente descrive l'architettura per l'inserimento dei dati di telemetria.
Amministrazione Consenso: tipo Architettura A, connettore di proprietà del partner hardware (SaaS)
Per i clienti che scelgono questi tipi di integrazione, è necessario completare il consenso amministratore a livello di tenant per concedere le autorizzazioni ai servizi partner per inserire i dati di telemetria per loro conto.
Ciò è applicabile quando i provider hardware hanno creato connettori SaaS multi-tenant (app singole e multi-tenant). Per altre informazioni sui connettori multi-tenant, vedere Tenancy in Microsoft Entra ID.
Ottenere l'ID app (GUID) dal partner che inserisce i dati di telemetria per conto del servizio.
Creare un'entità servizio con l'ID app. Sono disponibili diverse opzioni tra cui scegliere. Per altre informazioni, vedere Creare un'applicazione aziendale da un'applicazione multi-tenant in Microsoft Entra ID.
Se si usa Microsoft Graph PowerShell, Graph o l'interfaccia della riga di comando di Azure, sostituire l'ID o l'ID app (dei comandi indicati) nelle pagine per creare un'entità servizio, quindi concedere il consenso amministratore nell'entità servizio in Azure.
Se si usa un URL di consenso amministratore, sostituire l'ID app nella pagina con l'ID dell'app partner, quindi aprirlo in un browser. Crea un'entità servizio e chiede di concedere il consenso amministratore. Per concedere il consenso dell'amministratore, selezionare Accetta.
Amministrazione Consenso: architettura di tipo B e C, connettore in esecuzione in un ambiente locale del cliente
Microsoft Places rende disponibile un'API che accetta i dati di telemetria in un formato standard esposto tramite Microsoft Graph. L'API accetta un batch di messaggi di telemetria.
Per l'architettura di tipo B, i clienti si basano su un'integrazione fornita dai partner hardware ospitati in loco nell'ambiente del cliente.
Per l'architettura di tipo C, i clienti possono creare un processo a esecuzione prolungata o un processo basato su eventi, usando funzioni di Azure, per chiamare Microsoft Places API per inviare dati di telemetria di compilazione.
Entrambe le architetture di integrazione di tipo B e C richiedono ai clienti di creare una registrazione dell'app in Microsoft Entra, come illustrato nella figura seguente, e di fornire il consenso amministratore con PlaceDeviceTelemetry.ReadWrite.All. Per altre informazioni sulle autorizzazioni esposte da Microsoft Graph, vedere Informazioni di riferimento sulle autorizzazioni di Microsoft Graph.
Verificare che i dati siano disponibili in Microsoft Places
Dopo l'onboarding dei dispositivi e l'API inserisce i dati del sensore live, i report di analisi Microsoft Places iniziano a essere popolati. Per sbloccare informazioni dettagliate che consentono di ottimizzare l'area di lavoro, verificare che i dati vengano trasmessi nel dashboard di analisi entro 72 ore.