Delen via


Zelfstudie: Apparaatberichten ontvangen via Azure IoT Hub

De MedTech-service kan berichten ontvangen van apparaten die u maakt en beheert via een IoT-hub in Azure IoT Hub. In deze zelfstudie wordt gebruikgemaakt van een Azure Resource Manager-sjabloon (ARM-sjabloon) en een knop Implementeren in Azure om een MedTech-service te implementeren. Met de sjabloon wordt ook een IoT-hub geïmplementeerd om apparaten te maken en te beheren, en berichten worden apparaatberichten doorgestuurd naar een Event Hub voor de MedTech-service om te lezen en te verwerken. Na verwerking van apparaatgegevens worden de FHIR-resources® bewaard in de FHIR-service, die ook in de sjabloon is opgenomen.

Diagram of the IoT device message flow through an IoT hub and event hub, and then into the MedTech service.

Tip

Zie Overzicht van de verwerkingsfasen van het MedTech-serviceapparaat voor informatie over hoe de MedTech-service apparaatgegevens transformeert en bewaart in de FHIR-service als FHIR-resources.

In deze zelfstudie leert u het volgende:

  • Open een ARM-sjabloon in Azure Portal.
  • Configureer de sjabloon voor uw implementatie.
  • Een apparaat maken.
  • Een testbericht verzenden.
  • Bekijk metrische gegevens voor het testbericht.

Vereisten

Als u de implementatie wilt starten en de zelfstudie wilt voltooien, moet u aan de volgende vereisten voldoen:

  • Een actief Azure-abonnementsaccount. Als u geen Azure-abonnement hebt, raadpleegt u de handleiding voor abonnementsbeslissing.

  • Eigenaar of Inzender en Gebruikerstoegang Beheer roltoewijzingen in het Azure-abonnement. Zie Wat is op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC)?

  • Resourceproviders Microsoft.HealthcareApis, Microsoft.EventHub en Microsoft.Devices zijn geregistreerd bij uw Azure-abonnement. Zie Azure-resourceproviders en -typen voor meer informatie.

  • Visual Studio Code, lokaal geïnstalleerd.

  • Azure IoT Tools geïnstalleerd in Visual Studio Code. Azure IoT Tools is een verzameling extensies waarmee u eenvoudig verbinding kunt maken met IoT-hubs, apparaten kunt maken en berichten kunt verzenden. In deze zelfstudie gebruikt u de Azure IoT Hub-extensie in Visual Studio Code om verbinding te maken met uw geïmplementeerde IoT-hub, een apparaat te maken en een testbericht van het apparaat naar uw IoT-hub te verzenden.

Wanneer u aan deze vereisten voldoet, kunt u de ARM-sjabloon configureren met behulp van de knop Implementeren in Azure .

De ARM-sjabloon controleren

De ARM-sjabloon die wordt gebruikt om de resources in deze zelfstudie te implementeren, is beschikbaar in Azure Quickstart-sjablonen met behulp van het bestand azuredeploy.json op GitHub.

De knop Implementeren in Azure gebruiken

Als u de implementatie in Azure Portal wilt starten, selecteert u de knop Implementeren in Azure :

Deploy to Azure

