Bagikan melalui


Integrasi sensor sebagai pelanggan

Ikuti langkah-langkah untuk berintegrasi dengan mitra sensor untuk memungkinkan mitra mulai mendorong data ke instans Data Manager for Agriculture Anda.

Setiap mitra sensor memiliki aplikasi Microsoft Entra multi-penyewa mereka sendiri yang dibuat dan diterbitkan di platform Data Manager for Agriculture. Mitra sensor yang didukung secara default pada platform adalah Davis Instruments (sensorPartnerId: DavisInstruments).

Untuk mulai menggunakan mitra sensor on-boarded, Anda perlu memberikan persetujuan kepada mitra sensor sehingga mereka mulai muncul di App Registrations. Langkah-langkah yang harus Anda ikuti:

  1. Masuk ke portal Azure menggunakan kredensial "Administrator Global" atau "Administrator Peran Istimewa".

  2. Untuk Instrumen Davis, klik tautan ini untuk memberikan persetujuan.

  3. Pada halaman tinjauan izin, aplikasi Microsoft Entra meminta izin minimum "baca profil pengguna". Tingkat izin ini cukup untuk integrasi sensor dengan Data Manager for Agriculture.

  4. Klik tombol "Terima" untuk memberikan persetujuan admin.

  5. Sekarang, cari Davis Instruments WeatherLink Data Manager for Agriculture Connector di bawah tab Semua Aplikasi di halaman (diilustrasikan App Registrations dengan Mitra generik dalam gambar).

    Screenshot showing the partners message.

  6. Salin ID Aplikasi (klien) untuk aplikasi mitra tertentu yang ingin Anda berikan aksesnya.

Langkah 2: Menambahkan penetapan peran ke aplikasi mitra

Langkah selanjutnya adalah menetapkan peran dalam portal Azure untuk memberikan otorisasi ke aplikasi mitra sensor. Manajer Data untuk Pertanian menggunakan Azure RBAC untuk mengelola permintaan otorisasi.

Masuk ke portal Azure dan navigasi ke Grup Sumber Daya tempat Anda membuat sumber daya Data Manager for Agriculture.

Catatan

Di dalam tab grup sumber daya, jika Anda tidak menemukan sumber daya Data Manager for Agriculture yang dibuat, Anda perlu mengaktifkan kotak centang perlihatkan jenis tersembunyi.

Anda menemukan opsi menu IAM (Manajemen Akses Identitas) di sisi kiri panel opsi seperti yang diperlihatkan dalam gambar:

Screenshot showing role assignment.

Klik Tambahkan > penetapan peran, tindakan ini membuka panel di sisi kanan portal, pilih peran dari menu dropdown:

  • Kontributor Mitra Sensor Platform AgFood - memiliki semua hak istimewa dalam operasi CRU (Buat, Baca, Perbarui) yang khusus untuk sensor.

Untuk menyelesaikan penetapan peran, lakukan langkah-langkah berikut:

  1. Pilih peran yang disebutkan.

  2. Pilih Pengguna, grup, atau perwakilan layanan di bagian Tetapkan akses ke.

  3. Tempelkan Nama Aplikasi atau ID mitra sensor di bagian Pilih (seperti yang ditunjukkan pada gambar).

  4. Klik Simpan, untuk menetapkan peran.

Screenshot showing app selection for authorization.

Langkah ini memastikan bahwa aplikasi mitra sensor telah diberikan akses (berdasarkan peran yang ditetapkan) ke Azure Data Manager for Agriculture Resource.

Langkah 3: Mengaktifkan integrasi sensor

  1. Anda perlu mengaktifkan integrasi sensor sebelum memulai panggilan. Langkah ini menyediakan sumber daya Azure internal yang diperlukan untuk integrasi sensor di instans Data Manager for Agriculture Anda. Anda dapat melakukan ini dengan menjalankan perintah armclient berikut.

    armclient patch /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-instance-name>?api-version=2021-09-01-preview "{properties:{sensorIntegration:{enabled:'true'}}}"
    

    Contoh output:

    {
      "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-instance-name>",
      "type": "Microsoft.AgFoodPlatform/farmBeats",
      "sku": {
        "name": "A0"
      },
      "systemData": {
        "createdBy": "<customer-id>",
        "createdByType": "User",
        "createdAt": "2022-03-11T03:36:32Z",
        "lastModifiedBy": "<customer-id>",
        "lastModifiedByType": "User",
        "lastModifiedAt": "2022-03-11T03:40:06Z"
      },
      "properties": {
        "instanceUri": "https://<farmbeats-instance-name>.farmbeats.azure.net/",
        "provisioningState": "Succeeded",
        "sensorIntegration": {
          "enabled": "True",
          "provisioningState": "**Creating**"
        },
        "publicNetworkAccess": "Enabled"
      },
      "location": "eastus",
      "name": "myfarmbeats"
    }
    
  2. Pekerjaan dapat memakan waktu beberapa menit untuk diselesaikan. Untuk mengetahui status pekerjaan, Anda dapat menggunakan perintah armclient berikut:

    armclient get /subscriptions/<subscription-id>/resourceGroups/<resource-group-name> /providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-instance-name>?api-version=2021-09-01-preview
    
  3. Untuk memverifikasi status selesai, lihat atribut provisioningState . Status perlu berubah menjadi "Berhasil" dari "Membuat" di langkah sebelumnya.

    Contoh output:

    {
      "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.AgFoodPlatform/farmBeats/<farmbeats-instance-name>",
      "type": "Microsoft.AgFoodPlatform/farmBeats",
      "sku": {
        "name": "A0"
      },
      "systemData": {
        "createdBy": "<customer-id>",
        "createdByType": "User",
        "createdAt": "2022-03-11T03:36:32Z",
        "lastModifiedBy": "<customer-id>",
        "lastModifiedByType": "User",
        "lastModifiedAt": "2022-03-11T03:40:06Z"
      },
      "properties": {
        "instanceUri": "https://<customer-host-name>.farmbeats.azure.net/",
        "provisioningState": "Succeeded",
        "sensorIntegration": {
          "enabled": "True",
          "provisioningState": "**Succeeded**"
        },
        "publicNetworkAccess": "Enabled"
      },
      "tags": {
        "usage": "<sensor-partner-id>"
      },
      "location": "eastus",
      "name": "<customer-id>"
    }
    

