Kom igång med Azure Service Bus-ämnen och -prenumerationer (.NET)

Den här snabbstarten visar hur du skickar meddelanden till ett Service Bus-ämne och tar emot meddelanden från en prenumeration till det ämnet med hjälp av Azure.Messaging.ServiceBus .NET-biblioteket.

I den här snabbstarten gör du följande:

  1. Skapa ett Service Bus-namnområde med Azure Portal.
  2. Skapa ett Service Bus-ämne med Azure Portal.
  3. Skapa en Service Bus-prenumeration på ämnet med Azure Portal.
  4. Skriv ett .NET-konsolprogram för att skicka en uppsättning meddelanden till ämnet.
  5. Skriv ett .NET-konsolprogram för att ta emot dessa meddelanden från prenumerationen.

Kommentar

Den här snabbstarten innehåller stegvisa instruktioner för att implementera ett enkelt scenario med att skicka en batch meddelanden till ett Service Bus-ämne och ta emot dessa meddelanden från en prenumeration på ämnet. Fler exempel på andra och avancerade scenarier finns i Service Bus .NET-exempel på GitHub.

  • Den här snabbstarten visar två sätt att ansluta till Azure Service Bus: anslutningssträng och lösenordslös. Det första alternativet visar hur du använder en anslutningssträng för att ansluta till ett Service Bus-namnområde. Det andra alternativet visar hur du använder ditt säkerhetsobjekt i Microsoft Entra-ID och den rollbaserade åtkomstkontrollen (RBAC) för att ansluta till ett Service Bus-namnområde. Du behöver inte bekymra dig om att ha hårdkodade anslutningssträng i koden eller i en konfigurationsfil eller i säker lagring som Azure Key Vault. Om du inte har använt Azure tidigare kan det vara enklare att följa anslutningssträng alternativet. Vi rekommenderar att du använder det lösenordslösa alternativet i verkliga program och produktionsmiljöer. Mer information finns i Autentisering och auktorisering.

Förutsättningar

Om du är nybörjare på tjänsten kan du läsa Översikt över Service Bus innan du gör den här snabbstarten.

  • Azure-prenumeration. Om du vill använda Azure-tjänster, inklusive Azure Service Bus, behöver du en prenumeration. Om du inte har ett befintligt Azure-konto kan du registrera dig för en kostnadsfri utvärderingsversion.
  • Visual Studio 2022. Exempelprogrammet använder nya funktioner som introducerades i C# 10. Du kan fortfarande använda Service Bus-klientbiblioteket med tidigare C#-språkversioner, men syntaxen kan variera. Om du vill använda den senaste syntaxen rekommenderar vi att du installerar .NET 6.0 eller senare och anger språkversionen till latest. Om du använder Visual Studio är versioner före Visual Studio 2022 inte kompatibla med de verktyg som behövs för att skapa C# 10-projekt.

Skapa ett namnområde i Azure Portal

För att komma igång med Service Bus-meddelandeentiteter i Azure måste du först skapa ett namnområde med ett namn som är unikt i Azure. Ett namnområde tillhandahåller en omfångscontainer för Service Bus-resurser (köer, ämnen osv.) i ditt program.

