Aprenda
Classe do mecanismo
RecommendationService
Não criável
Serviço

*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.


Resumo
Métodos
GenerateItemListAsync(generateRecommendationItemListRequest: Dictionary):RecommendationPages
LogActionEvent(actionType: Enum.RecommendationActionType,itemId: string,tracingId: string,actionEventDetails: Dictionary):()
LogImpressionEvent(impressionType: Enum.RecommendationImpressionType,itemId: string,tracingId: string,impressionEventDetails: Dictionary):()
RegisterItemAsync(player: Player,registerRecommendationItemsRequest: Dictionary):Dictionary
UpdateItemAsync(updateRecommendationItemRequest: Dictionary):()
Membros herdados

Referência API
Métodos
GenerateItemListAsync
Rendimentos
Recursos: Basic
RecommendationService:GenerateItemListAsync(generateRecommendationItemListRequest:Dictionary):RecommendationPages
Parâmetros
generateRecommendationItemListRequest:Dictionary
Amostras de código
Gerar uma lista de itens recomendados
local RecommendationService = game:GetService("RecommendationService")
-- Defina a solicitação para gerar uma lista de recomendações
local request: GenerateRecommendationItemListRequest = {
ConfigName = "MaximizeEngagement",
LocationId = "Lobby",
PageSize = 10
-- NOTA: Descomente e defina CustomContexts.UserId para o script do servidor.
-- Não é necessário definir para o script local.
-- CustomContexts = {
-- ["UserId"] = tostring(player.UserId),
-- }
}
-- Chame GenerateItemListAsync para obter as páginas de recomendação
local success, recommendationPages = pcall(function()
return RecommendationService:GenerateItemListAsync(request)
end)

GetRecommendationItemAsync
Rendimentos
Recursos: Basic
RecommendationService:GetRecommendationItemAsync(itemId:string):Dictionary
Parâmetros
itemId:string
Devolução
Amostras de código
Obter um único item de recomendação
local RecommendationService = game:GetService("RecommendationService")
local function getItem(itemId)
local success, item = pcall(function()
return RecommendationService:GetRecommendationItemAsync(itemId)
end)
if success and item then
print("Item recuperado com sucesso: " .. item.ItemId)
print(" ReferenceId: " .. item.ReferenceId)
-- O TracingId estará vazio ao buscar um único item diretamente
if item.Creator then
print(" CreatorId: " .. tostring(item.Creator.CreatorId))
end
if item.CustomTags then
print(" CustomTags: ")
for _, customTag in ipairs(item.CustomTags) do
print(" " .. customTag)
end
end
else
warn("Falha ao recuperar item: " .. itemId .. ". Erro: " .. tostring(item))
end
end
-- Exemplo de uso (requere um itemId válido)
-- getItem("some-item-id")

LogActionEvent
Recursos: Basic
RecommendationService:LogActionEvent(
actionType:Enum.RecommendationActionType, itemId:string, tracingId:string, actionEventDetails:Dictionary
):()
Parâmetros
itemId:string
tracingId:string
actionEventDetails:Dictionary
Valor Padrão: "nil"
Devolução
()
Amostras de código
Registrando uma ação do usuário
local RecommendationService = game:GetService("RecommendationService")
local function logLike(itemId, tracingId)
local detail: RecommendationActionEventDetails = {
ReactionType = "Like",
Weight = 1.0
}
RecommendationService:LogActionEvent(Enum.RecommendationActionType.AddReaction, itemId, tracingId, detail)
print("Registrada a ação 'Like' para o item: " .. itemId)
end
-- Exemplo de uso (requer um itemId e tracingId válidos de GenerateItemListAsync)
-- logLike("item-id", "tracing-id")

