The ability to force a Cloud Push Notification to be sent regardless of the client being active or not has been added at three levels:
- At the server-side ICEfaces-level using the PushMessage class. The existing two constructors have been overloaded to include a new forced boolean parameter.
- At the server-side ICEpush-level using the PushNotification class. The existing two constructors have been overloaded to include a new forced boolean parameter.
- At the client-side ICEpush-level using the notify function. It now parses out a new forced option.
The server-side logic has been augmented to handle this new forced Cloud Push Notification feature. The ConfirmationTimeout ends up with the forced boolean. Previously, upon receiving a new listen.icepush request any outstanding ConfirmationTimeout for the matching Browser-ID would get cancelled. Now it only gets cancelled if the ConfirmationTimeout's isForced() method returns false. Once any ConfirmationTimeout is finished executing it will still cancel itself regardless of what isForced() returns.
Marking this one as FIXED.