Ir al contenido principal
Todas las coleccionesGuías de usuario
Cómo crear un mapa en tiempo real?
Cómo crear un mapa en tiempo real?

Enviar correctamente los datos de ubicación para que se puedan mostrar en Ubidots.

David Sepúlveda avatar
Escrito por David Sepúlveda
Actualizado hace más de una semana

¡Sí! Puedes usar Ubidots para mostrar la ubicación en tiempo real de los dispositivos. Para hacerlo, necesitas especificar la latitud ("lat") y longitud ("lng") en el "contexto" de tu solicitud. Así que en lugar de enviar esto:

{"value":20}

La carga útil debería verse así:

{"value":20,"context":{"lat":40.782864,"lng":-73.965355}}

Ejemplos

Solicitudes Sin Datos de Ubicación

Típicamente, esta es la carga útil que envías a Ubidots para registrar datos del sensor:

Usando Etiquetas de API

curl -X POST -H "Content-Type: application/json" -d '{"temperature": 20}' https://industrial.api.ubidots.com/api/v1.6/devices/weather-station?token={YOUR-TOKEN}

Usando IDs de Variables

curl -X POST -H "Content-Type: application/json" -d '{"value": "20"}' https://industrial.api.ubidots.com/api/v1.6/variables/58f43a9e76254254ab679476/values?token={YOUR-TOKEN}

Estas solicitudes crearán un único punto de datos en la variable "Temperatura":

Solicitudes Con Datos de Ubicación

Si deseas agregar datos de ubicación, entonces deberías añadir una propiedad "context" con estas claves:

  • "lat"

  • "lng"

¡Estas son sensibles a mayúsculas y minúsculas! Si se escriben de manera diferente, el widget de Mapa no los reconocerá como puntos de ubicación. Aquí están los ejemplos anteriores pero con datos de ubicación:

Usando Etiquetas de API

Cuerpo de la solicitud:

{"temperature": {"value":20,"context":{"lat":40.782864,"lng":-73.965355}}}

Solicitud HTTP:

curl -X POST -H "Content-Type: application/json" -d '{"temperature": {"value":20,"context":{"lat":40.782864,"lng":-73.965355}}}' https://industrial.api.ubidots.com/api/v1.6/devices/weather-station?token={YOUR-TOKEN}

Usando IDs de Variables

Cuerpo de la solicitud:

{"value":20,"context":{"lat":40.782864,"lng":-73.965355}}

Solicitud HTTP:

curl -X POST -H "Content-Type: application/json" -d '{"value":20,"context":{"lat":40.782864,"lng":-73.965355}}' https://industrial.api.ubidots.com/api/v1.6/variables/58f43a9e76254254ab679476/values?token={YOUR-TOKEN}


Cualquiera de estas solicitudes creará un punto de datos con propiedades de contexto lat y lng:

Que luego puede ser leído por un widget de Mapa. Esto se puede crear en tu tablero --> Agregar nuevo widget --> Widget de Mapa --> Seleccionar el dispositivo que contiene las propiedades de Posición (Lat & Long).

Expectativas para la Visualización

Es importante notar que la visualización del mapa en tiempo real de Ubidots es una interfaz en vivo. Cuando seleccionas ver un rango histórico de datos en el Mapa, tus datos históricos aparecerán como un "rastro". Cualquier dato en tiempo real entrante aparecerá como una "línea" suave.

¿Ha quedado contestada tu pregunta?