Руководство по Использование Создателя (предварительная версия) для создания схем помещенийTutorial: Use Creator (Preview) to create indoor maps

Важно!

Службы Создателя Azure Maps в настоящее время предоставляются в общедоступной предварительной версии.Azure Maps Creator services are currently in public preview. Эта предварительная версия предоставляется без соглашения об уровне обслуживания и не рекомендована для использования рабочей среде.This preview version is provided without a service level agreement, and it's not recommended for production workloads. Некоторые функции могут не поддерживаться или их возможности могут быть ограничены.Certain features might not be supported or might have constrained capabilities. Дополнительные сведения см. в статье Дополнительные условия использования предварительных выпусков Microsoft Azure.For more information, see Supplemental Terms of Use for Microsoft Azure Previews.

В этом учебнике показано, как создавать схемы помещений.This tutorial shows you how to create indoor maps. Из этого учебника вы узнаете, как использовать API, чтобы выполнять следующие задачи:In this tutorial, you'll learn how to use the API to:

  • Отправка пакета рисунков со схемой помещенийUpload your indoor map Drawing package
  • Преобразование пакета рисунков в данные схемыConvert your Drawing package into map data
  • Создание набора данных на основе данных схемыCreate a dataset from your map data
  • Создание набора плиток из данных в наборе данныхCreate a tileset from the data in your dataset
  • Запрос API Azure Maps Web Feature Service (WFS), чтобы узнать о функциях схемыQuery the Azure Maps Web Feature Service (WFS) API to learn about your map features
  • Создание набора состояний функции с помощью функций схемы и данных в наборе данныхCreate a feature stateset by using your map features and the data in your dataset
  • Обновление набора состояний вашей функцииUpdate your feature stateset

Предварительные требованияPrerequisites

Создание схем помещений:To create indoor maps:

  1. Создайте учетную запись службы Azure MapsMake an Azure Maps account
  2. Получите первичный ключ подписки, который иногда называется первичным ключом или ключом подписки.Obtain a primary subscription key, also known as the primary key or the subscription key.
  3. Создание ресурса Создателя (предварительная версия)Create a Creator (Preview) resource
  4. Скачайте пример пакета рисунков.Download the Sample Drawing package.

В этом руководстве используется приложение Postman, но вы можете выбрать другую среду разработки API.This tutorial uses the Postman application, but you may choose a different API development environment.

Важно!

URL-адреса API в этом документе могут быть скорректированы в соответствии с расположением ресурса Создателя.The API urls in this document may have to be adjusted according to the location of your Creator resource. Дополнительные сведения см. в разделе Получение доступа к службам Создателя.For more details, see Access to Creator Services.

Отправка пакета рисунковUpload a Drawing package

Используйте API отправки данных, чтобы передать пакет рисунков в ресурсы Azure Maps.Use the Data Upload API to upload the Drawing package to Azure Maps resources.

