Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Přehled
Důležité
K dokončení tohoto kurzu potřebujete mít aktivní účet Azure. Pokud účet nemáte, vytvořte si bezplatný zkušební účet během několika minut prostřednictvím bezplatné zkušební verze Azure.
V této příručce se dozvíte, jak odesílat nabízená oznámení pomocí služby Azure Notification Hubs přímo z aplikace Node.js.
Zahrnuté scénáře zahrnují odesílání nabízených oznámení aplikacím na následujících platformách:
- Android
- Ios
- Univerzální platforma Windows
- Windows Phone
Centra oznámení
Azure Notification Hubs poskytuje snadno použitelnou škálovatelnou infrastrukturu s více platformami pro odesílání nabízených oznámení do mobilních zařízení. Podrobnosti o infrastruktuře služeb najdete na stránce azure Notification Hubs.
Vytvoření aplikace Node.js
Prvním krokem v tomto kurzu je vytvoření nové prázdné Node.js aplikace. Pokyny k vytvoření aplikace Node.js najdete v tématu Vytvoření a nasazení aplikace Node.js na webu Azure, Node.js Cloudová služba pomocí Windows PowerShell, nebo Webová stránka s použitím WebMatrix.
Konfigurace aplikace pro použití Notification Hubs
Pokud chcete používat Službu Azure Notification Hubs, musíte si stáhnout a použít Node.js balíček Azure, který obsahuje integrovanou sadu pomocných knihoven, které komunikují se službami REST nabízených oznámení.
Získání balíčku pomocí Správce balíčků uzlů (NPM)
- Použijte rozhraní příkazového řádku, jako je PowerShell (Windows), Terminal (Mac) nebo Bash (Linux) a přejděte do složky, do které jste vytvořili prázdnou aplikaci.
- V příkazovém okně spusťte
npm install azure-sb. - Spuštěním příkazu
lsnebodirmůžete ručně ověřit, že byla vytvořena složkanode_modules. - V této složce vyhledejte balíček azure, který obsahuje knihovny, které potřebujete pro přístup k centru oznámení.
Poznámka:
Další informace o instalaci NPM najdete na oficiálním blogu NPM.
Import modulu
Pomocí textového editoru přidejte na začátek server.js souboru aplikace následující:
var azure = require('azure-sb');
Nastavení připojení centra oznámení Azure
Objekt NotificationHubService umožňuje pracovat s centrem oznámení. Následující kód vytvoří objekt NotificationHubService pro centrum oznámení s názvem hubname. Přidejte ho do horní části souboru server.js za příkaz pro import modulu Azure:
var notificationHubService = azure.createNotificationHubService('hubname','connectionstring');
Získejte hodnotu připojení connectionstring z portálu Azure následujícími kroky:
- V levém navigačním podokně klikněte na Procházet.
- Vyberte Notification Hubsa vyhledejte centrum, které chcete použít pro ukázku. Pokud potřebujete pomoc s vytvořením nového centra oznámení, můžete se podívat na kurz začínáme Windows Store.
- Vyberte Nastavení.
- Klikněte na Zásady přístupu. Zobrazí se sdílené i úplné připojovací řetězce.
Poznámka:
Připojovací řetězec můžete načíst také pomocí rutiny Get-AzureSbNamespace v Azure PowerShellu nebo příkazu azure sb namespace show v Azure Classic CLI.
Obecná architektura
Objekt NotificationHubService zveřejňuje následující instance objektů pro odesílání nabízených oznámení konkrétním zařízením a aplikacím:
-
android – použijte objekt
GcmService, který je k dispozici nanotificationHubService.gcm -
iOS – použijte objekt
ApnsService, který je přístupný nanotificationHubService.apns -
Windows Phone – použijte objekt
MpnsService, který je k dispozici nanotificationHubService.mpns -
Universal Windows Platform – použijte objekt
WnsService, který je k dispozici nanotificationHubService.wns
Poznámka:
Služba MPNS (Microsoft Push Notification Service) je zastaralá a už se nepodporuje.
Návod: Odeslání push notifikací do aplikací pro Android
Objekt GcmService poskytuje send metodu, kterou lze použít k odesílání nabízených oznámení do aplikací pro Android. Metoda send přijímá následující parametry:
- štítky – identifikátor štítku. Pokud není k dispozici žádná značka, oznámení se odešle všem klientům.
- Zatížení - JSON nebo nezpracovaný textový řetězec zprávy.
- zpětné volání – funkce zpětného volání.
Další informace o formátu datové části najdete v dokumentaci k payloadu .
Následující kód používá instanci GcmService vystavenou NotificationHubService k zaslání push oznámení všem registrovaným klientům.
var payload = {
data: {
message: 'Hello!'
}
};
notificationHubService.gcm.send(null, payload, function(error){
if(!error){
//notification sent
}
});
Jak odesílat push oznámení do aplikací pro iOS
Stejně jako u aplikací pro Android popsaných výše poskytuje objekt ApnsService metodu send, která se dá použít k odesílání nabízených oznámení aplikacím pro iOS. Metoda send přijímá následující parametry:
- značky – identifikátor štítku. Pokud není k dispozici žádná značka, oznámení se odešle všem klientům.
- Náklad - JSON nebo řetězec nákladu zprávy.
- zpětné volání – funkce zpětného volání.
Další informace o formátu datové části naleznete v části Obsah oznámení oznámení průvodce UserNotifications.
Následující kód používá instanci ApnsService vystavenou NotificationHubService k odeslání zprávy výstrahy všem klientům:
var payload={
alert: 'Hello!'
};
notificationHubService.apns.send(null, payload, function(error){
if(!error){
// notification sent
}
});
Jak na to: Odesílání push oznámení do aplikací pro Windows Phone
Objekt MpnsService poskytuje send metodu, kterou lze použít k odesílání nabízených oznámení do aplikací pro Windows Phone. Metoda send přijímá následující parametry:
- značky – identifikátor značky. Pokud není k dispozici žádná značka, oznámení se odešle všem klientům.
- Náklad - XML náklad zprávy.
-
TargetName -
toastpro informační zprávy.tokenpro oznámení dlaždic. - NotificationClass – priorita oznámení. Platné hodnoty najdete v části Elementy hlaviček HTTP dokumentu Push oznámení ze serveru.
- Možnosti – volitelné hlavičky požadavků.
- zpětné volání – funkce zpětného volání.
Seznam platných možností TargetName, NotificationClass a záhlaví najdete na stránce push oznámení ze serveru.
Následující ukázkový kód používá instanci MpnsService vystavenou NotificationHubService k odeslání oznámení typu toast:
var payload = '<?xml version="1.0" encoding="utf-8"?><wp:Notification xmlns:wp="WPNotification"><wp:Toast><wp:Text1>string</wp:Text1><wp:Text2>string</wp:Text2></wp:Toast></wp:Notification>';
notificationHubService.mpns.send(null, payload, 'toast', 22, function(error){
if(!error){
//notification sent
}
});
Jak na to: Odeslat push oznámení aplikacím Universal Windows Platform (UWP)
Objekt WnsService poskytuje send metodu, kterou lze použít k odesílání nabízených oznámení aplikacím univerzální platformy Windows. Metoda send přijímá následující parametry:
- značky – identifikátor značky. Pokud není k dispozici žádná značka, oznámení se odešle všem registrovaným klientům.
- Užitečné zatížení – užitečné zatížení zprávy XML.
- Typ – typ oznámení.
- Možnosti – volitelné hlavičky požadavku.
- zpětné volání – funkce zpětného volání.
Seznam platných typů a hlaviček požadavků najdete v tématu Žádosti o nabízená oznámení a hlavičky odpovědí.
Následující kód používá instanci WnsService, kterou zpřístupnil NotificationHubService, k odeslání toast oznámení do UWP aplikace.
var payload = '<toast><visual><binding template="ToastText01"><text id="1">Hello!</text></binding></visual></toast>';
notificationHubService.wns.send(null, payload , 'wns/toast', function(error){
if(!error){
// notification sent
}
});
Další kroky
Výše uvedené ukázkové fragmenty kódu umožňují snadno vytvářet infrastrukturu služeb pro doručování nabízených oznámení široké škále zařízení. Teď, když jste se seznámili se základy používání Notification Hubs s Node.js, najdete na těchto odkazech další informace o tom, jak můžete tyto možnosti dále rozšířit.
- Viz odkaz MSDN pro Azure Notification Hubs.
- Další ukázky a podrobnosti implementace najdete v úložišti Azure SDK for Node na GitHubu.