Como Criar uma Enquete de Voto Múltiplo no Mastodon com Duração Personalizada
🔍 WiseChecker

Como Criar uma Enquete de Voto Múltiplo no Mastodon com Duração Personalizada

As enquetes do Mastodon permitem coletar feedback dos seus seguidores diretamente em uma postagem. As configurações padrão permitem apenas um voto por pessoa e oferecem durações predefinidas, como um dia ou sete dias. Você pode querer permitir que os seguidores selecionem várias opções ou definir um tempo de expiração personalizado, como três horas ou 48 minutos. Este artigo explica como criar uma enquete de voto múltiplo no Mastodon com duração personalizada usando a interface web e aplicativos de terceiros.

O compositor de enquete embutido do Mastodon não suporta votos múltiplos ou durações personalizadas. Para habilitar esses recursos, você deve usar um aplicativo cliente que exponha a API de enquete completa ou criar a enquete manualmente via API da instância. Abordaremos ambos os métodos para que você escolha a abordagem que melhor se adequa ao seu nível de conforto técnico.

Principais Conclusões: Criando Enquetes de Voto Múltiplo com Duração Personalizada no Mastodon

  • Parâmetros da API de enquete multiple e expires_in: Permitem seleções múltiplas e definem qualquer duração em segundos para uma enquete.
  • Usando um cliente Mastodon como Tusky ou Fedilab: Esses aplicativos expõem configurações avançadas de enquete que a interface web oficial oculta.
  • Criando uma enquete diretamente via API do Mastodon: Envie uma requisição POST para /api/v1/statuses com opções de enquete para criar uma enquete personalizada programaticamente.

ADVERTISEMENT

Por que as Enquetes do Mastodon Têm Limites Padrão e Como a API os Desbloqueia

O compositor padrão de enquetes do Mastodon, disponível na interface web e na maioria dos aplicativos móveis, oferece apenas enquetes de voto único com durações de 5 minutos, 30 minutos, 1 hora, 6 horas, 1 dia, 3 dias ou 7 dias. Essas predefinições simplificam a interface do usuário para a maioria dos usuários. A API de enquete do Mastodon, no entanto, define dois parâmetros que substituem esses padrões: multiple e expires_in.

O parâmetro multiple aceita um valor booleano. Quando definido como true, a enquete permite que cada eleitor selecione mais de uma opção. O parâmetro expires_in aceita um número inteiro representando o tempo de vida da enquete em segundos. Você pode defini-lo para qualquer número inteiro positivo, como 10800 para três horas ou 2880 para 48 minutos. As instâncias do Mastodon impõem uma duração máxima de enquete de 30 dias, que é 2592000 segundos. Se você exceder esse limite, a API retorna um erro.

O Que Você Precisa Antes de Começar

Para criar uma enquete de voto múltiplo com duração personalizada, você precisa de um dos seguintes:

  • Um aplicativo cliente Mastodon que suporte opções avançadas de enquete, como Tusky para Android, Fedilab para Android ou Metatext para iOS.
  • Acesso à API do Mastodon via uma ferramenta como cURL, Postman ou uma linguagem de programação como Python.
  • Uma conta no Mastodon em qualquer instância que permita postar (a maioria das instâncias públicas permite).

Métodos para Criar uma Enquete de Voto Múltiplo com Duração Personalizada

Existem dois métodos confiáveis para criar uma enquete no Mastodon com votos múltiplos e duração personalizada: usando um aplicativo cliente de terceiros ou enviando uma requisição API diretamente. O método do aplicativo cliente é mais simples para usuários não técnicos. O método da API oferece controle total sobre cada parâmetro.

Método 1: Usando um Cliente Mastodon de Terceiros que Expõe Opções de Enquete

Alguns clientes Mastodon exibem os campos multiple e expires_in diretamente na tela de composição. O Tusky para Android é um desses aplicativos. Siga estes passos.

  1. Instale o Tusky pela Google Play Store ou F-Droid
    Abra o aplicativo e faça login na sua conta do Mastodon. Se você já usa outro cliente, pode instalar o Tusky junto sem afetar suas postagens existentes.
  2. Toque no botão de composição para iniciar uma nova postagem
    O botão de composição é um ícone de lápis ou um sinal de mais na parte inferior da tela. Escreva o texto da sua postagem como de costume.
  3. Toque no ícone de enquete para adicionar uma enquete
    O ícone de enquete parece um gráfico de barras. Após tocar nele, o Tusky mostra um editor de enquete com campos para opções.
  4. Ative votos múltiplos tocando no botão de alternância “Múltiplas escolhas”
    Essa alternância define o parâmetro multiple como true. Quando ativado, os eleitores podem selecionar mais de uma opção.
  5. Defina uma duração personalizada tocando no campo de duração
    O Tusky mostra uma lista de durações predefinidas mais uma opção personalizada. Toque em “Personalizado” e insira o número de segundos. Para três horas, insira 10800. Para 48 minutos, insira 2880.
  6. Adicione suas opções de enquete
    Insira cada opção em seu próprio campo. Você pode adicionar até quatro opções por padrão. Toque no botão de mais para adicionar mais opções, se necessário.
  7. Toque no botão de postar para publicar a enquete
    Sua enquete agora aparece na sua timeline com votos múltiplos permitidos e a duração personalizada que você definiu.

