Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/pages/docs/faq/push-faqs.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ If there are no errors, the notification was successfully sent to the push provi
|----------|-------------|-------|
| APNs | Ensure the environment in your `.entitlements` file matches the Ably dashboard settings. Debug applications use the sandbox/development `APNs` server. You must enable "Use `APNs` sandbox environment" in the Ably dashboard. Changing `aps-environment` to production in `.entitlements` does not force a debug app to use the production server. | Environment Mismatch |
| APNs | The bundle ID of the token or certificate uploaded to Ably does not match the bundle ID in your Xcode project. | `DeviceTokenNotForTopic` |
| APNs | The `APNs` configuration in Ably has an empty "Topic Header". This is automatically extracted from uploaded certificates but must be added manually if using token authentication. | no valid topic header for APNS |
| APNs | The `APNs` configuration in Ably has an empty "Topic Header". This is automatically extracted from uploaded certificates but must be added manually if using token authentication. | no valid topic header for APNs |
| FCM | The uploaded `JSON` file is not in the expected service account key format. | `FcmTransport` not configured |
| FCM | The Firebase Cloud Messaging API (V1) is not enabled in your Google Cloud project, or the service account lacks permissions (`cloudmessaging.messages.create` denied). | 403 Forbidden |
| FCM | The device is unregistered from `FCM` (app uninstalled) but remains registered in Ably. | 404 NOT_FOUND (UNREGISTERED) |
Expand Down
58 changes: 29 additions & 29 deletions src/pages/docs/metadata-stats/stats.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -564,20 +564,20 @@ Outbound message metrics include those messages that are sent outbound from Ably
| **messages.outbound.httpEvent.presence.uncompressedData** | Total uncompressed size of presence messages sent by a HTTP trigger. Typically serverless functions on a service such as AWS Lambda, Google Cloud Functions, or Azure Functions. This excludes delta compression. |
| **messages.outbound.httpEvent.presence.failed** | Total number of presence messages sent by a HTTP trigger that failed because they were rejected by the external endpoint for some reason. |
| **messages.outbound.httpEvent.presence.refused** | Total number of presence messages sent by a HTTP trigger that Ably refused to send. This is generally due to [rate limiting](/docs/platform/pricing/limits). |
| **messages.outbound.push.all.count** | Total count of push messages, sent to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.all.data** | Total size of push messages, sent to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.all.uncompressedData** | Total uncompressed push message size, excluding delta compression, pushed to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.all.failed** | Total number of push messages that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNS or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.all.count** | Total count of push messages, sent to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.all.data** | Total size of push messages, sent to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.all.uncompressedData** | Total uncompressed push message size, excluding delta compression, pushed to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.all.failed** | Total number of push messages that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNs or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.all.refused** | Total number of push messages that were refused by Ably. For example, due to [rate limiting](/docs/platform/pricing/limits). |
| **messages.outbound.push.messages.count** | Total push message count, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNS.|
| **messages.outbound.push.messages.data** | Total push message size, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.messages.uncompressedData** | Total uncompressed push message size, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.messages.failed** | Total number of push messages, excluding presence and object messages, that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNS or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.messages.count** | Total push message count, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNs.|
| **messages.outbound.push.messages.data** | Total push message size, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.messages.uncompressedData** | Total uncompressed push message size, excluding delta compression, and presence and object messages, pushed to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.messages.failed** | Total number of push messages, excluding presence and object messages, that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNs or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.messages.refused** | Total number of push messages, excluding presence and object messages, that were refused by Ably. For example due to [rate limiting](/docs/platform/pricing/limits). |
| **messages.outbound.push.presence.count** | Total push presence message count, sent to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.presence.data** | Total push presence message size, sent to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.presence.uncompressedData** | Total uncompressed push presence message size, excluding delta compression, sent to devices via a push notifications transport such as FCM or APNS. |
| **messages.outbound.push.presence.failed** | Total number of push presence messages that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNS or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.presence.count** | Total push presence message count, sent to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.presence.data** | Total push presence message size, sent to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.presence.uncompressedData** | Total uncompressed push presence message size, excluding delta compression, sent to devices via a push notifications transport such as FCM or APNs. |
| **messages.outbound.push.presence.failed** | Total number of push presence messages that failed. These are messages which did not succeed for some reason other than Ably explicitly refusing them, such as rejection by APNs or FCM, or a service issue on Ably's side. |
| **messages.outbound.push.presence.refused** | Total number of push presence messages that were refused by Ably. For example due to [rate limiting](/docs/platform/pricing/limits). |
| **messages.outbound.all.all.count** | Total outbound message count, sent from Ably to clients. |
| **messages.outbound.all.all.billableCount** | Total billable outbound message count, sent from Ably to clients. |
Expand Down Expand Up @@ -669,41 +669,41 @@ API request metrics include all HTTP requests made to Ably, including those rela

