# Protocolo social MIGA Uma designer, um sociólogo e uma física entram num bar... ## Resumo O protocolo MIGA (*Make Internet Great Again* - nesse caso de verdade) foi construído partindo do protocolo Jornal Social, do qual mantém a ideia de jornais pessoais compostos por categorias de informação, que possam ser lidos e distribuídos livremente (como é o caso dos jornais analógicos), sem necessidade de login para leituras. O login é necessário apenas para postagens (em caráter de autoria). O protocolo define então campos para o jornal, com requisitos de formato e temporalidade mínima específicos para cada campo. ## Funcionamento Em MIGA, cada usuário (@ associada a um token na rede) pode publicar conteúdo digital em seu jornal pessoal, um espaço digital formado por um conjunto de "slots" ou "campos" pré-definidos que respeitam requisitos próprios. Cada @ pode ter a ela associado apenas um jornal: cada usuário dispõe de apenas um conjunto de campos, não sendo permitido pelo protocolo a criação de mútliplos conjuntos diferentes de campos para um único usuário. Cada campo pré-definido de um dado jornal possui uma janela de temporalidade mínima entre postagens a ele associado. Cada campo também possui requisitos de formato específicos a ele associados (como formato da informação, se texto ou imagem, e contagem de caracteres). Para que uma instrução de publicação de um dado campo seja aceita pelo protocolo, tanto a janela de temporalidade mínima quanto os requisitos de formato precisam ser respeitados. O jornal é pensado para que seus campos possam ser atualizados de forma assíncrona (não é preciso atualizar todos ao mesmo tempo), sempre garantido o respeito à janela mínima de tempo e ao formato do campo. Todos os jornais são públicos, ou seja, o conteúdo do jornal de qualquer usuário pode ser acessado diretamente, sem necessidade de pedido de aceite ou de login. O protocolo não considera conexões entre autores e leitores, não prevê uma rede de conexões. Enforça apenas a especificação de formato e temporalidade para cada campo do jornal associado a uma dada @. O regime de conexões entre @s (quais jornais estão sendo acompanhados por quais usuários cadastrados) pode ser gerenciado via interface ou via protocolo específico à parte.
## O protocolo especifica: #### Campos e suas características * 6 campos disponíveis para atualização associados a cada usuário, sendo: * **causo:** pensado para anedota simples, de estilo cotidiano * **fofoca:** para compartilhamento de informação elaborada, fofocas de ordem pessoal ou geral * **ideia:** qualquer (boa?) ideia que tenha ocorrido ao usuário * **livro:** livro que se deseje divulgar * **meme:** meme que se deseje divulgar * **música:** música que se deseje divulgar, razões para a escolha
* Janela mínima de tempo entre atualizações para cada campo, sendo: * **causo:** 30 dias * **fofoca:** 15 dias * **ideia:** 30 dias * **livro:** 30 dias * **meme:** 7 dias * **música:** 15 dias
* Caracaterísticas de formato e tamanho de conteúdo para cada campo, sendo: * **causo:** texto, máximo de 1600 caracteres (aprox. 2 parágrafos) * **fofoca:** texto, máximo de 5000 caracteres (aprox 2 páginas) * **ideia:** texto, máximo de 2500 caracteres (aprox 1 página) * **livro:** imagem * **meme:** imagem * **música:** texto, máximo de 800 caracateres (aprox 1 parágrafo)
* Cada campo é atualizado de forma individual, respeitada a janela mínima de tempo do campo
#### Ações possíveis As ações permitidas a um usuário são: - **Atualizar campo** Aplica-se individualmente a cada um dos 6 campos especificados pelo protocolo, e é aceito pelo protocolo caso a janela mínima desde a última atualização do campo em questão seja respeitada, e o formato do campo esteja compatível com a especificação do campo.