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 apiFreshnessTimeInMinutes
szeretné, 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.