Search Essentials

Visão geral

O recurso de pesquisa é essencial para o AEM Communities. Além do Pesquisa na plataforma AEM recursos, a AEM Communities oferece a API de pesquisa UGC para pesquisar conteúdo gerado pelo usuário (UGC). O UGC tem propriedades exclusivas, pois é inserido e armazenado separadamente de outro conteúdo AEM e dados do usuário.

Para as Comunidades, as duas coisas geralmente pesquisadas são:

  • Conteúdo publicado por membros da comunidade

    • Usa a API de pesquisa UGC das comunidades AEM.
  • Usuários e grupos de usuários (dados do usuário)

    • Usa os recursos de pesquisa da plataforma AEM.

Esta seção da documentação é de interesse para desenvolvedores que estão criando componentes personalizados que criam ou gerenciam o UGC.

Nós de segurança e sombra

Para um componente personalizado, é necessário usar a variável SocialResourceUtilities métodos. Os métodos de utilitário que criam e pesquisam por UGC estabelecerão os nós de sombra e certifique-se de que o membro tenha as permissões corretas para a solicitação.

O que não é gerenciado pelos utilitários SRP são propriedades relacionadas à moderação.

Consulte Fundamentos de SRP e UGC para obter informações sobre os métodos utilitários usados para acessar os nós sombra de UGC e ACL.

API de pesquisa UGC

A variável Armazenamento comum de UGC O é fornecido por um dos vários SRPs (Storage Resource Providers, provedores de recursos de armazenamento), cada um possivelmente com um idioma de consulta nativo diferente. Portanto, independentemente do SRP escolhido, o código personalizado deve usar métodos do Pacote de API UGC (com.adobe.cq.social.ugc.api) que chamará a linguagem de consulta apropriada para o SRP escolhido.

Pesquisas ASRP

Para ASRP, o UGC é armazenado na nuvem de Adobe. Embora o UGC não esteja visível no CRX, moderação O está disponível nos ambientes autor e publicação. A utilização dos API de pesquisa UGC funciona para ASRP da mesma forma que para outros SRPs.

No momento, não existem ferramentas para gerenciar pesquisas ASRP.

Ao criar propriedades personalizadas que podem ser pesquisadas, é necessário aderir à requisitos de nomenclatura.

Pesquisas MSRP

Para MSRP, O UGC é armazenado no MongoDB configurado para usar Solr para pesquisa. O UGC não estará visível no CRX, mas moderação O está disponível nos ambientes autor e publicação.

Quanto ao MSRP e ao Solr:

  • O Solr incorporado para a plataforma AEM não é usado para MSRP.
  • Se estiver usando um Solr remoto para a plataforma AEM, ele poderá ser compartilhado com o MSRP, mas eles deverão usar coleções diferentes.
  • O Solr pode ser configurado para pesquisa padrão ou para pesquisa multilíngue (MLS).
  • Para obter detalhes sobre a configuração, consulte Configuração Solr para MSRP.

Os recursos de pesquisa personalizada devem usar o API de pesquisa UGC.

Ao criar propriedades personalizadas que podem ser pesquisadas, é necessário aderir à requisitos de nomenclatura.

Pesquisas JSRP

Para JSRP, o UGC é armazenado em Oak e é visível somente no repositório do autor ou instância de publicação do AEM no qual foi inserido.

Como o UGC normalmente é inserido no ambiente de publicação, para sistemas de produção de vários editores, é necessário configurar um publicar cluster, não um farm de publicação, para que o conteúdo inserido fique visível de todos os editores.

Para JSRP, o UGC inserido no ambiente de publicação nunca estará visível no ambiente de autor. Assim, moderação as tarefas ocorrem no ambiente de publicação.

Os recursos de pesquisa personalizada devem usar o API de pesquisa UGC.

Indexação do Oak

Embora os índices Oak não sejam criados automaticamente para a pesquisa da plataforma AEM, a partir do AEM 6.2 eles foram adicionados para o AEM Communities para melhorar o desempenho e fornecer suporte para paginação ao apresentar resultados de pesquisa UGC.

Se as propriedades personalizadas estiverem em uso e as pesquisas forem lentas, será necessário criar índices adicionais para as propriedades personalizadas, para torná-las mais eficientes. Para manter a portabilidade, siga as requisitos de nomenclatura ao criar propriedades personalizadas que podem ser pesquisadas.

Para modificar índices existentes ou criar índices personalizados, consulte Consultas e indexação do Oak.