API отправки данных — это долго выполняющаяся транзакция, которая реализует шаблон, определенный здесь.The Data Upload API is a long running transaction that implements the pattern defined here. После завершения операции мы будем использовать udid для доступа к переданному пакету для его преобразования.Once the operation completes, we'll use the udid to access the uploaded package to convert it. Чтобы получить udid, выполните следующие действия.Follow the steps below to obtain the udid.

  1. Откройте приложение Postman.Open the Postman app. В верхней части приложения Postman выберите элемент Создать.Near the top of the Postman app, select New. В окне Create New (Создание) выберите Collection (Коллекция).In the Create New window, select Collection. Присвойте имя коллекции и нажмите кнопку Создать.Name the collection and select the Create button.

  2. Чтобы создать запрос, нажмите кнопку Создать еще раз.To create the request, select New again. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите Имя запроса для запроса.Enter a Request name for the request. Выберите коллекцию, созданную на предыдущем шаге, а затем нажмите кнопку Сохранить.Select the collection you created in the previous step, and then select Save.

  3. Выберите HTTP-метод POST на вкладке "Построитель" и введите следующий URL-адрес, чтобы отправить пакет рисунков в службу Azure Maps.Select the POST HTTP method in the builder tab and enter the following URL to upload the Drawing package to the Azure Maps service. Для этого запроса и других запросов, упомянутых в этой статье, замените {Azure-Maps-Primary-Subscription-key} первичным ключом подписки.For this request, and other requests mentioned in this article, replace {Azure-Maps-Primary-Subscription-key} with your primary subscription key.

    https://atlas.microsoft.com/mapData/upload?api-version=1.0&dataFormat=zip&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  4. На вкладке Заголовки укажите значение для ключа Content-Type.In the Headers tab, specify a value for the Content-Type key. Пакет рисунков — это папка в ZIP-архиве, поэтому используйте значение application/octet-stream.The Drawing package is a zipped folder, so use the application/octet-stream value. На вкладке Текст выберите двоичный.In the Body tab, select binary. Щелкните элемент Выбрать файл и выберите пакет рисунков.Click on Select File and choose a Drawing package.

    управление данными

  5. Нажмите синюю кнопку Отправить и дождитесь обработки запроса.Click the blue Send button and wait for the request to process. После завершения запроса перейдите на вкладку Заголовки ответа.Once the request completes, go to the Headers tab of the response. Скопируйте значение ключа Расположение, который является status URL.Copy the value of the Location key, which is the status URL.

  6. Чтобы проверить состояние вызова API, создайте HTTP-запрос GET по status URL.To check the status of the API call, create a GET HTTP request on the status URL. Вам потребуется добавить первичный ключ подписки к URL-адресу для проверки подлинности.You'll need to append your primary subscription key to the URL for authentication. Запрос GET должен выглядеть, как в этом URL-адресе:The GET request should look like the following URL:

    https://atlas.microsoft.com/mapData/operations/<operationId>?api-version=1.0&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  7. Когда HTTP-запрос GET завершается успешно, он возвращает resourceLocation.When the GET HTTP request completes successfully, it will return a resourceLocation. resourceLocation содержит уникальное значение udid для переданного содержимого.The resourceLocation contains the unique udid for the uploaded content. Также вы можете использовать URL-адрес resourceLocation, чтобы получить метаданные из этого ресурса на следующем шаге.Optionally, you can use the resourceLocation URL to retrieve metadata from this resource in the next step.

    {
        "status": "Succeeded",
        "resourceLocation": "https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0"
    }
    
  8. Чтобы получить метаданные содержимого, создайте HTTP-запрос GET по URL-адресу resourceLocation, который вы получили на шаге 7.To retrieve content metadata, create a GET HTTP request on the resourceLocation URL that was retrieved in step 7. Не забудьте добавить первичный ключ подписки к этому URL-адресу для проверки подлинности.Make sure to append your primary subscription key to the URL for authentication. Запрос GET должен быть похож на следующий URL-адрес.The GET request should like the following URL:

    https://atlas.microsoft.com/mapData/metadata/{udid}?api-version=1.0&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  9. После успешного завершения HTTP-запрос GET возвращает ответ, текст которого содержит значение udid, определенное в resourceLocation на шаге 7, а также расположение для последующего доступа к содержимому (скачивания) и набор других метаданных для этого содержимого (даты создания и обновления, размер и т. д.).When the GET HTTP request completes successfully, the response body will contain the udid specified in the resourceLocation of step 7, the location to access/download the content in the future, and some other metadata about the content like created/updated date, size, and so on. Пример общего ответа:An example of the overall response is:

    {
        "udid": "{udid}",
        "location": "https://atlas.microsoft.com/mapData/{udid}?api-version=1.0",
        "created": "2020-02-03T02:32:25.0509366+00:00",
        "updated": "2020-02-11T06:12:13.0309351+00:00",
        "sizeInBytes": 766,
        "uploadStatus": "Completed"
    }
    

Преобразование пакета рисунковConvert a Drawing package

