Migração de campos de lugares (open_now, utc_offset)

Os campos opening_hours.open_now e utc_offset do Places foram descontinuados em 20 de novembro de 2019 e desativados em 20 de fevereiro de 2021. Eles foram descontinuados APENAS na biblioteca Places da API Maps JavaScript. Este guia mostra como atualizar o código para deixar de usar esses campos.

Campo opening_hours.open_now

Nesta seção, mostramos como atualizar essa funcionalidade para cada tipo de solicitação do Places.

Solicitações do Place Details

O campo opening_hours.open_now foi substituído pelo método opening_hours.isOpen().

Para solicitações do Place Details, em vez de solicitar opening_hours.open_now no parâmetro fields, inclua opening_hours e utc_offset_minutes no parâmetro de solicitação fields. Depois, chame o método opening_hours.isOpen() no objeto google.maps.places.PlaceResult retornado para verificar se o lugar está aberto. O exemplo a seguir mostra uma solicitação do Place Details que determina se um lugar está aberto:

new google.maps.places.PlacesService(attrContainer).getDetails({
  placeId: '...',
  fields: ['opening_hours','utc_offset_minutes'],
  }, function (place, status) {
    if (status !== 'OK') return; // something went wrong
    const isOpenAtTime = place.opening_hours.isOpen(new Date('December 17, 2020 03:24:00'));
    if (isOpenAtTime) {
        // We know it's open.
    }

    const isOpenNow = place.opening_hours.isOpen();
    if (isOpenNow) {
        // We know it's open.
    }
});

Solicitações do Find Place

Nas solicitações do Find Place, não há substituições para o campo opening_hours.open_now. Recomendamos fazer uma solicitação do Place Details para receber informações do opening_hours.

Solicitações do Nearby Search e do Text Search

Para solicitações do Nearby Search e Text Search, você pode usar o parâmetro de solicitação openNow, que tem o efeito de filtrar resultados para incluir apenas lugares que estão abertos no momento.

  • openNow:false retorna todos os lugares.
  • openNow:true retorna apenas lugares que estão abertos no momento.

Se quiser listar todos os lugares E indicar o status openNow, primeiro faça uma solicitação usando openNow:false para obter todos os lugares e outra usando openNow:true para lugares abertos. Em seguida, mescle as respostas.

Campo utc_offset

Nas solicitações do Place Details, o campo utc_offset é substituído pelo campo utc_offset_minutes. Basta substituir ocorrências de utc_offset por utc_offset_minutes no parâmetro de solicitação fields e ao ler essas informações de PlaceResult.