Share via


Időjárás-előrejelzési adatok betöltése az Azure Data Manager for Agriculture szolgáltatásban

Az időjárás egy erősen demokratizált szolgáltatás a mezőgazdaságban. Az Azure Data Manager for Agriculture lehetővé teszi az ügyfelek számára, hogy a választott időjárás-szolgáltatóval dolgozhassanak.

Az Azure Data Manager for Agriculture bővítményalapú és szolgáltatói agnosztikus megközelítéssel biztosítja az aktuális és előrejelzési időjárási adatokat. Az időjárás-bővítmény írásának lépéseit követve együttműködhet a választott szolgáltatóval.

A kialakítás áttekintése

Mivel az Azure Data Manager for Agriculture szolgáltatói megközelítéssel biztosít időjárási adatokat, nem kell ismernie a szolgáltató API-jait. Ehelyett a szolgáltatótól függetlenül használhatja ugyanazokat az Azure Data Manager for Agriculture API-kat.

Íme néhány megjegyzés a provider-agnostic API-k viselkedéséről:

  • Egyetlen hívásban legfeljebb 50 helyszín időjárási adatait kérheti le.
  • Az előrejelzési adatok nem régebbiek 15 percnél. Az aktuális feltételek adatai nem régebbiek 10 percnél.
  • Miután a kezdeti hívás egy helyre került, az adatok gyorsítótárazva lesznek a megadott élettartamra (TTL).
  • A gyorsítótár melegen tartásához használhatja a paramétert apiFreshnessTimeInMinutes az időjárási bővítményben. A platform a megadott ideig futtat egy feladatot, és frissíti a gyorsítótárat. Az alapértelmezett érték nulla, ami azt jelenti, hogy a gyorsítótár alapértelmezés szerint nem tart melegen.

A következő szakaszok az időjárási adatok beolvasására és az Azure Data Manager for Agriculture szolgáltatásba való betöltésére szolgáló parancsokat ismertetik.

1. lépés: Az időjárás-bővítmény telepítése

A bővítmény telepítéséhez futtassa a következő parancsot az Azure Resource Manager ARMClient eszközzel.

Cserélje le a szögletes zárójeleken (<>) belüli összes értéket a megfelelő környezeti értékekre. A jelenleg támogatott bővítményazonosító az IBM.TWC.

armclient PUT /subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/extensions/<extensionid>?api-version=2020-05-12-preview '{}'

A telepítési parancs mintakimenete:

{
      "id": "/subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/extensions/<extensionid>",
      "type": "Microsoft.AgFoodPlatform/farmBeats/extensions",
      "systemData": {
        "createdBy": "testuser@abc.com",
        "createdByType": "User",`        
        "createdAt": "2021-03-17T12:36:51Z",
        "lastModifiedBy": "testuser@abc.com",
        "lastModifiedByType": "User",
        "lastModifiedAt": "2021-03-17T12:36:51Z"
      },
      "properties": {
        "category": "Weather",
        "installedExtensionVersion": "1.0",
        "extensionAuthLink": "https://www.<provider.com/integration/",
        "extensionApiDocsLink": "https://docs.<provider>.com/documentation/Weather_Data/Historical_and_Climatological_Weather/latest#_daily_historical_ag_weather_v1_0"
      },
      "eTag": "92003c91-0000-0700-0000-804752e00000",
      "name": "<provider>"
}

A bővítmény telepítése után betöltheti az időjárási adatokat.

Ha frissíteni apiFreshnessTimeInMinutesszeretné, frissítse a bővítményt a következő PowerShell-paranccsal. Cserélje le a szögletes zárójeleken belüli összes értéket a megfelelő környezeti értékekre.

armclient put /subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/<extensionid>?api-version=2021-09-01-preview '{"additionalApiProperties": {""15-day-daily-forecast"": {"apiFreshnessTimeInMinutes": <time>}, ""currents-on-demand"": {"apiFreshnessTimeInMinutes": <time>},""15-day-hourly-forecast"":{"apiFreshnessTimeInMinutes": <time>}}}'

Az előző frissítési parancs egyesíti a javításműveleteket. Csak a parancsban említett API frissességi idejét frissíti, és megtartja az egyéb API-k frissességi időértékeit, mint korábban.

A frissítési parancs mintakimenete:

{
  "id": "/subscriptions/<subscriptionid>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-resource-name>/extensions/<extensionid>",
  "type": "Microsoft.AgFoodPlatform/farmBeats/extensions",
  "systemData": {
    "createdBy": "50e74af5-3b8f-4a8c-9521-4f506b4e0c16",
    "createdByType": "User",
    "createdAt": "2022-10-10T21:28:05Z",
    "lastModifiedBy": "50e74af5-3b8f-4a8c-9521-4f506b4e0c16",
    "lastModifiedByType": "User",
    "lastModifiedAt": "2022-11-08T13:10:17Z"
  },
  "properties": {
    "extensionId": "provider",
    "extensionCategory": "Weather",
    "installedExtensionVersion": "2.0",
    "extensionApiDocsLink": "https://go.microsoft.com/fwlink/?linkid=2192974",
    "additionalApiProperties": {
      "15-day-daily-forecast": {
        "apiFreshnessTimeInMinutes": 1600
      },
      "currents-on-demand": {
        "apiFreshnessTimeInMinutes": 1600
      },
       "15-day-hourly-forecast": {
        "apiFreshnessTimeInMinutes": 1600
      }
    }
  },
  "eTag": "ea0261d0-0000-0700-0000-636a55390000",
  "name": "provider"
}

2. lépés: Időjárási adatok beolvasása

Miután beszerezte az API-k eléréséhez szükséges hitelesítő adatokat, meg kell hívnia a Weather Data API-t az időjárási adatok lekéréséhez.