После отправки пакета рисунков мы применим к нему udid, чтобы преобразовать этот пакет в данные схемы.Now that the Drawing package is uploaded, we'll use udid for the uploaded package to convert the package into map data. API-интерфейс преобразования использует длительную транзакцию, которая реализует шаблон, определенный здесь.The Conversion API uses a long running transaction that implements the pattern defined here. После завершения операции мы будем использовать conversionId для доступа к преобразованным данным.Once the operation completes, we'll use the conversionId to access the converted data. Чтобы получить conversionId, выполните следующие действия.Follow the steps below to obtain the conversionId.

  1. Нажмите кнопку Создать.Select New. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите имя запроса и выберите коллекцию.Enter a Request name and select a collection. Выберите команду Сохранить.Click Save.

  2. Выберите HTTP-метод POST на вкладке "Построитель" и введите следующий URL-адрес для преобразования отправленного пакета рисунков в данные схемы.Select the POST HTTP method in the builder tab and enter the following URL to convert your uploaded Drawing package into map data. Используйте udid для отправленного пакета.Use the udid for the uploaded package.

    https://atlas.microsoft.com/conversion/convert?subscription-key={Azure-Maps-Primary-Subscription-key}&api-version=1.0&udid={udid}&inputType=DWG
    

    Важно!

    URL-адреса API в этом документе могут быть скорректированы в соответствии с расположением ресурса Создателя.The API urls in this document may have to be adjusted according to the location of your Creator resource. Дополнительные сведения см. в статье Доступ к службам Создателя (предварительная версия) .For more details, see Access to Creator services (Preview) .

  3. Нажмите кнопку Отправить и дождитесь обработки запроса.Click the Send button and wait for the request to process. После завершения запроса перейдите на вкладку Заголовки ответа и найдите ключ Расположение.Once the request completes, go to the Headers tab of the response, and look for the Location key. Скопируйте значение ключа Расположение, который является status URL для запроса на преобразование.Copy the value of the Location key, which is the status URL for the conversion request. Оно понадобится вам на следующем шаге.You will use this in the next step.

    Скопируйте значение ключа расположения

  4. Запустите новый HTTP-метод GET на вкладке "Построитель". Добавьте первичный ключ подписки Azure Maps в status URL.Start a new GET HTTP method in the builder tab. Append your Azure Maps primary subscription key to the status URL. Выполните запрос GET с использованием значения status URL, которое вы скопировали на шаге 3.Make a GET request at the status URL that you copied in step 3. status URL выглядит, как следующий URL-адрес:The status URL looks like the following URL:

    https://atlas.microsoft.com/conversion/operations/<operationId>?api-version=1.0&subscription-key={Azure-Maps-Primary-Subscription-key}
    

    Если процесс преобразования еще не завершен, вы можете увидеть нечто вроде следующего ответа JSON:If the conversion process hasn't yet completed, you may see something like the following JSON response:

    {
        "operationId": "<operationId>",
        "created": "2020-04-22T19:39:54.9518496+00:00",
        "status": "Running"
    }
    
  5. После успешного выполнения запроса в тексте ответа отобразится успешное сообщение о состоянии.Once the request completes successfully, you'll see a success status message in the response body. Скопируйте conversionId из URL-адреса resourceLocation преобразованного пакета.Copy the conversionId from the resourceLocation URL for the converted package. conversionId используется другим API для доступа к данным преобразованной схемы.The conversionId is used by other API to access the converted map data.

    {
        "operationId": "<operationId>",
        "created": "2020-04-22T19:39:54.9518496+00:00",
        "status": "Succeeded",
        "resourceLocation": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0",
        "properties": {}
    }
    

Примечание

Приложение Postman изначально не поддерживает длительные запросы HTTP.The Postman application does not natively support HTTP Long Running Requests. В результате вы можете заметить долгую задержку при выполнении запроса GET по URL-адресу состояния.As a result, you may notice a long delay while making a GET request at the status URL. Выждите примерно тридцать секунд и снова нажмите кнопку Отправить, пока не появится сообщение об успешном или неудачном выполнении.Wait about thirty seconds and try clicking the Send button again until the response shows success or fail.

Образец пакета рисунков должен быть преобразован без ошибок или предупреждений.The sample Drawing package should be converted without errors or warnings. Однако если для собственного пакета рисунков вы получаете ошибки или предупреждения, ответ JSON вернет ссылку на визуализатор ошибок рисунков.However, if you receive errors or warnings from your own Drawing package, the JSON response will give you a link to the Drawing error visualizer. Визуализатор ошибок рисунков позволяет просматривать сведения об ошибках и предупреждениях.The Drawing Error visualizer allows you to inspect the details of errors and warnings. Чтобы получить рекомендации по устранению ошибок и предупреждений при преобразовании, см. сведения в разделе Ошибки и предупреждения, связанные с преобразованием рисунков.To receive recommendations on how to resolve conversion errors and warnings, see the Drawing conversion errors and warnings.

{
    "operationId": "<operationId>",
    "created": "2020-04-22T19:39:54.9518496+00:00",
    "status": "Failed",
    "resourceLocation": "https://atlas.microsoft.com/conversion/{conversionId}?api-version=1.0",
    "properties": {
        "diagnosticPackageLocation": "https://atlas.microsoft.com/mapData/ce61c3c1-faa8-75b7-349f-d863f6523748?api-version=1.0"
    }
}

Создание набора данныхCreate a dataset

