Description: Using this extension you can receive Push Notifications with Firebase Cloud Messaging (FCM) latest SDK (24.0.0). Latest Version: 2 Released: October 30, 2023 Last Updated: June 18, 2024 Aix size: 480 kB
2. Blocks
3. Docs
GotPermissionResult
Event raised after user grants/denies Notification permission isGranted | boolean
MessageReceived
Event raised when message is received. No notification is shown for messages. data | dictionary
NotificationReceived
Event raised when notification is received while app is in foreground. A notification is shown to user in system tray. id | text title | text body | text data | dictionary
SubscribeSuccessful
E ivent raised if subscribe was successful topic | text
UnsubscribeSuccessful
Event raised if unsubscribe was successful topic | text
ErrorOccurred
Event raised whenever an error occurrs. Most of the methods raise this event in case of error. method | text errorMsg | text
GotToken
Event raised after getting FCM token token | text
GotData
Event raised when current screen has been opened by clicking notification. This event is raised automatically. data | dictionary
AskNotificationPermission
Asks notification permission which is required on Android 13 and above
IsPermissionGranted
Return whether user has granted Notification permission or not
ClearNotification
Clear notification from system tray id | number
Init
Initialize Firebase Messaging Client with provided credentials. You need to call this method only once and then extension will auto init client itself. projectId | text apiKey | text appId | text senderId | text
IsInitialized
Returns whether FCM has been initialized or not
Subscribe
Subscribe to given topic to receive notifications topic | text
RegisterForNotifClick
Registers screen which will be opened when user clicks on notification which is shown while app is in foreground. Notifications which are shown when app is not opened, will always open Screen1. screen | text startValue | text
RetrieveData
Retrieves content of notification which opened/resumed current screen.Response is Dictionary.
RetrieveBgMessages
Retrieve dictionary of messages which were received when app was not running.
ClearBgMessages
Clear stored background messages.
Unsubscribe
Unsubscribe from the given topic topic | text
GetToken
Gets user’s FCM token which can be used to send individual notifications
Importance
Sets importance of notification channel Property Type : write-only Accepts : text
SmallIcon
Sets small icon shown in notification. If not specified then app’s icon is shown. Property Type : write-only Accepts : text
4. Usages
First initialize FCM Client. You need to call Init method once and next time it would be auto initialized.
Ask for notification permission
Required on Android 13 and above
Now subscribe to a topic
If subscription was successful then you can send a notification/message to users who have subscribed to topic
Use FcmSender extension for sending notifications and messages
User receives notifications and clicks on it There can be two scenarios here:-
App in foreground ie. being used by user Notification will open registered screen.
GotData even will be raised upon screen initialization if screen opened through notification.
You can obtain data from RetrieveData method also.
App not opened by user. Notification click will open registered screen (or Screen1 if not set) and GotData event will be raised. If no screen is registered then Screen where FCM extension has been initialized is automatically registered.
Retrieve all received messages
Old method
New method
5. Purchase the extension
Please include your email address in payment note or just contact me after payment to get aix and related files.
Added feature to store all messages in Tiny DB with tag as timestamp Set namespace to FCM_DATA to retrieve those messages
Fixed inconsistency in SendNotificationToTokens and SendMessageToTokens blocks
Some internal changes to make future improvements easier to adapt
ChangeLog Version 1.2
Removed SoundOn property
Custom Notification sound feature Beta tested by @Franklin_Lopez
To send a notification with custom sound, upload mp3 file to assets and send payload like this:
{\"notification\": {\"body\": \"this is a body\", \"default\": \"this is a title\", \"sound2\":\"default\",\"icon\":\"https://res.cloudinary.com/andromedaviewflyvipul/image/upload/c_scale,h_20,w_20/v1571472765/ktvu4bapylsvnykoyhdm.png\"},\n \"priority\": \"high\",\n \"data\": {\n \"click_action\": \"FCM_MESSAGE\",\n \"id\": \"1\",\n \"status\": \"done\"\n },\n \"to\": \"/topics/FCMTEST\""}
Value for sound2 key can be file name ( like test for test.mp3 ) or none for no sound or default for default notification sound. This key must be present in notification payload otherwise no sound will be played.
New Blocks You can retrieve messages which were received when app was not running. Returns Dictionary where timestamp is key and value is message content.
Behavior Changes i) Clicking fcm notification when app is in foreground will open registered screen (or Screen1 if not set), but previous instance of Screen will be created if that screen is already running instead will be resumed. ii) Now notifications received in background also use small icon. (Earlier app icon was shown)
Internal Changes *Important changes to adapt HTTP v1 Api for sending notifications
Aix size reduced to 468 kb
ChangeLog Version 2
Updated Fcm SDK version to 24.0.0
Removed Notification Sending blocks (Migrate to FcmSender extension)
Removed Notification Sound property
Fixed notification click issue when no Screen was registered for open
Resuming Screen from Notification Click also invokes GotData event