Um exemplo rápido de como obter o código, usá-lo de forma eficaz e aplicá-lo ao seu fluxo de trabalho
Inscreva-se em distancematrix.ai para obter uma chave de API. Essa chave concederá acesso às nossas APIs de matriz de distância e geocodificação.
# Exemplo: atribua sua chave de API a uma variável em sua exportação de código
export DISTANCE_MATRIX_API_KEY="YOUR_API_KEY"
Use a API de geocodificação para transformar endereços de passageiros e motoristas em coordenadas de latitude/longitude, essenciais para cálculos precisos de roteamento e ETA.
import os
import requests
api_key = os.environ.get("DISTANCE_MATRIX_API_KEY")
geocode_url = "https://api.distancematrix.ai/maps/api/geocode/json"
def geocode_address(address):
params = {
'address': address,
'key': api_key
}
response = requests.get(geocode_url, params=params).json()
location = response['results'][0]['geometry']['location']
return location['lat'], location['lng']
# Example: Convert a passenger's address into coordinates
passenger_lat, passenger_lng = geocode_address("1600 Amphitheatre Parkway, Mountain View, CA")
Depois de ter as coordenadas, use a API Distance Matrix para encontrar tempos e distâncias de viagem. A API considera o tráfego em tempo real e outras condições para obter resultados precisos.
distance_url = "https://api.distancematrix.ai/maps/api/distancematrix/json"
def get_time_distance(origins, destinations):
# origins and destinations should be lists of "lat,lng" strings
params = {
'origins': '|'.join(origins),
'destinations': '|'.join(destinations),
'key': api_key
}
response = requests.get(distance_url, params=params).json()
return response
# Example: Check travel times between multiple drivers and one passenger
driver_coords = [
"37.422,-122.084", # Driver 1
"37.7749,-122.4194" # Driver 2
]
passenger_coord = [f"{passenger_lat},{passenger_lng}"]
matrix_data = get_time_distance(driver_coords, passenger_coord)
A API Distance Matrix fornece durações e distâncias para cada par origem-destino. Ao fazer uma comparação localmente, você pode identificar o motorista que pode chegar mais rápido e estimar o ETA. Embora esse não seja um recurso incorporado da API em si, é fácil implementá-lo usando os dados da matriz.
Exiba ETAs no aplicativo do cliente, use coordenadas para mostrar as posições dos motoristas ao vivo em um mapa e insira dados de distância/duração na lógica de cálculo da tarifa. As APIs são flexíveis e fáceis de integrar em seus sistemas existentes.