Набор данных — это коллекция функций схем, таких как здания, этажи и помещения.The dataset is a collection of map features, such as buildings, levels, and rooms. Чтобы создать набор данных, используйте API создания набора данных.To create a dataset, use the Dataset Create API. API создания набора данных принимает conversionId для преобразованного пакета рисунков и возвращает datasetId созданного набора данных.The dataset Create API takes the conversionId for the converted Drawing package and returns a datasetId of the created dataset. Ниже показано, как создать набор данных.The steps below show you how to create a dataset.

  1. В приложении Postman выберите New (Создать).In the Postman application, select New. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите имя запроса и выберите коллекцию.Enter a Request name and select a collection. Щелкните Сохранить.Click Save

  2. Выполните запрос POST к API создания набора данных, чтобы создать новый набор данных.Make a POST request to the Dataset Create API to create a new dataset. Перед отправкой запроса добавьте ключ подписки и conversionId с conversionId, полученным в процессе преобразования на шаге 5.Before submitting the request, append both your subscription key and the conversionId with the conversionId obtained during the Conversion process in step 5. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/dataset/create?api-version=1.0&conversionID={conversionId}&type=facility&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  3. Получите statusURL из ключа Расположение ответа Заголовки.Obtain the statusURL in the Location key of the response Headers.

  4. Чтобы получить datasetId, выполните запрос на GET к statusURL.Make a GET request at the statusURL to obtain the datasetId. Добавьте первичный ключ подписки Azure Maps для проверки подлинности.Append your Azure Maps primary subscription key for authentication. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/dataset/operations/<operationId>?api-version=1.0&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  5. После успешного завершения HTTP-запроса GET заголовок ответа будет содержать datasetId для созданного набора данных.When the GET HTTP request completes successfully, the response header will contain the datasetId for the created dataset. Скопируйте datasetId.Copy the datasetId. Чтобы создать набор фрагментов, необходимо использовать datasetId.You'll need to use the datasetId to create a tileset.

    {
        "operationId": "<operationId>",
        "created": "2020-04-22T19:52:38.9352189+00:00",
        "status": "Succeeded",
        "resourceLocation": "https://azure.microsoft.com/dataset/{datasetiId}?api-version=1.0"
     }
    

Создание набора фрагментовCreate a tileset

Набор фрагментов — это ряд векторных плиток, которые отображаются на схеме.A tileset is a set of vector tiles that render on the map. Наборы фрагментов создаются на основе существующих наборов данных.Tilesets are created from existing datasets. Однако набор фрагментов не зависит от набора данных, который послужил его источником.However, a tileset is independent from the dataset from which it was sourced. Если набор данных удален, набор фрагментов по-прежнему будет существовать.If the dataset is deleted, the tileset will continue to exist. Чтобы создать набор фрагментов, выполните следующие действия:To create a tileset, follow the steps below:

  1. В приложении Postman выберите New (Создать).In the Postman application, select New. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите имя запроса и выберите коллекцию.Enter a Request name and select a collection. Щелкните Сохранить.Click Save

  2. Выполните запрос POST на вкладке "Построитель". URL-адрес запроса должен выглядеть как этот URL-адрес:Make a POST request in the builder tab. The request URL should look like the following URL:

    https://atlas.microsoft.com/tileset/create/vector?api-version=1.0&datasetID={datasetId}&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  3. Выполните запрос GET в statusURL для этого набора фрагментов.Make a GET request at the statusURL for the tileset. Добавьте первичный ключ подписки Azure Maps для проверки подлинности.Append your Azure Maps primary subscription key for authentication. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

     https://atlas.microsoft.com/tileset/operations/<operationId>?api-version=1.0&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  4. После успешного завершения HTTP-запроса GET заголовок ответа будет содержать tilesetId для созданного набора фрагментов.When the GET HTTP request completes successfully, the response header will contain the tilesetId for the created tileset. Скопируйте tilesetId.Copy the tilesetId.

    {
        "operationId": "<operationId>",
        "createdDateTime": "3/11/2020 8:45:13 PM +00:00",
        "status": "Succeeded",
        "resourceLocation": "https://atlas.microsoft.com/tileset/{tilesetId}?api-version=1.0"
    }
    

Запросы к наборам данных с помощью API WFSQuery datasets with WFS API

