SocialService
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Layanan Sosial memudahkan fungsi sosial yang mempengaruhi hubungan yang dibuat di platform Roblox.Penggunaan utamanya adalah untuk menampilkan undangan prompt dan buku telepon kepada pemain, memungkinkan mereka mengirim permintaan undangan ke teman mereka melalui PromptGameInvite() dan PromptPhoneBook() masing-masing.Anda dapat memanfaatkan sinyal saat permintaan seperti itu dibuat.
Rangkuman
Metode
Sembunyikan pandangan diri pemain yang dipanggil.
Meminta Player yang diberikan dengan layar undangan.
Meminta Player yang diberikan dengan buku telepon.
Menunjukkan pandangan diri pemain yang dipanggil.
Menunjukkan apakah Player yang diberikan dapat mengundang pemain lain ke panggilan.
Menunjukkan apakah Player yang diberikan dapat mengundang pemain lain.
Acara
Melepaskan api saat panggilan pemain mengubah status perubahan.
Melepaskan api saat pemain menutup prompt undangan.
Melepaskan api saat pemain menutup prompt buku telepon.
Callback
Panggilan balasan saat panggilan ditempatkan dari buku telepon.
Properti
Metode
HideSelfView
Sembunyikan pandangan diri pemain yang dipanggil. Jika metode ini dipanggil saat pandangan diri sudah tersembunyi, tidak ada yang dilakukan.
Memberikan nilai
PromptGameInvite
PromptGameInvite() menampilkan prompt undangan ke pemain lokal melalui mana mereka dapat mengundang teman-teman mereka ke pengalaman saat ini.Sebelum memanggil metode ini, Anda harus menggunakan CanSendGameInviteAsync() untuk menentukan apakah pemain dapat mengirim undangan, karena kemampuan ini dapat bervariasi tergantung pada platform atau pemain.
Lihat Undangan Pemain Prompt untuk lebih banyak rincian tentang implementasi undangan prompt, kustomisasi prompt dan notifikasi, dan menggunakan data peluncuran.
Parameter
Objek opsional ExperienceInviteOptions untuk menyesuaikan prompt.
Memberikan nilai
Contoh Kode
The following code sample uses CanSendGameInviteAsync() to confirm whether the local Player can send an invite. If true, it then prompts the invite using PromptGameInvite().
local SocialService = game:GetService("SocialService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- Function to check whether the player can send an invite
local function canSendGameInvite(sendingPlayer)
local success, canSend = pcall(function()
return SocialService:CanSendGameInviteAsync(sendingPlayer)
end)
return success and canSend
end
local canInvite = canSendGameInvite(player)
if canInvite then
SocialService:PromptGameInvite(player)
end
PromptPhoneBook
Meminta Player yang diberikan dengan buku telepon.Jika pemain memilih untuk memanggil seseorang, acara CallInviteStateChanged terjadi.Anda harus menggunakan CanSendCallInviteAsync() sebelum memanggil PromptPhoneBook() karena kemampuan untuk melihat buku telepon mungkin bervariasi tergantung pada pemain.
Jika pemain tidak memenuhi syarat untuk membuka buku telepon, dialog kesalahan ditampilkan.
Lihat Roblox Connect untuk implementasi sampel dari metode ini.
Parameter
Pemain untuk meminta dengan buku telepon.
String untuk membantu membedakan antara berbagai "poin entri" buku telepon atau serupa.Sebagai contoh, Anda dapat melewati string yang mendefinisikan bagian mana dari pengalaman yang karakter pemainsaat ini berada.
Memberikan nilai
Contoh Kode
The following code sample, placed within a child LocalScript of a GuiButton, uses CanSendCallInviteAsync() to confirm that the player can make a call. If so, it connects PromptPhoneBook() to the button's Activated event.
local Players = game:GetService("Players")
local SocialService = game:GetService("SocialService")
local player = Players.LocalPlayer
local button = script.Parent
button.Visible = false
-- Function to check whether the player can send a call invite
local function canSendCallingInvite(sendingPlayer)
local success, canSend = pcall(function()
return SocialService:CanSendCallInviteAsync(sendingPlayer)
end)
return success and canSend
end
local canCall = canSendCallingInvite(player)
if canCall then
button.Visible = true
button.Activated:Connect(function()
SocialService:PromptPhoneBook(player, "")
end)
end
ShowSelfView
Menunjukkan pandangan diri pemain yang dipanggil. Jika metode ini dipanggil saat pandangan diri sudah terlihat, tidak ada yang dilakukan.
Parameter
Posisi untuk menempatkan pandangan diri sendiri.
Memberikan nilai
CanSendCallInviteAsync
Kembalikan true jika yang diberikan Player dapat mengirim undangan panggilan ke teman.Anda harus selalu menggunakan hasil metode ini sebelum memanggil PromptPhoneBook() karena kemampuan untuk membuka buku telepon mungkin bervariasi tergantung pada pemain.
Lihat Roblox Connect untuk implementasi sampel dari metode ini.
Parameter
Memberikan nilai
Apakah pemain yang ditentukan dapat mengirim undangan panggilan.
Contoh Kode
The following code sample, placed within a child LocalScript of a GuiButton, uses CanSendCallInviteAsync() to confirm that the player can make a call. If so, it connects PromptPhoneBook() to the button's Activated event.
local Players = game:GetService("Players")
local SocialService = game:GetService("SocialService")
local player = Players.LocalPlayer
local button = script.Parent
button.Visible = false
-- Function to check whether the player can send a call invite
local function canSendCallingInvite(sendingPlayer)
local success, canSend = pcall(function()
return SocialService:CanSendCallInviteAsync(sendingPlayer)
end)
return success and canSend
end
local canCall = canSendCallingInvite(player)
if canCall then
button.Visible = true
button.Activated:Connect(function()
SocialService:PromptPhoneBook(player, "")
end)
end
CanSendGameInviteAsync
CanSendGameInviteAsync() kembali true jika yang diberikan Player dapat mengundang pemain lain ke pengalaman saat ini.Anda harus selalu menggunakan hasil metode ini sebelum memanggil PromptGameInvite() karena kemampuan untuk mengundang pemain dapat bervariasi tergantung pada platform atau pemain.
Lihat Undangan Pemain Prompt untuk lebih banyak rincian tentang implementasi undangan pemain, kustomisasi prompt dan pemberitahuan, dan menggunakan data peluncuran.
Parameter
Opsi dari penerima potensial , digunakan untuk memeriksa apakah pengirim dapat mengundang penerima spesifik itu.
Memberikan nilai
Apakah pemain yang ditentukan dapat mengirim undangan.
Contoh Kode
The following code sample uses CanSendGameInviteAsync() to confirm whether the local Player can send an invite. If true, it then prompts the invite using PromptGameInvite().
local SocialService = game:GetService("SocialService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
-- Function to check whether the player can send an invite
local function canSendGameInvite(sendingPlayer)
local success, canSend = pcall(function()
return SocialService:CanSendGameInviteAsync(sendingPlayer)
end)
return success and canSend
end
local canInvite = canSendGameInvite(player)
if canInvite then
SocialService:PromptGameInvite(player)
end
Acara
CallInviteStateChanged
Acara ini terjadi ketika status undangan panggilan pemain berubah.
Parameter
Status undangan panggilan baru.
Contoh Kode
local SocialService = game:GetService("SocialService")
local button = script.Parent
local isPhonebookOpen = false
SocialService.CallInviteStateChanged:Connect(function(_, inviteState)
local isCalling = inviteState == Enum.InviteState.Placed
if isCalling or isPhonebookOpen then
button.Visible = false
else
button.Visible = true
end
end)
GameInvitePromptClosed
Acara ini terjadi ketika pemain menutup prompt undangan.
Parameter
Tak lagi berpenghuni; array kosong.
Callback
OnCallInviteInvoked
Panggilan balik untuk diproses saat panggilan dibuat dari buku telepon.Parameter tag dapat digunakan untuk membedakan antara berbagai "poin masuk" atau serupa, seperti yang dijelaskan di PromptPhoneBook() .Hanya satu panggilan balasan yang dapat atur.
Parameter
String untuk membantu membedakan antara berbagai titik masuk buku telepon.
Array yang berisi semua pemain yang terlibat dalam panggilan. Panggilan akan selalu menjadi pemain pertama di array.
Memberikan nilai
Tabel termasuk kunci PlaceId dan ReservedServerAccessCode yang nilainya adalah DataModel.PlaceId dan kode akses server yang dikembalikan oleh TeleportService:ReserveServer(), masing-masing.
Contoh Kode
local SocialService = game:GetService("SocialService")
local TeleportService = game:GetService("TeleportService")
SocialService.OnCallInviteInvoked = function()
local placeId = 0123456789 -- This is the place ID of the desired place to drop call participants into
local accessCode = TeleportService:ReserveServer(placeId)
return { ReservedServerAccessCode = accessCode, PlaceId = placeId }
end