Skip to main content

chat

Chat

Conversas sobre linhas de mensagem: grupos, respostas em fio, reações e recibos de leitura.

  • Kind: view
  • Key: chat
  • Categoria: conversa
  • Envelope: lista de um só elemento (a config vive em config[0])
Envelope de um só elemento

View.config é uma lista com um único elemento: a configuração vive em config[0], não em config. Uma config escrita como mapa cru é lida de qualquer maneira, mas entra nos relatórios como desvio de envelope.

Campos

ChaveTipoObrigatórioOmissãoDescriçãoReferência
userColumnstringnão-Coluna do autor da mensagem, POR NOME.coluna (nome)
messageColumnstringnão-Coluna do corpo da mensagem, POR NOME.coluna (nome)
dateColumnstringnão-Coluna da data/hora da mensagem, POR NOME.coluna (nome)
filterGroupmapnão-Grupo de filtros aplicado às linhas da vista.-
filtersjsonnão-Descontinuado. Filtro de base no formato legado: nome da coluna → texto procurado (aplicado como contains). Só lido, e só quando não há filterGroup. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
sortAscendingbooleannãotrueOrdem cronológica: da mais antiga para a mais recente.-
conversationColumnstringnão-Coluna que liga cada mensagem a uma conversa ou grupo, POR NOME. Sem ela, a vista mostra todas as mensagens numa só conversa.coluna (nome)
chatTypeColumnstringnão-Coluna que distingue conversa individual de grupo, POR NOME.coluna (nome)
chatParticipantsColumnstringnão-Coluna com a lista de participantes, POR NOME.coluna (nome)
chatNameColumnstringnão-Coluna com o nome da conversa ou do grupo, POR NOME.coluna (nome)
attachmentsColumnstringnão-Coluna dos ficheiros anexados à mensagem, POR NOME.coluna (nome)
threadColumnstringnão-Coluna com o id da mensagem-mãe, POR NOME: é ela que faz os fios de resposta.coluna (nome)
reactionsColumnstringnão-Coluna com o JSON das reações (emoji → utilizadores), POR NOME.coluna (nome)
readReceiptsColumnstringnão-Coluna com o JSON dos recibos de leitura (utilizador → momento), POR NOME.coluna (nome)
mentionsEnabledbooleannãotrueLiga as menções com @.-
reactionsEnabledbooleannãotrueLiga as reações às mensagens.-
threadsEnabledbooleannãofalseLiga os fios de resposta.-
readReceiptsEnabledbooleannãofalseLiga os recibos de leitura.-

filterGroup

ChaveTipoObrigatórioOmissãoDescriçãoReferência
combinatorenumerationnão"and"Como se combinam as regras do grupo: and exige todas, or basta uma.-
ruleslist de mapnão-As regras do grupo.-
groupslist de mapnão-Subgrupos aninhados, com a mesma forma.-

filterGroup.rules[]

Cada elemento de filterGroup.rules é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
idstringnão-Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
columnNamestringnão-Coluna desta tabela, POR NOME.coluna (nome)
operatorstringnão-Operador da comparação.-
valuestringnão-Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
secondValuestringnão-Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-

filterGroup.groups[]

Cada elemento de filterGroup.groups é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
combinatorenumerationnão"and"Como se combinam as regras do subgrupo.-
ruleslist de mapnão-As regras do grupo.-
groupslistnão-Subgrupos de terceiro nível: varrem-se às cegas (uma FieldDecl const não se pode referir a si própria).-

filterGroup.groups[].rules[]

Cada elemento de filterGroup.groups[].rules é um objeto:

ChaveTipoObrigatórioOmissãoDescriçãoReferência
idstringnão-Identificador da regra, gerado pela app. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
columnNamestringnão-Coluna desta tabela, POR NOME.coluna (nome)
operatorstringnão-Operador da comparação.-
valuestringnão-Valor da comparação: dado de utilizador. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-
secondValuestringnão-Segundo valor, usado pelos operadores de intervalo. Só aparece no JSON quando não é nulo. Opaco: transporta dados do utilizador e nenhum resolvedor entra aqui.-

Exemplo JSON

[
{
"sortAscending": true,
"mentionsEnabled": true,
"reactionsEnabled": true,
"threadsEnabled": false,
"readReceiptsEnabled": false
}
]

Gerado de definitions.json versão 17f3e0bc59d9. Esta página nasce no build: não se edita à mão.