O Fedilab para Android funciona de forma semelhante. No Fedilab, toque no ícone de enquete no compositor, depois toque no ícone de engrenagem para abrir as configurações avançadas de enquete. Você verá uma caixa de seleção rotulada “Respostas múltiplas” e um campo de texto para duração em segundos.

Método 2: Enviando uma Enquete Diretamente pela API do Mastodon

Se você prefere criar a enquete programaticamente, use o endpoint da API do Mastodon /api/v1/statuses. Este método funciona em qualquer dispositivo com conexão à internet e uma ferramenta que possa enviar requisições HTTP POST. O exemplo a seguir usa cURL, uma ferramenta de linha de comando disponível no Windows, macOS e Linux.

  1. Obtenha um token de acesso para sua conta do Mastodon
    Vá em Preferências > Desenvolvimento > Nova aplicação. Dê um nome ao seu aplicativo, como “Ferramenta de Enquete Personalizada”. Selecione o escopo write:statuses. Salve a aplicação e copie o token de acesso mostrado na tela seguinte.
  2. Abra um terminal ou prompt de comando
    No Windows, pressione Win+R, digite cmd e pressione Enter. No macOS, abra o Terminal em Aplicativos > Utilitários.
  3. Execute o comando cURL com os parâmetros da enquete
    Substitua SEU_TOKEN, SUA_INSTANCIA e o texto das opções pelos seus próprios valores. O comando abaixo cria uma enquete com duas opções, votos múltiplos ativados e duração de 3600 segundos (uma hora).
    curl -X POST -H "Authorization: Bearer SEU_TOKEN" -H "Content-Type: application/json" -d '{"status":"Qual framework você prefere?","poll":{"options":["React","Vue"],"multiple":true,"expires_in":3600}}' https://SUA_INSTANCIA/api/v1/statuses
  4. Verifique se a enquete foi criada
    Confira sua timeline do Mastodon. A enquete aparece como uma postagem normal com a duração personalizada e votos múltiplos ativados. Você também pode inspecionar o JSON de resposta que o cURL exibe para confirmar que o objeto poll contém multiple: true e o timestamp expires_at correto.

Se você usa Python, a biblioteca requests torna a mesma operação mais legível. Instale-a com pip install requests e execute o seguinte script após substituir o token, a instância e as opções.

import requests

token = "SEU_TOKEN"
instance = "https://SUA_INSTANCIA"
url = f"{instance}/api/v1/statuses"

payload = {
"status": "Qual framework você prefere?",
"poll": {
"options": ["React", "Vue"],
"multiple": True,
"expires_in": 3600
}
}

headers = {"Authorization": f"Bearer {token}", "Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.json())

ADVERTISEMENT

Erros Comuns ao Criar Enquetes Personalizadas

Mesmo com os parâmetros corretos, você pode encontrar problemas que impedem sua enquete de se comportar como esperado. Abaixo estão os problemas mais frequentes e como evitá-los.

Duração da Enquete Excede o Máximo da Instância de 30 Dias

As instâncias do Mastodon rejeitam enquetes com um valor expires_in maior que 2592000 segundos (30 dias). Se você precisar de uma enquete mais longa, não pode usar a API de enquete. Em vez disso, crie uma postagem normal e acompanhe as respostas manualmente. A API retorna um erro 422 Unprocessable Entity se a duração for muito longa.

Eleitores Não Conseguem Selecionar Múltiplas Opções Mesmo com multiple: true

Alguns clientes Mastodon não renderizam a interface de voto múltiplo corretamente. Os dados da enquete no servidor incluem a flag multiple, mas o cliente pode ainda mostrar botões de rádio em vez de caixas de seleção. Teste sua enquete com uma segunda conta usando o mesmo cliente. Se o problema persistir, peça aos eleitores para usar a interface web ou um aplicativo diferente para votar.

Opções da Enquete Não São Exibidas na Ordem Correta

Quando você envia opções de enquete via API, o Mastodon preserva a ordem fornecida. Se você vir opções reorganizadas, o cliente pode estar ordenando-as alfabeticamente ou por contagem de votos. Esse comportamento é específico do cliente e não afeta os dados da enquete no servidor.

Enquete de Voto Múltiplo no Mastodon vs Enquete Padrão de Voto Único

Item Enquete de Voto Múltiplo Enquete Padrão de Voto Único
Seleções múltiplas Permitidas (caixas de seleção) Não permitidas (botões de rádio)
Flexibilidade de duração Qualquer valor em segundos até 30 dias Apenas durações predefinidas
Parâmetro da API multiple: true multiple: false ou omitido
Facilidade de criação Requer cliente de terceiros ou API Embutido nas interfaces web e móvel
Caso de uso Classificação, ordenação de preferências, brainstorming Perguntas simples de sim/não ou escolha única

Agora você pode criar enquetes no Mastodon que permitem que os seguidores selecionem várias opções e fechem exatamente no horário que você escolher. Comece com o aplicativo Tusky se quiser uma interface gráfica. Use o método da API se precisar automatizar a criação de enquetes ou integrá-la a um fluxo de trabalho maior. Para enquetes futuras, considere adicionar uma opção aberta incluindo um campo de texto no corpo da postagem, já que as enquetes do Mastodon não suportam respostas de texto livre.

ADVERTISEMENT