Så här skapar du ett namnområde:

  1. Logga in på Azure-portalen.

  2. Gå till sidan Alla tjänster.

  3. I det vänstra navigeringsfältet väljer du Integrering i listan över kategorier, hovra musen över Service Bus och välj + sedan knappen på Service Bus-panelen.

    Image showing selection of Create a resource, Integration, and then Service Bus in the menu.

  4. Följ dessa steg i taggen Grundläggande på sidan Skapa namnområde:

    1. För Prenumeration väljer du en Azure-prenumeration där du ska skapa namnrymden.

    2. För Resursgrupp väljer du en befintlig resursgrupp där namnrymden ska finnas, eller så skapar du en ny.

    3. Ange ett namn för namnrymden. Namnområdesnamnet bör följa följande namngivningskonventioner:

      • Namnet måste vara unikt i Hela Azure. Systemet kontrollerar omedelbart om namnet är tillgängligt.
      • Namnlängden är minst 6 och högst 50 tecken.
      • Namnet får endast innehålla bokstäver, siffror, bindestreck "-".
      • Namnet måste börja med en bokstav och sluta med en bokstav eller siffra.
      • Namnet slutar inte med "-sb" eller "-mgmt".
    4. För Plats väljer du land eller region där namnrymden ska finnas.

    5. För Prisnivå väljer du prisnivån (Basic, Standard eller Premium) för namnområdet. För den här snabbstarten väljer du Standard.

      Viktigt!

      Om du vill använda ämnen och prenumerationer väljer du antingen Standard eller Premium. Ämnen/prenumerationer stöds inte på prisnivån Basic.

      Om du har valt prisnivån Premium anger du antalet meddelandeenheter. Premium-nivån ger resursisolering på processor- och minnesnivå så att varje arbetsbelastning körs självständigt. Den här resurscontainern kallas för en meddelandefunktionsenhet. Ett premiumnamnområde har minst en meddelandeenhet. Du kan välja 1, 2, 4, 8 eller 16 meddelandeenheter för varje Service Bus Premium-namnområde. Mer information finns i Service Bus Premium-meddelanden.

    6. Välj Granska + skapa längst ned på sidan.

      Image showing the Create a namespace page

    7. På sidan Granska + skapa granskar du inställningarna och väljer Skapa.

  5. När distributionen av resursen har slutförts väljer du Gå till resurs på distributionssidan.

    Image showing the deployment succeeded page with the Go to resource link.

  6. Startsidan för din Service Bus-namnrymd visas.

    Image showing the home page of the Service Bus namespace created.

Skapa ett ämne med Azure Portal

  1. På sidan Service Bus Namespace (Service Bus-namnrymd) väljer du Ämnen på den vänstra menyn.

  2. Välj + Ämne i verktygsfältet.

  3. Ange ett namn för ämnet. Lämna standardvärdena för de andra alternativen.

  4. Välj Skapa.

    Image showing the Create topic page.

Skapa en prenumeration på ämnet

  1. Välj det ämne som du skapade i föregående avsnitt.

    Image showing the selection of topic from the list of topics.

  2. På sidan Service Bus-ämne väljer du + Prenumeration i verktygsfältet.

    Image showing the Add subscription button.

  3. Följ dessa steg på sidan Skapa prenumeration :

    1. Ange S1 som namn på prenumerationen.

    2. Ange 3 för Maximalt antal leveranser.

    3. Välj sedan Skapa för att skapa prenumerationen.

      Image showing the Create subscription page.

Autentisera appen till Azure

Den här snabbstarten visar två sätt att ansluta till Azure Service Bus: lösenordsfri och anslutningssträng.

Det första alternativet visar hur du använder ditt säkerhetsobjekt i Microsoft Entra-ID och rollbaserad åtkomstkontroll (RBAC) för att ansluta till ett Service Bus-namnområde. Du behöver inte oroa dig för att ha hårdkodade anslutningssträng i koden eller i en konfigurationsfil eller i ett säkert lagringsutrymme som Azure Key Vault.

Det andra alternativet visar hur du använder en anslutningssträng för att ansluta till ett Service Bus-namnområde. Om du är nybörjare på Azure kan det vara enklare att följa anslutningssträng alternativet. Vi rekommenderar att du använder det lösenordslösa alternativet i verkliga program och produktionsmiljöer. Mer information finns i Autentisering och auktorisering. Du kan också läsa mer om lösenordslös autentisering på översiktssidan.

Tilldela roller till din Microsoft Entra-användare

När du utvecklar lokalt kontrollerar du att användarkontot som ansluter till Azure Service Bus har rätt behörigheter. Du behöver rollen Azure Service Bus-dataägare för att kunna skicka och ta emot meddelanden. Om du vill tilldela dig själv den här rollen behöver du rollen Administratör för användaråtkomst eller en annan roll som innehåller åtgärden Microsoft.Authorization/roleAssignments/write . Du kan tilldela Azure RBAC-roller till en användare med hjälp av Azure-portalen, Azure CLI eller Azure PowerShell. Läs mer om tillgängliga omfång för rolltilldelningar på översiktssidan för omfång .

