View a markdown version of this page

SAÍDA_PERSONALIZADA - AWS Elemental MediaTailor

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á.

SAÍDA_PERSONALIZADA

Quando usar

Use CUSTOM_OUTPUT quando sua lógica de função for puramente computacional. Os casos de uso comuns incluem a classificação de dispositivos com base nas cadeias de caracteres do agente do usuário, a seleção de URLs do servidor de decisão de anúncios com a lógica de A/B teste e a reformatação dos parâmetros do player antes que eles cheguem ao servidor de decisão do anúncio.

CUSTOM_OUTPUTas funções são do tipo mais rápido porque avaliam expressões na memória sem chamadas de rede. Escolha esse tipo sempre que puder atingir sua meta sem entrar em contato com um serviço externo.

Campos de configuração

Uma CUSTOM_OUTPUT função tem dois campos:

  • Runtime — A linguagem de expressão. Defina isso comoJSONATA.

  • Saída — Um mapa de pares de valores-chave. Cada chave é um nome de associação de saída (comoplayer_params.device_type) e cada valor é uma expressão que é MediaTailor avaliada em tempo de execução.

nota

Use {%...%} para agrupar expressões JSonata em campos de string. Valores sem esses delimitadores são tratados como cadeias de caracteres estáticas. Por exemplo, "{%session.id%}" avalia a expressão, enquanto "session.id" é o texto literal.

Comportamento durante a execução

Quando MediaTailor executa uma CUSTOM_OUTPUT função, ela avalia cada expressão no bloco de saída em relação ao estado atual da sessão. Todas as expressões veem o mesmo instantâneo de entrada. Os resultados avaliados se tornam as saídas da função.

Se alguma expressão falhar na avaliação, MediaTailor descarta toda a saída da função e prossegue como se nenhuma função estivesse anexada. A função não confirma parcialmente os resultados.

Exemplo: divisão A/B de tráfego

A função a seguir atribui aleatoriamente cada intervalo de anúncio a um dos dois URLs do servidor de decisão de anúncios. Ele foi projetado para o gancho do PRE_ADS_REQUEST ciclo de vida.

{ "FunctionId": "abTestAdsUrl", "FunctionType": "CUSTOM_OUTPUT", "CustomOutputConfiguration": { "Runtime": "JSONATA", "Output": { "adsRequest.url": "{%$random() < 0.5 ? 'https://ads.example.com/v1' : 'https://ads.example.com/v2'%}" } } }

Para obter uma explicação completa desse exemplo, consulte. Exemplos de funções