Páginas filhas
  • Guia de Especificação da Central de Ajuda TOTVS

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Guia de Especificação da Central de Ajuda TOTVS

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.

Cada framework deverá A equipe TOTVS | HTML Framework irá desenvolver a sua central de ajuda, a ser utilizada por todos os Frameworks, seguindo as especificações do guia. A expedição e atualização da central deverá acompanhar a expedição do produto.

A central de ajuda irá realizar a busca em 4 5 fontes de informações conforme imagem abaixo: Image Removed  

Image Added


A interface da Central de Ajuda deverá seguir o padrão das imagens abaixo:

Image Added


Image Added


Image RemovedImage Added Image Removed Image Removed


Image Added

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 (descritas mais adiante neste guia).

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 possuir uma 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.


Image Removed Image Added


A busca em cada fonte se divide basicamente em 3 pontos:

  • Busca inicial

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 adicional

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

  • Link "Veja Mais"

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.

Internacionalização

A central de ajuda deverá ser internacionalizada seguindo as seguintes definições:

  • As strings fixas da central de ajuda deverão ser traduzidas de acordo com o idioma do sistema que acionou a central
  • As fontes de buscas deverão respeitar as definições de internacionalização descritas no decorrer deste guia, nos tópicos de cada fonte de dados.

Definição das áreas

Em "Você precisa Saber",  teremos 3 colunas as seguintes fontes: 

  • Blog Biblioteca (site da TOTVS)
  • Fluig - Comunidade #Segmento (de acordo com o segmento utilizado)
  • Fluig - Comunidade @Consultoria Tributária

Em "Últimos Publicados", teremos 3 colunas de 3 fontes distintas:

  • TDN
  • Youtube 
  • Fluig - Comunidades @ de acordo com o módulo (caso haja mais de uma comunidade para o mesmo módulo, os resultados serão divididos e o link veja mais será montado com base na comunidade de maior relevância)

Em "Central de atendimento", teremos 2 colunas tendo o Zendesk como fonte.

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. 


Definições básicas de cada fonte de busca:

  • Serão exibidos até 6 resultados de cada fonte, com exceção do Zendesk que exibirá 12 resultados (6 em cada coluna)
  • Cada resultado deverá conter 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. Com exceção apenas do Blog, que deverá conter a data da publicação acima do título.
  • 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.

 

Informações importantes

Atualmente o TDN não suporta o método REST que será utilizado nessa central, por isso, para o desenvolvimento poderá ser utilizado o TDN do seguinte endereço: {+}http://tdn-homolog.totvs.com/+. Posteriormente o TDN da TOTVS será atualizado e poderemos atualizar a url na central de ajuda.
Além disso, como ainda não foram disponibilizados tokens no ambiente Fluig da totvs, será necessário instalar um Fluig local para utilizar no desenvolvimento.
 

Busca no TDN


Busca no TDN


Aviso
titleAtenção

Como o help antigo não será migrado para o TDN a tempo da expedição da primeira versão da central de ajuda,

Aviso
titleAtenção

Como o help antigo não será migrado para o TDN a tempo da expedição da primeira versão da central de ajuda, iremos utilizar o primeiro link da coluna do TDN para redirecionar para o atual help do produto. Este link deve ter a descrição "Documento de Referência do Produto" . Conforme exemplo em imagem abaixo.

 

e, se possível, deverá direcionar para a página do help do produto já na página da rotina que o usuário estiver.

Mais 6 links deverão ser o retorno do TDN.

Veja exemplo em imagem abaixo.



Image Added 

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:

Busca inicial – TDN

A busca inicial do TDN deverá ser feita com os seguintes filtros:

SPACE = [Linha de produto]LABEL = [segmento]

LABEL = ( [Versão com Release] OR LABEL = [Versão sem release]  )

LABEL = [Módulo]

LABEL = [Entrada de menu (rotina/action)]

LIMIT = 6 
 
Retornar no máximo 6 resultados.

Os filtros de módulo e entrada de menu (rotina/action) só serão feitos quando o contexto em que o usuário abrir a central de ajuda possuir essas informações, caso contrário esses labels não serão passados na busca.

O filtro de versão deverá ser capaz de encontrar conteúdos publicados na release ou conteúdos do help do sistema. Os label de versão do conteúdo de help do sistema conterá apenas a versão maior, por exemplo, versao_12. Porém o label de versão de um conteúdo comum conterá o release completo, por exemplo: versao_12_1_5.

Para conseguir buscar os dois conteúdos, a busca de versão será feita utilizando o operador OR e filtrando as duas condições. Conforme exemplo abaixo:

Bloco de código
languagexml
titleExemplo
( label = versao_12 or label = versao_12_1_5 ) 
Aviso
titleAtenção

Os filtros de Segmento, Módulo e Rotina/Action são mutuamente exclusivos, ou seja:

Quando a Central de Ajuda for chamada de alguma rotina ou action, o filtro de ROTINA/ACTION deve ser feito.

Quando a Central de Ajuda for chamada de um módulo, mas sem executar uma rotina, o filtro de MÓDULO deve ser feito.

Quando a Central de Ajuda for chamada de um contexto sem módulo e sem rotina, o filtro de SEGMENTO deve ser feito.