I följande exempel tilldelas Azure Service Bus Data Owner rollen till ditt användarkonto, vilket ger fullständig åtkomst till Azure Service Bus-resurser. I ett verkligt scenario följer du principen om lägsta behörighet för att ge användarna endast de minsta behörigheter som krävs för en säkrare produktionsmiljö.

Inbyggda Azure-roller för Azure Service Bus

För Azure Service Bus skyddas redan hanteringen av namnområden och alla relaterade resurser via Azure-portalen och Azure-resurshanterings-API:et med hjälp av Azure RBAC-modellen. Azure tillhandahåller de inbyggda Azure-rollerna nedan för att auktorisera åtkomst till ett Service Bus-namnområde:

  • Azure Service Bus-dataägare: Ger dataåtkomst till Service Bus-namnområdet och dess entiteter (köer, ämnen, prenumerationer och filter). En medlem i den här rollen kan skicka och ta emot meddelanden från köer eller ämnen/prenumerationer.
  • Azure Service Bus Data Sender: Använd den här rollen för att ge sändningsåtkomst till Service Bus-namnområdet och dess entiteter.
  • Azure Service Bus-datamottagare: Använd den här rollen för att ge ta emot åtkomst till Service Bus-namnområdet och dess entiteter.

Om du vill skapa en anpassad roll läser du Rättigheter som krävs för Service Bus-åtgärder.

Lägga till Microsoft Entra-användare i rollen Som Azure Service Bus-ägare

Lägg till ditt Microsoft Entra-användarnamn i rollen Azure Service Bus-dataägare på Service Bus-namnområdesnivå. Det gör att en app som körs i kontexten för ditt användarkonto kan skicka meddelanden till en kö eller ett ämne och ta emot meddelanden från en kö eller ett ämnes prenumeration.

Viktigt!

I de flesta fall tar det en minut eller två innan rolltilldelningen sprids i Azure. I sällsynta fall kan det ta upp till åtta minuter. Om du får autentiseringsfel när du först kör koden väntar du en stund och försöker igen.

  1. Om du inte har sidan Service Bus-namnområde öppen i Azure-portalen letar du upp Service Bus-namnområdet med hjälp av huvudsökfältet eller det vänstra navigeringsfältet.

  2. På översiktssidan väljer du Åtkomstkontroll (IAM) på den vänstra menyn.

  3. På sidan Åtkomstkontroll (IAM) väljer du fliken Rolltilldelningar .

  4. Välj + Lägg till på den översta menyn och sedan Lägg till rolltilldelning från den resulterande nedrullningsbara menyn.

    A screenshot showing how to assign a role.

  5. Använd sökrutan för att filtrera resultatet till önskad roll. I det här exemplet söker Azure Service Bus Data Owner du efter och väljer matchande resultat. Välj sedan Nästa.

  6. Under Tilldela åtkomst till väljer du Användare, grupp eller tjänstens huvudnamn och sedan + Välj medlemmar.

  7. I dialogrutan söker du efter ditt Microsoft Entra-användarnamn (vanligtvis din user@domain e-postadress) och väljer sedan Välj längst ned i dialogrutan.

  8. Välj Granska + tilldela för att gå till den sista sidan och sedan Granska + tilldela igen för att slutföra processen.

Starta Visual Studio och logga in på Azure

Du kan auktorisera åtkomst till Service Bus-namnområdet med hjälp av följande steg:

  1. Starta Visual Studio. Om du ser fönstret Kom igång väljer du länken Fortsätt utan kod i den högra rutan.

  2. Välj knappen Logga in längst upp till höger i Visual Studio.

    Screenshot showing the button to sign in to Azure using Visual Studio.

  3. Logga in med det Microsoft Entra-konto som du tilldelade en roll till tidigare.

    Screenshot showing the account selection.

Skicka meddelanden till ämnet

Det här avsnittet visar hur du skapar ett .NET-konsolprogram för att skicka meddelanden till ett Service Bus-ämne.

Kommentar

