REST Resource: projects.messages

Ressource : Message

Message à envoyer par Firebase Cloud Messaging Service.

Représentation JSON
{
  "name": string,
  "data": {
    string: string,
    ...
  },
  "notification": {
    object (Notification)
  },
  "android": {
    object (AndroidConfig)
  },
  "webpush": {
    object (WebpushConfig)
  },
  "apns": {
    object (ApnsConfig)
  },
  "fcm_options": {
    object (FcmOptions)
  },

  // Union field target can be only one of the following:
  "token": string,
  "topic": string,
  "condition": string
  // End of list of possible types for union field target.
}
Des champs
name

string

Sortie uniquement. L'identifiant du message envoyé, au projects/*/messages/{message_id} .

data

map (key: string, value: string)

Entrée uniquement. Charge utile clé/valeur arbitraire, qui doit être codée en UTF-8. La clé ne doit pas être un mot réservé ("from", "message_type" ou tout mot commençant par "google" ou "gcm"). Lors de l'envoi de charges utiles contenant uniquement des champs de données vers des appareils iOS, seule la priorité normale ( "apns-priority": "5" ) est autorisée dans ApnsConfig .

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( Notification )

Entrée uniquement. Modèle de notification de base à utiliser sur toutes les plateformes.

android

object ( AndroidConfig )

Entrée uniquement. Options spécifiques à Android pour les messages envoyés via le serveur de connexion FCM .

webpush

object ( WebpushConfig )

Entrée uniquement. Options du protocole Webpush .

apns

object ( ApnsConfig )

Entrée uniquement. Options spécifiques au service de notification push Apple .

fcm_options

object ( FcmOptions )

Entrée uniquement. Modèle pour les options de fonctionnalités du SDK FCM à utiliser sur toutes les plateformes.

target de terrain de l'Union. Requis. Entrée uniquement. Cible à laquelle envoyer un message. target ne peut être qu’un des éléments suivants :
token

string

Jeton d'inscription à qui envoyer un message.

topic

string

Nom du sujet auquel envoyer un message, par exemple "météo". Remarque : le préfixe "/topics/" ne doit pas être fourni.

condition

string

Condition à laquelle envoyer un message, par exemple "'foo' dans les sujets && 'bar' dans les sujets".

Notification

Modèle de notification de base à utiliser sur toutes les plateformes.

Représentation JSON
{
  "title": string,
  "body": string,
  "image": string
}
Des champs
title

string

Le titre de la notification.

body

string

Le corps du texte de la notification.

image

string

Contient l'URL d'une image qui va être téléchargée sur l'appareil et affichée dans une notification. JPEG, PNG et BMP sont entièrement pris en charge sur toutes les plates-formes. Les GIF animés et les vidéos ne fonctionnent que sur iOS. WebP et HEIF ont différents niveaux de prise en charge selon les plates-formes et les versions de plate-forme. Android a une limite de taille d’image de 1 Mo. Utilisation du quota et implications/coûts pour l'hébergement de l'image sur Firebase Storage : https://firebase.google.com/pricing

AndroidConfig

Options spécifiques à Android pour les messages envoyés via le serveur de connexion FCM .

Représentation JSON
{
  "collapse_key": string,
  "priority": enum (AndroidMessagePriority),
  "ttl": string,
  "restricted_package_name": string,
  "data": {
    string: string,
    ...
  },
  "notification": {
    object (AndroidNotification)
  },
  "fcm_options": {
    object (AndroidFcmOptions)
  },
  "direct_boot_ok": boolean
}
Des champs
collapse_key

string

Identificateur d'un groupe de messages qui peut être réduit, de sorte que seul le dernier message soit envoyé lorsque la livraison peut reprendre. Un maximum de 4 clés de réduction différentes est autorisé à un moment donné.

priority

enum ( AndroidMessagePriority )

Priorité des messages. Peut prendre des valeurs « normales » et « élevées ». Pour plus d'informations, voir Définir la priorité d'un message .

ttl

string ( Duration format)

Combien de temps (en secondes) le message doit être conservé dans le stockage FCM si l'appareil est hors ligne. La durée maximale de vie prise en charge est de 4 semaines et la valeur par défaut est de 4 semaines si elle n'est pas définie. Réglez-le sur 0 si vous souhaitez envoyer le message immédiatement. Au format JSON, le type Duration est codé sous forme de chaîne plutôt que d'objet, où la chaîne se termine par le suffixe « s » (indiquant les secondes) et est précédée du nombre de secondes, les nanosecondes étant exprimées en fractions de seconde. Par exemple, 3 secondes avec 0 nanoseconde doivent être codées au format JSON sous la forme « 3s », tandis que 3 secondes et 1 nanoseconde doivent être exprimées au format JSON sous la forme « 3.000000001s ». Le ttl sera arrondi à la seconde inférieure.