Isso ocorre porque em algumas rotinas podem ser executadas por mais de um módulo distinto ou por segmentos distintos e a associação de tags no TDN é feita apenas com o módulo ou segmento dono da rotina.

 

 



Exemplo 1.

Cenário: Usuário utilizando o Microsiga Protheus versão 12.1.4, segmento Manufatura, módulo Faturamento executando a rotina Pedido de Vendas (MATA410) o usuário pressiona F1 e a central de ajuda deverá executar o GET conforme abaixo.

http://tdn-homolog.totvs.com/rest/api/content/search?cql=SPACE=MP  and (label=versao_12_1_4 or label = versao_12) and label=mata410&LIMIT=6


Exemplo 2.

Cenário: Usuário utilizando o Microsiga Protheus versão 12.1.4, segmento Manufatura, antes de efetuar o login e selecionar o módulo, pressiona F1 e a central de ajuda deverá executar o GET conforme abaixo. 

http://tdn-homolog.totvs.com/rest/api/content/search?cql=SPACE=MP and label=manufatura and  and (label=versao_12_1_4 or label = versao_12) &LIMIT=6

Busca adicional – TDN

A busca adicional no TDN deverá fazer todos os filtros da busca inicial e adicionar o filtro aplicado pelo usuário utilizando o campo TEXT e o operador contains ~ Antenção: O conteúdo a ser pesquisado deverá estar entre aspas.

Exemplo de chamada GET para busca adicional no TDN: 

http://tdn-homolog.totvs.com/rest/api/content/search?cql=SPACE=MP and label=manufatura and  and  (label=versao_12_1_4 or label = versao_12) and label=faturamento and label=mata410 and TEXT ~ 'pedido de venda matriz' &LIMIT=6

Tratamento do retorno da API – TDN

O retorno das chamadas será um JSON semelhante ao exemplo abaixo:
{
"results": [
{
"id": "557074",
"type": "page",
"title": "Relatórios MATR263/MATR264/MATR266",
"_links": {
"webui": "/pages/viewpage.action?pageId=557074",
"tinyui": "/x/EoAI",
"self": "http://tdn-homolog.totvs.com/rest/api/content/557074"
},
"_expandable": {
"metadata": "",
"operations": "",
"children": "",
"history": "/rest/api/content/557074/history",
"ancestors": "",
"body": "",
"version": "",
"descendants": "",
"space": "/rest/api/space/MP"
}
},
{
"id": "557072",
"type": "page",
"title": "OX100AIP - Item do Pedido de Venda na Matriz Enviada ao Pedido de Venda",
"_links": {
"webui": "/display/MP/OX100AIP+-+Item+do+Pedido+de+Venda+na+Matriz+Enviada+ao+Pedido+de+Venda",
"tinyui": "/x/EIAI",
"self": "http://tdn-homolog.totvs.com/rest/api/content/557072"
},
"_expandable": {
"metadata": "",
"operations": "",
"children": "",
"history": "/rest/api/content/557072/history",
"ancestors": "",
"body": "",
"version": "",
"descendants": "",
"space": "/rest/api/space/MP"
}
}
],
"start": 0,
"limit": 25,
"size": 2,
"_links": {
"self": "http://tdn-homolog.totvs.com/rest/api/content/search?LIMIT=10&cql=SPACE=MP%20and%20label=manufatura%20and%20label=%2712_1_4%27",
"base": "http://tdn-homolog.totvs.com",
"context": ""
}
}
O link deverá ser montado utilizando os campos title e webui (concatenado com a URL do TDN) de cada item do retorno recebido, conforme exemplo abaixo:
<a href="http://tdn.totvs.com/pages/viewpage.action?pageId=557074"> Relatórios MATR263/MATR264/MATR266</a>

Link "Veja Mais" – TDN

O link deverá abrir a página do TDN aplicando os filtros da Busca Inicial (SPACE + LABELS), considerando apenas a versão, sem release, do produto.

Para filtrar o space basta colocar o ID da space antes de colocar os valores dos labels, conforme exemplo abaixo

<a href="http://tdn.totvs.com/label/PROT/manufatura+versao_12_1_5+faturamento+MATA410">Veja Mais</a>

No exemplo acima, PROT é o ID da space Linha Microsiga Protheus. Desta forma serão exibidos os conteúdos da SPACE Linha Microsiga Protheus que possuirem os labels manufatura, versao_12_1_5, faturamento e MATA410

Internacionalização - TDN

Para linhas de produto diferente do Microsiga Protheus, a internacionalização deverá ser feita através do plugin do google translate.

O TDN possuirá o plugin de tradução instalado e a central de ajuda deverá ajustar a url dos links de acordo com a regra abaixo:

Se o idioma do produto for espanhol, os links do TDN deverão terminar com o seguinte trecho

#googtrans(pt|es)

Bloco de código
languagexml
titleExemplo
http://tdn-homolog.totvs.com/display/PROT/TSPIJZ_DT_geracao_calculo_ocorrencia_inexistente_gfea032#googtrans(pt|es)
 


Se o idioma do produto for ingles, os links do TDN na central de ajuda deverão terminar com o trecho

#googtrans(pt|en)

Bloco de código
languagexml
titleExemplo
http://tdn-homolog.totvs.com/display/PROT/TSPIJZ_DT_geracao_calculo_ocorrencia_inexistente_gfea032#googtrans(pt|en)
 


Na linha de produto Microsiga Protheus existem artigos já publicados em outros temas e ainda está pendente de definição.

Busca no

Youtube 

Zendesk

Conceito

da

API

– You Tube

- TDN

A busca na fonte Zendesk será realizada segundo a API /api/v2/help_center/articles/search.json documentada em 

Será utilizada a API v3 do YouTube para busca na central de ajuda TOTVS. Links para documentação da API do YouTube: {+}https://developers.google.com/youtube/v3/docs/playlistItems/list?hl=pt-br+ {+}https://developersdeveloper.googlezendesk.com/youtuberest_api/v3/docs/search/list?hl=pt-br+help_center/articles

Usaremos os seguintes campos: Categoria (category), seção (section) e label (label_names)


Busca inicial –

You Tube

Zendesk

A busca inicial do TDN deverá buscar os 6 últimos vídeos da playlist do segmento utilizando o método playlistItems e filtrando pelo campo playlistID de acordo com a documentação abaixo.
{+}https://developers.google.com/youtube/v3/docs/playlistItems/list?hl=pt-br+ Os ID's de playlist devem ser usados conforme tabela abaixo:

Segmento

ID da playlist

Agroindústria

PLXa8l0dq5zRn1TmeVghZIeVSLQdg9G95S

Construção e Projetos

PLXa8l0dq5zRm2akf27RObAU1QjyG-gqI1

Distribuição e Logística

PLXa8l0dq5zRlqnISVp883CEZjCTCBdo6h

Educacional

PLXa8l0dq5zRnHMKTeXiZFWqS1BskvHyWt

Financial Services

PLXa8l0dq5zRkR_D1EPma_vYOO7jw2H8xs

Jurídico

PLXa8l0dq5zRk8YB4St211088OuGt5qln2

Manufatura

PLXa8l0dq5zRnqaxgoQ9-VNm1On9DEp8ey

Saúde

PLXa8l0dq5zRn-O2W-E6w9napYscdbDYAl

Serviços

PLXa8l0dq5zRlvahGL7BlOBR61dY57_AJp

Varejo

PLXa8l0dq5zRnVePPFrWgKbKutUXq020Sl

Cross e Backoffice

PLXa8l0dq5zRm-endolCdVdmlfN0UEVjuy

ser feita com os seguintes filtros:

CATEGORY = [Linha de produto]

SECTION = [Modulo]

LABEL_NAME = [Módulo] e [Action]

Aviso
titleAtenção

Avaliar a necessidade de um "de para" considerando os atributos categoria x linha de produto e section x modulo. Na documentação do zendesk toda busca que referencia estes atributos são realizadas utilizado o id (campo inteiro) da categoria ou seção para realizar-se.


Por default o Zendesk trará, no máximo, 25 resultados na primeira pagina da busca. Dos resultados obtidos, deverão ser exibidos 12, sendo 6 em cada coluna.

Os filtros de módulo e entrada de menu (rotina/action) só serão feitos quando o contexto em que o usuário abrir a central de ajuda possuir essas informações, caso contrário esses labels não serão passados na busca.


Aviso
titleAtenção

Os filtros de Módulo e Rotina/Action são mutuamente exclusivos, ou seja:

Quando a Central de Ajuda for chamada de alguma rotina ou action, o filtro de ROTINA/ACTION deve ser feito.

Quando a Central de Ajuda for chamada de um módulo, mas sem executar uma rotina, o filtro de MÓDULO deve ser feito.


Isso ocorre porque em algumas rotinas podem ser executadas por mais de um módulo e a associação de tags no Zendesk será feita apenas com o módulo dono da rotina.



Exemplo 1.

Cenário: Usuário utilizando o Microsiga Protheus, módulo Faturamento, executando a rotina Pedido de Vendas (MATA410). O usuário pressiona F1 e a central de ajuda deverá executar o GET conforme abaixo.

https://totvssuporte.zendesk.com/api/v2/help_center/articles/search.json?category={category_id}&section={section_id}&label_names=mata410


Exemplo 2.

Cenário: Usuário utilizando o Microsiga Protheus, antes de efetuar o login e selecionar o módulo. O usuário pressiona F1 e a central de ajuda deverá executar o GET conforme abaixo. 

https://totvssuporte.zendesk.com/api/v2/help_center/articles/search.json?category={category_id}&section={section_id}

Busca adicional – Zendesk

A busca adicional no Zendesk deverá fazer todos os filtros da busca inicial e adicionar o filtro aplicado pelo usuário, incluindo o texto buscado pelo cliente no parâmetro query.

Atenção: O conteúdo a ser pesquisado deverá estar entre aspas.

Exemplo de chamada GET para busca adicional no Zendesk: 

https://totvssuporte.zendesk.com/api/v2/help_center/articles/search.json?category={category_id}&section={section_id}&label_names=mata410&query="pedido de venda"


Tratamento do retorno da API – Zendesk

O retorno das chamadas será um JSON semelhante ao exemplo abaixo:

{
"count": 1,
"next_page": null,
"page": 1,
"page_count": 1,
"per_page": 25,
"previous_page": null,
"results": [
{
"id": 115010704247,
"url": "https://totvssuporte.zendesk.com/api/v2/help_center/pt-br/articles/115010704247-KCS-Quais-s%C3%A3o-os-Benef%C3%ADcios-Qualitativo-e-Quantitativo-da-Metodologia-KCS.json",
"html_url": "https://atendimento.totvs.com/hc/pt-br/articles/115010704247-KCS-Quais-s%C3%A3o-os-Benef%C3%ADcios-Qualitativo-e-Quantitativo-da-Metodologia-KCS",
"author_id": 6625565768,
"comments_disabled": false,
"draft": false,
"promoted": false,
"position": 0,
"vote_sum": 0,
"vote_count": 0,
"section_id": 205996147,
"created_at": "2017-07-28T14:32:34Z",
"updated_at": "2017-08-14T00:14:00Z",
"name": "KCS - Quais são os Benefícios Qualitativo e Quantitativo da Metodologia KCS",
"title": "KCS - Quais são os Benefícios Qualitativo e Quantitativo da Metodologia KCS",
"body": "<p><strong>Dúvida</strong></p>\n<p>Quais são os Benefícios Qualitativo e Quantitativo da Metodologia KCS?</p>\n<p><strong> </strong></p>\n<p><strong>Solução</strong></p>\n<p>Os benefícios em adotar a metodologia KCS atingem a todos os stakeholders: <strong>Cliente</strong>, <strong>Analista</strong> e <strong>TOTVS</strong>.</p>\n<p><strong>Cliente<br /></strong><span class=\"wysiwyg-underline\">Qualitativo</span></p>\n<ul>\n<li>Agilidade na resolução do incidente;</li>\n<li>Aumenta a produtividade;</li>\n<li>Facilita a interação e navegação do cliente para seu autoatendimento</li>\n</ul>\n<p><span class=\"wysiwyg-underline\">Quantitativo</span></p>\n<ul>\n<li> Aumenta a taxa de resolução no primeiro contato;</li>\n<li>Pesquisa de satisfação dos clientes;</li>\n<li>Taxa de cumprimento de Atendimento;</li>\n<li>Frequência de visitas a base de conhecimento TOTVS.</li>\n</ul>\n<p><strong>Analista<br /></strong><span class=\"wysiwyg-underline\">Qualitativo</span></p>\n<ul>\n<li>Referência de conhecimento no negócio TOTVS;</li>\n<li>Feedback de seus pares;</li>\n<li>Sentimento de realização e contribuição;</li>\n<li>Sentimento de autonomia.</li>\n</ul>\n<p><span class=\"wysiwyg-underline\">Quantitativo</span></p>\n<ul>\n<li>Reduz o número de interações entre as áreas;</li>\n<li>Satisfação com o trabalho;</li>\n<li>Ampliação dos conhecimentos técnicos;</li>\n<li>Desenvolvimento de novos conhecimentos relacionados com suas competências.</li>\n</ul>\n<p><strong>TOTVS<br /></strong><span class=\"wysiwyg-underline\">Qualitativo</span></p>\n<ul>\n<li>Certificação;</li>\n<li>Melhora a satisfação do cliente (CSAT).</li>\n</ul>\n<p><span class=\"wysiwyg-underline\">Quantitativo</span></p>\n<ul>\n<li>Redução de ticket;</li>\n<li>Melhora do tempo médio na primeira resposta (FCR).</li>\n</ul>",
"source_locale": "pt-br",
"locale": "pt-br",
"outdated": false,
"outdated_locales": [],
"label_names": [
"kcs"
],
"snippet": "<em>teste</em>",
"result_type": "article"
}
]
}

O link deverá ser montado utilizando os campos title e html_url  de cada item do retorno recebido, conforme exemplo abaixo: 
<a href="https://atendimento.totvs.com/hc/pt-br/articles/115010704247-KCS-Quais-s%C3%A3o-os-Benef%C3%ADcios-Qualitativo-e-Quantitativo-da-Metodologia-KCS"> KCS - Quais são os Benefícios Qualitativo e Quantitativo da Metodologia KCS</a>

Link "Veja Mais" – Zendesk

O link deverá abrir a página do Zendesk aplicando os filtros da Busca Inicial (Category, section. label_names).

Para filtrar o space basta colocar o ID da space antes de colocar os valores dos labels, conforme exemplo abaixo

<a href="https://atendimento.totvs.com/hc/pt-br/search?category={category_id}&section={section_id}&label_names=mata410">Veja Mais</a>



Busca no Youtube

Conceito da API – You Tube

Será utilizada a API v3 do YouTube para busca na central de ajuda TOTVS. Links para documentação da API do YouTube: Abaixo segue um exemplo de busca na playlist do Segmento de Varejo: https://www.googleapis.com/youtube/v3/playlistItems?part=snippet&playlistId=PLXa8l0dq5zRnVePPFrWgKbKutUXq020Sl&maxResults=10&key=\{YOUR_API_KEY}
Obs: no lugar de {YOUR_API_KEY} deverá ser colocada a chave de acesso à API (que deverá ser gerada conforme orientações do link {+}https://developers.google.com/youtube/v3/getting-started/docs/playlistItems/list?hl=pt-br+) Deverá ser usado um email por linha de produto TOTVS para geração da API_KEY. Esse e-mail deve ser solicitado junto ao QA.

Busca adicional

+ {+}https://developers.google.com/youtube/v3/docs/search/list?hl=pt-br+

Busca inicial – You Tube

Utilizar o método Search ({+}https://developers.google.com/youtube/v3/docs/search/list?hl=pt-br+) e filtrar os seguintes campos: Part = id, snippet channelId = UChsYWCL7MFkDM4OsK7de8dw [ID do canal Tutoriais e Demonstrações - TOTVS) type = video q = [linha de produto] + [segmento] +  [Versão / Release] + [Módulo*] + [rotina*] + [texto pesquisado pelo usuário] maxResults  maxResults = 6

Obs: O canal a ser filtrado será sempre o canal de Tutoriais e Demonstrações da TOTVS, com ID = UChsYWCL7MFkDM4OsK7de8dw

*Os campos módulo e rotina devem ser enviados quando o contexto onde a central de ajuda for aberta possuir essas informações.

Exemplo de chamada GET: https://www.googleapis.com/youtube/v3/search?part=id%2C+snippet&q=Microsiga+Protheus+manufatura+12_1_4+faturamento+MATA410&channelId=UChsYWCL7MFkDM4OsK7de8dw &maxResults=6&key={YOUR_API_KEY}

Busca adicional – You Tube

Deverá utilizar o mesmo método da busca inicial, porém, incluindo a pesquisa do usuário.

quando o contexto onde a central de ajuda for aberta possuir essas informações. Exemplo de chamada GET: https://www.googleapis.com/youtube/v3/search?part=id%2C+snippet&q=Microsiga+Protheus+manufatura+12_1_4+faturamento+MATA410+texto+qualquer+do+usuario&channelId=UChsYWCL7MFkDM4OsK7de8dw &maxResults=106&key={YOUR_API_KEY}

Tratamento de retorno da API - YouTube

Será retornado um JSON, onde deverá ser usado o campo TITLE e o campo VIDEOID para exibir um link dos vídeos na central de ajuda. A descrição do link deverá ser o campo TITLE e o link deverá ser montado concatenando a URL "https://www.youtube.com/watch?v=" + o VIDEOID de cada vídeo retornado no JSON Exemplo de retorno:
 
{
"kind": "youtube#searchListResponse",
"etag": "\"Y3xTLFF3RLtHXX85JBgzzgp2Enw/EO1WEOXkxTksXPFCPYRfAtCZ1mE\"",
"nextPageToken": "CAoQAA",
"pageInfo": {
"totalResults": 32,
"resultsPerPage": 10
},
"items": [
{
"kind": "youtube#searchResult",
"etag": "\"Y3xTLFF3RLtHXX85JBgzzgp2Enw/sSo9Pomr2PmoRmxo3At8ldgmrzs\"",
"id": {
"kind": "youtube#video",
"videoId": "Ru7YQbMLgNg"
},
"snippet": {
"publishedAt": "2015-05-19T17:56:13.000Z",
"channelId": "UCliKm_T3MrZrCfow-HrvzEA",
"title": "Universo TOTVS 2015",
"description": "O Universo TOTVS é o principal evento da companhia e ocorre no dia 16 de junho (terça-feira), a partir das 8 horas non stop até às 19h, no Expo Center Norte, ...",
"thumbnails": {
"default": {
"url": "https://i.ytimg.com/vi/Ru7YQbMLgNg/default.jpg"
},
"medium": {
"url": "https://i.ytimg.com/vi/Ru7YQbMLgNg/mqdefault.jpg"
},
"high": {
"url": "https://i.ytimg.com/vi/Ru7YQbMLgNg/hqdefault.jpg"
}
},
"channelTitle": "Totvs",
"liveBroadcastContent": "none"
}
},
...
De acordo com os exemplos acima, deverá ser construído um link com a seguinte estrutura:
 
<a href="https://www.youtube.com/watch?v=Ru7YQbMLgNg">Universo TOTVS 2015</a>
Os pontos destacados acima devem ser pegos dinamicamente do JSON retornado pela API, o restante do conteúdo será estático.

Link "Veja Mais" – You Tube

O link deverá abrir a página do You Tube com a playlist da busca inicial.
Exemplo de Link:
<a href="https://www.youtube.com/channel/UChsYWCL7MFkDM4OsK7de8dw/playlistsearch?list=PLXa8l0dq5zRnVePPFrWgKbKutUXq020Slquery=Microsiga+Protheus+manufatura+12_1_4+faturamento+MATA410">Veja Mais</a>

Internacionalização - YouTube

Não será feita nenhuma alteração na central quanto a internacionalização da fonte YouTube.
Ao acessar um vídeo, o YouTube permite ativar a legenda do áudio em diversos idiomas.
 

Busca no Blog TOTVS

Conceito

O blog TOTVS {+}http://blog.totvs.com/+ não possui uma API para realizar as buscas. Ele possui apenas um feed de notícias que pode ser acessado por segmento e retorna um XML com as últimas notícias do segmento. Por conta disso o Blog TOTVS realizará apenas a Busca Inicial. Quando um usuário filtrar algo na central de ajuda, esse filtro não será aplicado ao blog.

Busca inicial – Blog

A busca inicial será feita utilizando o feed rss do segmento conforme modelo abaixo. {+}http://blog.totvs.com/segmentos/nome-do-segmento/feed/+
 
Exemplo: http://blog.totvs.com/segmentos/distribuicao-e-logistica/feed/
 
Atenção: conforme exemplo acima, segmentos que possuírem mais de uma palavra deverão ser concatenados com um hífen. Os segmentos disponíveis no blog são:

Segmento

Agroindústria

Construção e Projetos

Distribuição e Logística

Educacional

Financial Services

Jurídico

Manufatura

Microempresas

Saúde

Serviços

Varejo

 


Busca adicional – Blog

O blog não fará busca adicional.

Tratamento de retorno – Blog

O blog retorna um XML de acordo com o modelo abaixo.[ |https://i.ytimg.com/vi/Ru7YQbMLgNg/hqdefault.jpg]
 
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" version="2.0">
<channel>
<title>TOTVS S/A » Distribuição e logística</title>
<atom:link href="http://blog.totvs.com/segmentos/distribuicao-e-logistica/feed/" rel="self" type="application/rss+xml"/>
<link>http://blog.totvs.com</link>
<description>Blog da TOTVS</description>
<lastBuildDate>Tue, 23 Jun 2015 20:02:09 +0000</lastBuildDate>
<language>pt-BR</language>
<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>
<generator>http://wordpress.org/?v=4.2.2</generator>
<image>
<url> http://blog.totvs.com/wp-content/uploads/2015/01/favicon1-54bfffc8v1_site_icon-32x32.png
</url>
<title>» Distribuição e logística</title>
<link>http://blog.totvs.com</link>
<width>32</width>
<height>32</height>
</image>
<item>
<title>Pagamento de frete eletrônico</title>
<link> http://blog.totvs.com/pagamento-de-frete-eletronico/
</link>
<comments> http://blog.totvs.com/pagamento-de-frete-eletronico/#comments
</comments>
<pubDate>Tue, 02 Jun 2015 13:58:50 +0000</pubDate>Link "Veja Mais" - Blog
Para cada item retornado, deverão ser utilizadas as tags <title> e <link> para montagem dos links que serão exibidos ao usuário. Exemplo de Link:  
Exemplo:
<a href="http://blog.totvs.com/pagamento-de-frete-eletronico/">Pagamento de frete eletrônico</a>

O blog não permite filtrar a quantidade de links retornados, portanto, o retorno deverá ser tratado para exibir apenas 6 resultados.

 

Link "Veja Mais" – Blog

O link deverá abrir a página do Blog da TOTVS na página do segmento conforme exemplo abaixo.[  |https://i.ytimg.com/vi/Ru7YQbMLgNg/hqdefault.jpg]
Exemplo:
<a href="http://blog.totvs.com/segmentos/distribuicao-e-logistica">Veja Mais</a>

Internacionalização - Blog

A internacionalização no blog será feita da seguinte forma:
Quando o idioma do ERP for espanhol, deverá ser passado o parâmetro ?lang=es na chamada
Exemplo: http://blog.totvs.com/segmentos/construcao-e-projetos/?lang=es
Para o idioma português é opcional o parâmetro ?lang=pt (português é o idioma padrão quando nenhum parâmetro for passado)
Quando o idioma for inglês o blog deverá ser consultado em português, pois não há tradução para inglês das páginas dos segmentos filtrados na central de ajuda.

Busca no Fluig

Conceito da API - Fluig

O Fluig será exibido em 3 diferentes colunas para as seguintes comunidades:

  • #Segmento
    Deverão ser
      • São exibidos os últimos 6 posts da comunidade associada ao segmento utilizado
      • Esta coluna é exibida na aba "Você Precisa Saber"
    • @módulo
      Deverão ser
        • São exibidos 6 posts
      para as
        • das comunidades associadas ao módulo acessado. No caso de existir mais de uma comunidade
      pro
        • para o mesmo módulo,
      deverão ser divididos
        • os resultados exibidos são divididos entre as comunidades e o link Veja Mais
      deverá ser
        • é montado baseado na comunidade de maior relevância
      .
        • .
        • Esta coluna é exibida na aba "Últimos Publicados"
      • @Consultoria Tributária
        Deverão
          • São ser exibidos 6 posts das comunidades de
        consultoria tributária seguindo a mesma regra das comunidades @módulo. Caso exista mais de uma comunidade, dividir
          • Consultoria Tributária de Segmentos TOTVS, P@ E-Social e P@ Fiscal, dividindo os resultados e montar o link Veja Mais com a comunidade
        mais relevante
          • Consultoria Tributária de Segmentos TOTVS.

        O mapeamento de quais comunidades devem ser exibidas pra cada módulo está definido no anexo abaixo
          FLUIG_Comunidades_Final.xlsx
         
        As comunidades #Segmentos deverão ser consultadas conforme a lista abaixo: 

        Nome

        Alias

        Manufatura

        manufatura-community

        Construção e Projetos

        construoeprojetos-community

        Educacional

        educacional-community

        Financial

        financial-community

        Jurídico

        jurdico-community

        Saúde

        sade-community

        Microempresas

        microempresas

        Serviços

        servios-community

        Distribuição e logística

        distribuioelogstica-community

        Varejo

        varejo-community

        Deverá ser usado o método listSortedPost da API Fluig, conforme documentação {+}http://api.fluig.com/resource_PostServiceRest.html#path_social_post_listSortedPostalias.html+ Atenção: a API do Fluig necessita de autenticação. Deverá ser solicitado junto ao QA os tokens de acesso para autenticação da Central de Ajuda TOTVS.
        [ |https://i.ytimg.com/vi/Ru7YQbMLgNg/hqdefault.jpg]
        Atenção
        Icon
        Diferente das outras fontes (Blog, YouTube e TDN), o Fluig será a única fonte onde o conteúdo publicado na central será um conteúdo privado que necessita de autenticação (todas as outras fontes disponíveis na central de ajuda exibirão conteúdos públicos). Dessa forma, por questões de segurança, os tokens de autenticação do Fluig NÃO devem ficar acessíveis aos clientes em arquivos javascript ou ini.

        Busca inicial – Fluig

        A busca será feita pelo ALIAS da comunidade, listando os 6 últimos resultados, conforme exemplo de chamada GET abaixo.
        Exemplo: http://fluig.totvs.com/api/public/social/post/listSortedPost/construoeprojetos-community?limit=6

        Busca adicional – Fluig

        A busca adicional não será aplicada ao Fluig. 

        Tratamento de retorno da API – Fluig

        A API do Fluig irá retornar um JSON semelhante ao exemplo abaixo.  


         

        object

         


        {2}

         

         




         

         

        content

         


        [2]

         

         



         

        0

         


        {31}

         

         



         

        postId

        :

        2681855

         

         



         

        text

        :

        Olá,\nAlguém poderia por favor me explicar o recurso de Associação entre Serviços e Atividades?\nQue seria o objetivo e aplicações?\nObrigado.\n#TOP

         

         



         

        formattedWithoutMention

        :

        Olá,\nAlguém poderia por favor me explicar o recurso de Associação entre Serviços e Atividades?\nQue seria o objetivo e aplicações?\nObrigado.\n#TOP

         



         

         

        link

        :

         

         

         




         

        formattedLink

        :

         

         




         

         

        youtubeVideoId

        :

        null

         

         



         

        user

         


        {33}

         

         



         

        social

         


        {33}

         

         



         

        creationDate

        :

        1435278028000

         

         



         

        tenantId

        :

        10097

         

         



         

        linkedObject

        :

        null

         

         



         

        type

        :

        DEFAULT

         

         



         

        visibility

        :

        PUBLIC

         

         



         

        comments

         


        [2]

         

         



         

        numberLikes

        :

        0

         

         



         

        numberShares

        :

        0

         

         



         

        numberComments

        :

        2

         

         



         

        numberDenouncements

        :

        0

         



         

         

        numberWatchers

        :

        2



         

         

         

        tags

        :

        null

         

         



         

        url

        :

        /post/construoeprojetos-community/2681855

         

         



         

        recommendationMetadata

         


        {0}

         

         



         

        customData

         


        {0}

         



         

         

        hasMentions

        :

        false



         

         

         

        mentions

        :

        null

         

         



         

        originShare

        :

        null

         



         

         

        supported

        :

        false



         

         

         

        watching

        :

        false



         

         

         

        shareMentionVO

        :

        null

         

         

        null



         

        formattedText

        :

        Olá,\nAlguém poderia por favor me explicar o recurso de Associação entre Serviços e Atividades?\nQue seria o objetivo e aplicações?\nObrigado.\n#TOP

         

         



         

        youtubeLink

        :

        false

        Percorrendo o item content é possível acessar cada post. Deverá ser observado o campo Type de cada post. Se o TYPE for DEFAULT, significa que o post foi publicado na própria comunidade e a descrição pode ser obtida através do campo TEXT. Se o TYPE for RECOMMENDATION, significa que o post é um compartilhamento e o campo text virá em branco. Para obter o conteúdo do post será necessário entrar em linkedObject e acessar o campo text. A url do post pode ser obtida pelo campo url Quando há um compartilhamento no FLUIG, o campo Text do post virá vazio e será necessário buscar o conteúdo do post no post linkado conforme abaixo. [ |https://i.ytimg.com/vi/Ru7YQbMLgNg/hqdefault.jpg]

         


         

         

        object

         


        {2}

         

         



         

        content

         


        [10]

         

         



         

        0

         


        {31}

         

         



         

        1

         


        {31}

         

         



         

        postId

        :

        2631806

         

         



         

        text

        :

         

         

         




         

        formattedWithoutMention

        :

         

         




         

         

        link

        :

         

         

         




         

        formattedLink

        :

         

         

         




         

        youtubeVideoId

        :

        null

         

         



         

        user

         


        {33}

         

         



         

        social

         


        {33}

         

         



         

        creationDate

        :

        1432316497000

         

         



         

        tenantId

        :

        10097

         



         

         

        linkedObject

         


        {26}

         



         

         

        id

        :

        2631794

         

         

        2631794



         

        tenantId

        :

        10097

         

         



         

        creationDate

        :

        1432316344000

         

         



         

        lastUpdateDate

        :

        1432316344000

         

         



         

        user

         


        {20}

         

         



         

        social

         


        {20}

         

         



         

        numberLikes

        :

        0

         

         



         

        numberShares

        :

        6

         

         



         

        numberComments

        :

        0

         

         



         

        numberDenouncements

        :

        0

         

         



         

        numberWatchers

        :

        2

         

         



         

        tags

        :

        null



         

         

         

        url

        :

        /post/ana.pasini-69/2631794

         

         



         

        sociableType

        :

        SocialPost

         

         



         

        removed

        :

        false

         

         



         

        customData

        :

        {}

         

         



         

        text

        :

        Boa tarde pessoal, estou com um problema na configuração dos cheques do Santander, já alterei de tudo... o primeiro formulário imprime certinho, mas o segundo imprime totalmente fora das linhas de impressão. as vezes altero a linha e a configuração muda a coluna !! \nAlguém tem por acaso os parâmetros do Santander pra me passar? Ou alguém pode me ajudar de alguma outra forma?\n#cheque #impressao #santander

         

         



         

        link

        :




         

         

         

         

        type

        :

        DEFAULT

         

         



         

        visibility

        :

        PUBLIC

         



         

         

        linkedObject

        :

        null



         

         

         

        hasMentions

        :

        false



         

         

         

        youTubeLink

        :

        false

         

         



         

        author

         


        {20}

         

         



         

        textWithMentions

        :

        Boa tarde pessoal, estou com um problema na configuração dos cheques do Santander, já alterei de tudo... o primeiro formulário imprime certinho, mas o segundo imprime totalmente fora das linhas de impressão. as vezes altero a linha e a configuração muda a coluna !! \nAlguém tem por acaso os parâmetros do Santander pra me passar? Ou alguém pode me ajudar de alguma outra forma?\n#cheque #impressao #santander

         

         



         

        mentioningId

        :

        2631794

         

         

         

         

         

         

         

         









         

        type

        :

        RECOMMENDATION

         

         



         

        visibility

        :

        CUSTOM

         

         



         

        comments

         


        [0]

         

         



         

        numberLikes

        :

        0

         

         



         

        numberShares

        :

        0

         



         

         

        numberComments

        :

        0

         

         



         

        numberDenouncements

        :

        0

         

         



         

        numberWatchers

        :

        1

         

         



         

        tags

        :

        null

         

         



         

        url

        :

        /post/financial-community/2631806

         

         

         

         

         

         

         

         

         

         

         

         













        Atenção: os posts do fluig não possuem título. Por isso deverá ser usado o conteúdo do post. O conteúdo deverá ser cortado de forma que seja exibido duas linhas no link da Central de Ajuda concatenada com '...' Exemplo:  
        Exemplo:
        <a href="http://fluig.totvs.com/portal/p/10097/post/financial-community/2631806"> Boa tarde pessoal, estou com um problema na configuração dos cheques...</a>

        Link "Veja Mais" - Fluig

        O link deverá abrir a página do Fluig na comunidade especifica conforme exemplo abaixo.
        Exemplo:
        <a href="http://fluig.totvs.com/portal/p/10097/subject/construoeprojetos-community">Veja Mais</a>

        Internacionalização Fluig

        Definição pendente de verificação das comunidades de MI
         

        Documentação de Específicos e Customizações

        Conceito

        Para permitir a busca em fontes de pesquisa do próprio cliente, será disponibilizado uma aba da central de ajuda que realizará a consulta em uma fonte customizada. O cliente poderá configurar a URL de uma fonte própria como fonte de consulta, que receberá os parâmetros conforme dados do ambiente (linha de produto, segmento, versão, módulo, rotina). Será permitida a configuração de 1 fonte de dados customizada. A interface de customização deverá ficar disponível somente ao administrador no módulo de configuração de cada linha de produto. A chamada será feita via REST com requisições do tipo GET, o retorno deverá ser no formato JSON. 

        Não será suportado nenhum tipo de autenticação.
         
        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:

        • {{linhaproduto}}
        • {{segmento}}
        • {{versao}}
        • {{modulo}}
        • {{rotina}}
        • {{texto}}
        • {{idioma}}

        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.
        Exemplo: http://tdn-homolog.totvs.com/rest/api/content/search?cql=SPACE=QUALQUER and label={{segmento}} and label={{versao}} [[and label={{modulo}}]] [[and label={{rotina}}]] &LIMIT=6
         
        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
        Exemplo: http://tdn-homolog.totvs.com/rest/api/content/search?cql=SPACE=QUALQUER and label={{segmento}} and label={{versao}} [[and label={{modulo}}]] [[and label={{rotina}}]] and TEXT ~ texto &LIMIT=6
         

        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 da fonte de integração

        Título exibido na central de ajuda

        • URL base

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

        • Campo URL

        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.

        • Campo Title

        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.

        • Limite caracteres Title

        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://tdn-homolog.totvs.com/+ 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://tdn-homolog.totvs.com/+ 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://tdn-homolog.totvs.com/rest/api/content/557074"
        },
        Deverá ser criado o seguinte link  
        Exemplo:
        <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"

        • 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

         


        Internacionalização - Customizado

        Para internacionalização da fonte customizada, vamos disponibilizar o identificador {{ idioma }} para o cliente receber o idioma utilizado.
        O identificador {{ idioma }} deverá ser substituido nas URL's configuradas da fonte customizada pela sigla do idioma, conforme abaixo

        Idioma

        sigla

        português

        pt

        inglês

        en

        espanhol

        es

        Status do documentoConcluído
        Data23/08/2015
        Versão2.1
        Versão anterior2.0
        Autores

         

         



        Índice
        Índice
        outlinetrue
        indent10px