De implementatie configureren

  1. Selecteer of voer in Azure Portal op het tabblad Basisbeginselen van de Azure-quickstartsjabloon de volgende gegevens in voor uw implementatie:

    • Abonnement: het Azure-abonnement dat moet worden gebruikt voor de implementatie.

    • Resourcegroep: Een bestaande resourcegroep of u kunt een nieuwe resourcegroep maken.

    • Regio: De Azure-regio van de resourcegroep die wordt gebruikt voor de implementatie. Regio's worden automatisch ingevuld met behulp van de resourcegroepregio.

    • Basisnaam: een waarde die is toegevoegd aan de naam van de Azure-resources en -services die zijn geïmplementeerd. In de voorbeelden in deze zelfstudie wordt de basisnaam azuredocsdemo gebruikt. U kunt uw eigen basisnaamwaarde kiezen.

    • Locatie: Een ondersteunde Azure-regio voor Azure Health Data Services (de waarde kan hetzelfde zijn als of afwijken van de regio waarin uw resourcegroep zich bevindt). Zie Producten die beschikbaar zijn per regio voor een lijst met Azure-regio's waar Health Data Services beschikbaar is.

    • Principal-id van Fhir-inzender (optioneel): een Gebruikersobject-id van Microsoft Entra om lees-/schrijfmachtigingen voor de FHIR-service te bieden.

      U kunt dit account gebruiken om toegang te verlenen tot de FHIR-service om de FHIR-waarnemingen weer te geven die in deze zelfstudie worden gegenereerd. U wordt aangeraden uw eigen gebruikersobject-id van Microsoft Entra te gebruiken, zodat u toegang hebt tot de berichten in de FHIR-service. Als u ervoor kiest om de optie Principal-id van Fhir-inzender niet te gebruiken, schakelt u het tekstvak uit.

      Zie De gebruikersobject-id zoeken voor meer informatie over het ophalen van een Microsoft Entra-gebruikersobject-id. De gebruikersobject-id die in deze zelfstudie wordt gebruikt, is slechts een voorbeeld. Als u deze optie gebruikt, gebruikt u uw eigen gebruikersobject-id of de object-id van een andere persoon die u toegang wilt hebben tot de FHIR-service.

    • Apparaattoewijzing: laat de standaardwaarden voor deze zelfstudie staan.

    • Doeltoewijzing: laat de standaardwaarden voor deze zelfstudie staan.

    Screenshot that shows deployment options for the MedTech service for Health Data Services in the Azure portal.

  2. Als u uw configuratie wilt valideren, selecteert u Controleren en maken.

    Screenshot that shows the Review + create button selected in the Azure portal.

  3. Controleer in Controleren en maken de validatiestatus van de sjabloon. Als de validatie is geslaagd, wordt in de sjabloon Validatie geslaagd weergegeven. Als de validatie mislukt, lost u het probleem op dat wordt aangegeven in het foutbericht en selecteert u Controleren en opnieuw maken .

    Screenshot that shows the Review + create pane displaying the Validation Passed message.

  4. Nadat de validatie is geslaagd, selecteert u Maken om de implementatie te starten.

    Screenshot that shows the highlighted Create button.

  5. In een paar minuten wordt in Azure Portal het bericht weergegeven dat uw implementatie is voltooid.

    Screenshot that shows a green checkmark and the message Your deployment is complete.

    Belangrijk

    Als u toegang van meerdere services naar de Event Hub wilt toestaan, is het vereist dat elke service een eigen Event Hub-consumentengroep heeft.

    Met consumentengroepen kunnen meerdere verbruikende toepassingen een afzonderlijke weergave van de gebeurtenisstroom hebben en de stroom onafhankelijk in hun eigen tempo en met hun eigen offsets lezen. Zie Consumentengroepen voor meer informatie.

    Voorbeelden:

    • Twee MedTech-services die toegang hebben tot dezelfde Event Hub.

    • Een MedTech-service en een opslagschrijvertoepassing die toegang heeft tot dezelfde Event Hub.

Geïmplementeerde resources en toegangsmachtigingen controleren

Wanneer de implementatie is voltooid, worden de volgende resources en toegangsrollen gemaakt:

  • Event Hubs-naamruimte en Event Hub. In deze implementatie heeft de Event Hub de naam devicedata.

    • Event Hub-consumentengroep. In deze implementatie krijgt de consumentengroep de naam $Default.

    • De rol Azure Event Hubs-gegevenszender . In deze implementatie heet de afzenderrol devicedatasender en kan deze worden gebruikt om toegang te bieden tot de Event Hub met behulp van een Shared Access Signature (SAS). Zie Toegang tot Event Hubs-resources autoriseren met Shared Access Signatures voor meer informatie over het autoriseren van toegang met behulp van een SAS. De rol Azure Event Hubs Data Sender wordt niet gebruikt in deze zelfstudie.

  • IoT-hub met berichtroutering die is geconfigureerd om apparaatberichten naar de Event Hub te routeren.

  • Door de gebruiker toegewezen beheerde identiteit, die toegang vanaf de IoT-hub naar de Event Hub biedt. De beheerde identiteit heeft de rol Azure Event Hubs-gegevenszender in de sectie Toegangsbeheer (IAM) van de Event Hub.

  • Health Data Services-werkruimte.

  • Health Data Services FHIR-service.

  • Health Data Services MedTech-service waarvoor de door het systeem toegewezen beheerde identiteit is ingeschakeld en de volgende toegangsrollen heeft verleend:

  • Voldoen aan en geldige MedTech-serviceapparaat- en FHIR-doeltoewijzingen. Het oplossingstype is ingesteld op Maken.

