Exemplo 2 – Encontrar assistência de veículo mais próxima
No segmento de seguradoras de veículos é muito comum o uso do Distance Matrix API para reduzir o tempo de atendimento da assistência aos veículos.
Considerando que o veículo quebrado e os caminhões guinchos compartilham a localização da latitude/longitude, quando o veículo quebrado aciona a assistência, o sistema poderá utilizar a Distance Matrix API para decidir qual caminhão guincho chegará primeiro.
Neste exemplo temos como destino dois veículos quebrados e como origem cinco caminhões guincho:
{
"calculationMode": "THE_FASTEST",
"destinations": [
{
"latitude": -23.5654032,
"longitude": -46.62117004,
"siteId": "veiculo1-Cambuci"
},
{
"latitude": -23.574136,
"longitude": -46.655844,
"siteId": "veiculo2-Jardins"
}
],
"origins": [
{
"latitude": -23.58664317,
"longitude": -46.63833618,
"siteId": "guincho1-VilaMariana"
},
{
"latitude": -23.562412,
"longitude": -46.638788,
"siteId": "guincho2-Liberdade"
},
{
"latitude": -23.55363650451996,
"longitude": -46.620810158377516,
"siteId": "guincho3-Mooca"
},
{
"latitude": -23.561603,
"longitude": -46.655840,
"siteId": "guincho4-MASP"
},
{
"latitude": -23.535016,
"longitude": -46.735701,
"siteId": "guincho5-CEAGESP"
}
],
"tripProfile": "MAPLINKBR"
}
Na resposta será retornado o array de objetos elements, onde cada objeto represta a relação de cada par de origem e destino.
Neste caso, será retornado a distância entre cada guincho e veículo. Assim será possível identificar qual será o guincho que conseguirá realizar a assistência de forma rápida.
Cada objeto em elements possuirá as seguintes informações:
origin– Identificador do ponto de origem;destination– Identificador do ponto de destino;distance– Distância total em metros;nominalDuration– Duração total em segundos;averageSpeed– Velocidade média do caminho entre a origem e destino em km/h.
A resposta completa pode ser conferida abaixo:
{
"id": "60761bd2b966b04b48d1019c",
"clientId": "maplink",
"elements": [
{
"origin": "guincho1-VilaMariana",
"destination": "veiculo1-Cambuci",
"distance": 3569,
"nominalDuration": 643,
"averageSpeed": 19.98
},
{
"origin": "guincho1-VilaMariana",
"destination": "veiculo2-Jardins",
"distance": 3711,
"nominalDuration": 365,
"averageSpeed": 36.6
},
{
"origin": "guincho2-Liberdade",
"destination": "veiculo1-Cambuci",
"distance": 4209,
"nominalDuration": 514,
"averageSpeed": 29.48
},
{
"origin": "guincho2-Liberdade",
"destination": "veiculo2-Jardins",
"distance": 3710,
"nominalDuration": 336,
"averageSpeed": 39.75
},
{
"origin": "guincho3-Mooca",
"destination": "veiculo1-Cambuci",
"distance": 2787,
"nominalDuration": 426,
"averageSpeed": 23.55
},
{
"origin": "guincho3-Mooca",
"destination": "veiculo2-Jardins",
"distance": 5265,
"nominalDuration": 490,
"averageSpeed": 38.68
},
{
"origin": "guincho4-MASP",
"destination": "veiculo1-Cambuci",
"distance": 6842,
"nominalDuration": 859,
"averageSpeed": 28.67
},
{
"origin": "guincho4-MASP",
"destination": "veiculo2-Jardins",
"distance": 2082,
"nominalDuration": 305,
"averageSpeed": 24.57
},
{
"origin": "guincho5-CEAGESP",
"destination": "veiculo1-Cambuci",
"distance": 15608,
"nominalDuration": 1588,
"averageSpeed": 35.38
},
{
"origin": "guincho5-CEAGESP",
"destination": "veiculo2-Jardins",
"distance": 11217,
"nominalDuration": 1057,
"averageSpeed": 38.2
}
],
"createdAt": 1618353108108
}
Em uma visualização tabular do resultado, é possível concluir o seguinte:
- O veículo
"veiculo1-Cambuci"receberá atendimento mais rápido e próximo do guincho"guincho3-Mooca"; - O veículo
"veiculo2-Jardins"receberá atendimento mais rápido e próximo do guincho"guincho4-MASP".
| origin | destination | distance | nominalDuration | averageSpeed |
guincho1-VilaMariana | veiculo1-Cambuci | 3569 | 643 | 19.98 |
guincho2-Liberdade | veiculo1-Cambuci | 4209 | 514 | 29.48 |
guincho3-Mooca | veiculo1-Cambuci | 2787 | 426 | 23.55 |
guincho4-MASP | veiculo1-Cambuci | 6842 | 859 | 28.67 |
guincho5-CEAGESP | veiculo1-Cambuci | 15608 | 1588 | 35.38 |
guincho1-VilaMariana | veiculo1-Jardins | 3711 | 365 | 36.6 |
guincho2-Liberdade | veiculo1-Jardins | 3710 | 336 | 39.75 |
guincho3-Mooca | veiculo1-Jardins | 5265 | 490 | 38.68 |
guincho4-MASP | veiculo1-Jardins | 2082 | 305 | 24.57 |
guincho5-CEAGESP | veiculo1-Jardins | 11217 | 1057 | 38.2 |