Наборы данных можно запрашивать с помощью API WFS.Datasets can be queried using WFS API. С помощью API WFS можно запросить коллекции функций, определенную коллекцию или функцию с идентификатором функции.With the WFS API you can query for feature collections, a specific collection, or a specific feature with a feature ID. Идентификатор функции однозначно определяет функцию в наборе данных.The feature ID uniquely identifies the feature within the dataset. Он используется, например, для указания, какое состояние функции следует обновить в заданном наборе состояний.It's used, for example, to identify which feature state should be updated in a given stateset.

  1. В приложении Postman выберите New (Создать).In the Postman application, select New. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите имя запроса и выберите коллекцию.Enter a Request name and select a collection. Щелкните Сохранить.Click Save

  2. Выполните запрос GET, чтобы просмотреть список коллекций в наборе данных.Make a GET request to view a list of the collections in your dataset. Замените <dataset-id> на datasetId.Replace <dataset-id> with your datasetId. Используйте первичный ключ Azure Maps вместо заполнителя.Use your Azure Maps primary key instead of the placeholder. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections?subscription-key={Azure-Maps-Primary-Subscription-key}&api-version=1.0
    
  3. Текст ответа будет доставляться в формате GeoJSON и будет содержать все коллекции в этом наборе данных.The response body will be delivered in GeoJSON format and will contain all collections in the dataset. Для простоты в этом примере показана только коллекция unit.For simplicity, the example here only shows the unit collection. Пример, содержащий все коллекции, см. в разделе API коллекций описания WFS.To see an example that contains all collections, see WFS Describe Collections API. Чтобы узнать больше о любой коллекции, можно щелкнуть любой URL-адрес в элементе link.To learn more about any collection, you can click on any of the URLs inside the link element.

    {
    "collections": [
        {
            "name": "unit",
            "description": "A physical and non-overlapping area which might be occupied and traversed by a navigating agent. Can be a hallway, a room, a courtyard, etc. It is surrounded by physical obstruction (wall), unless the is_open_area attribute is equal to true, and one must add openings where the obstruction shouldn't be there. If is_open_area attribute is equal to true, all the sides are assumed open to the surroundings and walls are to be added where needed. Walls for open areas are represented as a line_element or area_element with is_obstruction equal to true.",
            "links": [
                {
                    "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/definition?api-version=1.0",
                    "rel": "describedBy",
                    "title": "Metadata catalogue for unit"
                },
                {
                    "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?api-version=1.0",
                    "rel": "data",
                    "title": "unit"
                }
                {
                    "href": "https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit?api-version=1.0",
                    "rel": "self",
                    "title": "Metadata catalogue for unit"
                }
            ]
        },
    
  4. Выполните запрос GET для коллекций функций unit.Make a GET request for the unit feature collections. Замените {datasetId} на datasetId.Replace {datasetId} with your datasetId. Используйте первичный ключ Azure Maps вместо заполнителя.Use your Azure Maps primary key instead of the placeholder. Текст ответа будет содержать все функции коллекции unit.The response body will contain all the features of the unit collection. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/wfs/datasets/{datasetId}/collections/unit/items?subscription-key={Azure-Maps-Primary-Subscription-key}&api-version=1.0
    
  5. Скопируйте id функции для функции секции, имеющей свойства стиля, которые можно изменять динамически.Copy the feature id for a unit feature that has style properties that can be dynamically modified. Так как состояние заполнения секции и температуру можно обновлять динамически, мы будем использовать id этой функции в следующем разделе.Because the unit occupancy status and temperature can be dynamically updated, we'll use this feature id in the next section. В следующем примере id функции — "UNIT26".In the following example, the feature id is "UNIT26". Мы будем называть свойства стиля этой функции состояниями, и будем использовать эту функцию для создания набора состояний.we'll refer to the style properties of this feature as states, and we'll use the feature to make a stateset.

    {
       "type": "FeatureCollection",
       "features": [
           {
               "type": "Feature",
               "geometry": {
                   "type": "Polygon",
                   "coordinates": ["..."]
               },
               "properties": {
                   "original_id": "b7410920-8cb0-490b-ab23-b489fd35aed0",
                   "category_id": "CTG8",
                   "is_open_area": true,
                   "navigable_by": [
                       "pedestrian"
                   ],
                   "route_through_behavior": "allowed",
                   "level_id": "LVL14",
                   "occupants": [],
                   "address_id": "DIR1",
                   "name": "157"
               },
               "id": "UNIT26",
               "featureType": ""
           }, {"..."}
       ]
    }
    

Создание набора состояний функцииCreate a feature stateset

  1. В приложении Postman выберите New (Создать).In the Postman application, select New. В окне Create New (Создание) выберите Request (Запрос).In the Create New window, select Request. Введите имя запроса и выберите коллекцию.Enter a Request name and select a collection. Щелкните Сохранить.Click Save

  2. Выполните запрос POST к API создания набора состояний.Make a POST request to the Create Stateset API. Используйте datasetId набора данных, содержащего состояние, которое необходимо изменить.Use the datasetId of the dataset that contains the state you want to modify. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/featureState/stateset?api-version=1.0&datasetId={datasetId}&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  3. В Заголовках запроса POST установите для параметра Content-Type значение application/json.In the Headers of the POST request, set Content-Type to application/json. В поле Текст укажите следующие стили, чтобы отразить изменения в состояниях occupied и temperature.In the Body, provide the styles below to reflect changes to the occupied and temperature states. Закончив, нажмите кнопку Отправить.When you're done, click Send.

    {
       "styles":[
          {
             "keyname":"occupied",
             "type":"boolean",
             "rules":[
                {
                   "true":"#FF0000",
                   "false":"#00FF00"
                }
             ]
          },
          {
             "keyname":"temperature",
             "type":"number",
             "rules":[
                {
                   "range":{
                      "exclusiveMaximum":66
                   },
                   "color":"#00204e"
                },
                {
                   "range":{
                      "minimum":66,
                      "exclusiveMaximum":70
                   },
                   "color":"#0278da"
                },
                {
                   "range":{
                      "minimum":70,
                      "exclusiveMaximum":74
                   },
                   "color":"#187d1d"
                },
                {
                   "range":{
                      "minimum":74,
                      "exclusiveMaximum":78
                   },
                   "color":"#fef200"
                },
                {
                   "range":{
                      "minimum":78,
                      "exclusiveMaximum":82
                   },
                   "color":"#fe8c01"
                },
                {
                   "range":{
                      "minimum":82
                   },
                   "color":"#e71123"
                }
             ]
          }
       ]
    }
    
  4. Скопируйте statesetId из текста ответа.Copy the statesetId from the response body.

  5. Создайте запрос POST для обновления состояния: Передайте идентификатор statesetId и ID функции с помощью ключа подписки Azure Maps.Create a POST request to update the state: Pass the statesetId and feature ID with your Azure Maps subscription key. Запрос должен выглядеть, как в этом URL-адресе:The request should look like the following URL:

    https://atlas.microsoft.com/featureState/state?api-version=1.0&statesetID={statesetId}&featureID={featureId}&subscription-key={Azure-Maps-Primary-Subscription-key}
    
  6. В Заголовках запроса POST установите для параметра Content-Type значение application/json.In the Headers of the POST request, set Content-Type to application/json. В поле Текст запроса POST, скопируйте и вставьте JSON в примере ниже.In the BODY of the POST request, copy and paste the JSON in the sample below.

    {
        "states": [
            {
                "keyName": "occupied",
                "value": true,
                "eventTimestamp": "2019-11-14T17:10:20"
            }
        ]
    }
    

    Примечание

    Обновление будет сохранено только в том случае, если отметка времени будет располагаться после метки времени предыдущего запроса.The update will only be saved if the time posted stamp is after the time stamp of the previous request. Мы можем передать любое имя ключа, настроенное ранее во время создания.We can pass any keyname that we've previously configured during creation.

  7. После успешного обновления вы получите код состояния HTTP 200 OK.Upon a successful update, you'll receive a 200 OK HTTP status code. При наличии динамического стиля, реализованного для схемы помещений, обновление будет отображаться на преобразованной для просмотра схеме в указанной отметке времени.If you have dynamic styling implemented for an indoor map, the update will display in your rendered map at the specified time stamp.

API состояний получения функций позволяет извлекать состояние компонента с помощью функции ID.The Feature Get States API allows you to retrieve the state of a feature using its feature ID. Кроме того, можно удалить набор состояний и его ресурсы, используя API удаления состояния функции.You can also delete the stateset and its resources by using the Feature State Delete API.

Дополнительные сведения о различных службах Создателя Azure Maps (предварительная версия), обсуждаемых в этой статье, см. в статье Создатель для схем помещений.To learn more about the different Azure Maps Creator services (Preview) discussed in this article see, Creator Indoor Maps.

Очистка ресурсовClean up resources

Нет ресурсов, требующих очистки.There are no resources that require cleanup.

Дальнейшие действияNext steps

Чтобы узнать, как использовать модуль Indoor Maps, см. статьюTo learn how to use the indoor maps module, see