Configuração Mapas - devbasetecnologia/devmobility GitHub Wiki

Configuração dos Mapas

Trata-se da tela onde é possível definir quais mapas serão utilizados para cada funcionalidade dentro do sistema e apps. Trabalhamos com 3 APIs de mapas: Google, HERE e Mapbox (conforme orientado quando a customização foi realizada). Caso queira ver como criar uma conta para utilizar essas API´s, acesse a tela Entregáveis para customização, na parte que fala sobre a Criação de Contas Mapbox Here Google.

Abaixo segue um resumo do que cada função faz, e para que serve.

Tela "Configurações Maps"

Para acessar a tela de configuração dos mapas da sua plataforma, utilize o menu "Configurações > APIs/Integrações > Configurações Maps".

image

Após acessar esse menu, será apresentada a tela de "Configuração do Sistema dos Mapas", conforme abaixo:

image

1- Configurações da Filial: Selecione aqui a filial que deseja configurar. Por padrão, o sistema sempre apresentará a Matriz assim que acessar a tela (ou seja, a primeira filial que foi criada).

2- Directions: Função responsável por fornecer as rotas. É o serviço que calcula o tempo, a distância e as direções entre as localizações. Recomendamos utilizar nesse campo o "HERE".

Configuração Recomendada image

Novo
Agora para o "Directions" temos mais opções para ajudar na otimização dessa API, permitindo especificar e utilizar outros mapas (se desejar) para cada uma das opções. De maneira geral, orientamos a utilizar o "HERE" nessas opções, para evitar custos maiores.

  • Padrão: Responsável por montar a rota. Recomendamos o "HERE" aqui.
  • Calcular Valores: Responsável pela realização dos cálculos dos valores da solicitação. Recomendamos usar o "Here", mas caso queira que o calculo de valores seja mais preciso, pode utilizar o "Google" aqui.
  • Aguardando: Responsável pelo cálculo do tempo de quando o Cliente esta aguardando o Prestador.
  • Em Viagem: Responsável pelo cálculo enquanto cliente/prestador estão realizando a viagem.
  • Aceitar: Responsável pelo cálculo do Aceite do prestador.
  • Entrega em Andamento: Responsável pelo cálculo da realização da entrega.

3- Geocode: Função responsável por converter endereços (legível por humanos) em coordenadas geográficas (como latitude e longitude) ou vice-versa. Recomendamos utilizar nesse campo o "HERE".

4- Places: Função responsável por exibir as informações atualizadas sobre os locais. Essa é a função responsável por completar e sugerir os endereços conforme vão sendo digitados na hora de procurar um endereço no momento em que a solicitação está sendo feita. Os locais são definidos dentro desta API como estabelecimentos, localizações geográficas ou pontos de interesse.

  • Recomendamos utilizar o "Google" somente nesse campo, por ser mais completo e preciso (importante ter uma conta válida e ativa para que esse campo possa ser utilizado com a API do Google).

5- Static Maps: Função que permite incorporar uma imagem estática do mapa em sua página da web ou app, sem a necessidade de JavaScript ou qualquer carregamento dinâmico de página (um exemplo são as imagens do mapa com os pontos no histórico das solicitações). Recomendamos utilizar nesse campo o "MapBox".

6- Tempo Serviço Places: Tempo em segundos que o app espera após o cliente digitar para consultar a Places API. Dessa forma economiza a quantidade de "requests" feitas ao digitar um endereço. Se informado "0", a consulta será a cada letra digitada. Isso é DESCONSIDERADO para Places API Google, devido a cobrança deles ser por sessão do local pesquisado e selecionado. Recomendamos deixar pelo menos o valor "1" nesse campo.

7- Modo Directions Rota: Defina aqui o tipo de rota que deseja utilizar: Rápida, Curta, ou Balanceada, se você estiver utilizando a API do "HERE" no "Directions". Atenção: Essa função é considerada para a utilização do directions com a API do "HERE" e "GOOGLE". As outras API, como MapBox não possue essa função.

8- Modo Previsão Viagem: Calculo de atualização do tempo estimado de chegada do motorista durante a viagem. Deve estar preenchido com o valor "F" para que funcione corretamente. Alteraremos esse valor se necessário.

9- Uso Diário (Cliente): Nesses campos é possivel definir (e limitar) um valor diário que cada cliente pode utilizar referente a cada uma das APIs ("Directions", "Geocode" e "Places").

10- Uso Diário (Prestador): Nesses campos é possivel definir (e limitar) um valor diário que cada prestador pode utilizar referente a cada uma das APIs ("Directions", "Geocode" e "Places").

