REST Resource: projects.messages

Kaynak: Mesaj

Firebase Bulut Mesajlaşma Hizmeti tarafından gönderilecek mesaj.

JSON gösterimi
{
  "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.
}
Alanlar
name

string

Yalnızca Çıkış. Gönderilen iletinin, projects/*/messages/{message_id} biçimindeki tanımlayıcısı.

data

map (key: string, value: string)

Yalnızca giriş yapın. UTF-8 olarak kodlanması gereken rastgele anahtar/değer yükü. Anahtar, ayrılmış bir kelime ("from", "message_type" veya "google" veya "gcm" ile başlayan herhangi bir kelime) olmamalıdır. Yalnızca veri alanlarını içeren yükleri iOS aygıtlarına gönderirken ApnsConfig yalnızca normal önceliğe ( "apns-priority": "5" ) izin verilir.

"key": value çiftleri. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( Notification )

Yalnızca giriş yapın. Tüm platformlarda kullanılacak temel bildirim şablonu.

android

object ( AndroidConfig )

Yalnızca giriş yapın. FCM bağlantı sunucusu aracılığıyla gönderilen mesajlar için Android'e özgü seçenekler.

webpush

object ( WebpushConfig )

Yalnızca giriş yapın. Webpush protokolü seçenekleri.

apns

object ( ApnsConfig )

Yalnızca giriş yapın. Apple Anında Bildirim Hizmeti'ne özgü seçenekler.

fcm_options

object ( FcmOptions )

Yalnızca giriş yapın. Tüm platformlarda kullanılacak FCM SDK özellik seçenekleri şablonu.

Birlik alanı target . Gerekli. Yalnızca giriş yapın. Mesaj gönderilecek hedef. target aşağıdakilerden yalnızca biri olabilir:
token

string

Mesaj göndermek için kayıt jetonu.

topic

string

Mesajın gönderileceği konunun adı, örneğin "hava durumu". Not: "/topics/" öneki verilmemelidir.

condition

string

Mesaj gönderme koşulu, örneğin "konularda 'foo' && konularda 'bar'".

Bildiri

Tüm platformlarda kullanılacak temel bildirim şablonu.

JSON gösterimi
{
  "title": string,
  "body": string,
  "image": string
}
Alanlar
title

string

Bildirimin başlığı.

body

string

Bildirimin gövde metni.

image

string

Cihaza indirilecek ve bir bildirimde görüntülenecek görselin URL'sini içerir. JPEG, PNG, BMP platformlar arasında tam desteğe sahiptir. Animasyonlu GIF ve video yalnızca iOS'ta çalışır. WebP ve HEIF, platformlar ve platform sürümleri arasında değişen düzeylerde desteğe sahiptir. Android'in 1 MB resim boyutu sınırı vardır. Firebase Storage'da resim barındırmaya ilişkin kota kullanımı ve sonuçları/maliyetleri: https://firebase.google.com/pricing

AndroidYapılandırması

FCM bağlantı sunucusu aracılığıyla gönderilen mesajlar için Android'e özgü seçenekler.

JSON gösterimi
{
  "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
}
Alanlar
collapse_key

string

Dağıtım devam ettirildiğinde yalnızca son mesajın gönderilmesini sağlayacak şekilde daraltılabilen bir mesaj grubunun tanımlayıcısı. Herhangi bir zamanda en fazla 4 farklı daraltma anahtarına izin verilir.

priority

enum ( AndroidMessagePriority )

Mesaj önceliği. "Normal" ve "yüksek" değerleri alabilir. Daha fazla bilgi için bkz. Bir mesajın önceliğini ayarlama .

ttl

string ( Duration format)

Cihaz çevrimdışıysa mesajın FCM deposunda ne kadar süre (saniye olarak) saklanması gerektiği. Desteklenene kadar maksimum süre 4 haftadır ve ayarlanmadığı takdirde varsayılan değer 4 haftadır. Mesajı hemen göndermek istiyorsanız 0'a ayarlayın. JSON biçiminde, Süre türü bir nesne yerine bir dize olarak kodlanır; burada dize "s" son ekiyle biter (saniyeleri belirtir) ve önünde saniye sayısı gelir; nanosaniyeler kesirli saniye olarak ifade edilir. Örneğin 0 nanosaniyelik 3 saniye JSON formatında "3s" olarak kodlanmalı, 3 saniye ve 1 nanosaniye ise JSON formatında "3.000000001s" olarak kodlanmalıdır. Ttl en yakın saniyeye yuvarlanacaktır.

' s ' ile biten, en fazla dokuz kesirli basamaktan oluşan, saniye cinsinden süre. Örnek: "3.5s" .

restricted_package_name

string

Mesajın alınabilmesi için kayıt jetonunun eşleşmesi gereken uygulamanın paket adı.

data

map (key: string, value: string)

Rastgele anahtar/değer yükü. Varsa, google.firebase.fcm.v1.Message.data dosyasını geçersiz kılacaktır.

"key": value çiftleri. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( AndroidNotification )

Android cihazlara gönderilecek bildirim.

fcm_options

object ( AndroidFcmOptions )

Android için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

direct_boot_ok

boolean

True olarak ayarlanırsa, cihaz doğrudan önyükleme modundayken mesajların uygulamaya iletilmesine izin verilecektir. Bkz. Doğrudan Önyükleme modunu destekleme .

AndroidMesajÖncelik

Android cihazlara gönderilecek mesajın önceliği. Bu önceliğin, mesajın ne zaman teslim edildiğini kontrol eden bir FCM konsepti olduğunu unutmayın. FCM kılavuzlarına bakın. Ayrıca, AndroidNotification.NotificationPriority kullanarak hedeflenen Android cihazlarda bildirim görüntüleme önceliğini belirleyebilirsiniz.

Numaralandırmalar
NORMAL Veri mesajları için varsayılan öncelik. Normal öncelikli mesajlar, uyuyan cihazdaki ağ bağlantılarını açmaz ve pil tasarrufu sağlamak için bunların iletilmesi gecikebilir. Yeni e-posta bildirimleri veya senkronize edilecek diğer veriler gibi zamana duyarlı olmayan mesajlar için normal dağıtım önceliğini seçin.
HIGH Bildirim mesajları için varsayılan öncelik. FCM, yüksek öncelikli mesajları anında iletmeye çalışarak FCM hizmetinin mümkün olduğunda uyuyan cihazı uyandırmasına ve uygulama sunucunuza bir ağ bağlantısı açmasına olanak tanır. Örneğin anlık mesajlaşma, sohbet veya sesli arama uyarıları içeren uygulamaların genellikle bir ağ bağlantısı açması ve FCM'nin mesajı gecikmeden cihaza iletmesini sağlaması gerekir. Mesaj zaman açısından kritikse ve kullanıcının anında etkileşimini gerektiriyorsa yüksek önceliği ayarlayın; ancak mesajlarınızı yüksek önceliğe ayarlamanın, normal öncelikli mesajlarla karşılaştırıldığında pil tüketimine daha fazla katkıda bulunacağını unutmayın.

Android Bildirimi

Android cihazlara gönderilecek bildirim.

JSON gösterimi
{
  "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,
}
Alanlar
title

string

Bildirimin başlığı. Varsa, google.firebase.fcm.v1.Notification.title öğesini geçersiz kılacaktır.

body

string

Bildirimin gövde metni. Varsa, google.firebase.fcm.v1.Notification.body öğesini geçersiz kılacaktır.

icon

string

Bildirimin simgesi. Çekilebilir kaynak myicon için bildirim simgesini myicon olarak ayarlar. Bu anahtarı istekte göndermezseniz FCM, uygulama bildiriminizde belirtilen başlatıcı simgesini görüntüler.

color

string

Bildirimin #rrggbb biçiminde ifade edilen simge rengi.

sound

string

Cihaz bildirimi aldığında çalınacak ses. "Varsayılan"ı veya uygulamada paketlenmiş bir ses kaynağının dosya adını destekler. Ses dosyaları /res/raw/ dizininde bulunmalıdır.

tag

string

Bildirim çekmecesindeki mevcut bildirimleri değiştirmek için kullanılan tanımlayıcı. Belirtilmediği takdirde her istek yeni bir bildirim oluşturur. Belirtilmişse ve aynı etikete sahip bir bildirim zaten gösteriliyorsa, yeni bildirim, bildirim çekmecesindeki mevcut bildirimin yerini alır.

click_action

string

Bir kullanıcının bildirime tıklamasıyla ilişkili eylem. Belirtilirse, kullanıcı bildirimi tıkladığında eşleşen amaç filtresine sahip bir etkinlik başlatılır.

body_loc_key

string

Gövde metnini kullanıcının geçerli yerelleştirmesine göre yerelleştirmek için kullanılacak, uygulamanın dize kaynaklarındaki gövde dizesinin anahtarı. Daha fazla bilgi için Dize Kaynaklarına bakın.

body_loc_args[]

string

Gövde metnini kullanıcının geçerli yerelleştirmesine göre yerelleştirmek için kullanılacak body_loc_key içindeki biçim belirticileri yerine kullanılacak değişken dize değerleri. Daha fazla bilgi için Biçimlendirme ve Şekillendirme konusuna bakın.

title_loc_key

string

Başlık metnini kullanıcının geçerli yerelleştirmesine göre yerelleştirmek için kullanılacak, uygulamanın dize kaynaklarındaki başlık dizesinin anahtarı. Daha fazla bilgi için Dize Kaynaklarına bakın.

title_loc_args[]

string

Başlık metnini kullanıcının geçerli yerelleştirmesine göre yerelleştirmek için kullanılacak title_loc_key içindeki biçim belirticileri yerine kullanılacak değişken dize değerleri. Daha fazla bilgi için Biçimlendirme ve Şekillendirme konusuna bakın.

channel_id

string

Bildirimin kanal kimliği (Android O'da yeni). Bu kanal kimliğine sahip herhangi bir bildirim alınmadan önce uygulamanın bu kanal kimliğine sahip bir kanal oluşturması gerekir. İstekte bu kanal kimliğini göndermezseniz veya sağlanan kanal kimliği henüz uygulama tarafından oluşturulmamışsa FCM, uygulama manifestinde belirtilen kanal kimliğini kullanır.

ticker

string

Erişilebilirlik hizmetlerine gönderilen "ticker" metnini ayarlar. API düzeyi 21'den ( Lollipop ) önce, bildirim ilk geldiğinde durum çubuğunda görüntülenen metni ayarlar.

sticky

boolean

Yanlış olarak ayarlandığında veya ayarlanmadan kaldırıldığında, kullanıcı panelde tıkladığında bildirim otomatik olarak kapatılır. True olarak ayarlandığında, kullanıcı tıklasa bile bildirim devam eder.

event_time

string ( Timestamp format)

Bildirimdeki olayın gerçekleştiği zamanı ayarlayın. Paneldeki bildirimler bu zamana göre sıralanır. Zamandaki bir nokta protobuf.Timestamp kullanılarak temsil edilir.

RFC3339 UTC "Zulu" biçiminde, nanosaniye çözünürlüğe ve en fazla dokuz kesirli basamağa sahip bir zaman damgası. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z" .

local_only

boolean

Bu bildirimin yalnızca geçerli cihazla ilgili olup olmayacağını ayarlayın. Bazı bildirimler, Wear OS saati gibi uzaktan görüntülenmek üzere diğer cihazlara köprülenebilir. Bu ipucu, bu bildirimin köprülenmemesini önerecek şekilde ayarlanabilir. Wear OS kılavuzlarına bakın

notification_priority

enum ( NotificationPriority )

Bu bildirim için göreceli önceliği ayarlayın. Öncelik, kullanıcının dikkatinin bu bildirim tarafından ne kadar tüketilmesi gerektiğinin bir göstergesidir. Düşük öncelikli bildirimler belirli durumlarda kullanıcıdan gizlenebilirken, daha yüksek öncelikli bir bildirim için kullanıcının kesintiye uğraması söz konusu olabilir. Aynı öncelikleri belirlemenin etkisi farklı platformlarda biraz farklılık gösterebilir. Bu önceliğin AndroidMessagePriority farklı olduğunu unutmayın. Bu öncelik, mesaj teslim edildikten sonra istemci tarafından işlenir; AndroidMessagePriority ise mesajın ne zaman teslim edildiğini kontrol eden bir FCM konseptidir.

default_sound

boolean

Doğru olarak ayarlanırsa bildirim için Android çerçevesinin varsayılan sesini kullanın. Varsayılan değerler config.xml dosyasında belirtilmiştir.

default_vibrate_timings

boolean

Doğru olarak ayarlanırsa bildirim için Android çerçevesinin varsayılan titreşim modelini kullanın. Varsayılan değerler config.xml dosyasında belirtilmiştir. default_vibrate_timings true olarak ayarlanmışsa ve vibrate_timings de ayarlanmışsa, kullanıcı tarafından belirlenen vibrate_timings yerine varsayılan değer kullanılır.

default_light_settings

boolean

Doğru olarak ayarlanırsa bildirim için Android çerçevesinin varsayılan LED ışık ayarlarını kullanın. Varsayılan değerler config.xml dosyasında belirtilmiştir. default_light_settings true olarak ayarlanmışsa ve light_settings de ayarlanmışsa, varsayılan değer yerine kullanıcı tarafından belirlenen light_settings kullanılır.

vibrate_timings[]

string ( Duration format)

Kullanılacak titreşim modelini ayarlayın. Titreşimi açmak veya kapatmak için bir dizi protobuf.Duration girin. İlk değer vibratörü açmadan önce beklenecek Duration gösterir. Sonraki değer vibratörün açık tutulacağı Duration gösterir. Sonraki değerler, vibratörü kapatma ve vibratörü açma Duration arasında değişir. vibrate_timings ayarlanmışsa ve default_vibrate_timings true olarak ayarlanmışsa, kullanıcı tarafından belirlenen vibrate_timings yerine varsayılan değer kullanılır.

' s ' ile biten, en fazla dokuz kesirli basamaktan oluşan, saniye cinsinden süre. Örnek: "3.5s" .

visibility

enum ( Visibility )

Bildirimin Notification.visibility değerini ayarlayın.

notification_count

integer

Bu bildirimin temsil ettiği öğe sayısını ayarlar. Rozetlemeyi destekleyen başlatıcılar için rozet sayısı olarak görüntülenebilir. Bkz. Bildirim Rozeti . Örneğin, birden fazla yeni iletiyi temsil etmek için yalnızca bir bildirim kullanıyorsanız ancak buradaki sayının toplam yeni ileti sayısını temsil etmesini istiyorsanız bu yararlı olabilir. Sıfır veya belirtilmemişse, kimlik doğrulamayı destekleyen sistemler varsayılanı kullanır; bu, her yeni bildirim geldiğinde uzun basılan menüde görüntülenen sayının artırılmasıdır.

light_settings

object ( LightSettings )

Cihazda LED varsa, bildirimin LED'inin yanıp sönme hızını ve rengini kontrol etmeye yönelik ayarlar. Toplam yanıp sönme süresi işletim sistemi tarafından kontrol edilir.

image

string

Bir bildirimde görüntülenecek resmin URL'sini içerir. Varsa, google.firebase.fcm.v1.Notification.image dosyasını geçersiz kılacaktır.

Bildirim Önceliği

Bir bildirimin öncelik düzeyleri.

Numaralandırmalar
PRIORITY_UNSPECIFIED Öncelik belirtilmezse bildirim önceliği PRIORITY_DEFAULT olarak ayarlanır.
PRIORITY_MIN En düşük bildirim önceliği. Bu PRIORITY_MIN değerine sahip bildirimler, ayrıntılı bildirim günlükleri gibi özel durumlar dışında kullanıcıya gösterilmeyebilir.
PRIORITY_LOW Daha düşük bildirim önceliği. Kullanıcı arayüzü, PRIORITY_DEFAULT bildirimlerine kıyasla bildirimleri daha küçük veya listede farklı bir konumda göstermeyi seçebilir.
PRIORITY_DEFAULT Varsayılan bildirim önceliği. Uygulama kendi bildirimlerine öncelik vermiyorsa tüm bildirimler için bu değeri kullanın.
PRIORITY_HIGH Daha yüksek bildirim önceliği. Daha önemli bildirimler veya uyarılar için bunu kullanın. Kullanıcı arayüzü, PRIORITY_DEFAULT bildirimlerine kıyasla bu bildirimleri daha büyük veya bildirim listelerinde farklı bir konumda göstermeyi seçebilir.
PRIORITY_MAX En yüksek bildirim önceliği. Bunu, kullanıcının hemen ilgilenmesini veya giriş yapmasını gerektiren uygulamanın en önemli öğeleri için kullanın.

Görünürlük

Bir bildirimin farklı görünürlük düzeyleri.

Numaralandırmalar
VISIBILITY_UNSPECIFIED Belirtilmemişse varsayılan olarak Visibility.PRIVATE olarak ayarlayın.
PRIVATE Bu bildirimi tüm kilit ekranlarında gösterin ancak hassas veya özel bilgileri güvenli kilit ekranlarında gizleyin.
PUBLIC Bu bildirimin tamamını tüm kilit ekranlarında gösterin.
SECRET Bu bildirimin herhangi bir bölümünü güvenli bir kilit ekranında göstermeyin.

IşıkAyarları

Bildirim LED'ini kontrol etmeye yönelik ayarlar.

JSON gösterimi
{
  "color": {
    object (Color)
  },
  "light_on_duration": string,
  "light_off_duration": string
}
Alanlar
color

object ( Color )

Gerekli. LED'in color google.type.Color ile ayarlayın.

light_on_duration

string ( Duration format)

Gerekli. light_off_duration ile birlikte LED flaşların yanıp sönme hızını tanımlayın. Proto.Süre ile tanımlanan çözünürlük

' s ' ile biten, en fazla dokuz kesirli basamaktan oluşan, saniye cinsinden süre. Örnek: "3.5s" .

light_off_duration

string ( Duration format)

Gerekli. light_on_duration ile birlikte LED flaşların yanıp sönme hızını tanımlayın. Proto.Süre ile tanımlanan çözünürlük

' s ' ile biten, en fazla dokuz kesirli basamaktan oluşan, saniye cinsinden süre. Örnek: "3.5s" .

Renk

RGBA renk uzayındaki bir rengi temsil eder. Bu gösterim, kompaktlık yerine çeşitli dillerdeki renk gösterimlerine/renk gösterimlerinden dönüşümün basitliği için tasarlanmıştır. Örneğin, bu gösterimin alanları Java'da java.awt.Color yapıcısına basit bir şekilde sağlanabilir; aynı zamanda iOS'ta UIColor'ın +colorWithRed:green:blue:alpha yöntemine de önemsiz bir şekilde sağlanabilir; ve biraz çalışmayla JavaScript'te kolayca bir CSS rgba() dizesine biçimlendirilebilir.

Bu referans sayfası, RGB değerini yorumlamak için kullanılması gereken mutlak renk alanı (örn. sRGB, Adobe RGB, DCI-P3, BT.2020 vb.) hakkında bilgi taşımaz. Varsayılan olarak uygulamalar sRGB renk alanını varsaymalıdır.

Renk eşitliğine karar verilmesi gerektiğinde uygulamalar, aksi belgelenmedikçe, kırmızı, yeşil, mavi ve alfa değerlerinin her birinin en fazla 1e-5 farklı olması durumunda iki rengi eşit olarak ele alır.

Örnek (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();
 }
 // ...

Örnek (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;
}
// ...

Örnek (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('');
};

// ...
JSON gösterimi
{
  "red": number,
  "green": number,
  "blue": number,
  "alpha": number
}
Alanlar
red

number

[0, 1] aralığında bir değer olarak renkteki kırmızı miktarı.

green

number

[0, 1] aralığında bir değer olarak renkteki yeşil miktarı.

blue

number

[0, 1] aralığında bir değer olarak renkteki mavi miktarı.

alpha

number

Bu rengin piksele uygulanması gereken kısmı. Yani son piksel rengi aşağıdaki denklemle tanımlanır:

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

Bu, 1,0 değerinin düz bir renge, 0,0 değerinin ise tamamen şeffaf bir renge karşılık geldiği anlamına gelir. Bu, basit bir kayan skaler yerine bir sarmalayıcı mesaj kullanır, böylece varsayılan değer ile ayarlanmamış değer arasında ayrım yapmak mümkün olur. Atlanırsa, bu renkli nesne düz renk olarak oluşturulur (sanki alfa değerine açıkça 1,0 değeri verilmiş gibi).

AndroidFcmSeçenekler

Android için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

JSON gösterimi
{
  "analytics_label": string
}
Alanlar
analytics_label

string

Mesajın analiz verileriyle ilişkili etiket.

WebpushYapılandırması

Webpush protokolü seçenekleri.

JSON gösterimi
{
  "headers": {
    string: string,
    ...
  },
  "data": {
    string: string,
    ...
  },
  "notification": {
    object
  },
  "fcm_options": {
    object (WebpushFcmOptions)
  }
}
Alanlar
headers

map (key: string, value: string)

Webpush protokolünde tanımlanan HTTP üstbilgileri. Desteklenen başlıklar için Webpush protokolüne bakın, örneğin "TTL": "15".

"key": value çiftleri. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

data

map (key: string, value: string)

Rastgele anahtar/değer yükü. Varsa, google.firebase.fcm.v1.Message.data dosyasını geçersiz kılacaktır.

"key": value çiftleri. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

notification

object ( Struct format)

JSON nesnesi olarak Web Bildirimi seçenekleri. Web Bildirim API'sinde tanımlandığı şekilde Bildirim örneği özelliklerini destekler. Varsa, "title" ve "body" alanları google.firebase.fcm.v1.Notification.title ve google.firebase.fcm.v1.Notification.body alanlarını geçersiz kılar.

fcm_options

object ( WebpushFcmOptions )

Web için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

WebpushFcmSeçenekler

Web için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

JSON gösterimi
{
  "link": string,
  "analytics_label": string
}
Alanlar
analytics_label

string

Mesajın analiz verileriyle ilişkili etiket.

ApnsYapılandırması

Apple Anında Bildirim Hizmeti'ne özgü seçenekler.

JSON gösterimi
{
  "headers": {
    string: string,
    ...
  },
  "payload": {
    object
  },
  "fcm_options": {
    object (ApnsFcmOptions)
  }
}
Alanlar
headers

map (key: string, value: string)

Apple Anında Bildirim Hizmetinde tanımlanan HTTP istek üstbilgileri. apns-expiration ve apns-priority gibi desteklenen başlıklar için APN'lerin istek başlıklarına bakın.

Arka uç, apns-expiration için 30 günlük varsayılan bir değer ve açıkça ayarlanmamışsa apns-priority için varsayılan değer olarak 10'u ayarlar.

"key": value çiftleri. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" } .

payload

object ( Struct format)

Hem aps sözlüğü hem de özel veri yükü dahil olmak üzere, bir JSON nesnesi olarak APN yükü. Bkz . Yük Anahtarı Referansı . Varsa, google.firebase.fcm.v1.Notification.title ve google.firebase.fcm.v1.Notification.body geçersiz kılar.

fcm_options

object ( ApnsFcmOptions )

iOS için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

ApnsFcmSeçenekler

iOS için FCM SDK tarafından sağlanan özelliklere ilişkin seçenekler.

JSON gösterimi
{
  "analytics_label": string,
  "image": string
}
Alanlar
analytics_label

string

Mesajın analiz verileriyle ilişkili etiket.

image

string

Bir bildirimde görüntülenecek resmin URL'sini içerir. Varsa, google.firebase.fcm.v1.Notification.image dosyasını geçersiz kılacaktır.

FcmSeçenekleri

FCM SDK'ları tarafından sağlanan özellikler için platformdan bağımsız seçenekler.

JSON gösterimi
{
  "analytics_label": string
}
Alanlar
analytics_label

string

Mesajın analiz verileriyle ilişkili etiket.

Yöntemler

send

Belirtilen hedefe (kayıt belirteci, konu veya koşul) bir mesaj gönderin.