Как отправлять push-уведомления более чем на одну платформу с помощью библиотеки Redth PushSharp?

Я использовал код Redth/PushSharp для реализации push-уведомлений на стороне сервера для Android и iPhone.

Используя следующий код:

        foreach (Receipient in iOSUsers)
        {
            push.QueueNotification(NotificationFactory.Apple()
                .ForDeviceToken(APNS_Device_Token_Of_Receipient)
                .WithAlert("Alert!")
                .WithSound("default")
                .WithBadge(2));
        }

        foreach (Receipient in GCMUsers)
        {
            push.QueueNotification(NotificationFactory.AndroidGcm()
                .ForDeviceRegistrationId(GCM_Device_Token_Of_Receipient)
                .WithCollapseKey("NONE")
                .WithJson("Alert!"));
        }

Моя проблема в том, что я могу отправлять только на одну платформу за раз, приведенный выше код отправляет только на iPhone, и если первый цикл отключен, только пользователи Android получат push-сообщение.

Любая подсказка?

Я могу добавить дополнительный код, если это необходимо.

Спасибо!


person user1553825    schedule 13.12.2012    source источник


Ответы (2)


Посмотри на

.WithExpiry()

чтобы указать срок действия отправленного вами сообщения.

person BaesFr    schedule 11.04.2013

Я создал службу Windows, которая получает список пользователей ios и пользователей android и для каждого вызывает экземпляр объекта pushbroker и обрабатывает, как указано выше. У вас будет несколько потоков, обрабатывающих все ios и android.

person user1453999    schedule 15.07.2013