Dengan langkah integrasi sensor selesai, Anda sekarang dapat membuat objek integrasi sensor.

Langkah 4: Membuat objek integrasi

SensorPartnerIntegrations Gunakan koleksi dan panggil ke API SensorPartnerIntegrations_CreateOrUpdate untuk membuat objek integrasi untuk mitra sensor tertentu. Setiap pelanggan tunggal mitra sensor (misalnya: Davis) memerlukan ID integrasi unik yang dibuat di sumber daya Data Manager for Agriculture mereka.

Ada dua jalur berbeda yang perlu Anda evaluasi:

  • Jika Anda adalah pemilik sensor yang disediakan oleh mitra sensor, buat hanya satu objek integrasi (ID) untuk akun Anda dengan mitra sensor.

  • Jika pengguna akhir Anda (yaitu Farmers/Retailers/Agronomists) memiliki sensor, buat objek integrasi (ID) unik untuk setiap pengguna akhir karena setiap pengguna akhir memiliki akun mereka sendiri dengan mitra sensor.

Titik Akhir API: PATCH /sensor-partners/{sensorPartnerId}/integrations/{integrationID}

Bagian yang meminta tautan persetujuan adalah bagian dari alur integrasi mitra sensor. Tautan persetujuan ini adalah cara bagi mitra sensor untuk memvalidasi apakah pelanggan adalah pengguna layanan yang valid. Integrasi sensor terkait dengan kunci persetujuan.

Mitra sensor kami Davis Instruments menggunakan UI ini, untuk mengaktifkan pengaturan dan meminta tautan persetujuan.

Mitra sensor memanggil ke check-consent titik akhir API untuk memverifikasi validitas. Untuk menghasilkan tautan persetujuan, Anda perlu menggunakan SensorPartnerIntegrations_GenerateConsentLink API dan memberikan ID integrasi yang dibuat dari langkah (3). Sebagai respons, Anda mendapatkan string yang disebut consentLink. Salin string ini dan berikan kepada mitra sensor untuk validasi lebih lanjut. Jika Anda menggunakan sensor dari Davis Instruments, ikuti instruksi di halaman ini.

Titik Akhir API: PATCH /sensor-partners/{sensorPartnerId}/integrations/{integrationId}/: generate-consent-link

Langkah ini menandai penyelesaian mitra sensor on-boarding dari perspektif pelanggan. , dapatkan semua informasi yang diperlukan untuk memanggil titik akhir API Anda untuk membuat model Sensor, Model perangkat, Sensor & Perangkat. Mitra sekarang dapat mendorong peristiwa sensor menggunakan string koneksi yang dihasilkan untuk setiap ID sensor.

Langkah terakhir adalah mulai mengkonsumsi peristiwa sensor. Sebelum mengkonsumsi peristiwa, Anda perlu membuat pemetaan setiap ID sensor ke ID dan sumber daya Pihak tertentu (Bidang, Bidang Musiman).

Langkah 6: Membuat pemetaan sensor

SensorMappings Gunakan koleksi, panggil ke SensorMappings_CreateOrUpdate API untuk membuat pemetaan untuk setiap sensor. Pemetaan tidak lain hanyalah mengaitkan ID sensor dengan PartyID tertentu dan sumber daya(bidang, bidang musiman, dll.). PartyID dan sumber daya sudah ada dalam sistem Data Manager for Agriculture. Asosiasi ini memastikan bahwa sebagai platform Anda dapat membangun model ilmu data di sekitar geometri umum dari dimensi sumber daya dan pihak. Setiap sumber data (satelit, cuaca, operasi pertanian) terkait dengan pihak & sumber daya. Saat Anda membuat objek pemetaan ini pada tingkat per sensor, Anda mendukung semua kasus penggunaan agronomi untuk mendapatkan manfaat dari data sensor.

Titik Akhir API: PATCH /sensor-mappings/{sensorMappingId}

Langkah 7: Mengonsumsi peristiwa sensor

SensorEvents Gunakan koleksi untuk memanggil API SensorEvents_List dan mengonsumsi data yang didorong oleh sensor Anda. Anda perlu memberikan informasi berikut

  • sensorId (menentukan sensor mana yang ingin Anda tampilkan datanya)
  • sensorPartnerId (menentukan mitra sensor mana yang mendorong data ini)
  • startDateTime &endDateTime (filter rentang waktu memastikan data diiris ke garis waktu yang diminta)

Titik Akhir API: GET /sensor-events

Langkah berikutnya