Quickstart: In realtime berichten verzenden via de console-app
Azure SignalR-service biedt REST-API ter ondersteuning van server-naar-client-communicatie, zoals broadcasting. U kunt elke programmeertaal kiezen die een REST-API kan aanroepen. U kunt berichten verzenden naar alle verbonden clients, een specifieke client op basis van naam of een groep clients.
In deze snelstartgids leert u hoe u in C# berichten via een opdrachtregel-app kunt verzenden naar verbonden client-apps.
Vereisten
Deze quickstart kan worden uitgevoerd op macOS, Windows of Linux.
- .NET Core-SDK
- Een teksteditor of code-editor naar keuze.
Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Aanmelden bij Azure
Meld u met uw Azure-account aan bij Azure Portal op https://portal.azure.com/.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Een exemplaar van de Azure SignalR Service maken
Uw toepassing maakt verbinding met een SignalR-Service-exemplaar in Azure.
Selecteer de knop Nieuw in de linkerbovenhoek van Azure Portal. Typ in het scherm Nieuw SignalR Service in het zoekvak in en druk op Enter.

Selecteer SignalR Service in de zoekresultaten en selecteer Maken.
Voer de volgende instellingen in.
Instelling Voorgestelde waarde Beschrijving Resourcenaam Wereldwijd unieke naam Naam ter identificatie van uw nieuwe SignalR Service-exemplaar. Geldige tekens zijn a-z,0-9en-.Abonnement Uw abonnement Het abonnement waarin dit nieuwe SignalR Service-exemplaar is gemaakt. Resourcegroep myResourceGroup Naam voor de nieuwe resourcegroep waarin het SignalR Service-exemplaar moet worden gemaakt. Locatie VS - west Kies een regio bij u in de buurt. Prijscategorie Gratis Probeer Azure SignalR Service gratis uit. Aantal eenheden Niet van toepassing Het aantal eenheden geeft aan hoeveel verbindingen uw SignalR Service-exemplaar kan accepteren. Dit kan alleen worden geconfigureerd in de Standard-laag. Servicemodus Serverloos Voor gebruik met Azure Functions of REST-API. 
Selecteer Maken om te beginnen met het implementeren van het SignalR-Service-exemplaar.
Zodra het exemplaar is geïmplementeerd, opent u dit in de portal en zoekt u de bijbehorende Instellingen-pagina. Wijzig de instelling van Servicemodus alleen in Serverloos als u de Azure SignalR-service gebruikt via Azure Functions-binding of de REST-API. Laat de modus anders op Klassiek of Standaard staan.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
De voorbeeldtoepassing klonen
Laten wij de code klaarmaken terwijl de service wordt geïmplementeerd. Kloon de voorbeeld-app vanuit GitHub, stel de SignalR Service-verbindingsreeks in en voer de toepassing lokaal uit.
Open een nieuw git-terminalvenster. Ga naar een map waarin u het voorbeeldproject wilt klonen.
Voer de volgende opdracht uit om de voorbeeldopslagplaats te klonen. Deze opdracht maakt een kopie van de voorbeeld-app op uw computer.
git clone https://github.com/aspnet/AzureSignalR-samples.git
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Het voorbeeldproject compileren en uitvoeren
Dit voorbeeld is een console-app die het gebruik van de Azure SignalR-service weergeeft. Deze biedt twee modi:
- Servermodus: gebruik eenvoudige opdrachten om de REST-API voor Azure SignalR-service aan te roepen.
- Clientmodus: maak verbinding met de Azure SignalR-service en ontvang berichten van de server.
U kunt ook zien hoe u een toegangstoken kunt genereren voor verificatie met Azure SignalR-service.
Het uitvoerbare bestand maken
We gebruiken macOS osx.10.13-x64 als voorbeeld. U kunt naslaginformatie vinden over het maken op andere platforms.
cd AzureSignalR-samples/samples/Serverless/
dotnet publish -c Release -r osx.10.13-x64
Een client starten
cd bin/Release/netcoreapp2.1/osx.10.13-x64/
Serverless client <ClientName> -c "<ConnectionString>" -h <HubName>
Een server starten
cd bin/Release/netcoreapp2.1/osx.10.13-x64/
Serverless server -c "<ConnectionString>" -h <HubName>
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Het voorbeeld uitvoeren zonder te publiceren
U kunt ook de onderstaande opdracht uitvoeren om een server of client te starten
# Start a server
dotnet run -- server -c "<ConnectionString>" -h <HubName>
# Start a client
dotnet run -- client <ClientName> -c "<ConnectionString>" -h <HubName>
Gebruikersgeheimen gebruiken om een verbindingsreeks te specificeren
U kunt dotnet user-secrets set Azure:SignalR:ConnectionString "<ConnectionString>" uitvoeren in de hoofdmap van het voorbeeld. Daarna hebt u de optie -c "<ConnectionString>" niet meer nodig.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Gebruik
Gebruik de opdracht om het bericht te verzenden nadat de server is gestart:
send user <User Id>
send users <User List>
send group <Group Name>
send groups <Group List>
broadcast
U kunt meerdere clients met verschillende clientnamen starten.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Integratie met services van derden
Met behulp van de Azure SignalR-service kunt services van derden integreren met het systeem.
Definitie van technische specificaties
In de volgende tabel worden alle versies van de ondersteunde REST-API's weergegeven op datum. U kunt er ook het definitiebestand voor elke specifieke versie vinden
| Versie | API-status | Door | Specifiek |
|---|---|---|---|
1.0-preview |
Beschikbaar | 5002 | Swagger |
1.0 |
Beschikbaar | Standard | Swagger |
De lijst met beschikbare API's voor elke specifieke versie is beschikbaar in de volgende lijst.
| API | 1.0-preview | 1.0 |
|---|---|---|
| Uitzenden naar alle | ✓ | ✓ |
| Uitzenden naar een groep | ✓ | ✓ |
| Uitzenden naar bepaalde groepen | ✓ (afgeschaft) | N / A |
| Naar een gebruiker verzenden | ✓ | ✓ |
| Verzenden naar bepaalde gebruikers | ✓ (afgeschaft) | N / A |
| Een gebruiker aan een groep toevoegen | N / A |
✓ |
| Een gebruiker uit een groep verwijderen | N / A |
✓ |
| Het bestaan van de gebruiker controleren | N / A |
✓ |
| Een gebruiker uit alle groepen verwijderen | N / A |
✓ |
| Naar een verbinding verzenden | N / A |
✓ |
| Een verbinding aan een groep toevoegen | N / A |
✓ |
| Een verbinding uit een groep verwijderen | N / A |
✓ |
| Een clientverbinding sluiten | N / A |
✓ |
| Status van service | N / A |
✓ |
Uitzenden naar iedereen
| Versie | API HTTP-methode | Aanvraag-URL | Aanvraagbody |
|---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name> |
Hetzelfde als hierboven |
Uitzenden naar een groep
| Versie | API HTTP-methode | Aanvraag-URL | Aanvraagbody |
|---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name>/group/<group-name> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name> |
Hetzelfde als hierboven |
Wordt verzonden naar een gebruiker
| Versie | API HTTP-methode | Aanvraag-URL | Aanvraagbody |
|---|---|---|---|
1.0-preview |
POST |
https://<instance-name>.service.signalr.net:5002/api/v1-preview/hub/<hub-name>/user/<user-id> |
{"target": "<method-name>", "arguments": [...]} |
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id> |
Hetzelfde als hierboven |
Een gebruiker aan een groep toevoegen
| Versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
Een gebruiker uit een groep verwijderen
| Versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
Het bestaan van de gebruiker in een groep controleren
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id>/groups/<group-name> |
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/users/<user-id> |
| Statuscode respons | Beschrijving |
|---|---|
200 |
Gebruiker bestaat |
404 |
Gebruiker bestaat niet |
Een gebruiker uit alle groepen verwijderen
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/users/<user-id>/groups |
Een bericht naar een verbinding verzenden
| API-versie | API HTTP-methode | Aanvraag-URL | Aanvraagtekst |
|---|---|---|---|
1.0 |
POST |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id> |
{ "target":"<method-name>", "arguments":[ ... ] } |
Een verbinding aan een groep toevoegen
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/connections/<connection-id> |
1.0 |
PUT |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>/groups/<group-name> |
Een verbinding uit een groep verwijderen
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/groups/<group-name>/connections/<connection-id> |
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>/groups/<group-name> |
Een clientverbinding sluiten
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id> |
1.0 |
DELETE |
https://<instance-name>.service.signalr.net/api/v1/hubs/<hub-name>/connections/<connection-id>?reason=<close-reason> |
Service Health
| API-versie | API HTTP-methode | Aanvraag-URL |
|---|---|---|
1.0 |
GET |
https://<instance-name>.service.signalr.net/api/v1/health |
| Statuscode respons | Beschrijving |
|---|---|
200 |
Service goed |
5xx |
Servicefout |
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Resources opschonen
Als u deze app niet verder gaat gebruiken, kunt u alle resources verwijderen die door deze Quick Start zijn aangemaakt door de onderstaande stappen te volgen, zodat u geen kosten in rekening worden gebracht:
Selecteer in Azure Portal Resourcegroepen aan de linkerkant en selecteer vervolgens de resourcegroep die u hebt gemaakt. U kunt ook het zoekvak gebruiken om de resourcegroep op de naam te zoeken.
Selecteer in het venster dat wordt geopend, de resourcegroep en klik op Resourcegroep verwijderen.
Voer in het nieuwe venster de naam in van de resourcegroep die u wilt verwijderen en klik vervolgens op Verwijderen.
Ondervindt u problemen? Probeer de gids voor probleemoplossing of laat het ons weten.
Volgende stappen
In deze quickstart hebt u geleerd hoe u een REST API gebruikt om een realtime bericht van SignalR Service naar clients te verzenden. Krijg vervolgens meer informatie over de manier waarop u Azure-functies ontwikkelt en implementeert met een SignalR Service-binding, die boven op de REST API is gebouwd.