Une durée en secondes avec jusqu'à neuf chiffres fractionnaires, se terminant par « s ». Exemple : "3.5s" .

restricted_package_name

string

Nom du package de l’application où le jeton d’enregistrement doit correspondre pour recevoir le message.

data

map (key: string, value: string)

Charge utile clé/valeur arbitraire. S'il est présent, il remplacera google.firebase.fcm.v1.Message.data .

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( AndroidNotification )

Notification à envoyer aux appareils Android.

fcm_options

object ( AndroidFcmOptions )

Options pour les fonctionnalités fournies par le SDK FCM pour Android.

direct_boot_ok

boolean

S'il est défini sur true, les messages pourront être transmis à l'application lorsque l'appareil est en mode de démarrage direct. Voir Prise en charge du mode de démarrage direct .

AndroidMessagePriorité

Priorité d'un message à envoyer aux appareils Android. Notez que cette priorité est un concept FCM qui contrôle le moment où le message est remis. Voir les guides FCM . De plus, vous pouvez déterminer la priorité d'affichage des notifications sur les appareils Android ciblés à l'aide de AndroidNotification.NotificationPriority .

Énumérations
NORMAL Priorité par défaut pour les messages de données. Les messages de priorité normale n'ouvriront pas les connexions réseau sur un appareil en veille et leur livraison peut être retardée pour économiser la batterie. Pour les messages moins urgents, tels que les notifications de nouveaux e-mails ou d'autres données à synchroniser, choisissez la priorité de livraison normale.
HIGH Priorité par défaut pour les messages de notification. FCM tente de transmettre immédiatement des messages hautement prioritaires, permettant au service FCM de réveiller un appareil en veille lorsque cela est possible et d'ouvrir une connexion réseau à votre serveur d'applications. Les applications proposant des alertes de messagerie instantanée, de chat ou d'appel vocal, par exemple, doivent généralement ouvrir une connexion réseau et s'assurer que FCM transmet le message à l'appareil sans délai. Définissez une priorité élevée si le message est urgent et nécessite une interaction immédiate de l'utilisateur, mais sachez que définir une priorité élevée pour vos messages contribue davantage à l'épuisement de la batterie par rapport aux messages de priorité normale.

AndroidNotification

Notification à envoyer aux appareils Android.

Représentation JSON
{
  "title": string,
  "body": string,
  "icon": string,
  "color": string,
  "sound": string,
  "tag": string,
  "click_action": string,
  "body_loc_key": string,
  "body_loc_args": [
    string
  ],
  "title_loc_key": string,
  "title_loc_args": [
    string
  ],
  "channel_id": string,
  "ticker": string,
  "sticky": boolean,
  "event_time": string,
  "local_only": boolean,
  "notification_priority": enum (NotificationPriority),
  "default_sound": boolean,
  "default_vibrate_timings": boolean,
  "default_light_settings": boolean,
  "vibrate_timings": [
    string
  ],
  "visibility": enum (Visibility),
  "notification_count": integer,
  "light_settings": {
    object (LightSettings)
  },
  "image": string,
}
Des champs
title

string

Le titre de la notification. S'il est présent, il remplacera google.firebase.fcm.v1.Notification.title .

body

string

Le corps du texte de la notification. S'il est présent, il remplacera google.firebase.fcm.v1.Notification.body .

icon

string

L'icône de la notification. Définit l'icône de notification sur myicon pour la ressource pouvant être dessinée myicon. Si vous n'envoyez pas cette clé dans la demande, FCM affiche l'icône du lanceur spécifiée dans le manifeste de votre application.

color

string

La couleur de l'icône de la notification, exprimée au format #rrggbb.

sound

string

Le son à jouer lorsque l'appareil reçoit la notification. Prend en charge « par défaut » ou le nom de fichier d'une ressource sonore fournie dans l'application. Les fichiers son doivent résider dans /res/raw/.

tag

string

Identifiant utilisé pour remplacer les notifications existantes dans le tiroir de notifications. Si non spécifié, chaque demande crée une nouvelle notification. Si cela est spécifié et qu'une notification avec la même balise est déjà affichée, la nouvelle notification remplace celle existante dans le tiroir de notification.

