Sdílet prostřednictvím


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:
  • Opuštěno: Zpracování zpráv bylo ukončeno. K tomu dochází v případě, že zprávu nelze zpracovat v přijatelném časovém intervalu. Ve výchozím nastavení je to 30 minut.
  • Zrušeno: Uživatel zrušil tuto naplánovanou zprávu.
  • Dokončeno: Zpracování zprávy bylo dokončeno.
  • Zařazení do fronty: Zpráva byla přijata, ale zpracování ještě nezačalo.
  • NoTargetFound: Nenašla se žádná zařízení pro odeslání této zprávy.
  • Zpracování: Zpracování zpráv bylo zahájeno.
  • Naplánované: Zpráva je ve frontě a odesílá se v naplánovaném čase.
  • Neznámé: Zpracování zpráv je v neznámém stavu.
Č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:
  • windows
  • apple
  • gcm
  • windowsphone
  • adm
  • baidu
  • template
  • windowstemplate
  • appletemplate
  • gcmtemplate
  • windowsphonetemplate
  • admtemplate
  • baidutemplate
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ří:
  • Neplatné přihlašovací údaje PNS
  • Nedostupné PNS
  • BadChannel
  • ExpiredChannel
  • PnsThrottled
  • InvalidToken
  • WrongToken
  • Klesl
  • WrongChannel

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>&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;toast&gt;&lt;visual&gt;&lt;binding template="ToastText01"&gt;&lt;text id="1"&gt;Hello from a .NET App!&lt;/text&gt;&lt;/binding&gt;&lt;/visual&gt;&lt;/toast&gt;</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