Пространство имен: microsoft.graph
Важно!
API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Получение общих отчетов о качестве подключения для всех устройств в текущем клиенте в течение заданного периода времени, включая такие метрики, как среднее время кругового пути (P50), средняя доступная пропускная способность и процент подключения UDP. Получите также другие метрики реального времени, такие как время последнего кругового пути подключения, IP-адрес клиента последнего подключения, последний шлюз подключения и протокол последнего подключения.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
| ✅ |
✅ |
✅ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
| Делегированные (рабочая или учебная учетная запись) |
CloudPC.Read.All |
CloudPC.ReadWrite.All |
| Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
| Приложение |
CloudPC.Read.All |
CloudPC.ReadWrite.All |
HTTP-запрос
POST /deviceManagement/virtualEndpoint/reports/getConnectionQualityReports
Текст запроса
В тексте запроса укажите представление параметров в формате JSON.
В следующей таблице указаны параметры, которые можно использовать с этим действием.
| Параметр |
Тип |
Описание |
| filter |
String |
Синтаксис OData $filter . Поддерживаемые фильтры: and, or, lt, le, gt, geи eq. |
| groupBy |
Коллекция строк |
Укажите, как группировать отчеты. Если используется, содержимое должно совпадать с параметром select . |
| orderBy |
Коллекция строк |
Укажите способ сортировки отчетов. |
| search |
String |
Указывает строку для поиска. |
| select |
Коллекция строк |
Синтаксис OData $select . Выбранные столбцы отчетов. |
| skip |
Int32 |
Количество записей, которые нужно пропустить. |
| top |
Int32 |
Количество возвращаемых верхних записей. |
Отклик
В случае успешного 200 OK выполнения это действие возвращает код ответа и Stream в тексте ответа.
Примеры
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/beta/deviceManagement/virtualEndpoint/reports/getConnectionQualityReports
Content-Type: application/json
Content-length: 200
{
"filter": "EventDateTime gt datetime'2023-04-16T07:40:41.694Z'",
"search": "",
"select": [
"CloudPcId",
"ManagedDeviceName",
"AvgRoundTripTimeInMsP50",
"LastConnectionRoundTripTimeInMs",
"AvgAvailableBandwidthInMbpsP50",
"LastConnectionAvailableBandWidthInMSps",
"AvgRemoteSignInTimeInSecP50",
"UDPConnectionPercentage",
"LastConnectionGateway",
"LastConnectionProtocol",
"LastActiveTime"
],
"skip": "0",
"top": "25",
"orderBy": []
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.DeviceManagement.VirtualEndpoint.Reports.GetConnectionQualityReports;
var requestBody = new GetConnectionQualityReportsPostRequestBody
{
Filter = "EventDateTime gt datetime'2023-04-16T07:40:41.694Z'",
Search = "",
Select = new List<string>
{
"CloudPcId",
"ManagedDeviceName",
"AvgRoundTripTimeInMsP50",
"LastConnectionRoundTripTimeInMs",
"AvgAvailableBandwidthInMbpsP50",
"LastConnectionAvailableBandWidthInMSps",
"AvgRemoteSignInTimeInSecP50",
"UDPConnectionPercentage",
"LastConnectionGateway",
"LastConnectionProtocol",
"LastActiveTime",
},
Skip = 0,
Top = 25,
OrderBy = new List<string>
{
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
await graphClient.DeviceManagement.VirtualEndpoint.Reports.GetConnectionQualityReports.PostAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphdevicemanagement "github.com/microsoftgraph/msgraph-beta-sdk-go/devicemanagement"
//other-imports
)
requestBody := graphdevicemanagement.NewGetConnectionQualityReportsPostRequestBody()
filter := "EventDateTime gt datetime'2023-04-16T07:40:41.694Z'"
requestBody.SetFilter(&filter)
search := ""
requestBody.SetSearch(&search)
select := []string {
"CloudPcId",
"ManagedDeviceName",
"AvgRoundTripTimeInMsP50",
"LastConnectionRoundTripTimeInMs",
"AvgAvailableBandwidthInMbpsP50",
"LastConnectionAvailableBandWidthInMSps",
"AvgRemoteSignInTimeInSecP50",
"UDPConnectionPercentage",
"LastConnectionGateway",
"LastConnectionProtocol",
"LastActiveTime",
}
requestBody.SetSelect(select)
skip := int32(0)
requestBody.SetSkip(&skip)
top := int32(25)
requestBody.SetTop(&top)
orderBy := []string {
}
requestBody.SetOrderBy(orderBy)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
graphClient.DeviceManagement().VirtualEndpoint().Reports().GetConnectionQualityReports().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
com.microsoft.graph.beta.devicemanagement.virtualendpoint.reports.getconnectionqualityreports.GetConnectionQualityReportsPostRequestBody getConnectionQualityReportsPostRequestBody = new com.microsoft.graph.beta.devicemanagement.virtualendpoint.reports.getconnectionqualityreports.GetConnectionQualityReportsPostRequestBody();
getConnectionQualityReportsPostRequestBody.setFilter("EventDateTime gt datetime'2023-04-16T07:40:41.694Z'");
getConnectionQualityReportsPostRequestBody.setSearch("");
LinkedList<String> select = new LinkedList<String>();
select.add("CloudPcId");
select.add("ManagedDeviceName");
select.add("AvgRoundTripTimeInMsP50");
select.add("LastConnectionRoundTripTimeInMs");
select.add("AvgAvailableBandwidthInMbpsP50");
select.add("LastConnectionAvailableBandWidthInMSps");
select.add("AvgRemoteSignInTimeInSecP50");
select.add("UDPConnectionPercentage");
select.add("LastConnectionGateway");
select.add("LastConnectionProtocol");
select.add("LastActiveTime");
getConnectionQualityReportsPostRequestBody.setSelect(select);
getConnectionQualityReportsPostRequestBody.setSkip(0);
getConnectionQualityReportsPostRequestBody.setTop(25);
LinkedList<String> orderBy = new LinkedList<String>();
getConnectionQualityReportsPostRequestBody.setOrderBy(orderBy);
graphClient.deviceManagement().virtualEndpoint().reports().getConnectionQualityReports().post(getConnectionQualityReportsPostRequestBody);
const options = {
authProvider,
};
const client = Client.init(options);
const stream = {
filter: 'EventDateTime gt datetime\'2023-04-16T07:40:41.694Z\'',
search: '',
select: [
'CloudPcId',
'ManagedDeviceName',
'AvgRoundTripTimeInMsP50',
'LastConnectionRoundTripTimeInMs',
'AvgAvailableBandwidthInMbpsP50',
'LastConnectionAvailableBandWidthInMSps',
'AvgRemoteSignInTimeInSecP50',
'UDPConnectionPercentage',
'LastConnectionGateway',
'LastConnectionProtocol',
'LastActiveTime'
],
skip: '0',
top: '25',
orderBy: []
};
await client.api('/deviceManagement/virtualEndpoint/reports/getConnectionQualityReports')
.version('beta')
.post(stream);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\DeviceManagement\VirtualEndpoint\Reports\GetConnectionQualityReports\GetConnectionQualityReportsPostRequestBody;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new GetConnectionQualityReportsPostRequestBody();
$requestBody->setFilter('EventDateTime gt datetime\'2023-04-16T07:40:41.694Z\'');
$requestBody->setSearch('');
$requestBody->setSelect(['CloudPcId', 'ManagedDeviceName', 'AvgRoundTripTimeInMsP50', 'LastConnectionRoundTripTimeInMs', 'AvgAvailableBandwidthInMbpsP50', 'LastConnectionAvailableBandWidthInMSps', 'AvgRemoteSignInTimeInSecP50', 'UDPConnectionPercentage', 'LastConnectionGateway', 'LastConnectionProtocol', 'LastActiveTime', ]);
$requestBody->setSkip(0);
$requestBody->setTop(25);
$requestBody->setOrderBy([ ]);
$graphServiceClient->deviceManagement()->virtualEndpoint()->reports()->getConnectionQualityReports()->post($requestBody)->wait();
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.devicemanagement.virtualendpoint.reports.get_connection_quality_reports.get_connection_quality_reports_post_request_body import GetConnectionQualityReportsPostRequestBody
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = GetConnectionQualityReportsPostRequestBody(
filter = "EventDateTime gt datetime'2023-04-16T07:40:41.694Z'",
search = "",
select = [
"CloudPcId",
"ManagedDeviceName",
"AvgRoundTripTimeInMsP50",
"LastConnectionRoundTripTimeInMs",
"AvgAvailableBandwidthInMbpsP50",
"LastConnectionAvailableBandWidthInMSps",
"AvgRemoteSignInTimeInSecP50",
"UDPConnectionPercentage",
"LastConnectionGateway",
"LastConnectionProtocol",
"LastActiveTime",
],
skip = 0,
top = 25,
order_by = [
],
)
await graph_client.device_management.virtual_endpoint.reports.get_connection_quality_reports.post(request_body)
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-Type: application/octet-stream
{
"TotalRowCount": 3,
"Schema": [
{
"Column": "CloudPcId",
"PropertyType": "String"
},
{
"Column": "ManagedDeviceName",
"PropertyType": "String"
},
{
"Column": "AvgRoundTripTimeInMsP50",
"PropertyType": "Double"
},
{
"Column": "LastConnectionRoundTripTimeInMs",
"PropertyType": "Double"
},
{
"Column": "AvgAvailableBandwidthInMbpsP50",
"PropertyType": "Double"
},
{
"Column": "LastConnectionAvailableBandWidthInMSps",
"PropertyType": "Double"
},
{
"Column": "AvgRemoteSignInTimeInSecP50",
"PropertyType": "Double"
},
{
"Column": "UDPConnectionPercentage",
"PropertyType": "Double"
},
{
"Column": "LastConnectionGateway",
"PropertyType": "String"
},
{
"Column": "LastConnectionProtocol",
"PropertyType": "String"
},
{
"Column": "LastActiveTime",
"PropertyType": "DateTime"
}
],
"Values": [
[
"1", "f5ff445f-7488-40f8-8ab9-ee784a9c1f33", "Cloud PC-Ana Bowman", "110", "90", "0.32", "0.41", "10.15", "0.80", "East US 2", "192.168.1.01", "UDP (STUN)", "2023-04-17T00:00:00Z"
],
[
"1", "f5ff445f-7488-40f8-8ab9-ee784a9c1f33", "Cloud PC-Isabel Bowman", "201", "72", "1.22", "1.7", "10.37", "0.62", "West US 3", "192.168.1.02", "UDP (STUN)", "2023-04-18T00:00:00Z"
],
[
"1", "f5ff445f-7488-40f8-8ab9-ee784a9c1f33", "Cloud PC-Mary Bowman", "213", "200", "1.74", "0.88", "12.35", "0.45", "East US 2", "192.168.1.03", "TCP", "2023-04-19T00:00:00Z"
]
]
}