Den här snabbstarten innehåller stegvisa instruktioner för att implementera ett enkelt scenario med att skicka en batch meddelanden till ett Service Bus-ämne och ta emot dessa meddelanden från en prenumeration på ämnet. Fler exempel på andra och avancerade scenarier finns i Service Bus .NET-exempel på GitHub.

Skapa ett konsolprogram

  1. I Visual Studio väljer du Arkiv ->Ny ->Projekt-meny .
  2. I dialogrutan Skapa ett nytt projekt gör du följande: Om du inte ser den här dialogrutan väljer du Arkiv på menyn, väljer Nytt och sedan Projekt.
    1. Välj C# för programmeringsspråket.

    2. Välj Konsol för programmets typ.

    3. Välj Konsolapp i resultatlistan.

    4. Välj sedan Nästa.

      Image showing the Create a new project dialog box with C# and Console selected

  3. Ange TopicSender som projektnamn, ServiceBusTopicQuickStart som lösningsnamn och välj sedan Nästa.
  4. På sidan Ytterligare information väljer du Skapa för att skapa lösningen och projektet.

Lägg till NuGet-paketen i projektet

  1. Välj Verktyg>NuGet Package Manager Package Manager-konsolen> på menyn.

  2. Kör följande kommando för att installera NuGet-paketet Azure.Messaging.ServiceBus .

    Install-Package Azure.Messaging.ServiceBus
    
  3. Kör följande kommando för att installera Azure.Identity NuGet-paketet.

    Install-Package Azure.Identity
    

Lägga till kod för att skicka meddelanden till ämnet

  1. Ersätt innehållet i Program.cs med följande kod. De viktiga stegen beskrivs i det här avsnittet med ytterligare information i kodkommentarna.

    1. Skapar ett ServiceBusClient-objekt med hjälp av objektet DefaultAzureCredential . DefaultAzureCredential identifierar och använder automatiskt autentiseringsuppgifterna för din Visual Studio-inloggning för att autentisera till Azure Service Bus.
    2. Anropar metoden CreateSenderServiceBusClient objektet för att skapa ett ServiceBusSender-objekt för det specifika Service Bus-ämnet.
    3. Skapar ett ServiceBusMessageBatch-objekt med hjälp av ServiceBusSender.CreateMessageBatchAsync.
    4. Lägg till meddelanden i batchen med hjälp av ServiceBusMessageBatch.TryAddMessage.
    5. Skickar batchen med meddelanden till Service Bus-ämnet med hjälp av metoden ServiceBusSender.SendMessagesAsync .

    Viktigt!

    Uppdatera platshållarvärdena (<NAMESPACE-NAME> och <TOPIC-NAME>) i kodfragmentet med namnen på ditt Service Bus-namnområde och -ämne.

    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the sender used to publish messages to the topic
    ServiceBusSender sender;
    
    // number of messages to be sent to the topic
    const int numOfMessages = 3;
    
    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    
    //TODO: Replace the "<NAMESPACE-NAME>" and "<TOPIC-NAME>" placeholders.
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    sender = client.CreateSender("<TOPIC-NAME>");
    
    // create a batch 
    using ServiceBusMessageBatch messageBatch = await sender.CreateMessageBatchAsync();
    
    for (int i = 1; i <= numOfMessages; i++)
    {
        // try adding a message to the batch
        if (!messageBatch.TryAddMessage(new ServiceBusMessage($"Message {i}")))
        {
            // if it is too large for the batch
            throw new Exception($"The message {i} is too large to fit in the batch.");
        }
    }
    
    try
    {
        // Use the producer client to send the batch of messages to the Service Bus topic
        await sender.SendMessagesAsync(messageBatch);
        Console.WriteLine($"A batch of {numOfMessages} messages has been published to the topic.");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await sender.DisposeAsync();
        await client.DisposeAsync();
    }
    
    Console.WriteLine("Press any key to end the application");
    Console.ReadKey();
    
  2. Skapa projektet och se till att det inte finns några fel.

  3. Kör programmet och vänta på bekräftelsemeddelandet.

    A batch of 3 messages has been published to the topic
    

    Viktigt!

    I de flesta fall tar det en minut eller två innan rolltilldelningen sprids i Azure. I sällsynta fall kan det ta upp till åtta minuter. Om du får autentiseringsfel när du först kör koden väntar du en stund och försöker igen.

  4. Följ dessa steg i Azure-portalen:

    1. Gå till Service Bus-namnområdet.

    2. På sidan Översikt går du till fönstret längst ned i mitten och växlar till fliken Ämnen och väljer avsnittet Service Bus. I följande exempel är mytopicdet .

      Select topic

    3. På sidan Service Bus-ämne i diagrammet Meddelanden i det nedre avsnittet Mått kan du se att det finns tre inkommande meddelanden för ämnet. Om du inte ser värdet väntar du några minuter och uppdaterar sidan för att se det uppdaterade diagrammet.

      Messages sent to the topic

    4. Välj prenumerationen i det nedre fönstret. I följande exempel är det S1. På sidan Service Bus-prenumeration visas antalet aktiva meddelanden som 3. Prenumerationen har tagit emot de tre meddelanden som du har skickat till ämnet, men ingen mottagare har valt dem ännu.

      Messages received at the subscription