click_action

string

L'action associée à un utilisateur clique sur la notification. Si spécifié, une activité avec un filtre d'intention correspondant est lancée lorsqu'un utilisateur clique sur la notification.

body_loc_key

string

Clé de la chaîne de corps dans les ressources de chaîne de l'application à utiliser pour localiser le corps du texte selon la localisation actuelle de l'utilisateur. Voir Ressources de chaînes pour plus d'informations.

body_loc_args[]

string

Valeurs de chaîne variable à utiliser à la place des spécificateurs de format dans body_loc_key à utiliser pour localiser le corps du texte selon la localisation actuelle de l'utilisateur. Voir Formatage et style pour plus d’informations.

title_loc_key

string

Clé de la chaîne de titre dans les ressources de chaîne de l'application à utiliser pour localiser le texte du titre dans la localisation actuelle de l'utilisateur. Voir Ressources de chaînes pour plus d'informations.

title_loc_args[]

string

Valeurs de chaîne variable à utiliser à la place des spécificateurs de format dans title_loc_key à utiliser pour localiser le texte du titre dans la localisation actuelle de l'utilisateur. Voir Formatage et style pour plus d’informations.

channel_id

string

L' identifiant du canal de notification (nouveau dans Android O). L'application doit créer une chaîne avec cet ID de chaîne avant de recevoir toute notification avec cet ID de chaîne. Si vous n'envoyez pas cet ID de canal dans la demande, ou si l'ID de canal fourni n'a pas encore été créé par l'application, FCM utilise l'ID de canal spécifié dans le manifeste de l'application.

ticker

string

Définit le texte du « ticker » qui est envoyé aux services d'accessibilité. Avant le niveau d'API 21 ( Lollipop ), définit le texte affiché dans la barre d'état lorsque la notification arrive pour la première fois.

sticky

boolean

Lorsqu'elle est définie sur false ou non définie, la notification est automatiquement ignorée lorsque l'utilisateur clique dessus dans le panneau. Lorsqu'elle est définie sur true, la notification persiste même lorsque l'utilisateur clique dessus.

event_time

string ( Timestamp format)

Définissez l'heure à laquelle l'événement dans la notification s'est produit. Les notifications dans le panneau sont triées selon cette heure. Un moment précis est représenté à l’aide de protobuf.Timestamp .

Un horodatage au format RFC3339 UTC "Zulu", avec une résolution en nanosecondes et jusqu'à neuf chiffres fractionnaires. Exemples : "2014-10-02T15:01:23Z" et "2014-10-02T15:01:23.045123456Z" .

local_only

boolean

Définissez si cette notification concerne uniquement l'appareil actuel. Certaines notifications peuvent être reliées à d'autres appareils pour un affichage à distance, comme une montre Wear OS. Cet indice peut être défini pour recommander que cette notification ne soit pas pontée. Consultez les guides Wear OS

notification_priority

enum ( NotificationPriority )

Définissez la priorité relative de cette notification. La priorité est une indication de la part d’attention de l’utilisateur qui doit être absorbée par cette notification. Les notifications de faible priorité peuvent être masquées à l'utilisateur dans certaines situations, tandis que l'utilisateur peut être interrompu pour une notification de priorité plus élevée. L’effet de la définition des mêmes priorités peut différer légèrement selon les plates-formes. Notez que cette priorité diffère de AndroidMessagePriority . Cette priorité est traitée par le client après la remise du message, alors qu'AndroidMessagePriority est un concept FCM qui contrôle le moment où le message est remis.

default_sound

boolean

S'il est défini sur true, utilisez le son par défaut du framework Android pour la notification. Les valeurs par défaut sont spécifiées dans config.xml .

default_vibrate_timings

boolean

S'il est défini sur true, utilisez le modèle de vibration par défaut du framework Android pour la notification. Les valeurs par défaut sont spécifiées dans config.xml . Si default_vibrate_timings est défini sur true et vibrate_timings est également défini, la valeur par défaut est utilisée à la place de vibrate_timings spécifié par l'utilisateur.

default_light_settings

boolean

S'il est défini sur true, utilisez les paramètres d'éclairage LED par défaut du framework Android pour la notification. Les valeurs par défaut sont spécifiées dans config.xml . Si default_light_settings est défini sur true et light_settings est également défini, le light_settings spécifié par l'utilisateur est utilisé à la place de la valeur par défaut.