LogImpressionEvent
Recursos: Basic
RecommendationService:LogImpressionEvent(
impressionType:Enum.RecommendationImpressionType, itemId:string, tracingId:string, impressionEventDetails:Dictionary
):()
Parâmetros
itemId:string
tracingId:string
impressionEventDetails:Dictionary
Valor Padrão: "nil"
Devolução
()
Amostras de código
Registrar uma impressão de usuário
local RecommendationService = game:GetService("RecommendationService")
local function logView(itemId, tracingId)
local detail: RecommendationImpressionEventDetails = {
Duration = 5, -- O usuário visualizou por 5 segundos
ItemPosition = 1,
DepartureIntent = Enum.RecommendationDepartureIntent.Neutral
}
RecommendationService:LogImpressionEvent(Enum.RecommendationImpressionType.View, itemId, tracingId, detail)
print("Impressão de 'Visualização' registrada para o item: " .. itemId)
end
-- Exemplo de uso (requer um itemId e tracingId válidos do GenerateItemListAsync)
-- logView("some-item-id", "some-tracing-id")

LogPreferenceEvent
Recursos: Basic
RecommendationService:LogPreferenceEvent(
preferenceType:Enum.RecommendationPreferenceType, targetType:Enum.RecommendationPreferenceTargetType, targetId:string, tracingId:string, itemId:string
):()
Parâmetros
targetId:string
tracingId:string
itemId:string
Devolução
()

RegisterItemAsync
Rendimentos
Recursos: Basic
RecommendationService:RegisterItemAsync(
player:Player, registerRecommendationItemsRequest:Dictionary
Parâmetros
player:Player
registerRecommendationItemsRequest:Dictionary
Devolução
Amostras de código
Registrar um novo item
local RecommendationService = game:GetService("RecommendationService")
local storage = game:GetService("ReplicatedStorage")
-- Presuma que uma RemoteFunction chamada 'RegisterItemRemote' existe em ReplicatedStorage
local registerItemRemote = storage.RegisterItemRemote
registerItemRemote.OnServerInvoke = function(player, refId)
local request: RegisterRecommendationItemRequest = {
ContentType = Enum.RecommendationItemContentType.Dynamic,
ReferenceId = refId,
Duration = 60,
Visibility = Enum.RecommendationItemVisibility.Public,
CustomTags = {"locale:pt-br", "seasonal:summer"},
Attributes = {
{
AssetId = 123,
Description = "vídeo de teste",
TrimStartTime = 0,
TrimEndTime = 10.5
}
}
}
local success, response = pcall(function()
return RecommendationService:RegisterItemAsync(player, request)
end)
if success and response then
print("Item registrado com sucesso. ItemId: " .. response.ItemId)
return response.ItemId
else
warn("Falha ao registrar item. Erro: " .. tostring(response))
return nil
end
end

RemoveItemAsync
Rendimentos
Recursos: Basic
RecommendationService:RemoveItemAsync(itemId:string):()
Parâmetros
itemId:string
Devolução
()
Amostras de código
Remover um item
local RecommendationService = game:GetService("RecommendationService")
local function removeItem(itemId)
local success, err = pcall(function()
return RecommendationService:RemoveItemAsync(itemId)
end)
if success then
print("Item removido com sucesso: " .. itemId)
else
warn("Falha ao remover item: " .. itemId .. ". Erro: " .. tostring(err))
end
end

UpdateItemAsync
Rendimentos
Recursos: Basic
RecommendationService:UpdateItemAsync(updateRecommendationItemRequest:Dictionary):()
Parâmetros
updateRecommendationItemRequest:Dictionary
Devolução
()
Amostras de código
Atualizar um item
local RecommendationService = game:GetService("RecommendationService")
local function updateItem(itemId)
-- Inclua apenas os campos que você deseja atualizar
local request: UpdateRecommendationItemRequest = {
ItemId = itemId,
Visibility = Enum.RecommendationItemVisibility.Private,
-- NOTA: toda a lista CustomTags será substituída por esta nova lista
CustomTags = {"updated-tag"}
}
local success, err = pcall(function()
return RecommendationService:UpdateItemAsync(request)
end)
if success then
print("Item atualizado com sucesso: " .. itemId)
else
warn("Falha ao atualizar item: " .. itemId .. ". Erro: " .. tostring(err))
end
end
-- Exemplo de uso
-- updateItem("some-item-id-to-update")

©2026 Roblox Corporation, Roblox, o logotipo Roblox e Powering Imagination estão entre nossas marcas registradas e não registradas nos EUA e em outros países.