Modelos de Discurso

|||
|—|—|—|
|:discourse2: | Resumo | Discourse Templates permite a criação de modelos de conteúdo para uso repetido. Os modelos são armazenados como tópicos em uma categoria especial, onde podem ser editados e discutidos conforme necessário. |
|:open_book: | Guia de Instalação | Este plugin está incluído no núcleo do Discourse. Não é necessário instalar o plugin separadamente.

:information_source: Este plugin é praticamente uma nova versão do Discourse Canned Replies, mas é mais flexível e armazena os modelos de uma maneira diferente.

Funcionalidades

Este plugin usa uma ou mais categorias para armazenar os modelos para uso posterior. O primeiro post de cada tópico nessas categorias será usado como modelo para as respostas.

Essa abordagem oferece muito mais funcionalidade do que o discourse-canned-replies oferecia antes, pois cada modelo terá histórico de edição, poderá ter tags associadas e os posts subsequentes poderão ser usados para discutir o conteúdo do modelo, se necessário.

Apenas tópicos visíveis serão usados como modelos, portanto, tópicos não listados e arquivados não serão exibidos.

O plugin também aproveita as configurações de segurança das categorias para verificar quais usuários podem usar os modelos. Se o usuário puder ler os tópicos na categoria, a opção “inserir modelos” no compositor estará disponível para uso. O usuário só poderá ver os modelos/tópicos nas categorias às quais tem acesso.

Múltiplas categorias pai e/ou subcategorias podem ser usadas para fornecer diferentes conjuntos de modelos a serem usados por diferentes grupos de usuários e para organizar os modelos.

Modelos privados

O plugin também suporta modelos privados. Modelos privados são mensagens privadas marcadas como modelos. Essas mensagens estarão disponíveis como modelos apenas para o autor da mensagem.

Mensagens arquivadas não serão listadas como modelos.

:bulb: Você pode encontrar todos os seus modelos privados em:
/u/{NOME-DO-USUÁRIO}/messages/tags/{TAG-DO-MODELO-PRIVADO}

Configurações:

  • discourse templates enabled: Ativa o plugin
  • discourse templates categories: Categorias usadas para armazenar os modelos. Cada tópico nessas categorias e suas subcategorias será usado como modelo e estará disponível para usuários que puderem vê-los em suas categorias originais.
  • discourse templates enable private templates: Habilita o uso de modelos privados.
  • discourse templates groups allowed private templates: Grupos de usuários permitidos a usar modelos privados.

:warning: Membros da equipe sempre são permitidos.

  • discourse templates private templates tags: Tags que serão usadas para marcar mensagens privadas como modelos.

Como usar

Após instalar o plugin, você precisará criar pelo menos uma categoria para armazenar os modelos.

Observe que todo usuário que tiver acesso para ler os tópicos nesta categoria poderá usar a funcionalidade do plugin no compositor.

:bulb: Dica: As mesmas configurações para editar tópicos serão aplicadas aos tópicos de “modelo”. Se você quiser que qualquer pessoa com acesso de escrita na categoria possa editar os modelos existentes, você deve ativar Tornar novos tópicos wikis por padrão nas configurações da categoria.

Depois, especifique a categoria nas configurações do plugin.

É isso. Agora você só precisa criar alguns tópicos na categoria especificada e eles estarão disponíveis para uso como modelos.

Se desejar, você pode criar subcategorias para organizar melhor os modelos ou para fornecer diferentes conjuntos de respostas para vários grupos de usuários.

Para inserir modelos, você deve primeiro abrir o compositor de respostas e clicar no botão de extras, depois selecionar a opção “Inserir modelo”.

Selecione o modelo desejado, você pode pesquisar por texto ou tags e clicar no ícone “colar”.

Atalho de teclado
Você pode usar Ctrl+Shift+I em PCs ou +Shift+I em Macs para inserir modelos.

:bulb: O atalho de teclado funcionará em qualquer área de texto no Discourse.

Modelos privados

:warning: Modelos privados só funcionarão em instâncias com mensagens privadas e tags habilitadas.

Você precisa configurar as seguintes configurações do Discourse para que funcione:

  • tagging enabled: deve estar habilitado.
  • enable personal messages: deve estar habilitado se você quiser disponibilizar o recurso para usuários não-staff.
  • pm tags allowed for groups: você precisará permitir que os grupos que usarão modelos privados marquem mensagens privadas.

Para usar modelos privados, você deve primeiro habilitá-lo nas configurações, atribuir os grupos de usuários que podem usá-lo e atribuir pelo menos uma tag para marcar as PMs como modelo.

Para criar um modelo pessoal, os usuários devem:

  • enviar uma mensagem pessoal não criptografada para si mesmos marcada com uma das tags configuradas nas configurações do plugin. Apenas o autor da mensagem a verá como um modelo privado.

:bulb: Mensagens privadas enviadas para outros usuários também podem ser marcadas, mas apenas o autor da mensagem poderá usá-la como modelo.

Variáveis pré-preenchidas

