Jump to content

Dave Nottage

Members
  • Content Count

    1297
  • Joined

  • Last visited

  • Days Won

    29

Posts posted by Dave Nottage


  1. 31 minutes ago, bdw_nz20 said:

    I just get an Error occurred still.

    It was "up" for a while.. now "down" again for the last 5 hours.

    29 minutes ago, bdw_nz20 said:

    Anyone seen any blog or post to indicate the outage

    I have a service that monitors QP for new reports. Because of the constant outages, I'm working on having a page published with a "current status", that uses the service. In the meantime, this gives the details in JSON.


  2. 3 minutes ago, scamp said:

    So clearly the Delphi installer is not correctly/fully installing it.

    It's likely because you have an incompatible JDK present on the machine. This is a potential fix:

     

    1. Make sure JAVA_HOME environment variable is set to the Adoptium JDK:

    JAVA_HOME=C:\Program Files\Eclipse Adoptium\jdk-11.0.15.10-hotspot

    2. Add missing build-tools by going to:

    C:\Users\Public\Documents\Embarcadero\Studio\23.0\CatalogRepository\AndroidSDK-2525-23.0.50491.5718\cmdline-tools\latest\bin

    In a command prompt and issue these commands:

    sdkmanager “build-tools;33.0.2”
    sdkmanager “platforms;android-33”

     

    • Like 4

  3. 20 minutes ago, PeterPanettone said:

    Sadly, Embarcadero did not contact the registered and confirmed participants to inform them that they were excluded.

    Exclusion happens when you attempt to join. GotoWebinar has a limit of 3000 attendees (Enterprise level). Once the limit has been reached, it refuses subsequent attempts to join.


  4. 10 hours ago, Vanar said:

    Problem solved!

    Good to hear

    10 hours ago, Vanar said:

    Do you think this is an original solution or a crutch?🙂

    Well, it's a solution, apparently? I assume whatever implementation you are using sends a local notification, which to my mind is unnecessary. I use Delphi's built-in FCM support, however even if the messages are not going via FCM, it should be a simple matter of subscribing to TPushRemoteNotificationMessage, e.g.:

      TMessageManager.DefaultManager.SubscribeToMessage(TPushRemoteNotificationMessage, PushRemoteNotificationMessageHandler);

    ..and in the handler:

    procedure TForm1.PushRemoteNotificationMessageHandler(const Sender: TObject; const M: TMessage);
    begin
      if M is TPushRemoteNotificationMessage then
        // Use this value (which is JSON): TPushRemoteNotificationMessage(M).Value.Notification
    end;

     

    • Thanks 1

  5. 16 minutes ago, Vanar said:

    My PUSH contains all the data (it is well formed and carries useful information).

    Does it contain content-available, as I mentioned?

    16 minutes ago, Vanar said:

    At what point can I receive PUSH data:
    when PUSH came to the phone

    Yes

    16 minutes ago, Vanar said:

    when do I activate the application?

    What do you mean by "activate the application"? The OS "wakes up" the application in the background, and the message receive handler (in your case, apparently OnReceiveNotificationEvent) gets called, when the message is received.

    16 minutes ago, Vanar said:

    The fact is that when I exit the background state of the application, I cannot read the information in PUSH.

    Possibly because you do not have the content-available member in the payload of the message.

    16 minutes ago, Vanar said:

    In what way can you get it, using what event?

    As mentioned, in the message receive handler

    16 minutes ago, Vanar said:

    I will be able to not only wake up the application, but also perform some logic (depending on the content of the PUSH data).

    . As per the section "Receive Background Notifications" in the same link, you have up to 30 seconds of processing time. Ignore the parts about the app delegate and completion handler - they are handled for you in the FMX code.

     

    Incidentally, I've found that trying to make background notifications like this work is a complete nightmare, mainly because of this (from the same link):

     

    "The system treats background notifications as low priority: you can use them to refresh your app’s content, but the system doesn’t guarantee their delivery. In addition, the system may throttle the delivery of background notifications if the total number becomes excessive. The number of background notifications allowed by the system depends on current conditions, but don’t try to send more than two or three per hour."


    It makes testing such things extremely difficult. Whatever you're attempting to do, you might need to do it some other way.


  6. 7 hours ago, Vanar said:

    I need to process the PUSH data, perform some actions, and not just open the application.

    If you want to be able to process the notification without user interaction (i.e. not open the application visibly), you need to follow the rules set out here:

     

    https://developer.apple.com/documentation/usernotifications/setting_up_a_remote_notification_server/pushing_background_updates_to_your_app?language=objc

     

×