11- Consulta Directions Viagem Meio: Realiza uma nova consulta no Directions para atualizar a previsão exibida no aplicativo do cliente a cada metade de tempo faltante. Ex: em uma corrida de 10 minutos, o sistema fará uma consulta aos 5 minutos, depois aos 2,5 minutos, depois aos 1,25 minutos e assim sucessivamente. Caso desmarcada esta opção, o sistema utiliza cálculos matemáticos pra dar a previsão. A previsão matemática pode não ser realista em alguns casos, porém gera uma economia considerável.

12- Consulta Directions Viagem Final: Realiza uma nova consulta no Directions para atualizar a previsão exibida no aplicativo do cliente no último mínuto da viagem. Ex: em uma corrida de 10 minutos, o sistema fará uma contagem regressiva, sem utilizar a reconsulta e no último minuto fará uma consulta de directions, para atualizar a previsão e oferecer uma informação mais realista para o cliente. Caso desmarcada esta opção, o sistema utiliza cálculos matemáticos pra dar a previsão. A previsão matemática pode não ser realista em alguns casos, porém gera uma economia considerável.

13- Consulta PlacesDevBase: Com esta opção ativa, caso possua endereços configurados no menu "Cadastros > Places" e o cliente realize a busca por um endereço que esteja cadastrado neste menu será apresentado para ele. Este menu é utilizado como forma do administrador economizar nas consultas, pois assim o endereço será direcionado a um cadastrado, não utilizando a API de Places configurada. Ou também para corrigir um endereço que esteja direcionado para um local errado.

14- GeoCode Google Contigência: Marque essa opção para que utilize a API de GeoCode do Google, caso a API GeoCode que foi informada acima fique indisponível por algum motivo fora de nosso controle. Trata-se apenas para casos de contingência.

15- Directions Google Contigência: Marque essa opção para que utilize a API de Directions do Google, caso a API Directions que foi informada acima fique indisponível por algum motivo fora de nosso controle. Trata-se apenas para casos de contingência.

16- GeoCode Mapa Nativo Android: Marque essa opção, para que o app utilize o mapa nativo do Android para utilização do GeoCode, caso o android em questão tenha um nativo.

17- GeoCode Mapa Nativo iOS: Marque essa opção, para que o app utilize o mapa nativo do iOS (iphone) para utilização do GeoCode, caso o iphone em questão tenha um nativo.

image

18- Tipos de WebservicesKey: Aqui são apresentadas as 3 APIs que o sistema utiliza para mapas (Here, Mapbox e Google), além da api gratuita de mapas "Devbase". São nesses campos que as chaves de cada "api" são informadas. Dependendo da "api" é necessário informar além da chave, também o AppID e o AppCode (como é o caso do HERE).

19- Alterar: Clique nesse ícone, para informar/cadastrar as configurações necessárias de cada uma das "apis". Veja exemplos abaixo:

  • Google: Ao clicar no ícone correspondente a linha da Google, será necessário informar os campos "WebserviceKey" e "WebserviceKeyHttp", com as chaves que foram geradas no projeto pela equipe DevBase. Após informar é necessário clicar em "Gravar" para salvar as informações dos campos que foram alterados/cadastrados.

image

  • Mapbox: Ao clicar no ícone correspondente a linha da Mapbox, será necessário informar somente o campo "WebserviceKey", com a chave que foi gerada ao criar a conta no site da MapBox pelo proprio administrador da plataforma. Após informar é necessário clicar em "Gravar" para salvar as informações dos campos que foram alterados/cadastrados.

image

  • HERE: Ao clicar no ícone correspondente a linha da "api" HERE, será necessário informar os campos "WebserviceKey", "AppID" e "AppCode" (Appcode não é obrigatório), com as chaves que foram geradas ao criar a conta no site da HERE pelo proprio administrador da plataforma. Após informar é necessário clicar em "Gravar" para salvar as informações dos campos que foram alterados/cadastrados.

image

  • Além das 3 APIs pagas (HERE, Mapbox, e Google), está disponível também uma opção de Mapas Gratuito (o Devbase).
    Esse mapa teve boa precisão nos nossos testes, o detalhe é apenas em relação ao tempo que é estimado. As APIs pagas são mais precisas, pois levam em consideração uma série de outros fatores (tempo, transito, obras, até acidentes na pista dependendo).
    Nessa opção gratuita, leva apenas um tempo médio de um ponto ao outro.
    Não há opção de alteração de rota, ou melhora de tempo. Não temos como interferir nos resultados que esse mapa apresenta.
    Se mesmo assim quiser testar fique a vontade, mas esteja ciente dessas orientações.

20- Gravar: No final da tela, terá outro botão "gravar" para Salvar as demais alterações dos campos que foram realizadas nessa tela.

  • Atenção: Conforme explicado mais acima, recomendamos utilizar o Google somente no campo "Places". No máximo utilizar também no "Cálcular Valores", caso acredito que os valores não estão tão precisos no Here.
  • A utilização do Google nos demais campos, pode gerar maiores gastos devido a quantidade de consultas que será realizada na conta.