### Push notifications <a id="push"/>

Push notification metrics include all [notifications](/docs/push) sent to devices via one of the push transports such as APNS, FCM or web.
Push notification metrics include all [notifications](/docs/push) sent to devices via one of the push transports such as APNs, FCM or web.

| Metric | Description |
| --- | --- |
| **push.channelMessages** | Total number of channel messages published over Ably that contained a `push` payload. Each of these may have triggered notifications to be sent to a device with a matching registered push subscription. |
| **push.notifications.delivered.fcm** | Total number of push notifications successfully delivered over the FCM transport. |
| **push.notifications.delivered.gcm** | Total number of push notifications successfully delivered over the GCM transport. |
| **push.notifications.delivered.apns** | Total number of push notifications successfully delivered over the APNS transport. |
| **push.notifications.delivered.apnsLocation** | Total number of APNS location push notifications successfully delivered. |
| **push.notifications.delivered.apnsAlert** | Total number of APNS alert push notifications successfully delivered. |
| **push.notifications.delivered.apns** | Total number of push notifications successfully delivered over the APNs transport. |
| **push.notifications.delivered.apnsLocation** | Total number of APNs location push notifications successfully delivered. |
| **push.notifications.delivered.apnsAlert** | Total number of APNs alert push notifications successfully delivered. |
| **push.notifications.delivered.web** | Total number of push notifications successfully delivered over the web transport. |
| **push.notifications.delivered.total** | Total number of push notifications successfully delivered over any transport. |
| **push.notifications.refused.retriable.fcm** | Total number of push notifications that Ably attempted to deliver to FCM but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.gcm** | Total number of push notifications that Ably attempted to deliver to GCM but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apns** | Total number of push notifications that Ably attempted to deliver to APNS but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apnsLocation** | Total number of APNS location push notifications that Ably attempted to deliver but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apnsAlert** | Total number of APNS alert push notifications that Ably attempted to deliver but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apns** | Total number of push notifications that Ably attempted to deliver to APNs but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apnsLocation** | Total number of APNs location push notifications that Ably attempted to deliver but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.apnsAlert** | Total number of APNs alert push notifications that Ably attempted to deliver but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.web** | Total number of push notifications that Ably attempted to deliver over a web push transport but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.retriable.total** | Total number of push notifications that Ably attempted to deliver but were refused with a retriable error. Ably will attempt to retry these. |
| **push.notifications.refused.final.fcm** | Total number of push notifications that Ably attempted to deliver to FCM but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.gcm** | Total number of push notifications that Ably attempted to deliver to GCM but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apns** | Total number of push notifications that Ably attempted to deliver to APNS but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apnsLocation** | Total number of APNS location push notifications that Ably attempted to deliver but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apnsAlert** | Total number of APNS alert push notifications that Ably attempted to deliver but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apns** | Total number of push notifications that Ably attempted to deliver to APNs but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apnsLocation** | Total number of APNs location push notifications that Ably attempted to deliver but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.apnsAlert** | Total number of APNs alert push notifications that Ably attempted to deliver but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.web** | Total number of push notifications that Ably attempted to deliver over a web push transport but were refused with an error that wasn't retriable. |
| **push.notifications.refused.final.total** | Total number of push notifications that Ably attempted to deliver but were refused with an error that wasn't retriable. |
| **push.notifications.skipped.apns** | Total number of push notifications that Ably did not attempt to deliver to APNS. For example, APNS location push notifications sent over a channel to subscribing devices without location tokens. |
| **push.notifications.skipped.apnsLocation** | Total number of APNS location push notifications that Ably did not attempt to deliver. For example, when a location push notification is sent to a device that doesn't have a location token registered. |
| **push.notifications.skipped.apnsAlert** | Total number of APNS alert push notifications that Ably did not attempt to deliver. For example, when an alert push notification is sent to a device that doesn't have an alert token registered. |
| **push.notifications.skipped.total** | Total number of push notifications that Ably did not attempt to deliver. For example, an APNS location push notification sent over a channel to subscribing devices without location tokens. |
| **push.notifications.skipped.apns** | Total number of push notifications that Ably did not attempt to deliver to APNs. For example, APNs location push notifications sent over a channel to subscribing devices without location tokens. |
| **push.notifications.skipped.apnsLocation** | Total number of APNs location push notifications that Ably did not attempt to deliver. For example, when a location push notification is sent to a device that doesn't have a location token registered. |
| **push.notifications.skipped.apnsAlert** | Total number of APNs alert push notifications that Ably did not attempt to deliver. For example, when an alert push notification is sent to a device that doesn't have an alert token registered. |
| **push.notifications.skipped.total** | Total number of push notifications that Ably did not attempt to deliver. For example, an APNs location push notification sent over a channel to subscribing devices without location tokens. |
| **push.notifications.all.fcm** | Total number of attempts to deliver push notifications over the FCM transport, irrespective of whether they were successful, or not. |
| **push.notifications.all.gcm** | Total number of attempts to deliver push notifications over the GCM transport, irrespective of whether they were successful, or not. |
| **push.notifications.all.apns** | Total number of attempts to deliver push notifications over the APNS transport, irrespective of whether they were successful, or not. |
| **push.notifications.all.apnsLocation** | Total number of attempts to deliver APNS location push notifications, irrespective of whether they were successful, or not. |
| **push.notifications.all.apnsAlert** | Total number of attempts to deliver APNS alert push notifications, irrespective of whether they were successful, or not. |
| **push.notifications.all.apns** | Total number of attempts to deliver push notifications over the APNs transport, irrespective of whether they were successful, or not. |
| **push.notifications.all.apnsLocation** | Total number of attempts to deliver APNs location push notifications, irrespective of whether they were successful, or not. |
| **push.notifications.all.apnsAlert** | Total number of attempts to deliver APNs alert push notifications, irrespective of whether they were successful, or not. |
| **push.notifications.all.web** | Total number of attempts to deliver push notifications over the web transport, irrespective of whether they were successful, or not. |
| **push.notifications.all.total** | Total number of attempts to deliver push notifications over any transport, irrespective of whether they were successful, or not. |
| **push.directPublishes** | Total number of direct push publishes. These are notifications triggered by a request to `/push/publish`, not a message sent on a channel that contains a `push` payload. |
Expand Down
2 changes: 1 addition & 1 deletion src/pages/docs/platform/account/app/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ View, monitor, and adjust Ably [queues:](/docs/platform/account/app/queues)

