Azure Notification Hub-Payload-Fehler beim Senden der VorlagenbenachrichtigungC#

Ein Treffpunkt für C#-Programmierer
Guest
 Azure Notification Hub-Payload-Fehler beim Senden der Vorlagenbenachrichtigung

Post by Guest »

Ich versuche herauszufinden, wie man Azure Notification Hub verwendet. Nachdem ich die Dokumentation zehnmal gelesen habe, kann ich immer noch keine erfolgreichen Vorlagenbenachrichtigungen mit .Net und dem von mir erstellten Nuget-Paket Microsoft.Azure.NotificationHubs senden.
eine Testregistrierung mit einer API (es ist kein echtes Gerät, ich habe einige zufällige Daten an den Notification Hub gesendet, aber die Nachrichtenvorlage sollte gültig sein).
Eine Benachrichtigung wird gesendet mit Methode SendTemplateNotificationAsync von NotificationHubClient führt zu PayloadErrors, die im Diagramm im Azure-Portal sichtbar sind. Leider habe ich keine Lust, 300 $ für ein Upgrade meines kostenlosen NotificationHub zu zahlen, nur um ein Problem zu beheben, bevor ich mit der Entwicklung meines Systems fortfahre. Vielleicht sehen einige von Ihnen, was mit meiner Anfrage oder Registrierung nicht stimmt?
  • Screenshot der Vorlage-Anfrage
Ich registriere das Gerät mit der Methode CreateFcmV1TemplateRegistrationAsync:

Code: Select all

   // the foreach loops are irrevelant to the topic
private async Task RegisterAndroidDevice(RegisterDeviceCommand command)
{
var tasks = new List();
foreach (var template in command.Templates)
{
foreach (var districtId in command.DistrictIds)
{
tasks.Add(notificationHubClient.CreateFcmV1TemplateRegistrationAsync(command.InstallationId, template.Value, new List() { $"{districtId}_{template.Key}" }));
}
}

await Task.WhenAll(tasks);
}
wobei der Wert {"message":{"title":"$(title)", "description":"$(description)"}} ist ist in dieser Registrierung zu sehen, die im Notification Hub-Screenshot vorhanden ist.
Die SendTemplateNotificationAsync-Methode gibt keinen Fehler zurück. Die Antwort besagt, dass die Nachricht in die Warteschlange gestellt wurde, aber nach ein paar Minuten kann ich im Metrikdiagramm im AZ-Portal sehen, dass Nachrichten aufgrund von Nutzlastfehlern nicht verarbeitet werden konnten. Leider sind detaillierte Fehlerdetails nur mit der Premium-Stufe zugänglich.
Unten sehen Sie, wie ich die SendTemplateNotificationAsync-Methode aufrufe:

Code: Select all

var outcome = await notificationHubClient.SendTemplateNotificationAsync(parameters, $"{districtId}_{type}");
Wobei Parameter das Objekt ein Schlüssel-Wert-Paar ist wie:

Code: Select all

{
"alertType" : "Weather"
"title" : "Test alert 2"
"description" : "Content of test alert"
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post