24

I have been studying materials related to Web push notification from FCM Messenger. While I came across downstream message and upstream message, apparently HTTP server only allows downstream message while XMPP server allows upstream message.

I have trouble understanding the difference between downstream and upstream message and the details are not well explained on FCM. I tried to search online but I have no luck. Please do help me as I am new to coding.

AL.
  • 36,815
  • 10
  • 142
  • 281
James Lee
  • 313
  • 4
  • 17

1 Answers1

43

To put it on Layman's terms, Downstream Messaging is when you are sending a push notification from your App Server towards the Client App. However for FCM's case, you may send a downstream message without an App Server or by sending a usual curl request by making use of the Firebase Console.

While Upstream Messaging is the reverse, the Client App is sending a message towards your App Server. For this, the App Server is a requirement.

Do keep in mind that the FCM server is still in the flow (the middle man) that handles the queuing of your messages for both downstream and upstream.

AL.
  • 36,815
  • 10
  • 142
  • 281
  • I think this is pretty much the simplest explanation. Let me know if it's still confusing and which parts. I'll add in some more details. – AL. Oct 11 '16 at 15:25
  • Hi @AL, Appreciate your explanation. From what I see from here, Upstream message is defined by a message sent from the client so it doesn't have anything to do with the app server sending anything? But the downstream message can be sent only from app server to client serve. – James Lee Oct 12 '16 at 13:47
  • Sorry I am not done with message. Basically to be more direct, – James Lee Oct 12 '16 at 13:47
  • 4
    Downstream message is sending from point A to point B , whereas the upstream message is sending from point B to point A? There is nothing common between these at all? – James Lee Oct 12 '16 at 13:48
  • AL, regardless i upvoted you but please do help to answer my following question. That would be great! :) – James Lee Oct 12 '16 at 14:23
  • 4
    @JamesLee Your direct description of sending a message from point A to point B and vice versa is a good illustration. However, it'd be more appropriate to say that Downstream is Point A (App Server) sending a message to a single or multiple points (Client App instances/users/devices) while Upstream is Sending a message from different points (Client Apps/users/devices) towards a single point (App Server). – AL. Oct 12 '16 at 15:03
  • @JamesLee No worries. If my answer pretty much covers it all, do accept it so your post will be tagged accordingly. :) Cheers! – AL. Oct 12 '16 at 15:26
  • where we need specify our app server URL to receive upstream message from APP (via FCM)? – Nadhas Apr 15 '19 at 10:39