REST Resource: projects.messages

Kaynak: Mesaj

Firebase Cloud Messaging Service 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 mesajın projects/*/messages/{message_id} biçimindeki tanımlayıcısı.

data

map (key: string, value: string)

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

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

notification

object (Notification)

Yalnızca giriş. Tüm platformlarda kullanılan temel bildirim şablonu.

android

object (AndroidConfig)

Yalnızca giriş. FCM bağlantı sunucusu üzerinden gönderilen iletiler için Android'e özel seçenekler.

webpush

object (WebpushConfig)

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

apns

object (ApnsConfig)

Yalnızca giriş. Apple Anında Bildirim Hizmeti'ne özel seçenekler

fcm_options

object (FcmOptions)

Yalnızca giriş. Tüm platformlarda kullanılacak FCM SDK özellik seçenekleri için şablon.

Birleştirme alanı target. Zorunlu. Yalnızca giriş. Mesajın gönderileceği hedef. target şunlardan yalnızca biri olabilir:
token

string

Mesaj gönderilecek kayıt jetonu

topic

string

Mesaj gönderilecek konu adı, ör. "hava durumu". Not: "/topics/" öneki sağlanmamalıdır.

condition

string

Mesaj gönderme koşulu, ör. "foo" konu başlıklarında && "bar" inceleyebilirsiniz.

Bildirim

Tüm platformlarda kullanılan 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österilecek bir resmin URL'sini içerir. JPEG, PNG ve BMP tüm platformlarda tam destek sunar. Animasyonlu GIF ve video yalnızca iOS'te çalışır. WebP ve HEIF, platformlar ve platform sürümlerinde farklı destek düzeylerine sahiptir. Android'de 1 MB resim boyutu sınırı vardır. Firebase Storage'da resim barındırmanın kota kullanımı ve etkileri/maliyetleri: https://firebase.google.com/pricing

AndroidConfig

FCM bağlantı sunucusu üzerinden gönderilen iletiler için Android'e özel 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

Daraltılabilen bir ileti grubunun tanımlayıcısı. Böylece, teslim devam ettirilebilecekse yalnızca son ileti gönderilir. Herhangi bir zamanda en fazla 4 farklı daraltma anahtarına izin verilir.

priority

enum (AndroidMessagePriority)

Mesaj önceliği. "Normal" kabul edilebilir ve "high" değerler. Daha fazla bilgi için Bir iletinin önceliğini ayarlama başlıklı makaleye bakın.

ttl

string (Duration format)

Cihaz çevrimdışıysa mesajın FCM depolama alanında ne kadar süre (saniye cinsinden) saklanması gerektiği. Desteklenme süresi maksimum 4 haftadır. Ayarlanmazsa varsayılan değer 4 haftadır. İletiyi hemen göndermek istiyorsanız bu değeri 0 olarak ayarlayın. JSON biçiminde, Duration türü bir nesne yerine bir dize olarak kodlanır. Bu durumda dize, "s" sonekiyle biter (saniyeyi gösterir) ve öncesinde saniye sayısı bulunur. Nanosaniye, kesirli saniye olarak ifade edilir. Örneğin, 0 nanosaniyeli 3 saniye JSON biçiminde "3 sn", 3 saniye ve 1 nanosaniye JSON biçiminde "3,000000001 sn" olarak kodlanmalıdır. Ttl en yakın saniyeye yuvarlanır.

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

restricted_package_name

string

Mesajı almak 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ü. Bu parametre mevcutsa google.firebase.fcm.v1.Message.data geçersiz kılınır.

"key": value çiftlerinin listesini içeren bir nesne. Ö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'sı tarafından sağlanan özelliklerle ilgili seçenekler.

direct_boot_ok

boolean

Politika, Doğru değerine ayarlanırsa cihaz doğrudan başlatma modundayken mesajların uygulamaya teslim edilmesine izin verilir. Destek Doğrudan Başlatma modu başlıklı makaleye göz atın.

AndroidMesaj Önceliği

Android cihazlara gönderilecek mesajın önceliği. Bu önceliğin, mesajın ne zaman teslim edileceğini kontrol eden bir FCM kavramı olduğunu unutmayın. FCM kılavuzlarına bakın. Buna ek olarak, hedeflenen Android cihazlarda Android Notification.NotificationPriority kullanarak bildirim görüntüleme önceliğini belirleyebilirsiniz.

Sıralamalar
NORMAL Veri mesajları için varsayılan öncelik. Normal öncelikli iletiler uyku modunda olan bir cihazdaki ağ bağlantılarını açmaz ve pil tasarrufu için iletilerin teslimi gecikebilir. Yeni e-posta bildirimleri veya senkronize edilecek diğer veriler gibi zamana duyarlı olmayan iletiler için normal teslim önceliğini seçin.
HIGH Bildirim mesajları için varsayılan öncelik. FCM, yüksek öncelikli mesajları hemen iletmeyi dener. Böylece, FCM hizmetinin mümkün olduğunda uykudaki bir cihazı uyandırıp uygulama sunucunuza bir ağ bağlantısı açmasına izin verir. Ö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ı cihaza gecikmeden teslim etmesini sağlaması gerekir. Mesaj zaman açısından kritikse ve kullanıcının hemen etkileşim kurmasını gerektiriyorsa yüksek önceliği ayarlayın. Ancak, iletilerinizi yüksek öncelikli olarak ayarlamanın, normal öncelikli mesajlara kıyasla pil tüketimine daha fazla katkıda bulunduğunu unutmayın.

AndroidBildirimi

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,
  "bypass_proxy_notification": boolean,
  "proxy": enum (Proxy)
}
Alanlar
title

string

Bildirimin başlığı. Bu parametre mevcutsa google.firebase.fcm.v1.Notification.title geçersiz kılınır.

body

string

Bildirimin gövde metni. Bu parametre mevcutsa google.firebase.fcm.v1.Notification.body geçersiz kılınır.

icon

string

Bildirimin simgesi. Çekilebilir kaynak myicon için bildirim simgesini myicon olarak ayarlar. İstekte bu anahtarı göndermezseniz FCM, uygulama manifestinizde belirtilen başlatıcı simgesini gösterir.

color

string

Bildirimin, #rrggbb biçiminde ifade edilen simge rengi.

sound

string

Cihaz bildirimi aldığında çalacak ses. "Varsayılan" değerini destekler veya uygulamada paket halinde sunulan bir ses kaynağının dosya adı. Ses dosyaları /res/raw/ klasöründe bulunmalıdır.

tag

string

Bildirim çekmecesindeki mevcut bildirimleri değiştirmek için kullanılan tanımlayıcı. Belirtilmezse 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

Kullanıcının bildirimi tıklamasıyla ilişkilendirilen işlem. Belirtilirse kullanıcı bildirimi tıkladığında eşleşen intent filtresine sahip bir etkinlik başlatılır.

body_loc_key

string

Gövde metnini kullanıcının mevcut 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ı bölümüne 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 belirteçlerin yerine kullanılacak değişken dize değerleri. Daha fazla bilgi için Biçimlendirme ve Stil bölümüne bakın.

title_loc_key

string

Başlık metnini kullanıcının mevcut 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ı bölümüne bakın.

title_loc_args[]

string

Başlık metnini kullanıcının mevcut yerelleştirmesine göre yerelleştirmek için kullanılacak, title_loc_key öğesindeki biçim belirteçlerinin yerine kullanılacak değişken dize değerleri. Daha fazla bilgi için Biçimlendirme ve Stil bölümüne 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ğiyle 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 manifest dosyasında belirtilen kanal kimliğini kullanır.

ticker

string

"Sohbet şeridi"ni ayarlar erişilebilirlik hizmetlerine gönderilir. API düzeyi 21'den (Lollipop) önce, bildirim ilk geldiğinde durum çubuğunda gösterilen metni ayarlar.

sticky

boolean

Politika, Yanlış değerine ayarlanır veya ayarlanmadan bırakılırsa kullanıcı panelde tıkladığında bildirim otomatik olarak kapatılır. Politika, Doğru değerine ayarlandığında kullanıcı tıklasa bile bildirim gösterilmeye devam eder.

event_time

string (Timestamp format)

Bildirimdeki etkinliğin gerçekleştiği zamanı ayarlayın. Paneldeki bildirimler bu zamana göre sıralanır. Belirli bir zaman, protobuf.Timestamp kullanılarak gösterilir.

RFC3339 UTC "Zulu" zaman damgası biçiminde olmalıdır. Örnekler: "2014-10-02T15:01:23Z" ve "2014-10-02T15:01:23.045123456Z".

local_only

boolean

Bu bildirimin yalnızca geçerli cihazla alakalı olup olmadığını ayarlayın. Bazı bildirimler, uzak görüntüleme için Wear OS kol saati gibi diğer cihazlara köprü olarak eklenebilir. Bu ipucu, bu bildirimin köprü görevini üstlenmemesi için ayarlanabilir. Wear OS kılavuzlarına bakın.

notification_priority

enum (NotificationPriority)

Bu bildirim için göreli önceliği ayarlayın. Öncelik, bu bildirimin kullanıcının dikkatini ne kadar dikkat etmesi gerektiğinin bir göstergesidir. Belirli durumlarda düşük öncelikli bildirimler kullanıcıdan gizlenebilirken kullanıcının daha yüksek öncelikli bildirimlerde çalışması kesintiye uğrayabilir. Aynı öncelikleri ayarlamanın etkisi, farklı platformlarda biraz farklılık gösterebilir. Bu önceliğin AndroidMessagePriority değerinden farklı olduğunu unutmayın. Bu öncelik, mesaj teslim edildikten sonra istemci tarafından işlenir. AndroidMessagePriority ise mesajın ne zaman teslim edileceğini kontrol eden bir FCM kavramıdır.

default_sound

boolean

Doğru değerine 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 değerine ayarlanırsa bildirim için Android çerçevesinin varsayılan titreşim desenini kullanın. Varsayılan değerler config.xml dosyasında belirtilmiştir. default_vibrate_timings hem doğru değerine hem de vibrate_timings ayarlanırsa kullanıcı tarafından belirtilen vibrate_timings yerine varsayılan değer kullanılır.

default_light_settings

boolean

Doğru değerine 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 hem doğru değerine hem de light_settings ayarlanırsa varsayılan değer yerine kullanıcı tarafından belirtilen 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 protobuf.Duration dizisi sağlayın. İlk değer, titreşimi açmadan önce beklemesi gereken Duration değerini gösterir. Sonraki değer, titreşimin açık kalacağı Duration değerini gösterir. Titreşimi kapatmak ve titreşimi açmak için sonraki değerler Duration arasında değişir. vibrate_timings ayarlanır ve default_vibrate_timings, true olarak ayarlanırsa kullanıcı tarafından belirtilen vibrate_timings yerine varsayılan değer kullanılır.

En fazla dokuz kesir basamağı olan ve "s" ile biten, 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. Rozetleri destekleyen başlatıcılarda rozet sayısı olarak gösterilebilir.Bildirim Rozeti'ni inceleyin. Örneğin, birden çok yeni iletiyi temsil etmesi 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 rozeti destekleyen sistemler varsayılanı kullanır. Bu, uzun basma menüsünde yeni bir bildirim geldiğinde gösterilen sayıyı artırmaktır.

light_settings

object (LightSettings)

Cihazda LED kullanılabiliyorsa bildirimin LED yanıp sönme hızını ve rengini kontrol etmek için kullanılan ayarlar. Toplam yanıp sönme süresi işletim sistemi tarafından kontrol edilir.

image

string

Bir bildirimde gösterilecek bir resmin URL'sini içerir. Bu parametre mevcutsa google.firebase.fcm.v1.Notification.image geçersiz kılınır.

bypass_proxy_notification
(deprecated)

boolean

Ayarlanırsa cihaza gönderilen ekran bildirimleri, proxy yerine uygulama tarafından işlenir.

proxy

enum (Proxy)

Bir bildirimin proxy'de ne zaman kullanılabileceğini kontrol etme ayarı.

Bildirim Önceliği

Bir bildirimin öncelik düzeyleri.

Sıralamalar
PRIORITY_UNSPECIFIED Öncelik belirtilmemişse bildirim önceliği PRIORITY_DEFAULT olarak ayarlanır.
PRIORITY_MIN En düşük bildirim önceliği. Bu PRIORITY_MIN ile ilgili bildirimler, ayrıntılı bildirim günlükleri gibi özel durumlar dışında kullanıcıya gösterilmeyebilir.
PRIORITY_LOW Bildirim önceliği daha düşük. Kullanıcı arayüzü, PRIORITY_DEFAULT bildirimlerine kıyasla bildirimleri daha küçük veya farklı bir konumda göstermeyi tercih edebilir.
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 bu ayarı kullanın. Kullanıcı arayüzü, PRIORITY_DEFAULT özelliğindeki bildirimlere kıyasla bu bildirimleri daha büyük veya bildirim listelerinde farklı bir konumda göstermeyi tercih edebilir.
PRIORITY_MAX En yüksek bildirim önceliği. Kullanıcının ilgilenmesini veya giriş yapmasını gerektiren, uygulamanın en önemli öğeleri için bunu kullanın.

Görünürlük

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

Sıralamalar
VISIBILITY_UNSPECIFIED Belirtilmemişse varsayılan olarak Visibility.PRIVATE olur.
PRIVATE Bu bildirimi tüm kilit ekranlarında göster ancak güvenli kilit ekranlarında hassas veya gizli bilgileri gizle.
PUBLIC Tüm kilit ekranlarında bu bildirimin tamamını göster.
SECRET Bu bildirimin hiçbir bölümünü güvenli kilit ekranında göstermeyin.

Işık Ayarları

Bildirim LED'ini kontrol etme ayarları.

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

object (Color)

Zorunlu. LED'in color değerini google.type.Color ile ayarlayın.

light_on_duration

string (Duration format)

Zorunlu. light_off_duration ile birlikte LED yanıp sönme hızını tanımlayın. proto.Duration ile tanımlanan çözünürlük

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

light_off_duration

string (Duration format)

Zorunlu. light_on_duration ile birlikte LED yanıp sönme hızını tanımlayın. proto.Duration ile tanımlanan çözünürlük

En fazla dokuz kesir basamağı olan ve "s" ile biten, saniye cinsinden süre. Örnek: "3.5s".

Renk

RGBA renk alanındaki bir rengi temsil eder. Bu sunum, kompaktlık yerine, çeşitli dillerdeki renk gösterimlerine ve bu gösterimlerden dönüştürmenin basitleştirilmesi için tasarlanmıştır. Örneğin, bu temsilin alanları, Java'da java.awt.Color oluşturucuya standart bir şekilde sağlanabilir; Ayrıca, iOS'te UIColor'ın +colorWithRed:green:blue:alpha yöntemine de sağlanabilir; ve küçük bir çalışmayla, JavaScript'te bir CSS rgba() dizesi olarak kolayca biçimlendirilebilir.

Bu referans sayfasında, RGB değerini yorumlamak için kullanılması gereken mutlak renk alanıyla ilgili bilgiler (ör. sRGB, Adobe RGB, DCI-P3 ve BT.2020) yer almaz. Varsayılan olarak uygulamalar sRGB renk alanını kabul etmelidir.

Renk eşitliğinin belirlenmesi gerektiğinde, aksi belirtilmediği sürece uygulamalarda iki rengin tamamının kırmızı, yeşil, mavi ve alfa değerlerinin her biri en fazla 1e-5 farklılık gösterdiği takdirde eşit kabul edilir.

Ö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ığındaki bir değer olarak renkteki kırmızı miktarı.

green

number

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

blue

number

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

alpha

number

Bu rengin piksele uygulanması gereken oranı. Yani son piksel rengi denklemle tanımlanır:

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

Bu, 1,0 değeri düz bir renge karşılık gelirken, 0.0 değeri tamamen şeffaf bir renge karşılık gelir. Bu yöntem, varsayılan değer ile ayarlanmayan değeri birbirinden ayırt edebilmek için basit bir kayan skaler yerine bir sarmalayıcı mesajı kullanır. Atlanırsa bu renk nesnesi düz renk olarak oluşturulur (alfa değerine açık bir şekilde 1, 0 değeri verilmiş gibi).

Proxy

Bir bildirimin proxy'de ne zaman kullanılabileceğini kontrol etme ayarı.

Sıralamalar
PROXY_UNSPECIFIED Belirtilmemişse varsayılan olarak Proxy.IF_PRIORITY_LOWERED olur.
ALLOW Bu bildirim için proxy uygulamayı deneyin.
DENY Bu bildirime proxy uygulamayın.
IF_PRIORITY_LOWERED Bu bildirim için yalnızca AndroidMessagePriority değeri cihazda HIGH değerinden NORMAL değerine düşürüldüyse proxy uygulamaya çalışın.

AndroidFcmSeçenekleri

Android için FCM SDK'sı tarafından sağlanan özelliklerle ilgili seçenekler.

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

string

Mesajın analiz verileriyle ilişkili etiket.

WebpushConfig

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 (ör. "TTL": "15".

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

data

map (key: string, value: string)

Rastgele anahtar/değer yükü. Bu parametre mevcutsa google.firebase.fcm.v1.Message.data geçersiz kılınır.

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

notification

object (Struct format)

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

fcm_options

object (WebpushFcmOptions)

Web için FCM SDK'sı tarafından sağlanan özelliklerle ilgili seçenekler.

WebpushFcmSeçenekleri

Web için FCM SDK'sı tarafından sağlanan özelliklerle ilgili seçenekler.

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

string

Mesajın analiz verileriyle ilişkili etiket.

ApnsConfig

Apple Anında Bildirim Hizmeti'ne özel 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 Hizmeti'nde tanımlanan HTTP istek başlıkları. apns-expiration ve apns-priority gibi desteklenen başlıklar için APN istek başlıklarına bakın.

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

"key": value çiftlerinin listesini içeren bir nesne. Örnek: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

payload

object (Struct format)

Hem aps sözlüğü hem de özel yük dahil, JSON nesnesi olarak APN'ler yükü. Yük Anahtarı Referansı'nı inceleyin. Varsa google.firebase.fcm.v1.Notification.title ve google.firebase.fcm.v1.Notification.body değerlerini geçersiz kılar.

fcm_options

object (ApnsFcmOptions)

iOS için FCM SDK'sı tarafından sağlanan özelliklerle ilgili seçenekler.

ApnsFcmSeçenekleri

iOS için FCM SDK'sı tarafından sağlanan özelliklerle ilgili 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österilecek bir resmin URL'sini içerir. Bu parametre mevcutsa google.firebase.fcm.v1.Notification.image geçersiz kılını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 jetonu, konu veya koşul) bir mesaj gönderin.