vibrate_timings[]

string ( Duration format)

Définissez le modèle de vibration à utiliser. Passez un tableau de protobuf.Duration pour allumer ou éteindre le vibrateur. La première valeur indique la Duration à attendre avant d'allumer le vibreur. La valeur suivante indique la Duration pendant laquelle le vibrateur reste allumé. Les valeurs suivantes alternent entre Duration pour éteindre le vibrateur et pour allumer le vibrateur. Si vibrate_timings est défini et default_vibrate_timings est défini sur true , la valeur par défaut est utilisée à la place de vibrate_timings spécifié par l'utilisateur.

Une durée en secondes avec jusqu'à neuf chiffres fractionnaires, se terminant par « s ». Exemple : "3.5s" .

visibility

enum ( Visibility )

Définissez la notification.visibilité de la notification.

notification_count

integer

Définit le nombre d’éléments représentés par cette notification. Peut être affiché sous forme de nombre de badges pour les lanceurs prenant en charge les badges. Voir Badge de notification . Par exemple, cela peut être utile si vous utilisez une seule notification pour représenter plusieurs nouveaux messages mais que vous souhaitez que le nombre ici représente le nombre total de nouveaux messages. S'il est nul ou non spécifié, les systèmes prenant en charge les badges utilisent la valeur par défaut, qui consiste à incrémenter un nombre affiché dans le menu enfoncé à chaque fois qu'une nouvelle notification arrive.

light_settings

object ( LightSettings )

Paramètres permettant de contrôler le taux de clignotement et la couleur de la LED de notification si la LED est disponible sur l'appareil. Le temps de clignotement total est contrôlé par le système d'exploitation.

image

string

Contient l'URL d'une image qui va être affichée dans une notification. S'il est présent, il remplacera google.firebase.fcm.v1.Notification.image .

Priorité de notification

Niveaux de priorité d'une notification.

Énumérations
PRIORITY_UNSPECIFIED Si la priorité n'est pas spécifiée, la priorité de notification est définie sur PRIORITY_DEFAULT .
PRIORITY_MIN Priorité de notification la plus basse. Les notifications avec cette PRIORITY_MIN peuvent ne pas être affichées à l'utilisateur, sauf dans des circonstances particulières, telles que des journaux de notification détaillés.
PRIORITY_LOW Priorité de notification inférieure. L'interface utilisateur peut choisir d'afficher les notifications plus petites ou à une position différente dans la liste, par rapport aux notifications avec PRIORITY_DEFAULT .
PRIORITY_DEFAULT Priorité de notification par défaut. Si l'application ne donne pas la priorité à ses propres notifications, utilisez cette valeur pour toutes les notifications.
PRIORITY_HIGH Priorité de notification plus élevée. Utilisez-le pour les notifications ou alertes plus importantes. L'interface utilisateur peut choisir d'afficher ces notifications plus grandes ou à une position différente dans les listes de notifications, par rapport aux notifications avec PRIORITY_DEFAULT .
PRIORITY_MAX Priorité de notification la plus élevée. Utilisez-le pour les éléments les plus importants de l'application qui nécessitent une attention ou une saisie rapide de l'utilisateur.

Visibilité

Différents niveaux de visibilité d'une notification.

Énumérations
VISIBILITY_UNSPECIFIED Si non spécifié, la valeur par défaut est Visibility.PRIVATE .
PRIVATE Affichez cette notification sur tous les écrans de verrouillage, mais masquez les informations sensibles ou privées sur les écrans de verrouillage sécurisés.
PUBLIC Afficher cette notification dans son intégralité sur tous les écrans de verrouillage.
SECRET Ne révélez aucune partie de cette notification sur un écran de verrouillage sécurisé.

Paramètres d'éclairage

Paramètres pour contrôler le voyant de notification.

Représentation JSON
{
  "color": {
    object (Color)
  },
  "light_on_duration": string,
  "light_off_duration": string
}
Des champs
color

object ( Color )

Requis. Définissez color de la LED avec google.type.Color .

light_on_duration

string ( Duration format)

Requis. Avec light_off_duration , définissez la fréquence de clignotement des flashs LED. Résolution définie par proto.Duration

Une durée en secondes avec jusqu'à neuf chiffres fractionnaires, se terminant par « s ». Exemple : "3.5s" .

light_off_duration

string ( Duration format)

Requis. Avec light_on_duration , définissez la fréquence de clignotement des flashs LED. Résolution définie par proto.Duration

