Итак, я использую push sharp внутри своего приложения ASP.NET mvc и все время получаю ошибку сбоя подключения. Я установил пакет NUGET для push sharp, поэтому у меня нет доступа к исходному коду. Мне потребовалось некоторое время, чтобы понять, что я получаю эту ошибку, поскольку какое-то время я не работал в режиме отладки. Во-первых, вот код ошибки, который я получаю.
Необработанное исключение типа PushSharp.Apple.ConnectionFailureException произошло в PushShart.Apple.DLL
Дополнительная информация: Достигнуто максимальное количество попыток (3) подключиться к gateway.sandbox.push.apple.com:2195!
Это код, который я использую для push-уведомлений. Это довольно просто.
public int samplePush()
{
var push = new PushBroker();
var appleCert = File.ReadAllBytes(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Certificates1.p12"));
var settings = new ApplePushChannelSettings(false, appleCert, "1111");
push.RegisterAppleService(settings);
push.QueueNotification(new AppleNotification()
.ForDeviceToken("c49e457bc041dead313f43684a42a0acdc8d4393b229db08e2873849a8a2db22")
.WithAlert("Test push notification")
.WithSound("default")
.WithBadge(7));
push.OnNotificationFailed += push_OnNotificationFailed;
push.StopAllServices();
return 200;
}
Я пробовал несколько вещей, сначала я использовал несколько сертификатов, включая файл pem, но ни один из них не дал мне никаких ошибок в отношении недействительных сертификатов.
Я также вручную открыл порт 2195, чтобы разрешить все подключения, я также пробовал это из нескольких подключений, одно из которых было моим рабочим подключением, которое в прошлом работало для push-уведомлений. Я не понимаю, что может вызвать эту проблему.