Firebase console TPS handling of push notification - firebase

I have 1 million user base, so if I'm sending push notification through firebase console my active users get increases drastically which causing some trouble at server end for few time. So I have two questions regarding that -
What is the transaction limit(TPS) of firebase for sending notification.
Can I tune transaction limit(TPS) of firebase console according to my requirement?

There isn't any limit to sending notifications with FCM. Although if you are using topics, and you're sending too many messages at a time to a single topic, you might receive the Topics Message Rate Exceeded error from time to time, in which case you could just implement an exponential backoff.
So to answer your questions:
There isn't any.
I'm not sure what you mean by this. The console contains the data about your Firebase project and some features related to interacting with your app (like the Notifications Console), that's about what it could do.

Related

Firebase sends push notifications every day without active campaigns

A week ago I experimented with FCM console and sent push messages to my Android device. But after that many (thousands) of users started to receive pushes every day in 23 h. I suppose, this is because of time zone difference. When I look at Cloud Messaging Reports, I see it really sends data notifications. But I even don't have active campaigns (including planned campaigns). How can it be?
UPDATE
I've got answers from Firebase and AppMetrica (an alternative analytics service) support. They say it is possible the app is not able to handle the data message (silent notification) sent.
I saw charts in FCM Reports, showing that every day it delivers data messages. Every day it's count slowly raised.
I've got answers from Firebase and AppMetrica (https://appmetrica.yandex.ru/docs/). Firebase support didn't find a problem, but suspected silent push messages. AppMetrica support found a problem. AppMetrica uses FCM to send push messages. I wrote a code for integration of AppMetrica and FCM incorrectly, so silent pushes haven't been handled right. After I unselected a checkbox in settings that updated tokens via silent push messages, Firebase charts dropped to zero.

Does Firebase Cloud Messaging have an option to limit maximum no. of notifications sent per user per day?

We use FCM to send app notifications. Basically, we want to put a cap on maximum number of notifications that an app user can get in a day. Does FCM have an option where on hitting the cap, the subsequent messages are discarded by FCM and not sent to the user?
FCM is a free service which currently doesn't have any limitations whatsoever when it comes to the count of notifications sent and received.
If you want to enforce a limit of some sort, you would have to enforce this on your implementation (probably server side), by preventing further messages when a specific range is hit.
In general, push notification features are good for letting users know of specific (non-critical) information. I don't get why anyone would limit something when it's already free of use -- unless there's some different cost you're limiting which is directly affected by the push notif service.

Firebase cloud messaging message log

In my Android app I receive messages sent using Firebase, the problem is not all messages arrive and sometimes messages arrival is very slow.
In my server side I track the messages I send to FCM and I always receive success: 1 response from FCM, still there are messages I do not receive in my Android app.
I thought an FCM messages log would be a great help in cases like described above but I don't sure if this option exist.
Is there a way to browse Firebase Messages log ?
First of all, did you know that Firebase Cloud Messages can be delayed if the connected device is in doze mode and your app's standby bucket is not high enough to wake up the device? Therefore, even if FCM sends the message to your target device in time, there is still a chance that it will be delayed by the Android platform. Also, if the message is sent with high priority, you might have a chance to wake up the device from doze mode to be able to receive the message in time.
The following two docs will give you a more detailed explanation:
https://developer.android.com/training/monitoring-device-state/doze-standby
https://developer.android.com/topic/performance/power/power-details
Besides, FCM provides three sets of tools to help you get insight into message delivery:
Firebase console message delivery reports (go to Firebase Console -> Messaging -> Reports)
Aggregated Android SDK delivery metrics from the Firebase Cloud Messaging Data API
Comprehensive data export to Google BigQuery
All these three tools can help you understand your message delivery, the following docs have a pretty good explanation about how to use them:
https://medium.com/firebase-developers/what-is-fcm-aggregated-delivery-data-d6d68396b83b
https://firebase.google.com/docs/cloud-messaging/understand-delivery?platform=android#count-data-messages-sent

Is it possible to get push notification stats like count of deliveries and opens when sending messages through Firebase notification API?

We are about to switch to Firebase notifiaction API from Parse.com (that are retiring their service in jan 2017) to send push notification to our android and iOS Apps.
My question now is that I can't see any statistics about counts of successful deliveries and opens in the Firebase Console for a specific message ? The only thing we get when posting to https://fcm.googleapis.com/fcm/send is a message_id
{"message_id":123456789}
But I havn't seen any documentation on a api how to follow up a sent message with this message_id. And the Firebase console has only the these kind of stats for messages created in the Console Gui, not the one create through an api post.
These stats was availible in Parse.com. But it seems as Firebase Cloud Messaging is a bit more low level, and perhaps these stats doesn't come out the box, so they might have to be custom made in a logging app etc by sending back events from the apps when messages as received and opened etc. Or is there a standardized way that I've missed when reading the Firebase Notification api docs ?
When you send notifications from the Firebase Notifications console, you get statistics about how many people received and opened the messages. But there is no API (yet) for Firebase Notifications.
If you're using the Firebase Cloud Messaging API (https://fcm.googleapis.com/fcm/send), the message statistics don't show up in the Firebase Notifications console. You can (as AL. says) get delivery statistics in the Google Play Developer Console in that case.
firebase allows you to view sent/delivered/opened statuses by default from their website
http://console.firebase.google.com
at the notification section
but I am not sure about the parse.com implementations
also if you are a new comer to firebase let it collect user data for about 24 hours after successfully migrating to firebase
I found that in the first day the notifications weren't really reporting immediately
I think you're looking for the FCM Diagnostics and Statistics feature.
However, this is not visible in the Firebase Console, only in your Google Play Developer Console. And the feature only works if your app is at least in Alpha Testing.

Maximum number of topics a device can subscribe to in FCM

Documentation for topic messages for FCM says the following two points
Just wanted to know what is this excessive number of topics? Any approximate value to it? Also, the documentation doesn't say anything about creation of topics. How to create/delete a topic?
Another question -
Document says it takes time to show the topic on firebase console, so, we can't send notifications unless the topic is visible on firebase console (even programmatically)?
Thanks in advance
For future questions, please limit yourself to a single question per post. But here are the answers that I know (or a fairly educated guess):
The limit on the number of topics a client can subscribe to is to counter abuse. It is not a documented value.
A topic is auto-created when a client subscribes to it.
There is no API to delete a topic. It will automatically disappears when nobody is subscribed to it anymore.
You can only send notifications from the console once the topic shows up. You can send notifications from your app server using the Firebase Cloud Messaging API at any moment.

Resources