A variável Gerenciador de índice Oak O está disponível no site ACS AEM Commons. Ele fornece:

  • Uma exibição de índices existentes.
  • A capacidade de iniciar a reindexação.

Para exibir os índices Oak existentes em CRXDE Lite, a localização é:

  • /oak:index/socialLucene

social-lucene

Propriedades de Pesquisa Indexada

Propriedades de pesquisa padrão

A seguir estão algumas das propriedades pesquisáveis usadas para vários recursos do Communities:

Propriedade Tipo de dados
isFlagged Booleano
isSpam Booleano
ler Booleano
influência Booleano
anexos Booleano
sentimento Longo
sinalizado Booleano
adicionado Data
modifiedDate Data
estado String
userIdentifier String
respostas Longo
jcr:title String
jcr:description String
sling:resourceType String
allowThreadedReply Booleano
isDraft Booleano
publishDate Data
publishJobId String
respondido Booleano
escolhido respondido Booleano
tag String
cq:Tag String
author_display_name String
location_t String
parentPath String
parentTitle String

Nomeação de propriedades personalizadas

Ao adicionar propriedades personalizadas, para que essas propriedades fiquem visíveis para classificações e pesquisas criadas com o API de pesquisa UGC, é obrigatório para adicionar um sufixo ao nome da propriedade.

O sufixo é para linguagens de consulta que usam um schema:

  • Ela identifica a propriedade como pesquisável.
  • Identifica o tipo de dados.

Solr é um exemplo de uma linguagem de consulta que usa um schema.

Sufixo Tipo de dados
_b Booleano
_dt Calendário
_d Duplo
_tl Longo
_s String
_t Texto

Notas:

  • Texto é uma string tokenizada, String não é. Uso Texto para pesquisas difusas (mais ou menos assim).

  • Para tipos de vários valores, adicione "s" ao sufixo, por exemplo:

    • viewDate_dt: propriedade de data única
    • viewDates_dts: lista da propriedade de datas

Filtros

Os componentes que incluem o sistema de comentários oferecem suporte para a adição do parâmetro de filtro aos endpoints.

A sintaxe de filtro para as lógicas AND e OR é expressa da seguinte maneira (mostrada antes de ser codificada por URL):

  • Para especificar OU usar um parâmetro de filtro com valores separados por vírgula:

    • filter=name eq 'Jennifer',name eq 'Jen'
  • Para especificar E usar vários parâmetros de filtro:

    • filter = name eq 'Jackson'&filter=message eq 'testing'

A implementação padrão do Componente de pesquisa O usa essa sintaxe, como pode ser visto no URL que abre a página Resultados da pesquisa no Guia de componentes da comunidade. Para experimentar, navegue até http://localhost:4503/content/community-components/en/search.html.

Os operadores de filtro são:

EQ igual
NE não é igual
LT menor que
LTE menor que ou igual a
GE maior que
GTE maior que ou igual a
LIKE correspondência difusa

É importante que o URL faça referência ao componente Comunidades (recurso) e não à página em que o componente é colocado:

  • Correto: componente do fórum
    • /content/community-components/en/forum/jcr:content/content/forum.social.json
  • Incorreto: página do fórum
    • /content/community-components/en/forum.social.json

Ferramentas SRP

Há um projeto GitHub da Adobe Marketing Cloud que contém:

Ferramentas AEM Communities SRP

Este repositório contém ferramentas para gerenciar dados no SRP.

Atualmente, há um servlet que oferece a capacidade de excluir todo o UGC de qualquer SRP.

Por exemplo, para excluir todo o UGC no ASRP:

curl -X POST http://localhost:4502/services/social/srp/cleanup?path=/content/usergenerated/asi/cloud -uadmin:admin

Resolução de problemas

Consulta Solr

Para ajudar a solucionar problemas com uma consulta Solr, ative o log DEBUG para

com.adobe.cq.social.srp.impl.SocialSolrConnector.

A consulta Solr real será exibida com o URL codificado no log de depuração:

A consulta a solr é: sort=timestamp+desc&bl=en&pl=en&start=0&rows=10 &q=%2Btitle_t:(hello)+%2Bprovider_id:\/content/usergenerated/asi/mongo/content/+%2Bresource_type_s:&df=provider_id&trf=verbatim&fq={!cost%3D100}report_suite:mongo

O valor de q é a consulta. Depois que a codificação do URL é decodificada, a consulta pode ser passada para a ferramenta Solr Admin Query para depuração adicional.

Nesta página