Une durée en secondes avec jusqu'à neuf chiffres fractionnaires, se terminant par « s ». Exemple : "3.5s" .

Couleur

Représente une couleur dans l’espace colorimétrique RGBA. Cette représentation est conçue pour simplifier la conversion vers/depuis les représentations de couleurs dans différentes langues tout en étant compacte. Par exemple, les champs de cette représentation peuvent être fournis de manière triviale au constructeur de java.awt.Color en Java ; il peut également être fourni de manière triviale à la méthode +colorWithRed:green:blue:alpha UIColor dans iOS ; et, avec juste un peu de travail, il peut être facilement formaté en une chaîne CSS rgba() en JavaScript.

Cette page de référence ne contient pas d'informations sur l'espace colorimétrique absolu qui doit être utilisé pour interpréter la valeur RVB (par exemple sRGB, Adobe RGB, DCI-P3, BT.2020, etc.). Par défaut, les applications doivent adopter l'espace colorimétrique sRGB.

Lorsque l'égalité des couleurs doit être décidée, les implémentations, sauf indication contraire, traitent deux couleurs comme égales si toutes leurs valeurs rouge, vert, bleu et alpha diffèrent chacune d'au plus 1e-5.

Exemple (Java) :

 import com.google.type.Color;

 // ...
 public static java.awt.Color fromProto(Color protocolor) {
   float alpha = protocolor.hasAlpha()
       ? protocolor.getAlpha().getValue()
       : 1.0;

   return new java.awt.Color(
       protocolor.getRed(),
       protocolor.getGreen(),
       protocolor.getBlue(),
       alpha);
 }

 public static Color toProto(java.awt.Color color) {
   float red = (float) color.getRed();
   float green = (float) color.getGreen();
   float blue = (float) color.getBlue();
   float denominator = 255.0;
   Color.Builder resultBuilder =
       Color
           .newBuilder()
           .setRed(red / denominator)
           .setGreen(green / denominator)
           .setBlue(blue / denominator);
   int alpha = color.getAlpha();
   if (alpha != 255) {
     result.setAlpha(
         FloatValue
             .newBuilder()
             .setValue(((float) alpha) / denominator)
             .build());
   }
   return resultBuilder.build();
 }
 // ...

Exemple (iOS/Obj-C) :

 // ...
 static UIColor* fromProto(Color* protocolor) {
    float red = [protocolor red];
    float green = [protocolor green];
    float blue = [protocolor blue];
    FloatValue* alpha_wrapper = [protocolor alpha];
    float alpha = 1.0;
    if (alpha_wrapper != nil) {
      alpha = [alpha_wrapper value];
    }
    return [UIColor colorWithRed:red green:green blue:blue alpha:alpha];
 }

 static Color* toProto(UIColor* color) {
     CGFloat red, green, blue, alpha;
     if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) {
       return nil;
     }
     Color* result = [[Color alloc] init];
     [result setRed:red];
     [result setGreen:green];
     [result setBlue:blue];
     if (alpha <= 0.9999) {
       [result setAlpha:floatWrapperWithValue(alpha)];
     }
     [result autorelease];
     return result;
}
// ...

Exemple (JavaScript) :

// ...

var protoToCssColor = function(rgb_color) {
   var redFrac = rgb_color.red || 0.0;
   var greenFrac = rgb_color.green || 0.0;
   var blueFrac = rgb_color.blue || 0.0;
   var red = Math.floor(redFrac * 255);
   var green = Math.floor(greenFrac * 255);
   var blue = Math.floor(blueFrac * 255);

   if (!('alpha' in rgb_color)) {
      return rgbToCssColor(red, green, blue);
   }

   var alphaFrac = rgb_color.alpha.value || 0.0;
   var rgbParams = [red, green, blue].join(',');
   return ['rgba(', rgbParams, ',', alphaFrac, ')'].join('');
};

var rgbToCssColor = function(red, green, blue) {
  var rgbNumber = new Number((red << 16) | (green << 8) | blue);
  var hexString = rgbNumber.toString(16);
  var missingZeros = 6 - hexString.length;
  var resultBuilder = ['#'];
  for (var i = 0; i < missingZeros; i++) {
     resultBuilder.push('0');
  }
  resultBuilder.push(hexString);
  return resultBuilder.join('');
};

// ...
Représentation JSON
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
Des champs
red

number

La quantité de rouge dans la couleur sous forme de valeur dans l'intervalle [0, 1].

green

number

