ICEpush
  1. ICEpush
  2. PUSH-399

mobi:cloudPush notification triggered from a page is not sent if user is viewing another page with push enabled.

    Details

    • Type: Bug Bug
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: EE-4.1.0.GA
    • Fix Version/s: EE-4.2.0.GA
    • Component/s: JavaScript Client
    • Labels:
      None
    • Environment:
      Tomcat 7/8, ICEfaces EE 4 r48636
    • Assignee Priority:
      P2

      Description

      The QA cloudPush application has a cloudPush registration page and 3 different colored pages that can send priority push messages.

      In this scenario a user resisters cloudPush then goes to the red page to send a notification. The user then goes to the yellow page and sends a notification and leaves the browser open on the yellow page.
      The red page native notification is not sent to the device, and is not updated on the red page.
      The yellow page native notification is not sent to the device but the yellow page is updated.
      The red page notification should have been delivered to the device.
      To demonstrate use the QA Cloud push Persistence application (/registration.jsf)
      http://dev.icesoft.com/svn/repo/qa/trunk/Regression-Icefaces4/Sparkle/Manual/cloudPush

      Follow the steps as in the scenario but increase the message delay to 15 seconds.

        Activity

        Hide
        Jack Van Ooststroom added a comment -

        Sending icepush-ee/core/src/main/java/org/icepush/Browser.java
        Sending icepush-ee/core/src/main/java/org/icepush/ConfirmationTimeout.java
        Sending icepush-ee/core/src/main/java/org/icepush/Group.java
        Sending icepush-ee/core/src/main/java/org/icepush/InternalPushGroupManager.java
        Sending icepush-ee/core/src/main/java/org/icepush/LocalPushGroupManager.java
        Transmitting file data .....
        Committed revision 48860.

        Sending icepush-ee/eps/src/main/java/com/icesoft/push/Browser.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/ConfirmationTimeout.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/DynamicPushGroupManager.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/InternalPushGroupManager.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/LocalPushGroupManager.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/RemotePushGroupManager.java
        Sending icepush-ee/eps/src/main/java/com/icesoft/push/StatusManager.java
        Transmitting file data .......
        Committed revision 45139.

        Show
        Jack Van Ooststroom added a comment - Sending icepush-ee/core/src/main/java/org/icepush/Browser.java Sending icepush-ee/core/src/main/java/org/icepush/ConfirmationTimeout.java Sending icepush-ee/core/src/main/java/org/icepush/Group.java Sending icepush-ee/core/src/main/java/org/icepush/InternalPushGroupManager.java Sending icepush-ee/core/src/main/java/org/icepush/LocalPushGroupManager.java Transmitting file data ..... Committed revision 48860. Sending icepush-ee/eps/src/main/java/com/icesoft/push/Browser.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/ConfirmationTimeout.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/DynamicPushGroupManager.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/InternalPushGroupManager.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/LocalPushGroupManager.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/RemotePushGroupManager.java Sending icepush-ee/eps/src/main/java/com/icesoft/push/StatusManager.java Transmitting file data ....... Committed revision 45139.
        Hide
        Jack Van Ooststroom added a comment -

        A fair bit of changes were required in order to get this scenario working:

        1. Avoid having multiple Push-IDs belonging to the same Browser-ID within the same Group. (This will need more work to support your suggested scenario of having two tabs open to the same color page.)
        2. Cancelling Confirmation Timeouts based on the Push-IDs send along with the listen.icepush request instead of based on the Browser-ID.
        3. Change usages of starting and stopping Confirmation Timeouts accordingly.
        4. Update the internal logic of the Confirmation Timeout to follow the new strategy.

        Marking this one as FIXED.

        Show
        Jack Van Ooststroom added a comment - A fair bit of changes were required in order to get this scenario working: Avoid having multiple Push-IDs belonging to the same Browser-ID within the same Group. (This will need more work to support your suggested scenario of having two tabs open to the same color page.) Cancelling Confirmation Timeouts based on the Push-IDs send along with the listen.icepush request instead of based on the Browser-ID. Change usages of starting and stopping Confirmation Timeouts accordingly. Update the internal logic of the Confirmation Timeout to follow the new strategy. Marking this one as FIXED.

          People

          • Assignee:
            Jack Van Ooststroom
            Reporter:
            Liana Munroe
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: