Guia de Especificação da Central de Ajuda



Sumário
Guia de Especificação da Central de Ajuda
Introdução
Conceito da busca
Definição das áreas
Busca no TDN
Conceito API - TDN
Busca inicial – TDN
Busca adicional – TDN
Tratamento do retorno da API – TDN
Link "Veja Mais" – TDN
Busca no Youtube
Conceito da API – You Tube
Busca inicial – You Tube
Busca adicional – You Tube
Tratamento de retorno da API - YouTube
Link "Veja Mais" – You Tube
Busca no Blog TOTVS
Conceito
Busca inicial – Blog
Busca adicional – Blog
Tratamento de retorno – Blog
Link "Veja Mais" – Blog
Busca no Fluig
Conceito da API - Fluig
Busca inicial – Fluig
Busca adicional – Fluig
Tratamento de retorno da API – Fluig
Link "Veja Mais" - Fluig
Documentação de Específicos e Customizações
Conceito
Busca Inicial – Customizado
Busca adicional – Customizado
Retorno da API - Customizado
Link "Veja Mais" – Customizado
Rotina de configuração – Customizado

Introdução

A Central de ajuda substitui o Help OnLine dos softwares da TOTVS. Ela deverá ser construída na tecnologia do ERP, segundo os padrões visuais e de busca contidos neste documento.
A central de ajuda irá realizar a busca em 4 fontes distintas conforme imagem abaixo:


A interface da Central de Ajuda deverá ser igual as exibidas abaixo:




Conceito da busca

A Central de Ajuda deverá ser aberta com uma busca inicial como base. Essa busca será baseada na linha de produto, segmento, versão/release, módulo e entrada de menu (rotina/action).
Na caixa de texto da central de ajuda o usuário poderá refinar a sua busca, conforme definição de cada fonte de busca.
Por se tratar de uma tecnologia OnLine, deverá ser previsto no desenvolvimento da interface do ERP, um mecanismo de controle para a exibição de uma mensagem padronizada quando o ambiente não estiver conexão com a internet.

A busca em cada fonte deverá ser feita de forma assíncrona, sem travar o acesso à central de ajuda enquanto as fontes não responderem as solicitações. Caso não seja possível conexão com alguma fonte de dados ou seja retornado algum erro como resposta, o erro deverá ser tratado conforme imagem abaixo e as outras fontes deverão permanecer acessíveis ao usuário.
A busca em cada fonte se divide em 3 pontos:

Busca executada no momento de abertura da central de ajuda. Essa busca levará em conta o contexto em que o usuário abriu a central de ajuda, verificando linha de produto, segmento, versão/release, módulo e entrada de menu (rotina/action).

Busca executada quando o usuário pesquisar algum termo na barra de busca.

Link exibido abaixo da lista de cada fonte. Deverá abrir uma página externa no navegador padrão do sistema operacional com a fonte em questão e alguns filtros de contexto.




Definição das áreas

Em "Você precisa Saber", será colocada o resultado da busca do Blog da TOTVS.
Em "Últimos Publicados", teremos 3 colunas de 3 fontes distintas: TDN, Youtube e Fluig.
Em "Customizações", será permitido exibir busca em fontes customizadas pelo próprio cliente. Seguindo especificações do tópico "Documentação de Específicos e Customizações" deste guia. Abaixo segue como deverá ser a exibição da fonte customizada pelo cliente (quando houver).

Serão exibidos até 10 resultados de cada fonte. Cada resultado deverá conter apenas o título com um hiperlink que abrirá a página real da fonte de pesquisa, assim, ao clicar em algum item do resultado da busca do TDN, por exemplo, deveremos abrir o navegador padrão do sistema operacional com o link do TDN.
Abaixo dos resultados de cada fonte deverá ter um link com a descrição "Veja mais" que deverá abrir a página da fonte de busca aplicando a busca inicial (a busca adicional fornecida pelo usuário através da caixa de busca não será repassada para o link "Veja mais").
Por exemplo:
Ao clicar em "Veja mais" da coluna do YouTube, deverá ser aberto no navegador a página do YouTube filtrando a playlist especifica do segmento.

Busca no TDN


Conceito API - TDN

A busca na fonte TDN será realizada segunda a API /rest/api/content/search documentada em https://docs.atlassian.com/confluence/REST/latest/#d3e517
A busca será feita em utilizando a linguagem CQL do Confluence, documentada em: https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql
Usaremos os seguintes campos:

Campo

Documentação

SPACE

https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql#AdvancedSearchingusingCQL-spaceSpaceSpace

LABEL

https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql#AdvancedSearchingusingCQL-labelLabelLabel

TEXT

https://developer.atlassian.com/confdev/confluence-rest-api/advanced-searching-using-cql#AdvancedSearchingusingCQL-textTextText



Busca inicial – TDN

A busca inicial do TDN deverá ser feita com os seguintes filtros:
SPACE = [Linha de produto]
LABEL = [segmento]
LABEL = [Versão / Release]
LABEL = [Módulo]*
LABEL = [Entrada de menu (rotina/action)]
LIMIT = 10**
*O filtro de módulo deve estar entre aspas. Exemplo '12_1_4'


Caso o usuário selecione algum método de autenticação, deverão ser disponibilizados os campos para preenchimento conforme o tipo definido. Exemplo:



O cliente deverá configurar duas URL's. Uma para a busca inicial e outra para a busca adicional. Os parâmetros da chamada GET deverão estar entre chaves duplas {{}} e o conteúdo opcional entre colchetes duplos [[]]. O conteúdo opcional são os parâmetros que podem não ser passados pela aplicação de acordo com o contexto.
Os parâmetros suportados são:
segmento
versao
modulo
rotina
texto
O parâmetro texto deverá ser usado apenas na URL de busca adicional, para indicar onde o texto que o usuário pesquisou deverá ser buscado.
Os parâmetros de módulo e rotina poderão não existir dependendo do contexto em que a central de ajuda for aberta. Por isso, nesses parâmetros deverão ser utilizados os colchetes duplos, conforme exemplo abaixo. http://localhost:8044/rest/api/content/search?cql=SPACE=QUALQUER and label=segmento and label=versao [[and label=modulo]] [[and label=rotina]] &LIMIT=10
Quando o parâmetro não for utilizado na central de ajuda, todo conteúdo entre os colchetes duplos deverá ser removido.

Busca Inicial – Customizado


A busca inicial deverá substituir na URL de busca inicial os parâmetros entre chaves duplas pelo seus respectivos valores, tratar a existência ou não dos parâmetros modulo e rotina e remover os caracteres de colchetes duplos (utilizados apenas para auxílio dos parâmetros modulo e rotina ).

Busca adicional – Customizado


A busca inicial deverá utilizar a URL de busca adicional para substituição dos parâmetros, considerando nesse caso o texto pesquisado pelo usuário, que deverá ser substituído pelo parâmetro texto.
Exemplo http://localhost:8044/rest/api/content/search?cql=SPACE=QUALQUER and label=segmento and label=versao [[and label=modulo]] [[and label=rotina]] and TEXT ~ texto &LIMIT=10

Retorno da API - Customizado


A API deverá retornar obrigatoriamente os dados no formato JSON. Para tratamento do retorno, deverá ser disponibilizada na interface de configuração da fonte, uma área contendo os seguintes campos para o usuário configurar:

Título exibido na central de ajuda

Será a URL inicial utilizada na criação dos links exibidos na central de ajuda

Deverá identificar o caminho do campo no JSON retornado que contém a URL. Será um complemento da URL Base na criação dos links. Caso o JSON contenha o caminho completo neste campo, a URL base não deverá ser preenchida. Deverá ser preenchido o caminho completo utilizado o caractere dois pontos entre cada campo.

Deverá identificar o caminho do campo no JSON retornado que contém o título que será exibido na Central de Ajuda. Deverá ser preenchido o caminho completo utilizado o caractere dois pontos entre cada campo.

Quantidade limite de caracteres exibidos no título do link. O conteúdo do campo title deverá ser truncado de acordo com esse limite.

Exemplo:
URL base =http://localhost:8044/
Campo URL = results:webui
Campo Title = results:title
Limite Title = 50
A configuração exemplificada acima define que no JSON retornado, deverá ser percorrido o nó results e será criado um link para cada item deste nó utilizando como href a URL http://localhost:8044/ concatenada com o campo webui e como descrição será utilizado o campo title (filho também do nó results), cortando em 50 caracteres.
Considerando que o JSON retornado foi
{
"results": [
{
"id": "557074",
"type": "page",
"title": "Relatórios MATR263/MATR264/MATR266",
"_links": {
"webui": "/pages/viewpage.action?pageId=557074",
"tinyui": "/x/EoAI",
"self": "http://localhost:8044/rest/api/content/557074"
},
Deverá ser criado o seguinte link
<a href="http:localhost:8044/pages/viewpage.action?pageId=557074">Relatórios MATR263/MATR264/MATR266</a>

Link "Veja Mais" – Customizado


Para o link "Veja Mais" o cliente deverá configurar uma URL que será usada no href do link. Poderão ser utilizados pelo cliente os mesmos parâmetros da busca inicial e a aplicação deverá fazer a substituição dos parâmetros na abertura da tela.

Rotina de configuração – Customizado


A rotina de configuração deverá ser dividida em duas áreas e permitir a configuração dos seguintes campos:
Configuração de acesso à API
URL Busca Inicial
URL Busca Avançada
URL "Veja Mais"
Método de autenticação


Configuração de retorno da API
Título da fonte de integração (para exibição na central de ajuda)
URL base
Campo URL
Campo Title
Limite caracteres Title