SocialService
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
Serviço Social facilita funções sociais que impactam relacionamentos feitos na plataforma Roblox.Seu uso principal é mostrar prompts de convite e o diretório telefônico aos jogadores, permitindo que eles enviem solicitações de convite a seus amigos através de PromptGameInvite() e PromptPhoneBook().Você pode aproveitar sinais quando tais solicitações forem feitas.
Resumo
Métodos
Esconde a verde si mesmo do jogador chamado.
Solicita ao dado Player com a tela de convite.
Solicita ao dado Player com o livro de telefones.
Mostra a verde si mesmo do jogador chamado.
Indica se o dado Player pode convidar outros jogadores para uma chamada.
Indica se o dado Player pode convidar outros jogadores.
Eventos
Dispara quando o estado de convite de chamada de um jogador muda.
Dispara quando um jogador fecha um prompt de convite.
Dispara quando um jogador fecha o prompt do diretório telefônico.
Callbacks
Chamada de volta quando uma chamada é feita do livro de endereços.
Propriedades
Métodos
HideSelfView
Esconde a verdo jogador chamado de si mesmo. Se este método for chamado enquanto a visão de si mesmo já está oculta, ele não faz nada.
Devolução
PromptGameInvite
PromptGameInvite() exibe um prompt de convite para o jogador local através do qual eles podem convidar seus amigos para a experiência atual.Antes de chamar este método, você deve usar CanSendGameInviteAsync() para determinar se o jogador pode enviar um convite, pois essa capacidade pode variar dependendo da plataforma ou do jogador.
Veja Convites de Jogador para mais detalhes sobre a implementação de convites, personalização de convites e notificações e uso de dados de lançamento.
Parâmetros
O Player para solicitar com a pop-up (janela, notificação)de convite.
Objeto opcional ExperienceInviteOptions para personalizar o prompt.
Devolução
Amostras de código
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
Solicita ao dado Player com o livro de telefones.Se o jogador escolher chamar alguém, o evento CallInviteStateChanged é acionado.Você deve usar CanSendCallInviteAsync() antes de chamar PromptPhoneBook() pois a capacidade de ver o diretório telefônico pode variar dependendo do jogador.
Se um jogador não for elegível para abrir o diretório telefônico, um diálogo de erro é exibido.
Veja Roblox Connect para uma implementação de amostra deste método.
Parâmetros
O jogador para solicitar com o diretório telefônico.
Texto para ajudar a diferenciar entre vários " pontos de entrada " do diretório telefônico ou similares.Por exemplo, você pode passar uma string que define em qual região de uma experiência o personagem do jogadorestá atualmente.
Devolução
Amostras de código
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
Mostra a verdo jogador chamado de si mesmo. Se este método for chamado enquanto a visão de si mesmo já é visível, ele não faz nada.
Parâmetros
A posição para colocar a visão de si mesmo.
Devolução
CanSendCallInviteAsync
Retorna true se o dado Player puder enviar um convite de chamada a um amizade.Você deve sempre usar o resultado deste método antes de chamar PromptPhoneBook() pois a capacidade de abrir o diretório telefônico pode variar dependendo do jogador.
Veja Roblox Connect para uma implementação de amostra deste método.
Parâmetros
Devolução
Se o jogador especificado pode enviar um convite de chamada.
Amostras de código
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() retorna true se o dado Player puder convidar outros jogadores para a experiência atual.Você deve sempre usar o resultado deste método antes de chamar PromptGameInvite() pois a capacidade de convidar jogadores pode variar dependendo da plataforma ou do jogador.
Veja Convites de Jogador para mais detalhes sobre a implementação de convites de jogador, personalização de prompts e notificações e uso de dados de lançamento.
Parâmetros
Opcional Player.UserId do potencial receptor , usado para verificar se o remetente pode convidar esse destinatárioespecífico.
Devolução
Se o jogador especificado pode enviar um convite.
Amostras de código
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
Eventos
CallInviteStateChanged
Este evento dispara quando o estado de convite de chamada de um jogador muda.
Parâmetros
A instância Player do jogador que teve uma mudança de estado de convocação de chamada.
O novo estado de convite de chamada.
Amostras de código
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
Este evento é disparado quando um jogador fecha um prompt de convite.
Parâmetros
Não mais populada; um matriz / listavazio.
Callbacks
OnCallInviteInvoked
Um retorno de chamada para processar quando uma chamada é feita do diretório telefônico.O parâmetro tag pode ser usado para diferenciar entre diferentes "pontos de entrada" ou similares, como descrito em PromptPhoneBook() .Apenas um retorno de chamada pode ser configurar.
Parâmetros
Texto para ajudar a diferenciar entre vários pontos de entrada do diretório telefônico.
Array que contém todos os jogadores envolvidos na chamada. O chamador sempre será o primeiro jogador no matriz / lista.
Devolução
Tabela que inclui as chaves PlaceId e ReservedServerAccessCode cujos valores são os DataModel.PlaceId e o código de acesso ao servidor retornado por TeleportService:ReserveServer(), respectivamente.
Amostras de código
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