Announcement

Collapse
No announcement yet.

Proposed Web Service: Notifications

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Proposed Web Service: Notifications

    The notifications service would allow for push-type (polled frequently enough to simulate push) notifications which in the future may be a full push service. So far the only notification I have defined is location push (click a position on a map online and click send-to-car)

    notifications getNotifications(string sessionKey)

    string[] getLocations(string sessionKey)
    Returns a list of addresses or Lat/Long pairs

    notifications struct:
    bool Locations
    openMobile - An open source C# Front End (why choose openMobile?)
    - Always Recruiting Developers -
    Like what you see? Donations are always welcome

  • #2
    Originally posted by justchat_1 View Post
    The notifications service would allow for push-type (polled frequently enough to simulate push) notifications which in the future may be a full push service. So far the only notification I have defined is location push (click a position on a map online and click send-to-car)

    notifications getNotifications(string sessionKey)

    string[] getLocations(string sessionKey)
    Returns a list of addresses or Lat/Long pairs

    notifications struct:
    bool Locations
    So this is kinda a multi-purpose method to send information in a push-like fashion to the car?
    Former author of LinuxICE, nghost, nobdy.
    Current author of Automotive Message Broker (AMB).
    Works on Tizen IVI. Does not represent anyone or anything but himself.

    Comment


    • #3
      yup... the goal is to minimize bandwidth usage unless theres actually data to be transferred. On second thought it should probably be:
      notifications getNotifications(string sessionKey, DateTime lastCheck)
      that way even if a connection drops theres no lost notifications.
      openMobile - An open source C# Front End (why choose openMobile?)
      - Always Recruiting Developers -
      Like what you see? Donations are always welcome

      Comment


      • #4
        Hey... I never thought of this idea.

        Ideally, maybe this should be a core/required webservice for the other webservices to function? When a download or update for the car is ready/changed, it sends data first through this service instead of each client plugin/app polling individually?

        We need to expand upon this more to specify which service is updated and ready to push info to the car. This service should notify for ALL push type services to the car such as downloads, updates, and etc...

        Any ideas on how this could work for all services?

        Comment


        • #5
          I think that kinda defeats the purpose..... The only functions that should be part of the "notifications service" are functions which require push type notifications. The other services don't have data thats changes are urgent enough to warrant immediate notifications.
          openMobile - An open source C# Front End (why choose openMobile?)
          - Always Recruiting Developers -
          Like what you see? Donations are always welcome

          Comment


          • #6
            Originally posted by justchat_1 View Post
            I think that kinda defeats the purpose..... The only functions that should be part of the "notifications service" are functions which require push type notifications. The other services don't have data thats changes are urgent enough to warrant immediate notifications.

            Here is how my idea works. Instead of having dozens of plugins/apps polling for new data, which wastes bandwidth and cpu cycles, you have a single app that polls for new data and lets the client plugin/app know to download new data.


            Old/Current Method for Polling and Downloading Updates - every app/webservice polls on their own for updates and new info


            New Method - all webservices will announce updates through the notification webservice and apps will only download updates once the notification app/plugin tells them too



            This will save valuable BW and cpu cycles. Now do you get the full scope of my idea?

            EDIT: After posting this, I think I kinda see your point. Not many webservices actually have changing data come back to the client. Even with website based data changing, the client is usually off. Anyways, here are some of the services which might need this:
            • Traffic updates and accidents
            • Weather updates (floods, tornadoes, etc...)
            • Current news and headlines
            • Real time hardware control? (like making the FB do things remotely from a website)

            Comment


            • #7
              Yeah... I think we should avoid using the notification service habitually for everything that needs a response. I'm unclear at this point how the client will react to a notification or how the client will know exactly what the notification is for and what type of data it carries. I'll roll over in my head this some more...
              Former author of LinuxICE, nghost, nobdy.
              Current author of Automotive Message Broker (AMB).
              Works on Tizen IVI. Does not represent anyone or anything but himself.

              Comment


              • #8
                Originally posted by Nextabyte_Matt View Post
                EDIT: After posting this, I think I kinda see your point. Not many webservices actually have changing data come back to the client. Even with website based data changing, the client is usually off. Anyways, here are some of the services which might need this:
                • Traffic updates and accidents
                • Weather updates (floods, tornadoes, etc...)
                • Current news and headlines
                • Real time hardware control? (like making the FB do things remotely from a website)
                Exactly... Traffic Updates kind of dependent on how good our data is but we can leave that in, severe weather alerts definitely and yea I guess real time hardware control. News could probably just be polled though, it really only changes every half hour or so.

                Originally posted by kev000 View Post
                Yeah... I think we should avoid using the notification service habitually for everything that needs a response. I'm unclear at this point how the client will react to a notification or how the client will know exactly what the notification is for and what type of data it carries. I'll roll over in my head this some more...
                Well blackberrys don't actually use true push they use an extended timeout request/response. While thats certainly doable it would probably require a custom web server...
                As far as a clients reaction, I think thats pretty much defined based on the data.
                openMobile - An open source C# Front End (why choose openMobile?)
                - Always Recruiting Developers -
                Like what you see? Donations are always welcome

                Comment


                • #9
                  why not follow in apple footsteps? Application speaks to notification service, notification service has a single connection to the client. So there is no constant checking, when say there is a severe weather alert, that message speaks to the notification service which sends a message to the client where you see it.

                  Any application could use the service and not slow down the push, or use extra BW.

                  Comment


                  • #10
                    This isn't a true push service....something like that requires a custom web server which none of us have the time to put together. This service will be similar in that instant notifications are instant where as slowly changing data will be checked often enough to be current but rarely enough to not use unnecessary bandwidth.
                    openMobile - An open source C# Front End (why choose openMobile?)
                    - Always Recruiting Developers -
                    Like what you see? Donations are always welcome

                    Comment


                    • #11
                      Sorry for being a technical n00b on this stuff, but why does that require a custom web server?

                      I thought we already had a connection status service that the PC uses to notify when it is online. Can't a web service check that status on the server account and push a notification if it has one?

                      For example, if I write a Trapster service that checks for speedtraps nearby based on the gps location, can't I send a message to the car using the notification service?
                      Originally posted by ghettocruzer
                      I was gung ho on building a PC [until] just recently. However, between my new phone having internet and GPS and all...and this kit...Im starting to have trouble justfiying it haha.
                      Want to:
                      -Find out about the new iBug iPad install?
                      -Find out about carPC's in just 5 minutes? View the Car PC 101 video

                      Comment


                      • #12
                        Web servers run on a request/response type exchange. A client sends a request (or some command) and the server supplies a response. There is no method for a regular web server to supply an unrequested response. We use a push-type service in that it acts similar to a push service but is not a true push service (which would require a web server capable of pushing).
                        openMobile - An open source C# Front End (why choose openMobile?)
                        - Always Recruiting Developers -
                        Like what you see? Donations are always welcome

                        Comment


                        • #13
                          Okay, so in the trapster example, the web service can queue up a message for the client and the client then checks for notifications and requests them from the server, correct?

                          So it isn't a real-time type of notification but it is -or can be, a near real time notification.
                          Originally posted by ghettocruzer
                          I was gung ho on building a PC [until] just recently. However, between my new phone having internet and GPS and all...and this kit...Im starting to have trouble justfiying it haha.
                          Want to:
                          -Find out about the new iBug iPad install?
                          -Find out about carPC's in just 5 minutes? View the Car PC 101 video

                          Comment


                          • #14
                            exactly! but in the future hopefully we can transition to a true push type delivery service
                            openMobile - An open source C# Front End (why choose openMobile?)
                            - Always Recruiting Developers -
                            Like what you see? Donations are always welcome

                            Comment

                            Working...
                            X