Ta emot meddelanden från en prenumeration

I det här avsnittet skapar du ett .NET-konsolprogram som tar emot meddelanden från prenumerationen till Service Bus-ämnet.

Kommentar

Den här snabbstarten innehåller stegvisa instruktioner för att implementera ett enkelt scenario med att skicka en batch meddelanden till ett Service Bus-ämne och ta emot dessa meddelanden från en prenumeration på ämnet. Fler exempel på andra och avancerade scenarier finns i Service Bus .NET-exempel på GitHub.

Skapa ett projekt för mottagaren

  1. Högerklicka på Lösningen ServiceBusTopicQuickStart i Solution Explorer, peka på Lägg till och välj Nytt projekt.
  2. Välj Konsolprogram och välj Nästa.
  3. Ange SubscriptionReceiver som Projektnamn och välj Nästa.
  4. På sidan Ytterligare information väljer du Skapa.
  5. I fönstret Solution Explorer högerklickar du på SubscriptionReceiver och väljer Ange som ett startprojekt.

Lägg till NuGet-paketen i projektet

  1. Välj Verktyg>NuGet Package Manager Package Manager-konsolen> på menyn.

  2. Välj SubscriptionReceiver för listrutan Standardprojekt .

  3. Kör följande kommando för att installera NuGet-paketet Azure.Messaging.ServiceBus .

    Install-Package Azure.Messaging.ServiceBus
    
  4. Kör följande kommando för att installera Azure.Identity NuGet-paketet.

    Install-Package Azure.Identity
    

Lägga till kod för att ta emot meddelanden från prenumerationen