Belangrijk

In deze zelfstudie configureert de ARM-sjabloon de MedTech-service voor gebruik in de modus Maken . Er worden een patiëntresource en een apparaatresource gemaakt voor elk apparaat dat gegevens naar uw FHIR-service verzendt.

Zie Het tabblad Bestemming configureren voor meer informatie over de typen Oplossingen voor medTech-services maken en opzoeken.

Een apparaat maken en een testbericht verzenden

Wanneer uw resources zijn geïmplementeerd, maakt u vervolgens verbinding met uw IoT-hub, maakt u een apparaat en verzendt u een testbericht naar de IoT-hub. Nadat u deze stappen hebt voltooid, kan uw MedTech-service het volgende doen:

  • Lees het testbericht over ioT-hubroute vanuit de Event Hub.
  • Transformeer het testbericht in vijf FHIR-waarnemingen.
  • Behoud de FHIR-waarnemingen in uw FHIR-service.

U voert de stappen uit met behulp van Visual Studio Code met de Azure IoT Hub-extensie:

  1. Open Visual Studio Code waarop Azure IoT Tools is geïnstalleerd.

  2. Selecteer in Explorer onder Azure IoT Hub de optie ... en kies IoT Hub selecteren.

    Screenshot of Visual Studio Code with the Azure IoT Hub extension with the deployed IoT hub selected.

  3. Selecteer het Azure-abonnement waarin uw IoT-hub is ingericht.

  4. Selecteer uw IoT-hub. De naam van uw IoT-hub is de basisnaam die u hebt opgegeven bij het inrichten van de resources voor het voorvoegsel ih-. Een voorbeeld van een hubnaam is ih-azuredocsdemo.

  5. Selecteer in Explorer in Azure IoT Hub de optie ... en kies Apparaat maken. Een voorbeeld van een apparaatnaam is iot-001.

    Screenshot that shows Visual Studio Code with the Azure IoT Hub extension with Create device selected.

  6. Als u een testbericht van het apparaat naar uw IoT-hub wilt verzenden, klikt u met de rechtermuisknop op het apparaat en selecteert u D2C-bericht verzenden naar IoT Hub.

    Notitie

    In dit voorbeeld van apparaat-naar-cloud (D2C) is de cloud de IoT-hub in de Azure IoT Hub die het apparaatbericht ontvangt. Azure IoT Hub biedt ondersteuning voor communicatie in twee richtingen. Als u een C2D-scenario (cloud-to-device) wilt instellen, selecteert u C2D-bericht verzenden naar apparaatcloud.

    Screenshot that shows Visual Studio Code with the Azure IoT Hub extension and the Send D2C Message to IoT Hub option selected.

  7. Selecteer of voer in D2C-berichten de volgende waarden in:

    • Apparaat(en) om berichten te verzenden van: de naam van het apparaat dat u hebt gemaakt.

    • Bericht(en) per apparaat: 1.

    • Interval tussen twee berichten: 1 seconde(en).

    • Bericht: Tekst zonder opmaak.

    • Bewerken: Wis alle bestaande tekst en kopieer/plak het volgende testbericht JSON.

      Tip

      U kunt de optie Kopiëren in de rechterhoek van het onderstaande testbericht gebruiken en deze vervolgens in het venster Bewerken plakken.

      {
          "PatientId": "patient1",
          "HeartRate": 78,
          "RespiratoryRate": 12,
          "HeartRateVariability": 30,
          "BodyTemperature": 98.6,
          "BloodPressure": {
             "Systolic": 120,
             "Diastolic": 80
          }
      }  
      
  8. Als u wilt beginnen met het verzenden van een testbericht naar uw IoT-hub, selecteert u Verzenden.

    Screenshot that shows Visual Studio Code with the Azure IoT Hub extension with the device message options selected.

    Nadat u Verzenden hebt geselecteerd, kan het tot vijf minuten duren voordat de FHIR-resources beschikbaar zijn in de FHIR-service.

    Belangrijk

    Om adresvervalsing van apparaten in D2C-berichten (device-to-cloud) te voorkomen, verrijkt Azure IoT Hub alle apparaatberichten met aanvullende eigenschappen voordat ze naar de Event Hub worden doorgestuurd. Bijvoorbeeld: SystemProperties: iothub-connection-device-id en Eigenschappen: iothub-creation-time-utc. Zie Anti-adresvervalsingseigenschappen en IotJsonPathContent-sjablonen gebruiken met de apparaattoewijzing van de MedTech-service voor meer informatie.

    U wilt dit voorbeeldapparaatbericht niet naar uw IoT-hub verzenden, omdat de verrijkingen worden gedupliceerd door de IoT-hub en een fout veroorzaken met uw MedTech-service. Dit is slechts een voorbeeld van hoe uw apparaatberichten worden verrijkt door de IoT-hub.

    Voorbeeld:

    Screenshot of an Azure IoT Hub enriched device message.

    patientIdExpression is alleen vereist voor MedTech-services in de modus Maken , maar als Lookup wordt gebruikt, moet er een apparaatresource met een overeenkomende apparaat-id aanwezig zijn in de FHIR-service. In dit voorbeeld wordt ervan uitgegaan dat uw MedTech-service zich in de modus Maken bevindt. Het oplossingstype voor deze zelfstudie is ingesteld op Maken. Zie Het tabblad Bestemming configureren voor meer informatie over de doeleigenschappen: Maken en opzoeken.

