Získání telemetrie zpráv s oznámením
Toto rozhraní API poskytuje další telemetrii o dokončených stavech odchozích nabízených oznámení. Je navržený tak, aby pomáhal monitorovat nabízená oznámení odesílaná z centra. ID oznámení, které toto rozhraní API používá, je možné načíst z hlavičky HTTP Location zahrnuté v odpovědi rozhraní REST API použitého k odeslání oznámení.
Tato funkce telemetrie podle zpráv je k dispozici také pro plánovaná oznámení.
Toto rozhraní API je dostupné jenom pro centra oznámení úrovně Standard.
Žádost
Metoda | Identifikátor URI žádosti | Verze PROTOKOLU HTTP |
---|---|---|
GET | https://{namespace}.servicebus.windows.net/{NotificationHub}/messages/{notification message ID}?api-version=2016-07 |
HTTP/1.1 |
Hlavičky požadavku
Následující tabulka popisuje požadované a volitelné hlavičky požadavků.
Hlavička požadavku | Popis |
---|---|
Autorizace | Token SAS vygenerovaný podle specifikace v části Ověřování pomocí sdíleného přístupového podpisu pomocí služby Service Bus. |
x-ms-version | 7. 2016 (podporováno v 1. 1. 2015 nebo novějším) |
Text požadavku
Žádné
Odpověď
Odpověď obsahuje stavový kód HTTP a sadu hlaviček odpovědi. Při úspěchu se vrátí text odpovědi.
Kódy odpovědí
Kód | Description |
---|---|
200 | Telemetrie zpráv se úspěšně načetla. Telemetrická data můžou být částečnou odpovědí v závislosti na počtu zařízení, na která odeslaná oznámení cílí, a na tom, jak daleko zpráva postupuje v rámci našeho systému ke zpracování. |
400 | Telemetrii zpráv se nepodařilo načíst, protože požadavek byl poškozený. |
401 | Autorizace se nezdařila. Přístupový klíč byl nesprávný. |
403 | Žádost byla zamítnuta, protože tato funkce není pro vaši skladovou položku povolená. Upgradujte na standard. |
404 | Telemetrie neexistuje. K této chybě může dojít, když je ID oznámení neplatné. |
Informace o stavových kódech najdete v tématu Stavové kódy a kódy chyb.
Hlavičky odpovědi
Hlavička odpovědi | Popis |
---|---|
Typ obsahu | application/xml; charset=utf-8 |
Text odpovědi
Text odpovědi je dokument NotificationDetails, který se skládá z následujících prvků:
Element | Popis |
---|---|
Id oznámení | ID předané požadavku, který identifikuje zprávu oznámení. |
Umístění | Identifikátor URI zprávy |
Stav | Označuje průběh zprávy. Stav může být jedna z následujících hodnot:
|
Čas fronty | Označuje čas přijetí zprávy. |
StartTime | Označuje, kdy služba centra oznámení zahájila práci na oznámení. |
EndTime | Označuje, kdy služba centra oznámení dokončila práci na oznámení. |
NotificationBody | Text původní zprávy oznámení |
Cílovéplatformy | Určuje, na které platformy má oznámení cílit. Může obsahovat následující hodnoty jako řetězec oddělený čárkami:
|
ApnsOutcomeCounts | Tento prvek je k dispozici pro oznámení odesílaná do služby Apple Push Notification Service. Obsahuje kolekci instancí Outcome. |
MpnsOutcomeCounts | Tento prvek je k dispozici pro oznámení odesílaná službě Microsoft Push Notification Service. Obsahuje kolekci instancí Outcome. |
WnsOutcomeCounts | Tento prvek je k dispozici pro oznámení odesílaná do Služby oznámení systému Windows. Obsahuje kolekci instancí Outcome. |
GcmOutcomeCounts | Tento prvek je k dispozici pro oznámení odesílaná do služby Google Cloud Messaging. Obsahuje kolekci instancí Outcome. |
AdmOutcomeCounts | Tento prvek je k dispozici pro oznámení odesílaná do Amazon Device Messaging. Obsahuje kolekci instancí Outcome. |
Výsledek | Výše uvedené počty pro každou službu oznámení platformy tvoří kolekce těchto instancí. Každý výsledek může mít jeden z pojmenovaných počtů uvedených v části Výsledky . |
PnsErrorDetailsUri | Vyžaduje Api-Version 2016-07 a novějších, které se používají pro toto rozhraní API a rozhraní API odesílající zprávu s oznámením. Podrobnosti o chybách PNS jsou plně dostupné až po dokončení přidružené operace odeslání. Získá identifikátor URI objektu blob obsahující chyby vrácené jednotlivými zapojenými PNS. Pokud služba PNS neohlásila žádné chyby, tento člen není součástí odpovědi. Ke čtení objektu blob můžete použít rozhraní API služby Azure Storage. Další informace najdete v tématu Začínáme se službou Azure Blob Storage s využitím .NET nebo referenční informace k rozhraní REST API služby Azure Storage . Mezi možné chyby PNS patří:
|
Výsledky
Name | Popis počtu |
---|---|
AbandonedNotificationMessages | Počet požadavků odeslaných službě nabízených oznámení, které byly vyřazeny z důvodu vypršení časového limitu |
BadChannel | Komunikace se službou push selhala, protože kanál byl neplatný. |
ChannelDisconnected | Služba push se odpojila. |
ChannelThrottled | Služba nabízení zamítla přístup kvůli omezování. |
Klesl | Služba push označuje, že zpráva byla vyřazena. |
ExpiredChannel | Komunikace se službou push selhala, protože vypršela platnost kanálu. |
InvalidCredentials | Přihlašovací údaje použité k ověření ve službě nabízených oznámení selhaly. |
InvalidNotificationSize | Nabízená žádost je příliš velká. |
Žádné cílové pole | Počet žádostí, na které se nenašlo nic, na co se má odeslat |
PnsInterfaceError | Nabízená komunikace se smlouvou služby selhala. |
PnsServerError | Služba push indikovala, že na jejich straně došlo k chybě. |
PnsUnavailable | Nabízená služba není k dispozici. |
PnsUnreachable | Služba push nereagovala. |
Vynecháno | Počet duplicitních registrací (nalezen stejný popisovač PNS, jiné ID registrace) |
Success | Žádost se úspěšně odeslala na několik zařízení. |
Škrtil | Služba nabízení zamítla přístup kvůli omezování. |
Neznámá chyba | Došlo k neznámé chybě. |
WrongToken | Popisovač PNS nebyl rozpoznán službou PNS jako platný popisovač. |
Tady je příklad telemetrie z odesílání oznámení do služby WNS:
<NotificationDetails xmlns="http://schemas.microsoft.com/netservices/2010/10/servicebus/connect" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<NotificationId>{Your message id}</NotificationId>
<Location>sb://{Your namespace}.servicebus.windows.net/{your hub name}/messages/{your message id}?api-version=2015-04</Location>
<State>Completed</State>
<EnqueueTime>2015-11-02T21:19:43Z</EnqueueTime>
<StartTime>2015-11-02T21:19:43.9926996Z</StartTime>
<EndTime>2015-11-02T21:19:43.9926996Z</EndTime>
<NotificationBody><?xml version="1.0" encoding="utf-16"?><toast><visual><binding template="ToastText01"><text id="1">Hello from a .NET App!</text></binding></visual></toast></NotificationBody>
<TargetPlatforms>windows</TargetPlatforms>
<WnsOutcomeCounts>
<Outcome>
<Name>Success</Name>
<Count>3</Count>
</Outcome>
<Outcome>
<Name>WrongToken</Name>
<Count>1</Count>
</Outcome>
</WnsOutcomeCounts>
<PnsErrorDetailsUri>{Blob uri}</PnsErrorDetailsUri>
</NotificationDetails>
Viz také
Odeslání oznámení šablony
Odeslání nativního oznámení APNS
Odeslání nativního oznámení GCM
Odeslání nativního oznámení MPNS
Odeslání nativního oznámení služby WNS