Os modelos de trânsito usam algoritmos e fatores específicos para prever como as condições de trânsito afetam o tempo total de viagem em uma determinada rota. A API Routes oferece diferentes tipos de modelos de tráfego para priorizar diferentes fatores usados no cálculo da duração no trânsito. Você pode especificar o tipo de modelo de tráfego que quer que suas rotas usem ao calcular a duração delas ou da matriz de rotas. Quando você define o tipo de modelo de tráfego, o valor retornado no campo
duration
varia de acordo com o modelo escolhido.
Os métodos Compute Routes
e Compute Route Matrix
da API Routes são compatíveis com tipos de modelos de tráfego.
Por padrão, os dois métodos usam o tipo de modelo de tráfego BEST_GUESS
.
Para especificar um tipo de tráfego
Defina a origem e o destino.
Se o horário de partida for no futuro, inclua o horário usando o parâmetro
departure_time
. Se você não especificar um horário de partida, o padrão será "agora".Defina o parâmetro
routingPreference
comoTRAFFIC_AWARE_OPTIMAL
. Definir oroutingPreference
comoTRAFFIC_UNAWARE
ouTRAFFIC_AWARE
é incompatível com o parâmetrotrafficModel
.Selecione o modelo de tráfego a ser usado com o parâmetro
trafficModel
e um dos seguintes tipos:BEST_GUESS
(padrão) para solicitar que oduration_in_traffic
retornado seja a melhor estimativa do tempo de viagem, considerando as informações de condições de trânsito históricas e em tempo real. Quanto mais próximo de agora for odeparture_time
, mais importante será o trânsito em tempo real. Usar o tipo padrão deBEST_GUESS
oferece as previsões mais úteis para a grande maioria dos casos de uso.PESSIMISTIC
para solicitar que oduration_in_traffic
retornado modele o tempo com base nas condições históricas de trânsito em dias ruins. Esse tipo dá uma duração estimada que provavelmente é maior do que o tempo de viagem real na maioria dos dias. Em alguns dias, as condições podem ser ainda piores.OPTIMISTIC
para solicitar que os modelosduration_in_traffic
retornados modelem o tempo com base nas condições históricas de trânsito em dias de trânsito bom. Esse tipo oferece uma duração estimada que provavelmente é menor do que o tempo de viagem real na maioria dos dias. Em alguns dias com condições particularmente boas, o tempo pode ser menor do que essa estimativa.
Exemplo:
"trafficModel": "OPTIMISTIC"
Especifique o campo
routes.duration
na máscara de campo.REST
-H X-Goog-FieldMask: routes.duration
RPC
const (fieldMask = "routes.duration")
Quando a API Routes estima o tempo no trânsito, ela usa o tipo de modelo de tráfego solicitado.
Exemplo: solicitação de modelo de tráfego
Por exemplo, esta solicitação especifica que a duração seja estimada usando o tipo de modelo de tráfego OPTIMISTIC
em um horário de partida específico:
curl -X POST -H 'content-type: application/json' -d ' { "origin": { "address": "Kyoto, Japan" }, "destination": { "placeId": "ChIJrYtcv-urAWAR3XzWvXv8n_s" }, "travelMode": "DRIVE", "routingPreference": "TRAFFIC_AWARE_OPTIMAL", "trafficModel": "OPTIMISTIC" }' \ -H 'Content-Type: application/json' \ -H 'X-Goog-Api-Key: YOUR_API_KEY' \ -H 'X-Goog-FieldMask: routes.duration' \ 'https://routes.googleapis.com/directions/v2:computeRoutes'
Essa solicitação retorna a duração estimada usando o tipo de modelo de tráfego OPTIMISTIC
para a viagem:
"duration": "1238s"
Se você mudar o tipo de modelo de tráfego para PESSIMISTIC
, a duração retornada será maior:
"duration": "2436s"