As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Compartilhe sessões de stream com URLs de stream
Os URLs de transmissão permitem que você compartilhe rapidamente suas sessões de transmissão com qualquer pessoa. Os destinatários acessam suas sessões de stream em um navegador da Web compatível, sem necessidade Conta da AWS de integração com o cliente, e você controla a expiração, o uso e a revogação. Depois de criar um URL de stream, qualquer pessoa que o acesse inicia sua própria sessão de stream sem precisar de nenhuma credencial. Os URLs de streaming são ideais para configurar demonstrações, testes de jogo, avaliações de partes interessadas e acesso de convidados de forma rápida e fácil.
Importante
Qualquer pessoa que tenha o URL completo pode iniciar uma sessão de stream até que o URL do stream expire, atinja seu limite de uso ou seja revogado. Trate o URL do stream como uma credencial: compartilhe-o somente por meio de canais confiáveis, prefira o menor limite possível de expiração e uso e revogue-o imediatamente se houver vazamento.
Como funcionam os URLs de stream
Uma URL de stream une um grupo de stream (a capacidade que executa o stream) e um aplicativo nesse grupo de stream (o conteúdo a ser executado). Quando você cria um URL de stream, o Amazon GameLift Streams retorna um URL de stream no seguinte formato:
https://gameliftstreams.aws.com/su-1AB2C3De4/stream?token=EXAMPLETOKEN
O fluxo de trabalho tem quatro etapas:
-
Criar. Você chama CreateStreamUrl um grupo e um aplicativo de stream, definindo por quanto tempo o URL do stream permanece válido (
UrlExpiresAfterMinutes) e quantas vezes ele pode ser usado (UsageLimit). A configuração da sessão de stream — argumentos de inicialização, variáveis de ambiente, duração da sessão, resolução de exibição e assim por diante — é congelada na URL do stream no momento da criação. -
Compartilhe. Você distribui o URL do stream por meio de seus próprios canais, como e-mail, chat ou página de um evento.
-
Ativar. Cada vez que um usuário abre o URL do stream e inicia o streaming, o Amazon GameLift Streams consome um uso do URL do stream e inicia uma nova sessão de stream usando a configuração congelada. Cada ativação é uma sessão independente; não há nenhum estado compartilhado entre as pessoas que usam o mesmo URL do stream.
-
Fim. As sessões iniciadas a partir de um URL de stream duram pouco e não oferecem suporte à reconexão. Quando uma sessão termina, seu uso já foi contabilizado; a reabertura do URL do stream inicia uma nova sessão e consome outro uso.
Como o URL do stream não é autenticado, o usuário final nunca vê nem precisa de suas AWS credenciais. O serviço encaminha cada usuário final para um local próximo com base na preferência de localização de streaming que você definiu no momento da criação. O Amazon GameLift Streams reordena seus locais de streaming preferidos por proximidade, mas nunca adiciona locais que você não incluiu.
A experiência do usuário final
Os usuários com quem você compartilha um URL de stream não precisam Conta da AWS de instalação de nenhum software. Eles abrem a URL em um navegador compatível e transmitem a partir de uma página da web que o Amazon GameLift Streams hospeda para você. O streaming usa WebRTC e tem os mesmos requisitos de navegador e dispositivo do cliente Amazon GameLift Streams Web SDK. Para ver os navegadores compatíveis e as versões mínimas, consulteDispositivos GameLift e navegadores compatíveis com Amazon Streams. Se o grupo de streams não tiver capacidade disponível quando um usuário final abrir a URL, a página mostrará uma mensagem de que o stream está temporariamente esgotado e o usuário final poderá tentar novamente. Se o usuário final tentar fechar ou recarregar a guia, a página solicitará que ele confirme, pois sair da página encerra a sessão.
nota
As sessões iniciadas a partir de um URL de stream são ajustadas para reprodução curta em um único espectador. Se o usuário final perder a conexão ou recarregar a página, a sessão será encerrada e a reabertura do URL do stream iniciará uma nova sessão que consumirá outro uso. Consulte Diferenças das sessões com as quais você começa StartStreamSession.
Pré-requisitos
Antes de criar um URL de stream, você precisa do seguinte:
-
Um grupo de stream que está ativo e tem capacidade para executar sessões.
-
Um aplicativo vinculado a esse grupo de streams.
-
Permissão do IAM para as ações de URL do stream. A criação de um URL de stream também exige
gameliftstreams:StartStreamSessionpermissão para o aplicativo para o qual ele aponta, pois a ativação do URL de stream inicia uma sessão de stream que executa esse aplicativo. Veja o exemplo Crie e gerencie URLs de stream da política. -
Se você passar uma função do IAM
RoleArn, também precisará deiam:PassRolepermissão para essa função.
Criação de um URL de stream
nota
Você pode criar um URL de stream no console do Amazon GameLift Streams, com o AWS CLI, ou com a API. Os exemplos a seguir usam AWS CLI o.
O AWS CLI exemplo a seguir cria uma URL de stream para um aplicativo em um grupo de stream. O URL do stream é válido por duas horas e pode ser usado até cinco vezes, além de preferir os us-east-1 locais us-west-2 e.
aws gameliftstreams create-stream-url \ --identifier sg-1AB2C3De4 \ --application-identifier a-9ZY8X7Wv6 \ --protocol WebRTC \ --url-expires-after-minutes 120 \ --usage-limit 5 \ --locations us-west-2 us-east-1 \ --description "Preview build - reviewer invites"
Uma chamada bem-sucedida retorna o recurso de URL do stream, incluindo seu StreamUrlId (prefixadosu-), seu ARN, o compartilhável completoStreamUrl, o tempo de expiração calculado e os usos iniciais restantes.
{ "StreamUrlId": "su-1AB2C3De4", "Arn": "arn:aws:gameliftstreams:us-west-2:111122223333:streamurl/sg-1AB2C3De4/su-1AB2C3De4", "StreamUrl": "https://gameliftstreams.aws.com/su-1AB2C3De4/stream?token=EXAMPLETOKEN", "Status": "ACTIVE", "UsageLimit": 5, "RemainingUses": 5, "ExpiresAt": "2026-07-31T20:00:00+00:00" }
Os seguintes parâmetros são obrigatórios:
| Parâmetro | Description |
|---|---|
Identifier(grupo de transmissão) |
O grupo de streams cuja capacidade executa as sessões. Forneça o ID do grupo de stream ou o ARN. |
ApplicationIdentifier |
O aplicativo nesse grupo de stream a ser transmitido. Forneça o ID ou o ARN do aplicativo. |
Protocol |
O protocolo de transmissão. WebRTCé o único valor suportado. |
UrlExpiresAfterMinutes |
Por quanto tempo o URL do stream permanece válido, em minutos, a partir da criação. Mínimo 1; máximo 1.440 (24 horas). Após essa janela, o URL do stream se tornaEXPIRED. |
Locations |
Seus locais preferidos, como Região da AWS códigosus-west-2, como, em ordem de prioridade. O Amazon GameLift Streams os reordena de acordo com a proximidade do usuário final, mas nunca adiciona locais que você não listou. |
Os parâmetros a seguir são opcionais. Todas as configurações de sessão fornecidas são congeladas no URL do stream no momento da criação e aplicadas a todas as sessões iniciadas a partir do URL do stream.
| Parâmetro | Description |
|---|---|
UsageLimit |
Quantas vezes o URL do stream pode iniciar uma sessão. Padrão 1; máximo 50. |
Description |
Um rótulo para o URL do stream, de 1 a 80 caracteres. |
SessionLengthSeconds |
Duração máxima de cada sessão iniciada a partir do URL do stream. |
AdditionalLaunchArgs |
Command-line argumentos passados para o aplicativo na inicialização. |
AdditionalEnvironmentVariables |
Variáveis de ambiente definidas para o aplicativo na inicialização. |
DisplayConfiguration (Resolution) |
A resolução da exibição do stream, fornecida como Resolution uma largura necessária Width e Height em pixels. Cada dimensão deve ser de 320 a 4096. Quando omitido, o serviço usa uma resolução padrão. |
RoleArn |
Uma função do IAM cujas credenciais o aplicativo pode usar durante cada sessão. A função é congelada em cada sessão em que o URL do stream inicia. A aprovação de uma função exige iam:PassRole permissão para ela. |
ClientToken |
Um identificador exclusivo que diferencia maiúsculas de minúsculas que torna a solicitação de criação idempotente, portanto, uma nova tentativa com o mesmo token não cria uma URL de stream duplicada. |
Monitorando seus URLs de stream
Use GetStreamUrl para recuperar um único URL de stream. Especifique o grupo de stream com --identifier e o URL do stream com --stream-url-identifier (um ID de URL de stream ou ARN). Além da configuração do URL do stream, current e StatusRemainingUses, a resposta inclui uma StreamSessions lista das sessões iniciadas a partir dele, para que você possa ver quem está transmitindo ativamente.
aws gameliftstreams get-stream-url \ --identifier sg-1AB2C3De4 \ --stream-url-identifier su-1AB2C3De4
Use ListStreamUrls para enumerar os URLs do stream em sua conta. Você pode filtrar por Status e por grupo de streams e percorrer os resultados com MaxResults (1—100, padrão 25) e. NextToken
aws gameliftstreams list-stream-urls \ --status ACTIVE \ --stream-group-identifier sg-1AB2C3De4
Você também pode auditar a atividade de gerenciamento de URL do stream em CloudTrail. CloudTrail grava chamadas para CreateStreamUrlGetStreamUrl,ListStreamUrls, e RevokeStreamUrl como eventos de dados. Um usuário final abrindo um URL de stream e iniciando uma sessão não é uma de suas chamadas de API e não é registrado como CloudTrail atividade do cliente. Para obter mais informações, consulte Registro de chamadas de API do Amazon GameLift Streams usando AWS CloudTrail.
Revogar um URL de stream
Revogue um URL de stream quando quiser impedir que ele inicie mais sessões, por exemplo, quando um período de visualização terminar ou quando ele tiver sido compartilhado involuntariamente.
RevokeStreamUrlleva umRevocationMode:
| RevocationMode | Efeito |
|---|---|
REVOKE_URL (padrão) |
O URL do stream não pode mais iniciar novas sessões. As sessões já em andamento continuam até terminarem sozinhas. |
REVOKE_AND_TERMINATE_SESSIONS |
O URL do stream não pode mais iniciar novas sessões e todas as sessões atualmente em execução a partir dele são encerradas. Quando uma sessão em execução é encerrada dessa forma, o usuário final é desconectado e vê uma mensagem informando que o stream não está mais disponível. |
aws gameliftstreams revoke-stream-url \ --identifier sg-1AB2C3De4 \ --stream-url-identifier su-1AB2C3De4 \ --revocation-mode REVOKE_AND_TERMINATE_SESSIONS
Um URL de stream revogado passa para o REVOKED status e não pode ser reativado. Crie um novo URL de stream se precisar retomar o compartilhamento.
O Amazon GameLift Streams também revoga automaticamente um URL de stream quando um recurso do qual ele depende é excluído. A exclusão do grupo de streams revoga todos os URLs de stream nesse grupo de stream, e a exclusão do aplicativo revoga todos os URLs de stream que fazem referência a esse aplicativo. Em ambos os casos, o URL do stream é movido para REVOKED com um motivo de status que identifica o recurso excluído.
nota
Remover um recurso do qual um URL de stream depende não é o mesmo que excluí-lo e não revoga automaticamente o URL do stream. O URL do stream permaneceACTIVE, mas todas as tentativas de iniciar uma sessão a partir dele falham. Isso acontece se você desvincular o aplicativo do URL do stream do grupo de stream ou se você remover todos os locais do grupo de stream com os quais o URL do stream foi criado. Somente a exclusão do grupo de streams ou do aplicativo aciona a revogação automática.
Ciclo de vida e status do URL do stream
Um URL de stream é ACTIVE criado e permanece assim até expirar, ficar sem uso ou ser revogado. Nunca volta ACTIVE depois de deixar esse estado.
| Status | Significado |
|---|---|
ACTIVE |
O URL do stream pode iniciar novas sessões. |
EXPIRED |
A UrlExpiresAfterMinutes janela já passou. |
REVOKED |
O URL do stream foi revogado de forma explícita RevokeStreamUrl ou automática quando seu grupo ou aplicativo de stream foi excluído. |
LIMIT_REACHED |
O URL do stream usou todos os seusUsageLimit. |
Quando o URL de um stream éREVOKED, GetStreamUrl e ListStreamUrls também retorna um motivo de status que explica o porquê.
| Motivo do status | Causa |
|---|---|
userRevoked |
Revogado com o RevokeStreamUrl usoREVOKE_URL. |
revokedAndTerminatingSessions |
Revogado comREVOKE_AND_TERMINATE_SESSIONS; as sessões em execução estão sendo encerradas. |
revokedAndSessionsTerminated |
Revogado comREVOKE_AND_TERMINATE_SESSIONS; as sessões em execução foram encerradas. |
streamGroupDeleted |
O grupo de transmissão foi excluído. |
applicationDeleted |
O aplicativo referenciado foi excluído. |
Diferenças das sessões com as quais você começa StartStreamSession
As sessões iniciadas a partir de um URL de stream são executadas na mesma infraestrutura das sessões que você mesmo inicia, mas são ajustadas para reprodução curta, sem intervenção e em um único visualizador. Lembre-se dessas diferenças:
-
Sem reconexão. Se o usuário final perder a conexão ou recarregar a página, a sessão será encerrada.
-
Re-visiting consome outro uso. Como não há reconexão, abrir o URL do stream novamente inicia uma sessão completamente nova e consome outro uso dela.
UsageLimit -
Sem canais de dados. Os streams iniciados a partir de um URL de stream não expõem os canais de dados do aplicativo. Crie seu próprio cliente com o Amazon GameLift Streams Web SDK, se precisar deles.
Solução de problemas
O Amazon GameLift Streams oculta deliberadamente dos usuários finais o motivo específico de uma falha na ativação do URL do stream. Um usuário final que abre um URL de stream que não pode iniciar um stream sempre vê uma página genérica “não encontrada” ou uma mensagem “na capacidade máxima”, independentemente da causa subjacente. Para diagnosticar a causa real, inspecione o URL do stream do lado do criador com GetStreamUrl eListStreamUrls, verifique o motivo do status Status e revise a atividade da API do URL do stream em. CloudTrail
-
O URL do stream mostra uma página de erro genérica ou “não encontrada”. Verifique o
StatuscomGetStreamUrl.EXPIRED,REVOKED, ouLIMIT_REACHEDcada um explica um URL de stream não iniciável. Se o status for,ACTIVEmas as ativações ainda falharem, um recurso do qual o URL do stream depende provavelmente foi removido (não excluído): o aplicativo foi desvinculado do grupo de stream ou todos os locais do grupo de stream com os quais o URL do stream foi criado foram removidos. Re-link o aplicativo ou restaure um local ou crie um novo URL de stream com recursos válidos. -
O usuário final vê uma mensagem “na capacidade máxima”. O grupo de stream não tem capacidade disponível para colocar uma nova sessão no local mais próximo do usuário final. Cada ativação inicia uma nova sessão e consome capacidade, como
StartStreamSession. Aumente a capacidade mínima (sempre ativa) ou máxima, ou use a capacidade alvo ociosa (pré-aquecida) para manter a capacidade pronta antes da demanda, especialmente para eventos com prazos definidos. -
A sessão termina quando o usuário final se atualiza ou sai. Isso é esperado. URL-activatedas sessões não se reconectam e cada visita inicia uma nova sessão que consome um uso. Aconselhe os usuários finais a não atualizarem e defina um valor
UsageLimitalto o suficiente para tolerar recargas ocasionais. -
O usuário final é desconectado no meio da sessão e vê “Essa experiência não está mais disponível”. Os usuários finais veem essa mensagem genérica sempre que uma sessão termina no lado do servidor. A causa mais comum de um URL de stream é revogá-lo com
REVOKE_AND_TERMINATE_SESSIONS, o que encerra a execução das sessões imediatamente, mas a mesma mensagem aparece se a sessão atingir o limite de duração configurado ou for encerrada pelo serviço. Isso é esperado. Crie um novo URL de stream para retomar o compartilhamento. -
O stream não carrega ou falha ao iniciar para o usuário final. O navegador do usuário final pode não atender aos requisitos de streaming. O streaming requer um navegador compatível com WebRTC e H.264 (AVC); consulte os navegadores compatíveis e as Dispositivos GameLift e navegadores compatíveis com Amazon Streams versões mínimas. Uma causa comum é abrir o URL do stream em uma visualização do navegador no aplicativo, como um link acessado em um aplicativo de bate-papo, e-mail ou social em um dispositivo móvel, o que pode desativar o WebRTC. Aconselhe os destinatários a abrirem o URL do stream em um navegador independente, como Chrome, Edge ou Safari.
-
CreateStreamUrldevoluçõesServiceQuotaExceededException. A solicitação excederia o limite de contagem ativa (20 URLs de stream ativos por conta ou 5 por grupo de stream). Revogue URLs de stream que você não precisa mais para liberar espaço livre e useListStreamUrlsfiltrado porStatusset toACTIVEpara ver sua contagem atual. -
CreateStreamUrldevoluçõesValidationException. Um valor de entrada está fora do intervalo.UsageLimitDefina de 1 a 50 e de 1UrlExpiresAfterMinutesa 1.440.