Condividi tramite


Creare un set di stati della funzionalità

I set di stati di funzionalità definiscono proprietà dinamiche e valori su funzionalità specifiche che le supportano. Questo articolo illustra come creare un set di stati che definisce i valori e gli stili corrispondenti per una proprietà e come modificare lo stato di una proprietà.

Prerequisiti

  • Completamento corretto dei set di dati di query con l'API WFS.
  • Oggetto datasetId ottenuto nella sezione Controllare lo stato di creazione del set di dati dell'esercitazione Usare Creator per creare mappe di interni.

Importante

  • Questo articolo usa l'URL us.atlas.microsoft.com geografico. Se il servizio Creator non è stato creato nella Stati Uniti, è necessario usare un URL geografico diverso. Per altre informazioni, vedere Access to Creator Services.For more information, see Access to Creator Services.
  • Negli esempi di URL di questo articolo è necessario sostituire:
    • {Azure-Maps-Subscription-key}con la chiave di sottoscrizione Mappe di Azure.
    • {datasetId} con ottenuto datasetId nella sezione Controllare lo stato di creazione del set di dati dell'esercitazione Usare Creator per creare mappe di interni

Creare il set di stati della funzionalità

Per creare un set di stati:

Creare una nuova richiesta HTTP POST che usa l'API Stateset. La richiesta deve essere simile all'URL seguente:

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

Impostare quindi su Content-Typeapplication/json nell'intestazione della richiesta.

Se si usa uno strumento come Postman, dovrebbe essere simile al seguente:

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.

Infine, nel corpo della richiesta HTTP includere le informazioni sullo stile in formato JSON non elaborato, che applica colori diversi alla occupied proprietà a seconda del relativo valore:

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

Dopo che la risposta viene restituita correttamente, copiare l'oggetto statesetId dal corpo della risposta. Nella sezione successiva si userà per statesetId modificare lo occupancy stato della proprietà dell'unità con la funzionalità id "UNIT26". Se si usa Postman, viene visualizzato come segue:

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

Aggiornare uno stato della funzionalità

Questa sezione illustra come aggiornare lo occupied stato dell'unità con la funzionalità id "UNIT26". Per aggiornare lo occupied stato, creare una nuova richiesta HTTP PUT che chiama l'API Feature Statesets. La richiesta dovrebbe essere simile all'URL seguente (sostituire {statesetId} con l'oggetto statesetId ottenuto in Creare un set di stati di funzionalità):

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

Impostare quindi su Content-Typeapplication/json nell'intestazione della richiesta.

Se si usa uno strumento come Postman, dovrebbe essere simile al seguente:

A screenshot of the header tab information for stateset creation.

Infine, nel corpo della richiesta HTTP includere le informazioni sullo stile in formato JSON non elaborato, che applica colori diversi alla occupied proprietà a seconda del relativo valore:

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

Nota

L'aggiornamento verrà salvato solo se il timestamp registrato è dopo il timestamp della richiesta precedente.

Dopo aver inviato la richiesta HTTP e aver completato l'aggiornamento, si riceve un 200 OK codice di stato HTTP. Se è stato implementato lo stile dinamico per una mappa interna, l'aggiornamento viene visualizzato nel timestamp specificato nella mappa sottoposta a rendering.

Informazioni aggiuntive

Passaggi successivi

Informazioni su come implementare lo stile dinamico per le mappe interne.