Públicos e segmentos

Um público é construído a partir de dimensões de contexto: sinais nomeados que as regras de segmentação leem quando o servidor escolhe uma variante. Algumas chegam com a requisição, e o servidor deduz o restante a partir de quem está logado. Personalização no Fóir segmenta esses públicos.

Dimensões enviadas com a requisição

Três dimensões são nativas e fornecidas pelo chamador: dispositivo (desktop, mobile ou tablet), plataforma (web, iOS ou Android) e locale. Uma leitura as passa no argumento contexts dela.

Status de login

A plataforma define uma dimensão de status de autenticação a partir do token do usuário. Ela tem um único valor, authenticated. Um visitante deslogado não tem valor algum, então nenhuma regra pode corresponder a “deslogado”, e quem o atende é a variante padrão.

Segmentos

Um segmento é uma dimensão que carrega uma regra. A regra é avaliada do zero a cada requisição e resulta em verdadeiro ou falso para o usuário logado. Nada é armazenado, então não há lista de membros nem contagem de membros. Segmentos podem referenciar outros segmentos, e um visitante anônimo nunca corresponde a um.

As condições se combinam com AND e OR, podem ser aninhadas e podem testar igualdade, comparação numérica, correspondência de texto, pertencimento a listas e expressões regulares.

Um modelo de perfil como fonte

Uma dimensão por projeto pode indicar um modelo como sua fonte. Ele precisa ser um modelo singleton pertencente aos seus usuários (a documentação diz “customer-owned”). O servidor carrega o registro do usuário logado nesse modelo no namespace user para as regras lerem. Esse carregamento é privilegiado, então um campo de perfil oculto do cliente pelo acesso por campo ainda pode orientar a segmentação.

Definindo e publicando

Defina dimensões no console, com a CLI ou com defineContextDimension no seu arquivo de configuração. Uma dimensão nova ou editada é um rascunho até ser publicada em uma release. As dimensões declaradas na configuração pertencem a essa configuração: um push as cria, atualiza e remove, e deixa em paz as criadas no console.

Leia os detalhes

O guia de segmentação cobre as dimensões de contexto e como uma leitura as passa, e os segmentos têm um guia próprio.