Manage [notifications](/docs/platform/account/app/notifications) using Ably. Create, test, and send notifications to specific devices or channels, and enure everything works correctly.

* Configure push notifications for devices using FCM for Android or APNS for iOS.
* Configure push notifications for devices using FCM for Android or APNs for iOS.
* Use the push inspector tool to test and debug notifications by sending them manually and reviewing device, client, and channel registrations.
* Use the push inspector widget below to browse and inspect channel subscriptions, device and client registrations.

Expand Down
4 changes: 2 additions & 2 deletions src/pages/docs/platform/account/app/notifications.mdx
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
---
title: Notifications
meta_description: Configure credentials for integrating Ably's push notification services with third-party services, send push notifications from the Ably dashboard, and inspect push notifications .”
meta_keywords: “Ably push notifications, configure FCM, configure APNS, Web Push setup, push inspector"
meta_keywords: “Ably push notifications, configure FCM, configure APNs, Web Push setup, push inspector"
redirect_from:
- /docs/account/app/notifications
---

Before you can start using Ably's [push notification](/docs/push) services, you must configure the credentials for the third-party services you wish to integrate, such as FCM for Android devices, APNS for iOS devices, or Web Push for web browsers.
Before you can start using Ably's [push notification](/docs/push) services, you must configure the credentials for the third-party services you wish to integrate, such as FCM for Android devices, APNs for iOS devices, or Web Push for web browsers.

### Configure FCM for Android devices <a id="configure-FCM"/>

Expand Down