Я следовал этому уроку: https://docs.microsoft.com/en-us/azure/notification-hubs/notification-hubs-push-notification-registration-management
Итак, я написал тестовый код для отправки выглядит следующим образом:
void TestSend(bool ios)
{
var AzureName = "myhubname";
var AzureHub = new ServiceBusConnectionStringBuilder("Endpoint=sb://secret+sauce").ToString();
var tags = new List<string>();
tags.Add("doopy");
try
{
var svcs = new ServiceBusConnectionStringBuilder(AzureHub).ToString();
var hub = NotificationHubClient.CreateClientFromConnectionString(svcs, AzureName);
// what is this?
// var channel = await PushNotificationChannelManager.CreatePushNotificationChannelForApplicationAsync();
var installation = new Installation(); // control tag registration
// FCM - works
installation.Platform = NotificationPlatform.Fcm;
installation.PushChannel = "put my fcm token here";
installation.InstallationId = "see comment..."; // from the device via this call: myNotificationHub.Register(FCMToken, new List<string>().ToArray()).RegistrationId;
if (ios)
{ // silently fails
installation.Platform = NotificationPlatform.Apns;
installation.InstallationId = "some guid I made up";
installation.PushChannel = "see comment"; // device token with <> and spaces removed from call mySBNotificationHub.RegisterNativeAsync(deviceToken...
}
installation.Tags = tags;
hub.CreateOrUpdateInstallationAsync(installation).Wait();
JObject data = MakeNotification("notificationId", "I got your tags doopy!");
var payload = PlatformPayload(ios, data);
Console.WriteLine("Send...");
if (ios)
hub.SendAppleNativeNotificationAsync(payload, tags).Wait();
else
hub.SendFcmNativeNotificationAsync(payload, tags).Wait();
Console.WriteLine("Message SENT!");
}
catch (Exception ex)
{
Console.WriteLine("rats! " + ex.Message);
}
}
Я даже не использую загадочный PushNotificationChannelManager из документов иФКМ работает.Кажется, что этот класс существует только в UWP или чем-то подобном.
Кажется, что APNS требует и идентификатор установки, и канал, но все, что у меня есть, - это идентификатор устройства.Кто-нибудь знает, где взять эти значения для iOS?