Metrische gegevens van het testbericht bekijken

Nadat u een testbericht naar uw IoT-hub hebt verzonden, kunt u nu de metrische gegevens van uw MedTech-service bekijken. Bekijk metrische gegevens om te controleren of uw MedTech-service het testbericht heeft ontvangen, gegroepeerd, getransformeerd en persistent heeft in uw FHIR-service. Zie De tabbladen MedTech-servicebewaking en statuscontroles gebruiken voor meer informatie.

Voor de metrische gegevens van uw MedTech-service ziet u dat uw MedTech-service de volgende stappen voor het testbericht heeft uitgevoerd:

  • Aantal binnenkomende berichten: het binnenkomende testbericht ontvangen van de Event Hub.
  • Aantal genormaliseerde berichten: vijf genormaliseerde berichten gemaakt.
  • Aantal metingen: Vijf metingen gemaakt.
  • Aantal FHIR-resources: er zijn vijf FHIR-resources gemaakt die in uw FHIR-service worden bewaard.

Screenshot that shows a MedTech service metrics tile and test data metrics.

Screenshot that shows a second MedTech service metrics tile and test data metrics.

Testgegevens weergeven in de FHIR-service

Als u uw eigen Microsoft Entra-gebruikersobject-id hebt opgegeven als de optionele waarde voor de optie Fhir-inzender-principal-id in de implementatiesjabloon, kunt u een query uitvoeren op FHIR-resources in uw FHIR-service. U kunt verwachten dat de volgende FHIR Observation-resources in de FHIR-service worden weergegeven op basis van het testbericht dat naar de IoT-hub is verzonden en door de MedTech-service is verwerkt:

  • HeartRate
  • Ademhalingsproblemen
  • HeartRateVariability
  • BodyTemperature
  • Bloeddruk

Zie Access met Postman voor meer informatie over het verkrijgen van een Microsoft Entra-toegangstoken en het weergeven van FHIR-resources in uw FHIR-service. U moet de volgende waarden in uw Postman-aanvraag GET gebruiken om de FHIR Observation-resources weer te geven die zijn gemaakt door het testbericht: {{fhirurl}}/Observation

Volgende stappen

Een implementatiemethode kiezen voor de MedTech-service

Overzicht van de verwerkingsfasen van het MedTech-serviceapparaat

Veelgestelde vragen over de MedTech-service

Notitie

FHIR® is een geregistreerd handelsmerk van HL7 en wordt gebruikt met de machtiging HL7.