La quantité de vert dans la couleur sous forme de valeur dans l'intervalle [0, 1].

blue

number

La quantité de bleu dans la couleur sous forme de valeur dans l'intervalle [0, 1].

alpha

number

La fraction de cette couleur qui doit être appliquée au pixel. Autrement dit, la couleur finale du pixel est définie par l'équation :

pixel color = alpha * (this color) + (1.0 - alpha) * (background color)

Cela signifie qu'une valeur de 1,0 correspond à une couleur unie, tandis qu'une valeur de 0,0 correspond à une couleur complètement transparente. Cela utilise un message wrapper plutôt qu'un simple scalaire flottant afin qu'il soit possible de faire la distinction entre une valeur par défaut et la valeur non définie. S'il est omis, cet objet de couleur est rendu sous forme de couleur unie (comme si la valeur alpha avait reçu explicitement une valeur de 1,0).

AndroidFcmOptions

Options pour les fonctionnalités fournies par le SDK FCM pour Android.

Représentation JSON
{
  "analytics_label": string
}
Des champs
analytics_label

string

Libellé associé aux données d'analyse du message.

WebpushConfig

Options du protocole Webpush .

Représentation JSON
{
  "headers": {
    string: string,
    ...
  },
  "data": {
    string: string,
    ...
  },
  "notification": {
    object
  },
  "fcm_options": {
    object (WebpushFcmOptions)
  }
}
Des champs
headers

map (key: string, value: string)

En-têtes HTTP définis dans le protocole webpush. Reportez-vous au protocole Webpush pour les en-têtes pris en charge, par exemple "TTL": "15".

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

data

map (key: string, value: string)

Charge utile clé/valeur arbitraire. S'il est présent, il remplacera google.firebase.fcm.v1.Message.data .

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( Struct format)

Options de notification Web en tant qu'objet JSON. Prend en charge les propriétés de l'instance de notification telles que définies dans l'API de notification Web . S'ils sont présents, les champs "title" et "body" remplacent google.firebase.fcm.v1.Notification.title et google.firebase.fcm.v1.Notification.body .

fcm_options

object ( WebpushFcmOptions )

Options pour les fonctionnalités fournies par le SDK FCM pour le Web.

WebpushFcmOptions

Options pour les fonctionnalités fournies par le SDK FCM pour le Web.

Représentation JSON
{
  "link": string,
  "analytics_label": string
}
Des champs
analytics_label

string

Libellé associé aux données d'analyse du message.

ApnsConfig

Options spécifiques au service de notification push Apple .

Représentation JSON
{
  "headers": {
    string: string,
    ...
  },
  "payload": {
    object
  },
  "fcm_options": {
    object (ApnsFcmOptions)
  }
}
Des champs
headers

map (key: string, value: string)

En-têtes de requête HTTP définis dans Apple Push Notification Service. Reportez-vous aux en-têtes de requête APN pour connaître les en-têtes pris en charge tels que apns-expiration et apns-priority .

Le backend définit une valeur par défaut pour apns-expiration de 30 jours et une valeur par défaut pour apns-priority de 10 si elle n'est pas explicitement définie.

Un objet contenant une liste de paires "key": value . Exemple : { "name": "wrench", "mass": "1.3kg", "count": "3" } .

payload

object ( Struct format)

Charge utile APN en tant qu'objet JSON, comprenant à la fois le dictionnaire aps et la charge utile personnalisée. Voir Référence de clé de charge utile . S'il est présent, il remplace google.firebase.fcm.v1.Notification.title et google.firebase.fcm.v1.Notification.body .

fcm_options

object ( ApnsFcmOptions )

Options pour les fonctionnalités fournies par le SDK FCM pour iOS.

ApnsFcmOptions

Options pour les fonctionnalités fournies par le SDK FCM pour iOS.

Représentation JSON
{
  "analytics_label": string,
  "image": string
}
Des champs
analytics_label

string

Libellé associé aux données d'analyse du message.

image

string

Contient l'URL d'une image qui va être affichée dans une notification. S'il est présent, il remplacera google.firebase.fcm.v1.Notification.image .

OptionsFcm

Options indépendantes de la plate-forme pour les fonctionnalités fournies par les SDK FCM.

Représentation JSON
{
  "analytics_label": string
}
Des champs
analytics_label

string

Libellé associé aux données d'analyse du message.

Méthodes

send

Envoyez un message à la cible spécifiée (un jeton d'enregistrement, un sujet ou une condition).