Unity'deki cihaz gruplarına mesaj gönderin

Cihaz grubu mesajlaşması, tek bir gruba birden fazla cihaz eklemenize olanak tanır. Bu, konu mesajlarına benzer ancak grup üyeliği yalnızca sunucularınız tarafından yönetilir. Örneğin, ekip arkadaşlarınızın farklı telefon modellerine farklı mesajlar gönderirse, sunucularınız kayıtları uygun gruplara gönderebilir ve her bir grubu. Cihaz grubu mesajları, cihaz gruplarını doğrudan uygulamanızdan değil sunucularınızdan yönetmeyi içerdiğinden konu mesajlarından farklıdır.

Bir bildirim anahtarı için izin verilen maksimum üye sayısı 20'dir.

Cihaz gruplarını yönetme

Bir cihaz grubuna mesaj göndermeden önce:

  1. Gruba eklemek istediğiniz her cihaz için kayıt jetonları edinin.

  2. Aşağıdakini tanımlayan notification_key oluşturun: cihaz grubunu eşlemek için kullanır (genellikle bir veya daha fazla (kullanıcı) varsayılan olarak grubun tüm ilişkili kayıt jetonlarına eklenir. Uygulama sunucusunda bildirim anahtarları oluşturabilirsiniz.

Cihaz gruplarının temel yönetimi: grup oluşturma ve kaldırma, ve cihaz ekleme veya kaldırma işlemleri HTTP v1 API üzerinden gerçekleştirilir. kısa ömürlü jetonlar kullanarak gönderme isteklerini yetkilendirin. Bkz. Desteklenen anahtarların listesi için cihaz grubu yönetim anahtarları'na gidin.

Uygulama sunucusundaki cihaz gruplarını yönetme

Cihaz grubu oluşturma

Cihaz grubu oluşturmak için grubun adını ve cihazların kayıt jetonlarının listesini içeren bir POST isteği gönderin. FCM, yeni bir notification_key döndürüyor temsil eder.

HTTP POST isteği

Aşağıdakine benzer bir istek gönderin: https://fcm.googleapis.com/fcm/notification:

https://fcm.googleapis.com/fcm/notification
Content-Type:application/json
access_token_auth: true
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
project_id:SENDER_ID

{
   "operation": "create",
   "notification_key_name": "appUser-Chris",
   "registration_ids": ["bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
                        "cR1rjyj4_Kc:APA91bGusqbypSuMdsh7jSNrW4nzsM...",
                        ... ]

notification_key_name, bir ad veya tanımlayıcı (ör. bir kullanıcı adı olabilir). İlgili içeriği oluşturmak için kullanılan notification_key_name ve notification_key, bir kayıt grubuna özgüdür jeton. notification_key_name, Aynı uygulama için birden fazla istemci uygulamanız varsa istemci uygulaması başına benzersizdir gönderen kimliği. Bu, mesajların yalnızca istenen hedef uygulamaya gitmesini sağlar.

Yanıt biçimi

Başarılı bir istek, aşağıdaki gibi bir notification_key döndürür:

{
   "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ"
}

notification_key ve ilgili Sonraki işlemlerde kullanılacak notification_key_name.

Bildirim anahtarı alma

Mevcut bir bildirim anahtarını almanız gerekiyorsa GET isteğinde aşağıdaki gibi notification_key_name kullanın:

https://fcm.googleapis.com/fcm/notification?notification_key_name=appUser-Chris
Content-Type:application/json
access_token_auth: true
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
project_id:SENDER_ID
{}

Sunucu, belirli bir bildirim anahtarı adı için her GET isteği için benzersiz bir kodlanmış dize döndürür. Her dize kullanırsanız bu aslında geçerli bir "notification_key" değeridir.

Cihaz grubuna cihaz ekleme ve gruptan cihaz kaldırma

Mevcut bir gruba cihaz eklemek veya gruptan cihaz kaldırmak için POST gönderin operation parametresi add veya remove ve kayıt jetonları eklenir.

HTTP POST isteği

Örneğin, bir bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1... kayıt jetonuna sahip cihaz appUser-Chris adlı kullanıcıya şu isteği göndereceksiniz:

{
   "operation": "add",
   "notification_key_name": "appUser-Chris",
   "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ",
   "registration_ids": ["bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."]
}

Yanıt biçimi

Başarılı bir cihaz ekleme veya kaldırma isteği, notification_key aşağıdakine benzer:

{
   "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ"
}
.

Cihaz grubu yönetimi anahtarları

Aşağıdaki tabloda, cihaz grupları oluşturma ve üye ekleme ya da kaldırmayla ilgili anahtarlar listelenmektedir.

Tablo 10. Cihaz grubu yönetim anahtarları.

Parametre Kullanım Açıklama
operation Zorunlu, dize Çalıştırılacak işlem. Geçerli değerler create, add ve remove'dir.
notification_key_name Zorunlu, dize Oluşturulacak veya değiştirilecek cihaz grubunun kullanıcı tanımlı adı.
notification_key Zorunlu (create işlemi hariç, dize Cihaz grubunun benzersiz tanımlayıcısı. Bu değer, başarılı bir create işleminin yanıtında döndürülür ve cihaz grubunda yapılan sonraki tüm işlemler için gereklidir.
registration_ids Zorunlu, dize dizisi Eklenecek veya kaldırılacak cihaz jetonları. Mevcut tüm reklam birimlerini bir cihaz grubundaki kayıt jetonları ise FCM, cihaz grubunu siler.

Aşağı akış mesajlarını cihaz gruplarına gönderme

Cihaz gruplarına mesaj göndermek için HTTP v1 API'yi kullanın. Şu anda için desteği sonlandırılmış eski gönderme API'lerini kullanarak cihaz gruplarına gönderme HTTP veya XMPP ya da Node.js için Firebase Admin SDK eski protokollere bağlı olarak, Google Analytics 4'te HTTP v1 API'ye geçin en erken bir aşamada belirlemeye çalışın. Eski gönderme API'leri Haziran 2024'te devre dışı bırakılacak ve kaldırılacaktır.

Bir cihaz grubuna ileti göndermek, ileti göndermeye benzer göndermek için aynı yöntemi kullanarak tek bir cihaza gönderme isteklerini yetkilendirin. token alanını grup bildirim anahtarı olarak ayarlayın:

REST

POST https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send HTTP/1.1

Content-Type: application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA

{
   "message":{
      "token":"APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ",
      "data":{
        "hello": "This is a Firebase Cloud Messaging device group message!"
      }
   }
}

cURL komutu

curl -X POST -H "Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA" -H "Content-Type: application/json" -d '{
"message":{
   "data":{
     "hello": "This is a Firebase Cloud Messaging device group message!"
   },
   "token":"APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ"
}}' https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send

Cihaz gruplarına yayın mesajları gönderme

İstemci uygulamaları şunları yaparak cihaz gruplarına yayın öncesi mesaj gönderebilir: uygun bildirim anahtarına, e-posta adresi gibi to alanı boş bırakılamaz.

FCM için yapılan aşağıdaki çağrı, bir yukarı akış gönderir bir bildirim tuşuna gönderin.

Firebase.Messaging.Message message;
message.To = notification_key;
message.MessageId = a_unique_message_id;
message.Data["hello"] = "world";
Firebase.Messaging.FirebaseMessaging.Send(message);