Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym artykule opisano sposób wysyłania powiadomień push przeglądarki do pojedynczych użytkowników przy użyciu Azure Notification Hubs.
Ogólnie rzecz biorąc, proces wygląda następująco:
-
- W portalu Azure
- Korzystanie z interfejsu API REST
- Używanie Azure SDKs
Przegląd
Powiadomienia push (lub powiadomienia przeglądarki) to typ powiadomień, które użytkownicy otrzymują na pulpicie w przeglądarkach klasycznych, lub w niektórych przypadkach, w przeglądarkach mobilnych, na podstawie poszczególnych witryn internetowych.
Azure Notification Hubs obsługuje teraz browser push dla wszystkich głównych przeglądarek, w tym Microsoft Edge, Google Chrome i Mozilla Firefox. Przeglądarka Apple Safari nie jest dołączona. W przypadku przeglądarki Apple Safari możesz użyć istniejącej obsługi usługi APNS zgodnie z opisem w temacie Konfigurowanie powiadomień wypychanych w przeglądarce Safari z uwierzytelnianiem opartym na certyfikatach.
Powiadomienia push w przeglądarkach są obsługiwane na wszystkich platformach urządzeń z następującymi systemami operacyjnymi i przeglądarkami.
Obsługa powiadomień push na laptopach.
| System operacyjny | Przeglądarki |
|---|---|
| system operacyjny Windows | Google Chrome v48+ Microsoft Edge w wersji 17 lub nowszej Mozilla Firefox v44+ Safari w wersji 7 lub nowszej Opera w wersji 42+ |
| macOS | Chrome v48+ Firefox v44+ Safari w wersji 7 lub nowszej Opera w wersji 42+ |
| System operacyjny Linux | Chrome v48+ Firefox v44+ Safari w wersji 7 lub nowszej Opera w wersji 42+ |
Obsługa powiadomień push przeglądarki na tabletach.
| System operacyjny | Przeglądarki |
|---|---|
| system operacyjny Windows | Chrome v48+ Firefox v44+ Opera w wersji 42+ |
| iOS | Niewspierane. |
| System operacyjny Android | Chrome v48+ Firefox v44+ Opera w wersji 42+ |
Obsługa powiadomień push w przeglądarce na urządzeniach mobilnych:
| System operacyjny | Przeglądarki |
|---|---|
| iOS | Niewspierane. |
| System operacyjny Android | Chrome v48+ Firefox v44+ Opera w wersji 42+ |
Ustaw poświadczenia
Aby subskrybować powiadomienia push przeglądarki w witrynie internetowej, możesz użyć kluczy VAPID. Poświadczenia VAPID można wygenerować przy użyciu usług, takich jak generator kluczy VAPID. Poświadczenia powinny wyglądać podobnie do poniższego przykładu:
{
"location": "South Central US",
"properties": {
"browserCredential": {
"properties": {
"subject": "mailto:email@microsoft.com",
"vapidPublicKey": "some-vapid-public-key",
"vapidPrivateKey":"some-vapid-private-key"
}
}
}
}
Ustawianie poświadczeń w portalu Azure
Aby ustawić poświadczenia do powiadomień push w przeglądarce w portalu Azure, wykonaj następujące kroki:
W portalu Azure otwórz blok Browser (Web Push) w centrum powiadomień.
Wprowadź istniejące klucze VAPID lub wygeneruj nową parę kluczy VAPID przy użyciu usługi, takiej jak generator kluczy VAPID.
Wybierz opcję Zapisz.
Ustawianie poświadczeń przy użyciu interfejsu API REST
Możesz również ustawić poświadczenia przeglądarki dla powiadomień push w przeglądarce za pomocą interfejsu API REST, korzystając z takich metod jak Utwórz lub zaktualizuj interfejs API REST centrum, API Azure Resource Manager lub dostawcy zasobów w wersji 2.
Wprowadź poświadczenia w tym formacie, podając identyfikator subskrypcji, grupę zasobów, przestrzeń nazw i centrum powiadomień:
https://management.azure.com/subscriptions/{subscription}/resourceGroups/{resource-group}/providers/Microsoft.NotificationHubs/namespaces/{namespace}/notificationHubs/{hub}api-version=2016-03-01
Ustawianie poświadczeń przy użyciu Azure SDKs
Możesz ustawić poświadczenia dla powiadomień push w przeglądarce za pomocą Azure SDKs. Oto przykład użycia zestawu SDK .NET:
var browserCreds = new BrowserCredential
{
Subject = "<subject>",
VapidPublicKey = "<vapid public key>",
VapidPrivateKey = "<vapid private key>",
}
i:
await nhManagementClient.NotificationHubs.CreateOrUpdateAsync(config.ResourceGroupName, config.NamespaceName, config.HubName, new NotificationHubCreateOrUpdateParameters(config.Location)
{
BrowserCredential = browserCreds
});
Tworzenie rejestracji i instalacji
Wysyłanie zbiorcze wymaga rejestracji lub instalacji. Możesz również użyć rejestracji i instalacji do wysyłania informacji debugowania.
W poniższych przykładach przedstawiono treść żądania rejestracji dla rejestracji natywnej, rejestracji szablonu i instalacji przeglądarki.
Treść żądania rejestracji natywnej
<?xml version="1.0" encoding="utf-8"?><entry xmlns="http://www.w3.org/2005/Atom"><content type="application/xml"><BrowserRegistrationDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect"><Endpoint></Endpoint><P256DH></P256DH><Auth></Auth></BrowserRegistrationDescription></content></entry>
Treść żądania rejestracji szablonu przeglądarki
<?xml version="1.0" encoding="utf-8"?>
<entry xmlns="http://www.w3.org/2005/Atom">
<content type="application/xml">
<BrowserTemplateRegistrationDescription xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect">
<Endpoint></Endpoint>
<P256DH></P256DH>
<Auth></Auth>
<BodyTemplate><![CDATA[{"title":"asdf","message":"xts"}]]></BodyTemplate>
</BrowserTemplateRegistrationDescription>
</content>
</entry>
Treść żądania instalacji
{
"installationId": "installation-id",
"platform": "browser",
"pushChannel": {
"endpoint": "",
"p256dh": "",
"auth": ""
}
}
Tworzenie rejestracji natywnych (SDK)
await notificationHubClient.CreateBrowserNativeRegistrationAsync(subscriptionInfo, tagSet);
Tworzenie rejestracji szablonów (SDK)
await notificationHubClient.CreateBrowserTemplateRegistrationAsync(subscriptionInfo, template, tagSet);
Tworzenie instalacji przeglądarki (SDK)
var browserPushSubscription = new BrowserPushSubscription
{
Endpoint = "",
P256DH = "",
Auth = "",
};
var browserInstallation = new BrowserInstallation
{
InstallationId = installationId,
Tags = tags,
Subscription = browserPushSubscription,
UserId = userId,
ExpirationTime = DateTime.UtcNow.AddDays(1),
};
await notificationHubClient.CreateOrUpdateInstallationAsync(browserInstallation);
Wysyłanie powiadomień push
Po ustawieniu poświadczeń dla powiadomień przeglądarki i tworzeniu rejestracji i instalacji dla urządzeń możesz przystąpić do tworzenia powiadomień push. W tej sekcji opisano sposób tworzenia powiadomienia dla bezpośredniego wysyłania|, wysyłki dla odbiorców i wysyłki debugowania (testowej).
Utwórz bezpośrednie wysyłki
W przypadku bezpośredniego wysyłania potrzebujesz identyfikatora URI punktu końcowego, klucza p25DH i tajnych danych uwierzytelniania z subskrypcji przeglądarki. Aby uzyskać więcej informacji o powiadomieniach bezpośrednich, zobacz Wysyłanie bezpośrednie.
Aby utworzyć bezpośrednie powiadomienie o wysyłaniu, wykonaj następujące kroki:
Ustaw następujące nagłówki dla powiadomień push dla przeglądarki.
ServiceBusNotification-Format - browser-
ServiceBusNotification-DeviceHandle - endpointendpoint: pole z subskrypcji -
P256DHp256dh: pole z subskrypcji -
Authauth: pole z subskrypcji
Utwórz treść wiadomości. Treść komunikatu jest zwykle w tym formacie:
{ "title": "Some Title", "body": "Some body of a message" }Możesz określić inne pola w treści; na przykład
icon, aby zmienić ikonę dla wiadomości.Wyślij powiadomienie.
Możesz również użyć zestawu SDK .NET do utworzenia bezpośredniego wysyłania:
var browserSubscriptionEndpoint = "";
var browserPushHeaders = new Dictionary<string, string>
{
{ "P256DH", "" },
{ "Auth", "" },
};
var directSendOutcome = await notificationHubClient.SendDirectNotificationAsync(new BrowserNotification("payload", browserPushHeaders), browserSubscriptionEndpoint);
Tworzenie wysyłek do odbiorców
W przypadku wysyłki do odbiorców użyj tego samego ServiceBus Notification-Format nagłówka, jak w przypadku bezpośredniego wysyłania, i zmodyfikuj treść komunikatu zgodnie z potrzebami. Opcjonalnie określ wyrażenie tagu przy użyciu nagłówka ServiceBusNotification-Tags . Aby uzyskać więcej informacji na temat tworzenia wysyłki do odbiorców, zobacz Wysyłanie natywnego powiadomienia APNS.
Aby utworzyć wysyłkę do odbiorców przy użyciu pakietu SDK, użyj następującej instrukcji:
var outcome = await notificationHubClient.SendNotificationAsync(new BrowserNotification(payload, tagExpression);
Tworzenie wysyłek debugowania/testowania
Tworzenie komunikatów debugowania odbywa się w portalu Azure i wymaga zarejestrowania oraz instalacji.
Po utworzeniu rejestracji dla urządzeń wykonaj następujące kroki, aby utworzyć powiadomienie dotyczące wysyłania debugowania:
W portalu Azure otwórz blok Test Send w centrum powiadomień.
W polu Platforma wybierz pozycję Przeglądarka.
Określ Wyślij do wyrażenia tagu.
Zmodyfikuj ładunek do żądanego komunikatu.
Wybierz Wyślij.