O plugin suporta as seguintes variáveis nos modelos:

  • my_username
  • my_name
  • topic_title
  • topic_url
  • original_poster_username
  • original_poster_name
  • reply_to_username
  • reply_to_name
  • last_poster_username
  • reply_to_or_last_poster_username.

Todas as variáveis acima suportam texto de fallback e removerão a variável se o fallback não for especificado e a variável não puder ser substituída.

Tanto o título quanto o corpo suportam substituição de variáveis.

Exemplo:

Olá %{reply_to_username,fallback:lá},

...

Atenciosamente,
%{my_name}

Se o reply_to_username não estiver disponível, o modelo será:

Olá lá,

...

Atenciosamente,
Arpit Jalan

Migração de discourse-canned-replies

Existe uma tarefa rake para migrar as respostas prontas existentes para modelos:

rake "discourse-templates:migrate-from-canned-replies"

Isso levou apenas alguns segundos para ser executado no Meta para migrar 47 respostas prontas, portanto, deve ser seguro de usar, a menos que você tenha uma quantidade enorme de respostas prontas.

A FAZER

  • estender a funcionalidade para outros lugares além do compositor :white_check_mark:
  • permitir o uso de mais de uma categoria pai como fontes de modelos :white_check_mark:

Changelog

  • 2022-07-14T03:00:00Z: Adicionada a capacidade de usar várias categorias pai como fonte para modelos
  • 2022-07-18T03:00:00Z: Modelos privados
  • 2022-08-10T03:00:00Z: Atalho de teclado global
44 curtidas

Onde é o local apropriado para solicitar um recurso? Vejo que o rastreador de problemas do repositório GH associado está desativado. Gostaria da capacidade de colar respostas “inline”, ou seja, no meio de uma frase. Eu havia solicitado isso para o plugin anterior, e houve alguma discussão (aparentemente positiva) sobre isso, mas não consegui localizá-la.

Eu muito frequentemente preciso criar respostas que tenham, por exemplo, Issue do GitHub no meio de uma frase:

  • Se você gostaria de solicitar [coisa] como um novo recurso, por favor, abra uma Issue do GitHub
  • [Recurso] está subdocumentado, uma Issue do GitHub seria apropriada para aumentar a visibilidade.
  • [Algum comportamento] parece ser um bug, por favor, abra uma Issue do GitHub com detalhes completos.

Eu tenho muitos desses tipos de trechos e os uso constantemente em nosso fórum de suporte ao usuário.

Genericamente, eu gostaria de poder inserir modelos exatamente na posição atual do cursor. É realmente irritante ter o modelo inserido em uma nova linha com outra nova linha acima dele, e ter que excluir manualmente todo esse espaço em branco apenas para trazê-lo de volta à posição anterior do cursor, várias vezes todos os dias. Eu só quero digitar minha resposta o mais rápido possível.

Ainda melhor seria uma maneira apenas de texto de inserir esses modelos sem ter que usar nenhuma interação de mouse/menu.

Você pode criar um tópico em Feature com a tag templates

4 curtidas

Uma postagem foi dividida em um novo tópico: Criar uma página de publicidade

3 posts foram movidos para um novo tópico: A lista de modelos leva de 5 a 10 segundos para carregar

:partying_face: Este plugin agora está incluído no core do Discourse como parte de Bundling more popular plugins with Discourse core. Se você auto-hospeda e usa o plugin, precisa removê-lo do seu app.yml antes da sua próxima atualização.

2 curtidas

Os modelos podem ajudar na criação de uma lista de respostas de e-mail prontas para candidatos que tentam se inscrever no meu fórum? Muitas vezes preciso rejeitar candidatos com base nas informações fornecidas durante a inscrição e preciso comunicar o motivo, com sugestões sobre o que precisaria mudar se eles quisessem se candidatar novamente. Uma seleção suspensa de respostas prontas para inserir no campo ‘motivo da rejeição’ é o que estou procurando.
Não consegui encontrar uma maneira de usar modelos para esse fim.

Você está enviando e recebendo as respostas via Discourse?

Você pode usar modelos em muitos campos de entrada onde a barra de ferramentas não é exibida usando o atalho de teclado Ctrl + Shift + I

3 curtidas

Sim, enviando pelo campo ‘por que você está rejeitando este usuário’ ao excluir o usuário que não foi aprovado.

Isso é bom!
Seria ainda melhor do que precisar lembrar de um atalho de teclado (que no meu caso seria usado talvez uma vez por mês e, portanto, esquecido) ter um pequeno botão associado a cada campo em branco, para acionar a caixa de diálogo de sub-modelos.

Sim, esse botão também seria útil para criar avisos oficiais de postagem, notas de usuário, etc.

Eu geralmente uso a ajuda de atalhos de teclado na barra lateral ou pressiono ? para descobrir que é “i”. (Tentei lembrar de “insert template”, mas isso não funcionou muito bem para mim, porque não consegui encontrar uma palavra em alemão que comece com “i”)