I det här avsnittet lägger du till kod för att hämta meddelanden från prenumerationen.

  1. Ersätt det befintliga innehållet i Program.cs med följande egenskaper och metoder:

    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the processor that reads and processes messages from the subscription
    ServiceBusProcessor processor;    
    
    // handle received messages
    async Task MessageHandler(ProcessMessageEventArgs args)
    {
        string body = args.Message.Body.ToString();
        Console.WriteLine($"Received: {body} from subscription.");
    
        // complete the message. messages is deleted from the subscription. 
        await args.CompleteMessageAsync(args.Message);
    }
    
    // handle any errors when receiving messages
    Task ErrorHandler(ProcessErrorEventArgs args)
    {
        Console.WriteLine(args.Exception.ToString());
        return Task.CompletedTask;
    }
    
  2. Lägg till följande kod i slutet av Program.cs.

    Viktigt!

    Uppdatera platshållarvärdena (<NAMESPACE-NAME>, <TOPIC-NAME>, <SUBSCRIPTION-NAME>) i kodfragmentet med namnen på ditt Service Bus-namnområde, ämne och prenumeration.

    Mer information finns i kodkommentare.

    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    //
    // Create the clients that we'll use for sending and processing messages.
    // TODO: Replace the <NAMESPACE-NAME> placeholder
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    
    // create a processor that we can use to process the messages
    // TODO: Replace the <TOPIC-NAME> and <SUBSCRIPTION-NAME> placeholders
    processor = client.CreateProcessor("<TOPIC-NAME>", "<SUBSCRIPTION-NAME>", new ServiceBusProcessorOptions());
    
    try
    {
        // add handler to process messages
        processor.ProcessMessageAsync += MessageHandler;
    
        // add handler to process any errors
        processor.ProcessErrorAsync += ErrorHandler;
    
        // start processing 
        await processor.StartProcessingAsync();
    
        Console.WriteLine("Wait for a minute and then press any key to end the processing");
        Console.ReadKey();
    
        // stop processing 
        Console.WriteLine("\nStopping the receiver...");
        await processor.StopProcessingAsync();
        Console.WriteLine("Stopped receiving messages");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await processor.DisposeAsync();
        await client.DisposeAsync();
    }
    
  3. Så här bör du Program.cs se ut:

    using System;
    using System.Threading.Tasks;
    using Azure.Messaging.ServiceBus;
    using Azure.Identity;
    
    // the client that owns the connection and can be used to create senders and receivers
    ServiceBusClient client;
    
    // the processor that reads and processes messages from the subscription
    ServiceBusProcessor processor;
    
    // handle received messages
    async Task MessageHandler(ProcessMessageEventArgs args)
    {
        string body = args.Message.Body.ToString();
        Console.WriteLine($"Received: {body} from subscription.");
    
        // complete the message. messages is deleted from the subscription. 
        await args.CompleteMessageAsync(args.Message);
    }
    
    // handle any errors when receiving messages
    Task ErrorHandler(ProcessErrorEventArgs args)
    {
        Console.WriteLine(args.Exception.ToString());
        return Task.CompletedTask;
    }
    
    // The Service Bus client types are safe to cache and use as a singleton for the lifetime
    // of the application, which is best practice when messages are being published or read
    // regularly.
    //
    // Create the clients that we'll use for sending and processing messages.
    // TODO: Replace the <NAMESPACE-NAME> placeholder
    client = new ServiceBusClient(
        "<NAMESPACE-NAME>.servicebus.windows.net",
        new DefaultAzureCredential());
    
    // create a processor that we can use to process the messages
    // TODO: Replace the <TOPIC-NAME> and <SUBSCRIPTION-NAME> placeholders
    processor = client.CreateProcessor("<TOPIC-NAME>", "<SUBSCRIPTION-NAME>", new ServiceBusProcessorOptions());
    
    try
    {
        // add handler to process messages
        processor.ProcessMessageAsync += MessageHandler;
    
        // add handler to process any errors
        processor.ProcessErrorAsync += ErrorHandler;
    
        // start processing 
        await processor.StartProcessingAsync();
    
        Console.WriteLine("Wait for a minute and then press any key to end the processing");
        Console.ReadKey();
    
        // stop processing 
        Console.WriteLine("\nStopping the receiver...");
        await processor.StopProcessingAsync();
        Console.WriteLine("Stopped receiving messages");
    }
    finally
    {
        // Calling DisposeAsync on client types is required to ensure that network
        // resources and other unmanaged objects are properly cleaned up.
        await processor.DisposeAsync();
        await client.DisposeAsync();
    }
    
  4. Skapa projektet och se till att det inte finns några fel.

  5. Kör mottagarprogrammet. Du bör se de mottagna meddelandena. Tryck på valfri tangent för att stoppa mottagaren och programmet.

    Wait for a minute and then press any key to end the processing
    Received: Message 1 from subscription: S1
    Received: Message 2 from subscription: S1
    Received: Message 3 from subscription: S1
    
    Stopping the receiver...
    Stopped receiving messages
    
  6. Kontrollera portalen igen.

    • På sidan Service Bus-ämne i diagrammet Meddelanden ser du tre inkommande meddelanden och tre utgående meddelanden. Om du inte ser dessa siffror väntar du några minuter och uppdaterar sidan för att se det uppdaterade diagrammet.

      Messages sent and received

    • På sidan Service Bus-prenumeration visas antalet aktiva meddelanden som noll. Det beror på att en mottagare har tagit emot meddelanden från den här prenumerationen och slutfört meddelandena.

      Active message count at the subscription at the end

Nästa steg

Se följande dokumentation och exempel: