Tworzenie zestawu stanów funkcji

Zestawy stanów funkcji definiują dynamiczne właściwości i wartości dla określonych funkcji, które je obsługują. W tym artykule wyjaśniono, jak utworzyć zestaw stanów, który definiuje wartości i odpowiednie style dla właściwości i zmienia stan właściwości.

Wymagania wstępne

  • Pomyślne ukończenie zestawów danych zapytań za pomocą interfejsu API systemu plików WFS.
  • Element datasetId uzyskany w sekcji Sprawdzanie stanu tworzenia zestawu danych w samouczku Używanie twórcy do tworzenia map wnętrz.

Ważne

  • W tym artykule jest używany us.atlas.microsoft.com adres URL geograficzny. Jeśli usługa Creator nie została utworzona w Stany Zjednoczone, musisz użyć innego adresu URL geograficznego. Aby uzyskać więcej informacji, zobacz Access to Creator Services (Dostęp do usług dla twórców).
  • W przykładach adresów URL w tym artykule należy zastąpić następujące elementy:
    • {Azure-Maps-Subscription-key}przy użyciu klucza subskrypcji usługi Azure Mapy.
    • {datasetId}za pomocą instrukcji uzyskanych w sekcji Sprawdzanie stanu tworzenia zestawu danych w samouczku Używanie twórcy do tworzenia map wnętrz datasetId

Tworzenie zestawu stanów funkcji

Aby utworzyć zestaw stanów:

Utwórz nowe żądanie HTTP POST korzystające z interfejsu API zestawu stanów. Żądanie powinno wyglądać podobnie do następującego adresu URL:

https://us.atlas.microsoft.com/featurestatesets?api-version=2.0&datasetId={datasetId}&subscription-key={Your-Azure-Maps-Subscription-key}

Następnie ustaw wartość na Content-Typeapplication/json w nagłówku żądania.

Jeśli używasz narzędzia takiego jak Postman, powinno to wyglądać następująco:

A screenshot of Postman showing the Header tab of the POST request that shows the Content Type Key with a value of application forward slash json.

Na koniec w treści żądania HTTP dołącz informacje o stylu w nieprzetworzonym formacie JSON, który stosuje różne kolory do occupied właściwości w zależności od jej wartości:

{
    "styles":[
        {
            "keyname":"occupied",
            "type":"boolean",
            "rules":[
            {
                "true":"#FF0000",
                "false":"#00FF00"
            }
            ]
        }
    ]
}

Po pomyślnym powrocie odpowiedzi skopiuj element statesetId z treści odpowiedzi. W następnej sekcji użyjesz elementu statesetId , aby zmienić occupancy stan właściwości jednostki za pomocą funkcji id "UNIT26". W przypadku korzystania z narzędzia Postman jest wyświetlany w następujący sposób:

A screenshot of Postman showing the resource Stateset ID value in the responses body.

Aktualizowanie stanu funkcji

W tej sekcji pokazano, jak zaktualizować occupied stan jednostki za pomocą funkcji id "UNIT26". Aby zaktualizować occupied stan, utwórz nowe żądanie HTTP PUT wywołujące interfejs API zestawów stanów funkcji. Żądanie powinno wyglądać podobnie do następującego adresu URL (zastąp ciąg {statesetId} uzyskanym w sekcji Tworzenie zestawu stanów statesetId funkcji):

https://us.atlas.microsoft.com/featurestatesets/{statesetId}/featureStates/UNIT26?api-version=2.0&subscription-key={Your-Azure-Maps-Subscription-key}

Następnie ustaw wartość na Content-Typeapplication/json w nagłówku żądania.

Jeśli używasz narzędzia takiego jak Postman, powinno to wyglądać następująco:

A screenshot of the header tab information for stateset creation.

Na koniec w treści żądania HTTP dołącz informacje o stylu w nieprzetworzonym formacie JSON, który stosuje różne kolory do occupied właściwości w zależności od jej wartości:

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

Uwaga

Aktualizacja zostanie zapisana tylko wtedy, gdy sygnatura czasowa jest po sygnaturze czasowej poprzedniego żądania.

Po wysłaniu żądania HTTP i zakończeniu aktualizacji otrzymasz 200 OK kod stanu HTTP. Jeśli zaimplementowano dynamiczne style dla mapy wewnętrznej, aktualizacja będzie wyświetlana na określonej sygnaturze czasowej w renderowanej mapie.

Dodatkowe informacje

Następne kroki

Dowiedz się, jak zaimplementować dynamiczne style na potrzeby map w pomieszczeniach.