MessagingService

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Oluşturulamaz
Hizmet
Çoğaltılmamış

MessagingService , aynı deneyimin sunucularının birbirleriyle gerçek zamanlı olarak iletişim kurmasına izin verir (1 saniyeden az) bahsetler kullanarak. Bahsetler, sunucuların mesajları göndermek ve almak için kullandığı kullanıcı tanımlı yapılardır (1–80 karakter).

Dağıtım en iyi çabayı ifade eder ve garanti edilmez. En iyi deneyiminizin başarılı olmasından emin olun, böylece dağıtım başarısızlıkları kritik değildir.

Sunucu Arası Mesajlaşma ayrıntılı bir şekilde sunucularda nasıl iletişim kurulacağını araştırır.

Eğer oyun sunucularında acil mesajlar yayınlamak istiyorsanız, Açık Bulut API'lerini kullanabilirsiniz.

Sınırlamalar

Bu sınırların değiştirilebilir olduğunu unutmayın.


<tbody>
<tr>
<td>
<b>Mesajın büyüklüğü</b>
</td>
<td>
1kB
</td>
</tr>
<tr>
<td>
<b>Oyun sunucusuna gönderilen mesajlar</b>
</td>
<td>
600 + 240 \* (bu oyun sunucusundaki oyuncu sayısı) dakika başına
</td>
</tr>
<tr>
<td>
<b>Alınan mesajlar her bir konu için alınan mesajlar</b>
</td>
<td>
(40 + 80 \* sunucu sayısı) dakika başına
</td>
</tr>
<tr>
<td>
<b>Tüm oyun için alınan mesajlar</b>
</td>
<td>
(400 + 200 \* sunucu sayısı) dakika başına
</td>
</tr>
<tr>
<td>
<b>Oyun sunucusu protokolleriyle abonelikler desteklenir</b>
</td>
<td>
20 + 8 \* (bu oyun sunucusundaki oyuncu sayısı)
</td>
</tr>
<tr>
<td>
<b>Oyun sunucusu başına abone istekleri</b>
</td>
<td>
dakika başına 240 istek
</td>
</tr>
</tbody>
SınırMaksimum

Özellikler

Yöntemler

PublishAsync

void
Bekletir

Bu işlev, sağlanan mesajı tüm abonelere başlığa gönderir ve kaydedilmiş çağrılara başvurulmasını sağlar.

Mesajlar arka plan tarafından alınana kadar ezilir.

Parametreler

topic: string

Mesajın gönderileceği yeri belirler.

message: Variant

Mesajda dahil edilecek veriler.


Dönüşler

void

SubscribeAsync

Bekletir

Bu işlev, verilen konuyu dinlemek için bir çağrıyı kaydeder. Çağrı, bir konunun bir mesajını aldığında çağrılır. Aynı konu için birden fazla kez çağrılabilir.

Geri çağır

Çağrı tek bir arguyla, aşağıdaki girişleri içeren bir tabla ile çağrılır:


<tbody>
<tr>
<td>
<b>Veri</b>
</td>
<td>
Tedarikçi tarafından sunulan yük
</td>
</tr>
<tr>
<td>
<b>Gönderildi</b>
</td>
<td>
Mesaj gönderildiğinde UNIX saati olarak saniye
</td>
</tr>
</tbody>
SahaÖzet

Abonelik doğru bir şekilde kaydedilene kadar çıkar ve bir bağlantı nesnesi döndürür.

Abonelikten çıkmak için, döndürilen nesnede Disconnect() çağrılır. Çağrıldıktan sonra, çağrışın içeriğini içeren çağrışın içeriğini içeren çağrışın içeriğini içeren çağrışın içeriğini içeren çağrışın içeriğini içeren çağrışın içeriğini içeren çağrışın içeriğini

Ayrıca bakınız MessagingService:PublishAsync() , sağlanan mesajı tüm abonelere konu başlığına gönderir ve kaydedilmiş çağrılarınızın çağrılmasını sağlar.

Parametreler

topic: string

Mesajların nerede dinlenmesi gerektiğini belirler.

callback: function

Mesaj alındığında çağrılacak bir işlev.


Dönüşler

Konudan abonelikten çıkmak için kullanılabilir bağlantı.

Kod Örnekleri

Subscribing to Cross Server Messages

local MessagingService = game:GetService("MessagingService")
local Players = game:GetService("Players")
local function onPlayerAdded(player)
--subscribe to the topic
local topic = "player-" .. player.UserId
local connection = MessagingService:SubscribeAsync(topic, function(message)
print("Received message for", player.Name, message.Data)
end)
player.AncestryChanged:Connect(function()
-- unsubscribe from the topic
connection:Disconnect()
end)
end
Players.PlayerAdded:Connect(onPlayerAdded)

Etkinlikler