Google Cloud Messaging

I know there are similar questions on the site, but I'm confused because http and xmpp have a difference:

this page talks about the differences between http and xmpp .

the first limitation is [ xmpp and http ]: up to 4 KB of data

second limitation:

http : You can send a message to 1000 users at a time. ( ref )

xmpp : For each sender ID, GCM allows 1000 connections to be connected in parallel. ( ref )

You can send messages to 1000 users at a time. therefore, if you have more users, you will have to send a message several times from your server, but for different users each time ( ref )

Third limit:

http : I could not find this limit in the Android developer:

There is a limit on the number of messages that can be saved without smoothing. This limit is currently 100. If the limit is reached, all saved messages will be discarded. Then, when the device is reconnected to the network, it receives a special message indicating that the limit has been reached. Then the application can correctly handle the situation, usually requesting full synchronization. ( ref )

xmpp :

Each message sent to CCS receives either an ACK or a NACK response. Messages that did not receive one of these replies are considered pending. If the number of pending messages reaches 100, the application server must stop sending new messages and wait for CCS to acknowledge some of the pending messages ( ref )

my questions:

1. in the second limit, if we use the http method and have 2000 users, should we send a message twice, each time to 1000 users ?, can we do this?

2. xmpp cannot support multicast messages, can we use the multicast theme in xmpp ?

  1. Is there any limit for broadcasting messages by topic? (except ref )

4. In the third limit, if I send a message to 300 users, and the One Hundred top users will be offline, will they receive a message or any notification when returning and online? (note: use broadcast for http and loop for xmpp )

  1. make this marginal effect as a theme?

  2. is there any difference in the third limit between http and xmpp ?

7. Is there a different limit to http or xmpp ?

+4
android google-cloud-messaging xmpp messaging
Jan 16 '16 at 10:59
source share
1 answer
  • Yes you can do it. When using HTTP you can have a lot size of 1000 (recipients).

  • Yes. Topic is a PubSub method, and if your clients are registered on a given volume, you can send a push notification to all of them with just one request.

  • Without Borders. After Topic Messaging had 1 million subscription limits for an application that no longer exists.

  • You confuse the third limit:

    • The first ( HTTP ) is one client, not all. Therefore, if you send more than 100 messages to one client when he is offline, when he returns to the network again, none of them will be delivered.
    • The second ( XMPP ) refers to the entire queue, and this happens on the server side. This means that you should not send any messages to GCM if there are more than 100 raw messages there.

    Thus, you have no problems considering offline users, GCM will process messages for everyone when they return to the network.

  • No.

  • I explained this in 4.

  • I don’t remember anything else.

+6
Jan 18 '16 at 5:00
source share



All Articles