ES1299510U - Plataforma de vehiculo integrada en la nube - Google Patents
Plataforma de vehiculo integrada en la nube Download PDFInfo
- Publication number
- ES1299510U ES1299510U ES202230265U ES202230265U ES1299510U ES 1299510 U ES1299510 U ES 1299510U ES 202230265 U ES202230265 U ES 202230265U ES 202230265 U ES202230265 U ES 202230265U ES 1299510 U ES1299510 U ES 1299510U
- Authority
- ES
- Spain
- Prior art keywords
- vehicle
- platform
- information
- application
- api
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000004891 communication Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims abstract description 15
- 230000003993 interaction Effects 0.000 claims abstract description 5
- 230000036541 health Effects 0.000 claims description 8
- 238000009423 ventilation Methods 0.000 claims description 5
- 239000003981 vehicle Substances 0.000 description 461
- 238000000034 method Methods 0.000 description 110
- 230000008569 process Effects 0.000 description 59
- 230000015654 memory Effects 0.000 description 25
- 230000004044 response Effects 0.000 description 24
- 230000009471 action Effects 0.000 description 19
- 238000012423 maintenance Methods 0.000 description 19
- 238000004590 computer program Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 16
- 239000000446 fuel Substances 0.000 description 13
- 238000005516 engineering process Methods 0.000 description 10
- 239000008186 active pharmaceutical agent Substances 0.000 description 9
- 230000010354 integration Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 8
- 230000006399 behavior Effects 0.000 description 7
- 230000001960 triggered effect Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000003542 behavioural effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000008439 repair process Effects 0.000 description 4
- 238000013515 script Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013480 data collection Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 241001414989 Thysanoptera Species 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 239000000969 carrier Substances 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000033001 locomotion Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012384 transportation and delivery Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 101100172132 Mus musculus Eif3a gene Proteins 0.000 description 1
- 235000006508 Nelumbo nucifera Nutrition 0.000 description 1
- 240000002853 Nelumbo nucifera Species 0.000 description 1
- 235000006510 Nelumbo pentapetala Nutrition 0.000 description 1
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 235000013524 arak Nutrition 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000003339 best practice Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002826 coolant Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 239000012530 fluid Substances 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000010363 phase shift Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000029305 taxis Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/34—Route searching; Route guidance
- G01C21/36—Input/output arrangements for on-board computers
- G01C21/3688—Systems comprising multiple parts or multiple output devices (not client-server), e.g. detachable faceplates, key fobs or multiple output screens
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B15/00—Systems controlled by a computer
- G05B15/02—Systems controlled by a computer electric
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0816—Indicating performance data, e.g. occurrence of a malfunction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/008—Registering or indicating the working of vehicles communicating information to a remotely located station
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Medical Informatics (AREA)
- Health & Medical Sciences (AREA)
- Automation & Control Theory (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- Body Structure For Vehicles (AREA)
Abstract
Sistema para recopilar, transmitir y procesar información acerca de un vehículo (V1, V2, V3) para suministrar una fuente de datos a una o más aplicaciones, caracterizado por que el sistema comprende: un dispositivo informático electrónico (11), que comprende al menos un dispositivo móvil, un dispositivo de IoT, o un puerto OBD de conexión, cada dispositivo situado en o conectado con el vehículo (V1, V2, V3) y configurado para recopilar y transmitir, a través de una red (22, 26) información acerca del vehículo, en particular información de telemetría, para suministrar una fuente de datos a un ordenador servidor (20); el ordenador servidor (20), configurado para proveer de una interfaz de programación para una plataforma de entretenimiento informativo de vehículo integrada en la nube en comunicación con una plataforma de información de vehículo, y para transformar y utilizar la información de la fuente de datos para proveer acceso a uno o más servicios en la plataforma de información del vehículo a través de la aplicación interfaz de programación; y un dispositivo electrónico del cliente (28, 30, 32, 34), comprendiendo un dispositivo electrónico móvil (32), una unidad principal de entretenimiento informativo de vehículo, o una consola de tablero de instrumentos (110), cada dispositivo incluyendo una interfaz de usuario gráfica y estando configurada para el acceso y la interacción con la plataforma de entretenimiento informativo de vehículo integrada en la nube por medio de la interfaz de programación.
Description
DESCRIPCIÓN
PLATAFORMA DE VEHÍCULO INTEGRADA EN LA NUBE
Referencia cruzada a aplicaciones relacionadas
Esta solicitud reivindica prioridad y el beneficio de la solicitud de patente provisional estadounidense n.° 62/218.501 presentada el 14 de septiembre de 2015, cuya divulgación se incorpora en el presente documento como referencia en su totalidad.
Campo técnico
El campo técnico puede referirse, en general, a aplicaciones de información de vehículo, entretenimiento informativo y gestión de datos relacionados, usuario, y elemento de visualización en un vehículo.
Antecedentes
Globalmente, miles de millones de dispositivos inteligentes, habilitados para Internet se combinan con billones de conexiones que están integradas en toda la estructura de la sociedad moderna. Los coches modernos pueden generar gigabytes de datos por milla y cada día la mayoría de los conductores pasan en ellos más del 10% del tiempo que están despiertos. Esto produce enormes cantidades de datos valiosos, transformando nuestro mundo de muchas maneras diversas.
Estos datos, cuando se combinan con enormes avances en capacidades analíticas informáticas en la nube y se exponen a través de interfaces de programación de aplicaciones estándar, empodera a la comunidad mundial de desarrolladores móviles para crear experiencias innovadoras y nuevas alimentadas por datos de coches. Por lo tanto, puede ser necesario habilitar experiencias basadas en vehículos y vehículos que integran experiencias innovadoras de internet de las cosas (“IoT”) (es decir, dispositivos habilitados para internet) para conductores.
Además, en los EE. UU., el uso de teléfono celular puede provocar más de 1 de 4 accidentes de tráfico. Los conductores deben centrarse en la carretera, y no en sus teléfonos. Como tal, puede haber una necesidad de una plataforma de entretenimiento informativo de vehículo que
conecte un elemento de visualización de tablero de instrumentos o unidad principal con un teléfono inteligente o una plataforma de información de vehículo.
Sumario
En una realización, un sistema puede incluir una plataforma de entretenimiento informativo de vehículo integrada en la nube en comunicación con una plataforma de información de vehículo. El sistema puede incluir además una interfaz gráfica de usuario configurada para permitir el acceso a la plataforma de entretenimiento informativo de vehículo integrada en la nube. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede permitir el acceso a dispositivos IoT tales como aparatos de red, dispositivos electrónicos controlables a distancia, y otros dispositivos como se describe en el presente documento. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede permitir el acceso a datos de usuario en una base segura autenticada con contraseña. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede basarse en la tecnología HTML5, servicios en la nube conectados y conectividad de vehículo integrada de alta velocidad.
Los sistemas, los métodos y los dispositivos adecuados para su uso con o para implementar de otro modo las características dadas a conocer en el presente documento pueden ser uno o más dispositivos informáticos. Un dispositivo informático u ordenador puede incluir un ordenador servidor, un ordenador de usuario de cliente, un ordenador personal (PC), un ordenador portátil, un PC de tableta, una llave electrónica, un sistema de vehículo electrónico, un procesador, un ordenador de escritorio, un sistema de control, un microprocesador, otros ordenadores o dispositivos electrónicos descritos en el presente documento, o cualquier dispositivo informático capaz de ejecutar un conjunto de instrucciones (secuenciales o de otro tipo) que especifiquen acciones que van a tomarse por ese dispositivo informático. Los dispositivos informáticos pueden intercambiar datos tales como datos de vehículo, datos de usuario y datos de dispositivo móvil, datos de aplicación, datos de dispositivos de IoT, y otros datos dados a conocer en el presente documento usando una red que puede incluir una o más conexiones por cable, ópticas, inalámbricas u otras conexiones de intercambio de datos.
Pueden incluirse una o más de las siguientes características. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede integrarse con una unidad principal de entretenimiento informativo de automóvil y la plataforma de información de vehículo. En una realización, la unidad principal incluye o está en comunicación electrónica con un elemento
de visualización, que puede incluir un elemento de visualización de pantalla táctil. La unidad principal puede incluir un tablero de instrumentos implementado usando un elemento de visualización para representar la información relacionada con el vehículo y las interfaces de usuario descritas en el presente documento. La información visualizada puede transmitirse desde una aplicación diseñada para interactuar con una o ambas de una plataforma de entretenimiento informativo de vehículo integrada en la nube y una plataforma de información de vehículo. En una realización, en lugar de una unidad principal o tablero de instrumentos, la visualización de información en o acerca de un vehículo se proporciona por una interfaz de usuario de un dispositivo móvil en comunicación con uno o más sistemas descritos en el presente documento.
La plataforma de entretenimiento informativo de vehículo integrada en la nube puede proporcionar acceso a uno o más de patrones de conducción, salud del vehículo, escenarios específicos de viaje, conexiones, personas, funcionalidad de gestión de parque, y dispositivos externos. La plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a dispositivos domésticos inteligentes que incluyen uno o más de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para controlar uno o más dispositivos domésticos inteligentes que incluyen al menos uno de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos. La plataforma de entretenimiento informativo de vehículo integrada en la nube visualiza una o más interfaces de usuario basadas en aplicación de plataforma de información de vehículo a través de una unidad principal de entretenimiento informativo de automóvil.
Adicionalmente, pueden incluirse una o más de las siguientes características. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para definir reglas relacionadas con el vehículo que activan el ajuste a uno o más dispositivos domésticos inteligentes. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para definir reglas de vehículo que activan alertas basadas en el comportamiento de vehículo. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para recopilar datos de viaje de vehículo, incluyendo datos de velocidad, número de paradas de combustible, y coste de combustible, se capturan y realizan operaciones en los datos de viaje de vehículo que incluyen comparar datos de viaje
de vehículo y compartir resultados de funcionamiento.
En una realización, la plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para acceder a hitos de mantenimiento y diagnósticos predictivos en respuesta a alerta de vehículo activada, códigos DTC de descifrado, y presentar información relacionada en tiempo real. La plataforma de entretenimiento informativo de vehículo integrada en la nube puede configurarse para visualizar aplicaciones de plataforma de información de vehículo a través de una unidad principal de entretenimiento informativo de automóvil, cambiar entre aplicaciones, y visualizar información específica de la aplicación superpuesta en la parte superior de un mapa que muestra otros dispositivos de usuario. La plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para recopilar información de estado actual de una URL y recibir información de estado y eventos de una o más aplicaciones de plataforma de información de vehículo.
En una realización, un método puede incluir integrar una plataforma de entretenimiento informativo de vehículo con una plataforma de información de vehículo. El método puede incluir además visualizar interfaces de usuario gráficas de aplicación de plataforma de información de vehículo en una unidad principal de entretenimiento informativo de automóvil a través de la plataforma de entretenimiento informativo de vehículo. El método también puede incluir proporcionar una interfaz de programación de aplicación para la plataforma de entretenimiento informativo de vehículo. El método puede incluir adicionalmente autenticar uno o más dispositivos electrónicos de cliente o dispositivos inteligentes domésticos con la plataforma de entretenimiento informativo de vehículo. Además, el método puede incluir proporcionar acceso a una o más aplicaciones de plataforma de información del vehículo en la unidad principal de entretenimiento informativo del automóvil a través de la plataforma de entretenimiento informativo de vehículo.
En parte, la divulgación se refiere a un sistema de uno o más ordenadores configurados para realizar operaciones o acciones particulares en virtud de tener software, firmware, hardware, o una combinación de ellos instalada en el sistema que en funcionamiento provoca o hace que el sistema realice las acciones. Uno o más programas informáticos pueden configurarse para realizar operaciones o acciones particulares en virtud de incluir instrucciones que, cuando se ejecutan mediante un aparato de procesamiento de datos, hacen que el aparato realice las acciones. Un aspecto general incluye un sistema que incluye: una plataforma de entretenimiento informativo de vehículo integrada en la nube en comunicación con una plataforma de información del vehículo, y una interfaz gráfica de usuario configurada para
permitir el acceso a la plataforma de entretenimiento informativo de vehículo integrada en la nube. Otras realizaciones de este aspecto incluyen sistemas informáticos correspondientes, un aparato, y programas informáticos registrados en uno o más dispositivos de almacenamiento informático, cada uno configurado para realizar las acciones de los métodos.
Las implementaciones pueden incluir una o más de las siguientes características. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a dispositivos de internet de las cosas. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a datos de usuario en una base autenticada segura con contraseña u otras formas de autenticación tales como biometría, autenticación de múltiples factores, etc. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube se basa en la tecnología html5, servicios en la nube conectados y conectividad de vehículos integrada de alta velocidad. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está integrada con una unidad principal de automóvil de entretenimiento informativo y la plataforma de información del vehículo. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube proporciona acceso a uno o más de patrones de conducción, salud del vehículo, escenarios específicos de viaje, conexiones, personas, y dispositivos externos.
Además, implementaciones pueden incluir una o más de las siguientes características. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a dispositivos domésticos inteligentes que incluyen uno o más de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para controlar uno o más dispositivos domésticos inteligentes que incluyen al menos uno de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube visualiza una o más interfaces de usuario basadas en aplicación de plataforma de información del vehículo a través de una unidad principal de entretenimiento informativo de automóvil. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para definir reglas relacionadas con el vehículo que activan el ajuste a uno o más dispositivos domésticos inteligentes. El sistema donde la plataforma de entretenimiento informativo de
vehículo integrada en la nube está configurada para definir reglas de vehículo que activan alertas basadas en el comportamiento de vehículo. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para recopilar datos de viaje de vehículo, incluyendo velocidad, número de paradas de combustible, y los datos de coste de combustible se capturan y realizan operaciones en los datos de viaje de vehículo que incluyen comparar datos de viaje de vehículo y compartir resultados de funcionamiento.
En diversas realizaciones, la divulgación se refiere a un sistema en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para acceder a hitos de mantenimiento y diagnósticos predictivos en respuesta a una alerta del vehículo activada, códigos DTC de descifrado, y presentar información relacionada en tiempo real. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para visualizar aplicaciones de plataforma de información del vehículo a través de una unidad principal de entretenimiento informativo de automóvil, cambiar entre aplicaciones, y visualizar información específica de la aplicación superpuesta en la parte superior de un mapa que muestra los dispositivos de usuario. El sistema donde la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para recopilar información de estado actual de una URL y recibir información de estado y eventos de una o más aplicaciones de plataforma de información del vehículo. Las implementaciones de las técnicas descritas pueden incluir hardware, un método o proceso, o software informático en un medio accesible por ordenador.
Un aspecto general incluye un método que incluye: integrar una plataforma de entretenimiento informativo de vehículo con una plataforma de información del vehículo, visualizar interfaces gráficas de usuario de aplicación de plataforma de información de vehículo en una unidad principal de entretenimiento informativo de automóvil a través de la plataforma de entretenimiento informativo de vehículo, proporcionar una interfaz de programación de aplicación para la plataforma de entretenimiento informativo de vehículo, autenticar uno o más dispositivos electrónicos de cliente o dispositivos inteligentes domésticos con la plataforma de entretenimiento informativo de vehículo, y proporcionar acceso a una o más aplicaciones de plataforma de información del vehículo en la unidad principal de entretenimiento informativo del automóvil a través de la plataforma de entretenimiento informativo de vehículo. Otras realizaciones de este aspecto incluyen sistemas informáticos correspondientes, un aparato, y programas informáticos registrados en uno o más dispositivos de almacenamiento informático, cada uno configurado para realizar las acciones de los métodos.
Un sistema de uno o más ordenadores puede configurarse para realizar operaciones o acciones particulares en virtud de tener software, firmware, hardware, o una combinación de ellos instalada en el sistema que en funcionamiento provoca o hace que el sistema realice las acciones. Uno o más programas informáticos pueden configurarse para realizar operaciones o acciones particulares en virtud de incluir instrucciones que, cuando se ejecutan mediante un aparato de procesamiento de datos, hacen que el aparato realice las acciones. Un aspecto general incluye un método para controlar el intercambio de información del vehículo entre uno o más dispositivos informáticos que incluye: integrar una plataforma de entretenimiento informativo de vehículo con una plataforma de información del vehículo, visualizar interfaces gráficas de usuario de aplicación de plataforma de información del vehículo en un dispositivo informático dispuesto dentro de un vehículo a través de la plataforma de entretenimiento informativo de vehículo, proporcionar una interfaz de programación de aplicación para la plataforma de entretenimiento informativo de vehículo, autenticar uno o más dispositivos electrónicos de cliente o dispositivos inteligentes domésticos con la plataforma de entretenimiento informativo de vehículo, y proporcionar acceso a una o más aplicaciones de plataforma de información del vehículo en el dispositivo informático dispuesto dentro del vehículo a través de la plataforma de entretenimiento informativo de vehículo. Otras realizaciones de este aspecto incluyen sistemas informáticos correspondientes, un aparato, y programas informáticos registrados en uno o más dispositivos de almacenamiento informático, cada uno configurado para realizar las acciones de los métodos.
Las implementaciones pueden incluir una o más de las siguientes características. El método donde el dispositivo informático dispuesto dentro del vehículo es una unidad principal de entretenimiento informativo de automóvil. El método donde la unidad principal de entretenimiento informativo de automóvil incluye un elemento de visualización, uno o más procesadores, y uno o más buses, donde los buses están en comunicación electrónica con el procesador y la memoria de entretenimiento informativo de vehículo (IVI) del vehículo. El método donde la interfaz de programación de aplicaciones (API) de la plataforma de entretenimiento informativo de vehículo responde a las solicitudes de API desde una plataforma de información de vehículo activa visualizada en la unidad principal de entretenimiento informativo del automóvil, la API proporciona contenido y entradas a la aplicación activa. El método en el que la API responde a las instrucciones transmitidas desde uno o más dispositivos informáticos de terceros para proporcionar uno o más tipos de contenido a la unidad principal de entretenimiento informativo de automóvil. El método incluye además filtrar la información de configuración proporcionada por desarrollador para cada aplicación de modo que la información visualizada en la unidad principal de entretenimiento
informativo de automóvil está limitada para reducir la distracción del usuario final.
En una realización, el método donde el dispositivo informático dispuesto dentro del vehículo incluye un dispositivo electrónico móvil, el método incluye además proporcionar acceso a una o más aplicaciones de plataforma de información del vehículo a través del dispositivo móvil. El método incluye además rellenar la aplicación con contenido seleccionado en respuesta a la información recibida por la plataforma de entretenimiento informativo de vehículo desde un dispositivo conectado a un puerto OBD del vehículo. El método incluye además proporcionar servicios de reglas como parte de la plataforma de entretenimiento informativo de vehículo, donde una o más reglas están suscritas por una o más aplicaciones de la plataforma de entretenimiento informativo de vehículo, donde una o más de las reglas incluyen un identificador de dispositivo; una o más restricciones de límite para el dispositivo; y un estado. El método incluye además controlar qué información se visualiza y cómo se visualiza desde una aplicación de la plataforma de entretenimiento informativo de vehículo en respuesta a una o más reglas, donde las reglas se basan en al menos una de una situación del vehículo, una ubicación, un tiempo y una configuración de usuario. El método incluye además, en respuesta a los datos de telemetría del vehículo, visualizar una primera categoría de información a un usuario desde una aplicación cuando el vehículo está en movimiento y visualizar una segunda categoría de información al usuario cuando el vehículo se ha detenido.
En una realización, el método incluye además acceder a uno o más de hitos de mantenimiento y diagnósticos predictivos en respuesta a la alerta del vehículo activada, descifrar códigos DTC y presentar información relacionada de mantenimiento del vehículo en tiempo real basándose en la información a la que se accede. El método donde una aplicación de software de recopilación de datos configurada para comunicarse con la plataforma de entretenimiento informativo de vehículo está instalada en o en comunicación con la memoria de entretenimiento informativo de vehículo e incluye además la salida, a un usuario, información generada en respuesta a datos recopilados de la aplicación de software de recopilación de datos. Las implementaciones de las técnicas descritas pueden incluir hardware, un método o proceso, o software informático en un medio accesible por ordenador.
Los detalles de una o más implementaciones se exponen en los dibujos adjuntos y la descripción a continuación. Otras características y ventajas serán evidentes a partir de la descripción, los dibujos y las reivindicaciones.
Breve descripción de los dibujos
La figura 1 es una vista general de un sistema que puede ejecutar uno o más procesos de entretenimiento informativo de vehículo e intercambiar datos relacionados con el vehículo con uno o más vehículos y dispositivos informáticos tales como dispositivos móviles, unidades principales, y tableros de instrumentos dispuestos en o conectados a tales dispositivos según la presente divulgación.
La figura 2A es una interfaz gráfica de usuario adecuada para obtener acceso a una plataforma de entretenimiento informativo de vehículo que se hace funcionar en uno o más dispositivos informáticos según la presente divulgación.
La figura 2B es un diagrama esquemático de la unidad principal de vehículo o del elemento de visualización de tablero de instrumentos adecuado para su uso con una plataforma de entretenimiento informativo de vehículo, una aplicación de plataforma de entretenimiento informativo de vehículo a modo de ejemplo y diversas interfaces de usuario accionables en elementos de pantalla para seleccionar entre tales aplicaciones y proporcionar entradas según la presente divulgación.
La figura 2C es un diagrama esquemático de la interfaz de usuario con elementos de interfaz gráfica que pueden iniciar la ejecución de diversas aplicaciones de plataforma de entretenimiento informativo de vehículo y proporcionar información del vehículo en relación con tres vehículos diferentes según la presente divulgación.
La figura 2D es un diagrama esquemático de la unidad principal de vehículo o del elemento de visualización del tablero de instrumentos adecuado para su uso con una plataforma de entretenimiento informativo de vehículo, una aplicación de plataforma de entretenimiento informativo de vehículo a modo de ejemplo y diversas interfaces de usuario accionables en elementos de pantalla para seleccionar entre tales aplicaciones y proporcionar entradas según la presente divulgación.
La figura 2E es un diagrama esquemático de la interfaz de usuario que muestra los cambios de ubicación del vehículo para el cual la plataforma de entretenimiento informativo de vehículo tiene información tal como desde un dispositivo de recopilación de datos de a bordo en el vehículo.
La figura 3 es un diagrama esquemático de una unidad principal de vehículo o un elemento de visualización de tablero de instrumentos adecuado para su uso con una plataforma de
1
entretenimiento informativo de vehículo que ejecuta una aplicación de plataforma de entretenimiento informativo de vehículo a modo de ejemplo para controlar la casa, otro edificio o instalación según la presente divulgación.
La figura 4A es un diagrama esquemático de una unidad principal de vehículo o un elemento de visualización de tablero de instrumentos adecuado para su uso con una plataforma de entretenimiento informativo de vehículo que ejecuta una aplicación de plataforma de entretenimiento informativo de vehículo a modo de ejemplo para monitorizar vehículos según la presente divulgación.
La figura 4B es un diagrama esquemático que muestra pantallas de interfaz gráfica de usuario adicionales en un dispositivo informático que se relacionan con la aplicación de plataforma de entretenimiento informativo de vehículo de la figura 4A según la presente divulgación.
La figura 5 es un diagrama esquemático de una unidad principal de vehículo o un elemento de visualización de tablero de instrumentos adecuado para su uso con una plataforma de entretenimiento informativo de vehículo que ejecuta una plataforma de entretenimiento informativo de vehículo a modo de ejemplo para su aplicación para asistencia en carretera según la presente divulgación.
La figura 6A es un diagrama esquemático de la unidad principal de vehículo o elemento de visualización de tablero de instrumentos adecuado para su uso con una plataforma de entretenimiento informativo de vehículo que ejecuta una aplicación de plataforma de entretenimiento informativo de vehículo a modo de ejemplo para proporcionar líneas de tiempo e información para tareas de reparación y mantenimiento para el vehículo según la presente divulgación.
Las figuras 6B y 6C son diagramas esquemáticos que muestran pantallas de interfaz gráfica de usuario adicionales en un dispositivo informático que se relacionan con la aplicación de plataforma de entretenimiento informativo de vehículo de la figura 6A y la cuenta atrás para la característica de mantenimiento de la aplicación según la presente divulgación.
La figura 6D es un diagrama esquemático que muestra pantallas de interfaz gráfica de usuario adicionales en un dispositivo informático que se relacionan con la aplicación de plataforma de entretenimiento informativo de vehículo de la figura 6A que muestran elementos de mantenimiento y reparación para diversos usuarios de vehículos conectados a una o más
plataformas de vehículos según la presente divulgación.
La figura 7 es un diagrama esquemático de un conjunto de interfaces de programación de aplicaciones a modo de ejemplo creadas para intercambiar datos y proporcionar retroalimentación y entradas receptivas para aplicaciones de plataforma de entretenimiento informativo de vehículo.
Las figuras 8A-8D son diagramas esquemáticos de interfaces de usuario de aplicación y salidas de aplicación para su uso con una unidad principal de vehículo, dispositivo informático, o elemento de visualización de tablero de instrumentos que se relacionan con una aplicación de conducción o navegación de una plataforma de entretenimiento informativo de vehículo según la presente divulgación.
Las figuras 9A-9D son diagramas esquemáticos de interfaces de usuario de aplicación y salidas de aplicación para su uso con una unidad principal de vehículo, dispositivo informático, o elemento de visualización de tablero de instrumentos para controlar la casa u otro edificio usando una aplicación basada en reglas de una plataforma de entretenimiento informativo de vehículo según la presente divulgación.
Las figuras 10A-10D son diagramas esquemáticos de interfaces de usuario de aplicación y salidas de aplicación para su uso con una unidad principal de vehículo, dispositivo informático, o elemento de visualización de tablero de instrumentos para controlar el sistema de seguridad de un vehículo usando una aplicación de una plataforma de entretenimiento informativo de vehículo según la presente divulgación.
Descripción detallada
Visión general
Soluciones de vehículo conectadas, tales como soluciones de automóvil, pueden usarse en una plataforma diseñada para ayudar a los fabricantes de automóviles a darse cuenta del potencial de integrar el coche en el creciente espacio de internet de las cosas (IoT). Los sistemas inteligentes añaden valor a los sistemas y ayudan a proporcionar un mecanismo para el crecimiento y la nueva tecnología. Por lo tanto, puede ser necesario habilitar experiencias basadas en dispositivos de IoT, nube y software innovadores dentro y fuera del coche. Una plataforma de entretenimiento informativo abierta (OIP) o plataforma de
entretenimiento informativo de vehículo puede habilitar una amplia gama de soluciones de terceros basadas en HTML5 que permiten a los conductores integrarse sin problemas en sus vidas digitales. En una realización, la plataforma de entretenimiento informativo de vehículo puede denominarse Carport, como ejemplo no limitativo de una plataforma de este tipo. Pueden usarse otras marcas o identificadores adecuados para referirse a una plataforma de entretenimiento informativo de vehículo dada sin limitación. El término “plataforma de entretenimiento informativo de vehículo” o plataforma o sistema, puede usarse como sinónimo de Carport sin limitación como se usa en el presente documento.
Por ejemplo, una plataforma de entretenimiento informativo de vehículo puede llevar aplicaciones y servicios desde una plataforma de información de vehículo al elemento de visualización incorporado de un vehículo, creando una experiencia de conductor conectada más segura. La plataforma de entretenimiento informativo de vehículo puede presentar una interfaz de usuario basada en la ubicación intuitiva y puede conectar conductores a diversos aspectos de su vida digital, incluyendo su automóvil, casa y seres queridos.
Con referencia a la figura 1, se muestra una aplicación de entretenimiento informativo de vehículo de lado de servidor (VIT) 10 y aplicaciones de VIT de lado de cliente 12, 14, 16, y 18. Aplicación de servidor 10 y/o una o más de aplicaciones de cliente 12, 14, 16, y/o 18 pueden ejecutar uno o más procesos configurados para llevar a cabo una o más de las características descritas en el presente documento. La aplicación de servidor 10 puede denominarse un proceso configurado para llevar a cabo una o más de las características descritas en el presente documento, tal como el proceso de entretenimiento informativo de vehículo 10. Además, una o más de las aplicaciones de cliente 12, 14, 16, y 18 puede referirse a un proceso configurado para llevar a cabo una o más de las características descritas en el presente documento, tales como los procesos de entretenimiento informativo de vehículo 12, 14, 16, y/o 18.
El proceso de entretenimiento informativo de vehículo 10 puede ser un proceso de lado de servidor (por ejemplo, proceso de entretenimiento informativo de vehículo de lado de servidor 10), un proceso de lado de cliente (por ejemplo, proceso de entretenimiento informativo de vehículo de lado de cliente 12, proceso de entretenimiento informativo de vehículo de lado de cliente 14, proceso de entretenimiento informativo de vehículo de lado de cliente 16, o proceso de entretenimiento informativo de vehículo de lado de cliente 18), o un proceso híbrido de lado de servidor/lado de cliente (por ejemplo, una combinación del proceso de entretenimiento informativo de vehículo de lado de servidor 10 y uno o más de los procesos de entretenimiento
1
informativo de vehículo de lado de cliente 12,14, 16, 18). Esta solicitud se refiere a la solicitud de patente estadounidense n.° 14/848.316 presentada el 8 de septiembre de 2015 y titulada "Vehicle Information System”, cuya divulgación se incorpora en el presente documento como referencia en su totalidad.
Visión general de plataforma de entretenimiento informativo de vehículo
Con referencia a la figura 1, el proceso de entretenimiento informativo de vehículo de lado de servidor 10 puede residir en y puede ejecutarse por un ordenador servidor 20, que puede hacer funcionar la plataforma de entretenimiento informativo de vehículo y que puede estar en comunicación con la red 22 (por ejemplo, internet o una red de área local). Ejemplos del ordenador servidor 20 pueden incluir, pero no se limitan a: un ordenador personal, un ordenador servidor, una serie de ordenadores servidores, un miniordenador, y/o un ordenador central. El ordenador servidor 20 puede ser un sistema distribuido y las operaciones del ordenador servidor 20 pueden ejecutarse en uno o más procesadores, simultáneamente y/o en serie.
Por ejemplo, el ordenador servidor 20 puede ser una representación simbólica de un sitio informático en la nube, entorno en la nube, o plataforma en la nube que hace funcionar múltiples servidores, ordenadores, o máquinas virtuales (por ejemplo, un ordenador anfitrión de máquina virtual). El ordenador servidor 20 puede ejecutar uno o más sistemas operativos, ejemplos de los cuales pueden incluir, pero no se limitan a: Microsoft Windows Server TM; Novell Netware TM; Redhat Linux TM, Unix, o un sistema operativo personalizado, por ejemplo.
Los conjuntos de instrucciones y subrutinas del proceso de entretenimiento informativo de vehículo de lado de servidor 10, que pueden almacenarse en el dispositivo de almacenamiento 24 acoplado al ordenador servidor 20, pueden ejecutarse por uno o más procesadores (no mostrados) y una o más arquitecturas de memoria (no mostradas) incorporadas en el ordenador servidor 20. El dispositivo de almacenamiento 24 puede incluir, pero no se limita a: una unidad de disco duro; una unidad de cinta; una unidad óptica; un dispositivo de almacenamiento de estado sólido; una matriz RAID; una memoria de acceso aleatorio (RAM); y una memoria de solo lectura (ROM).
El ordenador servidor 20 puede ejecutar una aplicación de servidor web que permite el acceso al ordenador servidor 20 (a través de la red 22) usando uno o más protocolos, ejemplos de
los cuales pueden incluir, pero no se limitan a, HTTP (es decir, Protocolo de Transferencia de Hipertexto). La red 22 puede estar en comunicación con una o más redes secundarias (por ejemplo, red 26), ejemplos de los cuales pueden incluir, pero no se limitan a: una red de área local; una red de área amplia; o una intranet, por ejemplo.
Procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18 puede residir en y puede ejecutarse por los dispositivos electrónicos del cliente 28, 30, 32, y/o 34 (respectivamente), ejemplos de los cuales pueden incluir, pero no se limitan a, ordenador personal 28, un televisor con uno o más procesadores incorporados en el mismo o acoplados al mismo (no mostrados), ordenador portátil 30, teléfono móvil habilitado para datos 32, ordenador de bolsillo 34, una tableta (no mostrada), y un asistente digital personal (no mostrado), una unidad principal o tablero de instrumentos de vehículo, por ejemplo. Dispositivos electrónicos de cliente 28, 30, 32, y/o 34 pueden estar cada uno en comunicación con la red 22 y/o la red 26 y cada uno puede ejecutar un sistema operativo, ejemplos de los cuales pueden incluir, pero no se limitan a, Apple iOSTM, Microsoft Windows™, Android™, Redhat Linux™, o un sistema operativo personalizado.
Los conjuntos de instrucciones y subrutinas de los procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18, que pueden almacenarse en dispositivos de almacenamiento 36, 38, 40, 42 (respectivamente) acoplados a los dispositivos electrónicos de cliente 28, 30, 32, 34 (respectivamente), pueden ejecutarse mediante uno o más procesadores (no mostrados) y una o más arquitecturas de memoria (no mostradas) incorporadas en los dispositivos electrónicos de cliente 28, 30, 32, 34 (respectivamente). Dispositivos de almacenamiento 36, 38, 40, 42 pueden incluir, pero no se limitan a: unidades de disco duro; unidades de cinta; unidades ópticas; dispositivos de almacenamiento de estado sólido; matrices RAID; memorias de acceso aleatorio (RAM); memorias de solo lectura (ROM); dispositivos de almacenamiento Compact Flash (CF); dispositivos de almacenamiento Secure Digital (SD); y dispositivos de almacenamiento Memory Stick.
Procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18 y/o el proceso de entretenimiento informativo de vehículo de lado de servidor 10 pueden ser procesos que se hacen funcionar dentro de (es decir, forman parte de) un sitio informático en la nube, aplicación informática en la nube, plataforma en la nube, o entorno en la nube. Alternativamente, procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18 y/o el proceso entretenimiento informativo de vehículo de lado de servidor 10 pueden ser aplicaciones independientes que funcionan junto con el sitio informático en la
1
nube, aplicación informática en la nube, plataforma en la nube, o entorno en la nube. Uno o más de los procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18 y el proceso entretenimiento informativo de vehículo de lado de servidor 10 pueden interactuar entre sí (a través de la red 22 y/o la red 26).
En una realización, uno o más de los procesos de lado de cliente se hacen funcionar dentro de cada uno de los vehículos a modo de ejemplo V1, V2, V3 mostrados en la figura 1. El proceso puede acceder a uno o más sistemas de memoria o buses de cada vehículo. Los vehículos V1, V2, y V3, pueden ser los vehículos de un parque tal como taxis o transportadores de carga. En otra realización, los vehículos V1, V2, y V3, pueden ser los vehículos de una familia, tales como cónyuges y sus hijos. En otra realización, los vehículos V1, V2, y V3, pueden ser los vehículos de un grupo de compañeros de piso o servicios de emergencia. En una realización, un vehículo dado V1, V2, y V3 es un coche, camión u otro tipo de vehículo basado en un motor de combustión, eléctrico o mecánico adecuado para viajar por tierra, aire, o agua.
Los usuarios 44, 46, 48, 50 pueden acceder al proceso de entretenimiento informativo de vehículo de lado de servidor 10 directamente a través del dispositivo en el que el proceso de entretenimiento informativo de vehículo de lado de cliente (por ejemplo, procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, 18) se ejecuta, a saber, dispositivos electrónicos de cliente 28, 30, 32, 34, por ejemplo, o un tablero de instrumentos, dispositivo móvil, u otro dispositivo informático usado en o conectado a uno o más de los vehículos V1, V2, y V3. Los usuarios 44, 46, 48, 50 pueden acceder al proceso de entretenimiento informativo de vehículo de lado de servidor 10 directamente a través de la red 22 y/o a través de la red secundaria 26. Además, el ordenador servidor 20 (es decir, el ordenador que ejecuta el proceso de entretenimiento informativo de vehículo de lado de servidor 10) puede estar en comunicación con la red 22 a través de la red secundaria 26, como se ilustra con la línea de enlace fantasma 52.
En una realización, cada vehículo V1, V2, y V3 puede representar un dispositivo informático electrónico 11 en o conectado a un vehículo. En una realización, cada vehículo V1, V2, y V3 puede incluir una llave, dispositivo móvil, teléfono móvil, complemento, dispositivo de IoT, tablero de instrumentos, u otro dispositivo (generalmente denominado dispositivo informático 11) que se conecta a un puerto o canal de comunicación en cada vehículo respectivo. En una realización, cada vehículo V1, V2, V3 incluye uno o más buses y canales de comunicación en comunicación eléctrica con uno o más dispositivos informáticos, tal como un procesador o un
1
circuito integrado específico de aplicación, y uno o más dispositivos de memoria. En una realización, el uno o más dispositivos de memoria incluyen la memoria de entretenimiento informativo de vehículo (IVI) o componentes y subsistemas de la misma. En una realización, cada uno de los componentes anteriores forma parte del dispositivo 11 u otro sistema de vehículo. En una realización, el dispositivo 11 es un dispositivo de recogida de datos de a bordo como se describe en la solicitud de patente estadounidense n.° 14/848.316 presentada el 8 de septiembre de 2015 y titulada "Vehicle Information System.”
En una realización, el dispositivo 11 puede implementarse como una llave, conector, complemento u otro dispositivo que pueda recopilar datos de un vehículo. En una realización, el dispositivo 11 se une al puerto de salida de diagnóstico de a bordo de un vehículo y comunica datos sobre el coche a un servidor, un dispositivo de comunicación en el coche, un dispositivo móvil, u otros dispositivos y recopila y transmite información sobre el vehículo, información de terceros relevante para el uso del vehículo, los conductores y pasajeros del vehículo, eventos históricos relacionados con el vehículo, rutas de desplazamiento y navegación e información de GPS, y otra información de interés para suministrar una fuente de datos a una o más aplicaciones de software que transforman y usan tales datos. Las aplicaciones de software pueden crearse por desarrolladores y, a su vez, ejecutarse en el VIT y recopilarse datos del sistema o dispositivo de información de vehículo 11. Las aplicaciones de software pueden transformar datos del vehículo y generar diversas señales y salidas en respuesta a los mismos para proporcionar navegación, seguridad, seguimiento, control doméstico, reparación, entretenimiento, personalización y otros servicios.
En una realización, programas de software, instrucciones, API, u otros módulos de software del proveedor de plataforma de entretenimiento informativo de vehículo o plataforma de información de vehículo están instalados o en comunicación con un coche u otro vehículo en la memoria de entretenimiento informativo de vehículo (IVI). Uno o más de tales módulos de software pueden comunicarse con la plataforma de entretenimiento informativo de vehículo, tal como a través de un dispositivo informático (tablero de instrumentos o teléfono, por ejemplo), usando 3G/LTE, WAN, Bluetooth, u otros canales de red o comunicación como se describe en el presente documento. En otra realización, la plataforma de entretenimiento informativo de vehículo se comunica con la memoria IVI por el aire. Como resultado, el contenido, datos procesados, y otra información de una API o aplicación de software dada (tal como, por ejemplo, las aplicaciones mostradas en las figuras 2B, 2C, y 2D, por ejemplo) y como se describe y se representa en el presente documento), se transmite eficazmente a un usuario/consumidor interactuando con uno o más de los sistemas y plataformas descritos en
el presente documento.
Los diversos dispositivos electrónicos de cliente 11 y otros mostrados en la figura 1 pueden estar acoplados directa o indirectamente a la red 22 (o red 26). Por ejemplo, el ordenador personal 28 se muestra directamente acoplado a la red 22 a través de una conexión de red cableada. Además, el ordenador de bolsillo 34 se muestra directamente acoplado a la red 26 a través de una conexión de red cableada. El ordenador portátil 30 se muestra acoplado de forma inalámbrica a la red 22 a través del canal de comunicación inalámbrica 54 establecido entre el ordenador portátil 30 y el punto de acceso inalámbrico (es decir, WAP) 56, que se muestra directamente acoplado a la red 22.
El WAP 56 puede ser, por ejemplo, un IEEE 802.11a, 802.11b, 802.11g, 802.11n, Wi-Fi, y/o dispositivo Bluetooth que es capaz de establecer un canal de comunicación inalámbrica 54 entre el ordenador portátil 30 y el WAP 56. El teléfono móvil habilitado para datos 32 se muestra acoplado de forma inalámbrica a la red 22 a través del canal de comunicación inalámbrica 58 establecido entre el teléfono móvil habilitado para datos 32 y la red/puente celular 60, que se muestra directamente acoplado a la red 22. Además, uno o más motor(es) de reglas 57 pueden conectarse a través de una red o de otro modo formar parte de una o más de las aplicaciones de VIT de lado de cliente 12, 14, 16 y/o la aplicación de VIT de lado de servidor 10. Los motores de reglas u otros componentes de la plataforma pueden proporcionar un servicio de reglas que informa el funcionamiento y las salidas de aplicaciones de desarrollador.
Todas las especificaciones del IEEE 802.11x pueden usar el protocolo Ethernet y el acceso múltiple de detección de portador con evitación de colisiones (es decir, CSMA/CA) para compartir trayectorias. Las diversas especificaciones de 802.11x pueden usar modulación por desplazamiento de fase (es decir, PSK) o codificación de código complementaria (es decir, CCK), por ejemplo. Bluetooth es una especificación de la industria de las telecomunicaciones que permite que, por ejemplo, teléfonos móviles, ordenadores, y asistentes digitales personales se interconecten usando una conexión inalámbrica de corto alcance.
En una realización, la interfaz de programación de aplicaciones puede usarse por un servidor de terceros para insertar o de otro modo añadir contenido adicional en el sistema de entretenimiento informativo. El sistema de entretenimiento informativo usa lógica y reglas internas para determinar qué información de un sistema de terceros debe visualizarse y cómo se visualiza en función de la situación de vehículo, ubicación, tiempo, o configuración de
1
usuario. Detalles adicionales relacionados con un servicio de reglas a modo de ejemplo y el procesamiento de reglas se describen con más detalle en el presente documento.
En una realización, el servidor de plataforma de entretenimiento informativo de vehículo u otro servidor o dispositivo informático mantiene información de configuraciones proporcionada por desarrollador. Esa información de configuración especifica cómo se visualiza el contenido de ese desarrollador en el elemento de visualización de entretenimiento informativo. La plataforma aplica esta configuración sobre datos textuales y otros proporcionados a la plataforma de entretenimiento informativo de vehículo por la aplicación del desarrollador. Al hacer que la plataforma aplique la configuración, es posible restringir la capacidad de un desarrollador de reproducir o sobrecargar información al elemento de visualización de entretenimiento informativo. De esta manera, la plataforma filtra la información visualizada en el vehículo para mejorar la seguridad.
La aplicación de entretenimiento informativo de vehículo puede usar datos de telemetría de vehículo locales o basados en servidor para determinar cómo y cuándo visualizar información a un usuario. Por ejemplo, notificaciones enviadas por múltiples aplicaciones de terceros pueden ponerse en cola por el elemento de visualización de entretenimiento informativo mientras el vehículo está moviéndose y solo se muestran al conductor cuando el vehículo se ha detenido. De manera similar, puede visualizarse determinada información basándose en activadores y reglas que dependen de la información de vehículo en tiempo real. Por ejemplo, cuando se detiene, el elemento de visualización de entretenimiento informativo puede notificar a un usuario que su economía de combustible mejoró en el tramo anterior del viaje o que excedió el límite de velocidad 2 veces hasta este viaje. Pueden usarse geocercas y otras restricciones de límites pueden usarse para definir reglas que, cuando se activan, dan como resultado eventos o datos que cambian la salida de aplicación en la plataforma.
Procedimientos y/o aplicaciones de entretenimiento informativo de vehículo
Para el siguiente análisis, el proceso de entretenimiento informativo de vehículo de lado de servidor 10 se describirá con fines ilustrativos y el ordenador servidor 20 puede ejecutar la aplicación de entretenimiento informativo de vehículo de lado de servidor 10 para llevar a cabo algunas o todas las técnicas y características descritas en el presente documento. Cabe señalar que el proceso de entretenimiento informativo de vehículo de lado de servidor 10 puede interactuar con el proceso de entretenimiento informativo de vehículo de lado de cliente 12 y puede ejecutarse dentro de una o más aplicaciones que permiten la comunicación con el
1
proceso de entretenimiento informativo de vehículo de lado de cliente 12. Sin embargo, esto no pretende ser una limitación de esta divulgación, ya que son posibles otras configuraciones (por ejemplo, procesos de entretenimiento informativo de vehículo de lado de cliente y/o procesos de entretenimiento informativo de vehículo de lado de servidor independientes). Por ejemplo, algunas implementaciones pueden incluir uno o más de los procesos de entretenimiento informativo de vehículo de lado de cliente 12, 14, 16, y 18 en lugar de o además del proceso de entretenimiento informativo de vehículo de lado de servidor 10. El proceso de entretenimiento informativo de vehículo 10 y/o la aplicación de entretenimiento informativo de vehículo 10 pueden representar una o más aplicaciones que pueden funcionar con la plataforma de entretenimiento informativo descrita en el presente documento.
La plataforma de entretenimiento informativo de vehículo puede llevar aplicaciones y servicios de plataforma de información de vídeo directamente al elemento de visualización o unidad principal integrado en un vehículo y puede crear una experiencia de conductor conectada más segura. Una interfaz de usuario basada en ubicación puede conectar conductores a aspectos de su vida digital, incluyendo su coche, casa y seres queridos. Una vez lanzada, la plataforma de entretenimiento informativo de vehículo puede presentar diversos servicios. Con referencia a la figura 2A, se muestra una pantalla de inicio de sesión 70 de ejemplo de la plataforma de entretenimiento informativo de vehículo a través de la cual puede lanzarse la plataforma. La pantalla de inicio de sesión 70 incluye, por ejemplo, instrucciones 71, un cuadro de texto 72 para introducir una dirección de correo electrónico u otra información de identificación de usuario, un cuadro de texto 74 para introducir una contraseña, y un botón 76 para ingresar en la plataforma. Diversos logotipos u otras marcas 81, 82 pueden incluirse como parte de la pantalla de inicio de sesión/ portal de entrada 70 para la plataforma de entretenimiento informativo de vehículo.
La plataforma de entretenimiento informativo de vehículo puede ejecutar diversas aplicaciones usando datos específicos de vehículo desde un dispositivo de a bordo o un teléfono móvil en un vehículo. Como se muestra en la figura 2B, las aplicaciones pueden ejecutarse en diversos dispositivos informáticos, tales como teléfono móvil o una unidad principal o consola de tablero de instrumentos 110 dispuesta dentro de un coche u otro vehículo. Este dispositivo puede incluir una montura 112 o ser retráctil. La unidad principal/tablero de instrumentos 110 incluye un elemento de visualización que puede incluir una pantalla táctil. El tablero de instrumentos 110 puede ser un dispositivo informático y permite a un usuario activar y desplazarse a través de diversas aplicaciones de la plataforma de entretenimiento informativo de vehículo. Pueden seleccionarse diversas aplicaciones.
2
Por ejemplo, una aplicación de conexión doméstica 139 puede permitir que un conductor vea un mapa en tiempo real de sus seres queridos y configuraciones de casa inteligentes personalizadas que activan la iluminación, temperatura, seguridad y más. Como se muestra en la figura 2C, una interfaz de usuario 115 de la plataforma de entretenimiento informativo de vehículo, tal como se visualiza en un tablero de instrumentos, una unidad principal, un teléfono, u otro dispositivo informático que muestre diversas aplicaciones 139 (Casa), 140 (“Beagle”, monitorización en tiempo real de vehículos conectados V1, V2, V3), 142 (Reparación/mantenimiento de vehículo), 144 (Asistencia en carretera), 145 (Carport/acceso y control a la plataforma de entretenimiento informativo de vehículo general), 147 (Conducción - navegación e información de conducción), y 148 (Seguridad de vehículo). Estos iconos o en el elemento de pantalla pueden iniciar el funcionamiento de la aplicación de plataforma subyacente. La interfaz de usuario 115 también muestra tres coches V1, V2, y V3 que están conectados a la plataforma de entretenimiento informativo de vehículo, tal como mediante un dispositivo de complemento o llave para el puerto OBD para cada vehículo respectivo. Estas diversas aplicaciones y otras descritas en el presente documento están diseñadas para su uso en una plataforma de entretenimiento informativo de vehículo, tal como un sistema de tablero de instrumentos basado en la nube.
La figura 2E es un diagrama esquemático de la interfaz de usuario que muestra los cambios de ubicación del vehículo V1 para el cual la plataforma de entretenimiento informativo de vehículo tiene información tal como desde un dispositivo de recopilación de datos de a bordo en el vehículo. La interfaz de la figura 2E es un elemento de visualización en tiempo real y se muestra a medida que se mueve V1. A medida que el vehículo V1 se mueve, puede reaccionar a límites tales como el límite B centrado en la casa H. Un usuario puede monitorizar V1 con Beagle 140 o el conductor puede usar el elemento de visualización para configurar la aplicación doméstica 139.
Con referencia a las figuras 3 y 4A, se muestran interfaces gráficas de usuario de ejemplo 120, 150 que muestran diversas características de la plataforma de entretenimiento informativo de vehículo y aplicaciones de software diseñadas para su uso en la plataforma, como se describe en el presente documento. En la figura 3, la interfaz 120 muestra la aplicación doméstica 139 como seleccionada. Esta aplicación tiene diversos usos. Por ejemplo, a medida que la última persona sale del camino de entrada, la plataforma de entretenimiento informativo de vehículo, que puede denominarse Carport u otra marca o identificador adecuado, el conductor puede seleccionar una aplicación de configuración
doméstica 139 para mostrar al conductor el estado de diversas condiciones sin y alrededor de la casa. Esta aplicación doméstica 139 también puede usarse para controlar diversos dispositivos dentro y alrededor de la casa. También se muestra un usuario U2.
Adicionalmente, en la interfaz de usuario 120 mostrada en la figura 3, se ha seleccionado y ejecutado la aplicación doméstica 139 de la plataforma de entretenimiento informativo de vehículo. Un usuario U2 ha iniciado sesión y está usando la aplicación doméstica 139. La visualización de la información de aplicación y el componente de interfaz de usuario de la aplicación 139 muestra al usuario que el termostato se ajusta a una temperatura en un icono de termostato 130. Dos miembros de la casa están "ausentes” como se muestra en el panel superior izquierdo. En la aplicación 139 también se muestra al usuario U2 que el sistema de aspersión de la casa ha comenzado como se muestra por el icono de aspersión 131, que las luces están apagadas con un icono de iluminación 132, y que la puerta frontal está cerrada con un icono de puerta frontal 134.
El usuario U2 puede configurar estas diversas condiciones domésticas seleccionando una configuración doméstica inteligente usando iconos personalizados por el usuario, si el usuario está o no en casa o fuera, o ambos. Por ejemplo, la interfaz de usuario 120 incluye un icono 122 para cuando un primer usuario está en casa, un icono 124 para cuando un segundo usuario no está, y un icono 126 para cuando un tercer usuario no está. Por lo tanto, cada usuario puede seleccionar el estado de las condiciones de cuándo llegan a casa o salen de la casa. Además, los conductores pueden monitorizar el área de su familia a medida que conducen sus vidas móviles. Al seleccionar simplemente el icono Beagle 140 en la plataforma de entretenimiento informativo de vehículo, (Carport, por ejemplo) el conductor puede monitorizar rápida y fácilmente la ubicación en tiempo real de cada coche conectado a la aplicación de información de vehículo en su casa como se muestra en la interfaz gráfica de usuario 150 de la figura 4A. La aplicación se conoce como Beagle, pero puede usarse cualquier identificador o marca adecuada. La figura 4B proporciona pantallas de interfaz de usuario adicionales (generalmente 300) para la monitorización en tiempo real de otro vehículo, tales como V1, V2, o V3 (o todos ellos).
En una realización, la interfaz de usuario 150 visualiza la ubicación actual de cada miembro de la casa. Por ejemplo, iconos 152, 154, 156 mostraron al conductor la ubicación actual de cada miembro de la casa. La interfaz de usuario 150 también incluye una línea de tiempo de las ubicaciones de cada miembro de la casa a medida que se mueven entre la casa, trabajo, y otras ubicaciones en el panel izquierdo, incluyendo información sobre su viaje, tal como la
velocidad del coche a medida que se mueven entre ubicaciones.
Ejemplos de esta información se muestran en los iconos de línea de tiempo 158, 160, 162, 164, 166, 168, 170. También puede incluirse un mapa 172 que le da al conductor una representación visual de la ubicación de cada miembro de la casa. Además, los conductores pueden acceder a una línea de tiempo personalizada de hitos de mantenimiento utilizando un icono de mantenimiento 142 y diagnósticos predictivos usando un icono de diagnóstico 144 para su coche cuando el motor activa una alerta, la plataforma de entretenimiento informativo de vehículo / Carport presentará esto al usuario en tiempo real. A continuación, el sistema descifrará el código y proporcionará al conductor más detalles sobre la alerta.
Al controlar y filtrar la información de la aplicación antes de que se visualice, la plataforma de entretenimiento informativo de vehículo / Carport se centra en el reconocimiento y la educación sin inundar al conductor con notificaciones distractoras. El estado del vehículo, si se detiene, acelera, ralentiza, en lugar en el que esté, la hora del día y otros factores pueden usarse para visualizar diferentes categorías de contenido en diferentes momentos. Una categoría de contenido puede ser más alarma y, como tal, es adecuada para cuando el usuario va hacia su camino de entrada en casa. Otro contenido tal como un informe meteorológico de audio, puede ser una categoría aceptable a entregar mientras se conduce. La figura 4B muestra información sobre cada conductor en la primera pantalla de interfaz e información de velocidad y límite para restringir reglas. Todos los dispositivos se muestran en el segundo panel. El tercer panel proporciona actualizaciones, notificaciones y ubicaciones de actividad para tres dispositivos con tres usuarios. Estos dispositivos pueden ser dispositivos OBD en una realización.
Con referencia ahora a la figura 5, se muestra una interfaz gráfica de usuario de ejemplo 200 que muestra diversas características de la plataforma de entretenimiento informativo de vehículo, incluyendo una característica que permite solicitar asistencia. El conductor selecciona el icono de diagnóstico 144, que visualiza la interfaz de usuario 200 con respecto a las opciones para cuando se activa una alerta o el conductor necesita asistencia. Los conductores pueden considerar servicios usando el icono de asistencia 202. La activación del icono de asistencia 202 presenta opciones para el conductor, incluidos los servicios de neumáticos, servicios de suministro de combustible, y las empresas de remolque que usan una pluralidad de iconos 204, 206, 208, 210, 212, 214, 216. Cada icono 204, 206, 208, 210, 212, 214, 216 representa una opción de servicio disponible, e incluye información sobre la ubicación y disponibilidad precisas de cada uno de los proveedores de servicios al presionar
2
un botón.
Con referencia ahora a la figura 6A, se muestra una interfaz gráfica de usuario de ejemplo 250 que muestra diversas características de la plataforma de entretenimiento informativo de vehículo, incluyendo una característica que permite ver diversa información de vehículo de diagnóstico. El conductor selecciona el icono de mantenimiento 142 que visualiza la interfaz de usuario 250 y los hitos de mantenimiento e información asociados con el vehículo. El panel superior en la sección central muestra una línea de tiempo de tarea de mantenimiento para un vehículo dado con un dispositivo dado 11. Se muestra un registro de incidencias debajo de la interfaz de línea de tiempo.
Por ejemplo, con una plataforma de entretenimiento informativo de vehículo contextual dada, puede llevarse información personalizada a los conductores sin distraerlos de la carretera. La interfaz de usuario 250 incluye información sobre el estado general de cada vehículo asociado con la casa usando iconos relacionados con cada vehículo. La distancia de 438 kilómetros hasta el siguiente mantenimiento se reducirá a medida que las distancias se atraviesen como se muestra en las figuras 6A y 6B donde 438 en la interfaz 255 ha disminuido a 436 como se muestra en la interfaz 265. De esta manera, se avisa a los usuarios. Para cada vehículo, el conductor puede ver la salud, estadísticas de mantenimiento, o servicios que usan el icono de salud 258, icono de estadísticas 260, o icono de tiendas 262. Por ejemplo, en la interfaz de usuario a modo de ejemplo 250, se ha seleccionado el icono de salud 258, que visualiza varios iconos relacionados con la salud de una pluralidad de componentes del vehículo, incluyendo, pero no limitado a, el aceite y los filtros, los neumáticos y las luces, la batería y el refrigerante, las bujías y la ignición, las pastillas y el líquido de frenos, y el motor y la transmisión con iconos mostrados. También puede visualizarse al conductor diversa información relacionada con las líneas de tiempo de mantenimiento y el mantenimiento anterior. Por ejemplo, se visualiza una línea de tiempo 261 que muestra las fechas de usuario del mantenimiento anterior. Un registro de incidencias 263 incluye una lista de problemas de mantenimiento pasados con sus fechas asociadas.
Una plataforma de entretenimiento informativo de vehículo puede integrarse con OEM de automóvil que soportan plataformas de entretenimiento informativo HTML5 basadas en sistemas abiertos. La plataforma de entretenimiento informativo de vehículo puede integrarse con los diseños existentes del fabricante de automóviles. Una plataforma de entretenimiento informativo de vehículo es una tecnología diseñada para la integración directa del vehículo. Además, una plataforma de entretenimiento informativo de vehículo puede basarse en, pero
no se limita a, tecnología HTML5 estándar industrial, servicios en la nube conectados y conectividad de vehículos integrada de alta velocidad. Esta arquitectura soporta una fácil integración en unidades principales de entretenimiento informativo de automóviles existentes y futuros.
En una realización, una plataforma de entretenimiento informativo de vehículo tal como Carport puede ser una oferta estándar que puede personalizarse por solicitud de OEM de automóvil. La plataforma de entretenimiento informativo de vehículo puede integrarse directamente con vehículos OEM de automóvil por la bien conocida cadena de suministro de Tier 1 existente. Es posible que no se requieran productos adicionales para que los OEM entreguen capacidades de plataforma de entretenimiento informativo de vehículo en sus vehículos. Carport puede integrarse directamente dentro del coche. Es posible que no se requieran productos adicionales para que los OEM entreguen capacidades de Carport en sus vehículos. La experiencia de Carport se basa en los datos de la plataforma de información de vehículo que se generan por los datos del vehículo, aplicaciones de teléfonos inteligentes e integración de nube a nube. Por ejemplo, una aplicación puede visualizar alertas dinámicas del vehículo de su conductor adolescente. Esa alerta se define y gestiona usando la aplicación de teléfono inteligente de plataforma de información de vehículo en iOS o Android.
Carport puede basarse en API de plataforma de información de vehículo y puede permitir experiencias ricas basadas en datos específicos y relevantes del vehículo. Patrones de conducción, escenarios específicos de la salud del vehículo y del viaje pueden verse en Carport a simple vista. Carport puede permitir a los conductores con visibilidad a las conexiones, personas y dispositivos fuera del coche. El enfoque de Carport está mejorando la experiencia para el conductor, al tiempo que permite que el coche se conecte y comunique sin problemas con el mundo que los rodea. Una recopilación de API 350 adecuadas para su uso con una plataforma de vehículo se muestra en la figura 7. Estas API pueden incluir, sin limitación, API de dispositivo 305; API de transacción 315; AP de vehículo 310; API de evento 307; API de telemetría 320; API de viaje 327; API de diagnóstico 328; API de seguridad 325; y API de comportamiento 328. Estas API pueden usarse para desarrollar aplicaciones para su uso en la plataforma que solicitan datos u otra información con una API y reciben de la plataforma o dispositivo 11, proveedores de contenido de terceros u otros repositorios de datos. Se proporcionan detalles a modo de ejemplo adicionales para implementar tales API en el Apéndice A como ejemplos no limitantes de API adecuadas.
Los fabricantes de automóviles pueden integrar tecnología de visualización multifunción en
2
nuevos coches. La plataforma de entretenimiento informativo de vehículo está diseñada teniendo eso en cuenta, permitiendo que los conductores sean conscientes, no solo de su vehículo, sino también el amplio espectro de dispositivos de IoT conectados y experiencias relacionadas que son más importantes en sus vidas. En una realización, una plataforma de entretenimiento informativo de vehículo puede funcionar con un dispositivo de interfaz OBD usado con la plataforma de información de vehículo.
A medida que la vida de los conductores pase a estar cada vez más conectada, los dispositivos de IoT y las experiencias continuarán creciendo. Un refrigerador inteligente puede crear una lista de compra inteligente comprobando el producto fresco del mercado orgánico conectado que acaba de ponerse en venta que resulta estar en una ruta de viaje. Carport puede conectar el conductor a su vida digital de hoy y del futuro.
Carport puede usar las mejores prácticas de seguridad de la plataforma de información de vehículo a través de la protección activa, protección de firmware y autenticación. Carport puede ser un tablero de instrumentos basado en la nube, convirtiéndolo en una infraestructura de coche conectada de punto seguro. La protección activa puede permitir el pirateo potencial o el envío de código malicioso para bloquearse en el nivel de hardware de modo que no puedan enviarse datos no autorizados al motor. Una infraestructura de hardware puede bloquear el acceso exterior a los datos de un motor a través de Carport. La protección de firmware de un dispositivo de interfaz OBD no permitirá que se envíe código no aprobado o malicioso al motor. Esto puede lograrse a través de un cifrado de plataforma de información de vehículo que no es legible por partes no autorizadas.
Las personas no autorizadas no pueden acceder o comunicarse a través de Carport y solo aquellos dispositivos autenticados pueden obtener acceso. Se requieren nombre de usuario y contraseña para acceder al sistema de Carport, seguido de mensajería telefónica para validar que este es un acceso correcto. Carport no almacena ningún dato por sí solo además de alguna configuración y configuraciones específicas de vehículo. El sistema de Carport y las aplicaciones de terceros pueden depender principalmente de los datos dentro de la plataforma de información de vehículo. En una realización, esta información proviene de la memoria IVI de vehículos o a través de un dispositivo de a bordo tal como una llave o un complemento que se conecta a un puerto OBD.
Desarrolladores de aplicaciones pueden integrar fácilmente sus aplicaciones con la plataforma de vehículo descrita en el presente documento y crear nuevas aplicaciones para el coche
2
conectado. Por ejemplo, desabolladores pueden añadir capacidades de Carport a sus aplicaciones actuales de plataforma de información de vehículo al habilitar la aplicación en el portal de desarrollador. Aplicaciones que están integradas con Carport cumplen con los mismos estándares de seguridad que aplicaciones de plataforma de información de vehículo. La API de Carport se implementa y se despliega en la plataforma de información de vehículo en una realización. El elemento de interfaz de usuario 145 puede proporcionar acceso a diversos sistemas y funcionalidades de Carport.
En una realización, un automóvil puede estar equipado con una plataforma de entretenimiento informativo abierta (OIP) o un dispositivo integrado de plataforma de entretenimiento informativo de vehículo que puede ser un dispositivo de interfaz OBD. Pueden proporcionarse capacidades habilitadas en la nube que permiten la integración sin problemas de un estilo de vida digital fuera del coche, hasta el aumento de tiempo pasado dentro del coche. Carport es una plataforma de coche integrada conectada a la nube. El acceso a los datos de un usuario se extiende en una base segura autenticada con contraseña.
En general, el acceso a datos de usuario se autoriza después de que el solicitante se autentique usando un método de autenticación adecuado. Pueden usarse diversos mecanismos y tecnología para proporcionar tal autenticación, por ejemplo, autenticación biométrica, multifactorial, llaveros con tokens de acceso, y pueden usarse otros métodos en algunas realizaciones. El proceso de autenticación puede ser un proceso de 1 vez y un elemento de un esquema de seguridad y privacidad diseñado para proteger el acceso a datos personales en la nube de usuarios.
La capacidad de integrar conductores con su gran nube de IoT personal puede ser crítica para el estilo de vida digital del siglo XXI. Las casas de hoy en día presentan una enorme variedad de "cosas inteligentes” que van desde ventilación inteligente a termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, e incluso soluciones inteligentes para mascotas. Un coche que incluye OIP conectada a la nube puede proporcionar la capacidad de que un conductor sea consciente del estado de estos dispositivos a simple vista. Una conductora puede "controlar” su casa en el automóvil. Por ejemplo, a través de OIP o de la plataforma de entretenimiento informativo de vehículo descrita en el presente documento, un conductor puede ver desde el elemento de visualización en su tablero de instrumentos que su termostato ha bajado la temperatura, el sistema de aspersión de jardín está encendido, las luces se han reducido adecuadamente y un sistema de alarma está activo en modo "ausente”.
Los conductores pueden tener familias y adolescentes con mucha movilidad que conducen con ciertas restricciones. La tecnología de coche conectada a la nube de la plataforma de información de vehículo puede presentar una aplicación que permite a las familias la capacidad de definir las condiciones de funcionamiento del vehículo, alertas de velocidad y geocercas similares con alertas de anticipación, dando tranquilidad a los padres a cargo de los conductores adolescentes. A través del elemento de visualización de OIP en el tablero de instrumentos del automóvil, una conductora puede ver a su marido en su desplazamiento diario al trabajo, uno de los coches de sus hijos en el aparcamiento de la escuela (donde debe estar), y a su hijo mayor, todavía en casa.
Los teléfonos inteligentes pueden ser fundamentales para nuestras vidas digitales. Los usamos desde el momento en que nos despertamos, hasta el momento que nos vamos a dormir. La solución de coche conectada a la plataforma de información de vehículo se integra en las vidas digitales de los conductores cuando están fuera del coche. Se dispone de una gama de aplicaciones, así como un catálogo creciente de soluciones de teléfonos inteligentes para ambos entornos de móviles populares OS, iOS y Android. Por ejemplo, una aplicación de teléfono inteligente puede ampliar las capacidades en el coche para incluir la definición de las geocercas específicas que tienen sentido para un nuevo conductor adolescente. Por ejemplo, haciendo referencia ahora a la figura 4B, se muestra una interfaz gráfica de usuario de aplicación de teléfono inteligente 300 según la presente divulgación, y puede usarse para habilitar características de tipo familiar relacionadas. Quizás, definiciones de límites como escuela, trabajo y los puntos concurridos para salir ayudan a un padre a fomentar la conducción responsable. Estos límites pueden implementarse usando los servicios de reglas, reglas de estado y límite como se describe en el presente documento. Los usuarios también pueden definir restricciones de velocidad como "no conducir a más de 65 MPH”.
Las figuras 10A-10B también muestran interfaces de usuario gráficas de aplicaciones de teléfono inteligente 600A, 600B, 600C, y 600D según la presente divulgación que puede mostrar características de alerta de geocerca y ubicación de coche. Como se muestra en las interfaces de usuario 600A, 600B, 600C, y 600D, la aplicación de teléfono inteligente puede rastrear la ubicación de cada vehículo asociado con la casa y alertar al conductor sobre el estado de los mecanismos de cierre del vehículo. En la figura 10A, la interfaz 600A muestra que la aplicación de software se ha emparejado con un coche GTI. Las otras interfaces de usuario 600B, 600C, y 600D muestran el coche, el GTI, vinculado a la aplicación en un estado desactivado, un estado activado, y un estado de movimiento, respectivamente. También se
2
muestran diversos detalles y descripciones de la aplicación en cada pantalla de interfaz.
La conducción puede ser social y, como tal, formar parte de una plataforma de integración multiusuario tiene ventajas. A veces, los usuarios conducen con amigos y familiares, a veces conducen solos. En general, los usuarios siempre desean conectarse con ambos. La aplicación de conducción de una plataforma de información de vehículo permite a los usuarios registrar sus viajes, incluyendo dónde y cuándo se desplazan, la rapidez, cuántas veces se detienen, y datos de coste y combustible pueden capturarse. Con esos datos, puede compararse la eficiencia y los datos pueden compartirse a través de redes sociales. Por ejemplo, haciendo referencia ahora a las figuras 8A-8D, se muestra una interfaz gráfica de usuario de aplicación de teléfono inteligente 400A, 400B, 400C y 400D según la presente divulgación, y puede usarse para habilitar características de aplicación de conducción relacionadas. Una puntuación de conductor, mapas, viajes, actividad, insignia, consumo de gasolina y otra información pueden transmitirse usando la aplicación de conducción.
Dispositivos domésticos y otros dispositivos inteligentes están pasando a conectarse a Internet a una velocidad rápida. Las nubes personales contienen grandes cantidades de datos de estos dispositivos que llenan nuestras vidas. Una aplicación doméstica de la plataforma de información de vehículo puede diseñarse para integrar un coche conectado en los ecosistemas de IoT. Desde una aplicación de teléfono inteligente de aplicación de información de vehículo, pueden definirse reglas o activadores que se relacionan con un coche y pueden proporcionarse alertas en el coche.
Por ejemplo, cuando un coche se acerca a casa, la plataforma de información de vehículo puede encender la red o las luces controladas inalámbricas, elevar la temperatura controlada por Nest, desactivar la seguridad a medida que el coche entra en el garaje, precalentar el horno para cocinar o interactuar de otro modo con un IoT u otro dispositivo controlable de manera remota usando las plataformas y sistemas de vehículo descritos en el presente documento. La integración del tiempo que pasó en el coche con el resto de la vida digital del individuo puede facilitarse por la aplicación doméstica. Por ejemplo, haciendo referencia ahora a las figuras 9A-9D, se muestra una interfaz gráfica de usuario de aplicación de teléfono inteligente según la presente divulgación, y puede usarse para habilitar características de aplicación de casa relacionadas. Los ejemplos de la aplicación de casa también se comentaron anteriormente.
Como se muestra en las interfaces de usuario 500A, 500B, 500C, y 500D, la aplicación de
2
teléfono inteligente puede conectarse con la casa de un usuario e implementar diversas funciones, tales como configuraciones de temperatura, configuraciones de aspersor, configuraciones de luz y otros. En la figura 9B, la interfaz 600B muestra que la aplicación de software se ha diseñado para especificar reglas. Las otras interfaces de usuario 500C y 500D muestran la regla más reciente y las configuraciones para la regla, respectivamente. De esta manera, un usuario puede especificar reglas para el funcionamiento de la casa, como cuando el vehículo V1 se encuentra a 1 milla de la casa encender las luces y ajustar la temperatura de la habitación a un valor establecido.
Por lo tanto, el amplio mundo de dispositivos conectados por IoT puede aprovecharse para el conductor a través de la OIP descrita en el presente documento, servicios en la nube relacionados, integración de dispositivos móviles y desarrolladores de aplicaciones. En una implementación, puede proporcionarse un kit de desarrollador para permitir a los desarrolladores desarrollar aplicaciones de manera más fácil y eficiente para el protocolo y/o sistema de entretenimiento informativo de vehículo. El kit de desarrollador puede incluir un simulador (por ejemplo, que funcione con un dispositivo electrónico de cliente o sea un dispositivo independiente) de modo que el desarrollador no tenga que usar realmente un vehículo para fines de desarrollo.
En una implementación, la plataforma y el sistema de entretenimiento informativo de vehículo pueden estar abiertos a desarrolladores. La plataforma de entretenimiento informativo de vehículo puede incluir una plataforma de web abierta para desarrolladores, que puede ser segura, flexible, y robusta. Los desarrolladores pueden usar web, escritorio, y SDK móviles proporcionadas por el proveedor de servicios que administra la plataforma de entretenimiento informativo de vehículo. Previamente, los desarrolladores solo pueden haber podido crear aplicaciones para determinadas marcas y modelos de coches. Usando las técnicas y características descritas en el presente documento, los desarrolladores pueden crear aplicaciones que funcionan en algunos o en casi todos los coches y modelos usando la interfaz de programación de aplicaciones (API) descrita en el presente documento. Se pueden encontrar detalles adicionales con respecto a la API en el Apéndice A.
Además, los desarrolladores pueden comenzar con dispositivos de hardware (por ejemplo, unidad de base y mochila) y pueden extender las capacidades de la plataforma de entretenimiento informativo de vehículo creando mochilas adicionales que pueden conectarse físicamente a la mochila original o unidad de base o de forma inalámbrica.
Las herramientas de desarrollador pueden incluir SDK para iOS, Android y Window, código de muestra, documentación, y/o kits de desarrollador. Pueden crearse y gestionarse aplicaciones a nivel pormenorizado.
En una realización, una plataforma de vehículo para aplicaciones de software tales como CarPort proporciona a los desarrolladores la oportunidad de colocar una vista de sus aplicaciones dentro de un vehículo, ya sea en un teléfono o consola u otro elemento de visualización de vehículo. Desde dentro de la aplicación CarPort, los usuarios pueden cambiar entre aplicaciones, véase la información específica de aplicación superpuesta en la parte superior de un mapa que muestra cada uno de los dispositivos del usuario. En una realización, como parte de la configuración, las aplicaciones proporcionan un único URL para que la aplicación CarPort capturar información de estado actual. Además, las aplicaciones pueden insertar eventos y otra información de estado a la aplicación CarPort casi en tiempo real. Una vez que se crea una aplicación en el portal de desarrollador, puede habilitarse en la aplicación CarPort.
Cuando el puerto de acceso se abre por primera vez por un usuario en un vehículo particular, debe enviarse una determinada cantidad de datos de estado al elemento de visualización de carport con el fin de tener el estado actual de una aplicación cargada inmediatamente. Cuando se configura una aplicación para que se habilite para Carport, un desarrollador tendrá que proporcionar una propiedad feedUrí que define el formato por el cual Carport obtendrá esta información.
Además, en una realización, CarPort permite que una aplicación envíe eventos en tiempo real al elemento de visualización de CarPort de un usuario. Hay cuatro tipos de información que puede enviarse a CarPort en algunas realizaciones. Estos incluyen:
• Elemento de fuente - representa un evento en una línea de tiempo y aparece en la columna izquierda en orden cronológico inverso. Cada elemento de fuente tiene texto, subtexto, y un icono primario y secundario opcional.
• Alerta: aparece momentáneamente y puede descartarse opcionalmente por el usuario o descartarse automáticamente después de un corto período de tiempo. Las alertas solo visualizan una única cadena de mensajes.
• Estado de dispositivo - muestra el estado actual de un dispositivo dado. El estado se define
1
dentro del contexto de la aplicación e incluye un color (elegido de los colores primario, secundario, o terciarios en la configuración CarPort) y una etiqueta simple. Un ejemplo sería visualizar un dispositivo como "En casa” o "Activo”. Además, el color seleccionado se visualiza como un anillo alrededor del marcador del dispositivo en el mapa.
• Característica de mapa: representa una característica geoespacial específica para una sola aplicación. Cada característica de mapa se visualiza en el mapa junto con los dispositivos. Opcionalmente, un elemento de fuente puede hacer referencia a una característica de mapa de tal manera que se destacará cuando ese elemento de fuente se golpee.
Los desarrolladores pueden usar una solicitud API añadirá un elemento de fuente con texto, subtexto, y un icono primario y secundario (opcional). Se muestran detalles de API a modo de ejemplo adicionales en el Apéndice A. Los desarrolladores pueden usar una solicitud API para visualizar una alerta a la página de aterrizaje del puerto. La alerta se descarta automáticamente después de un corto período de tiempo o se descarta por el usuario. Los desarrolladores pueden usar una solicitud API para actualizar el estado de dispositivo, como actualizar el color y la etiqueta de un dispositivo como se visualiza en el carport. Los desarrolladores pueden usar una solicitud API para dibujar una mapFeature (es decir, un anillo de geocerca) en la ubicación designada con el radio y el color especificados. Los desarrolladores pueden usar una solicitud API para actualizar una mapFeature (es decir, un anillo de geocerca) en la ubicación designada con el radio y el color especificados; debe proporcionar la mapFeatureId que va a actualizarse. Los desarrolladores pueden usar una solicitud API para eliminar una mapFeature del mapa.
Diversas herramientas, métodos, y procesos de desarrollador que pueden usarse en relación con una o más interfaces de programación de aplicaciones como se describe en el presente documento en relación con la plataforma de entretenimiento informativo de vehículo pueden mostrarse en el Apéndice A.
Como se describe en el presente documento, uno o más servicios de reglas o motores de reglas pueden implementarse usando uno o más dispositivos informáticos, canales de comunicación, sistemas de control, y protocolos de comunicación de vehículo. Pueden usarse uno o más motores de reglas u otros dispositivos informáticos de la plataforma de vehículo para implementar un servicio de reglas para procesar e implementar reglas para diversas aplicaciones en la plataforma. En una realización, reglas y el procesamiento de reglas asociados pueden activar eventos, suscripciones, y otras activaciones basadas en parámetros
2
de vehículo y geocercas (u otros límites e información basados en ubicación). En una realización, se procesan reglas para evaluar la ubicación de un vehículo y los parámetros de vehículo, tales como sus parámetros de funcionamiento. Cuando el vehículo satisface todas las condiciones de límite para una regla, un servicio de evento o programaciones notifica a aplicaciones suscritas en la plataforma. Por lo tanto, si el coche V1 abandona la casa y hay una regla que se activa en función de ese suceso, se notifica a aplicaciones en la plataforma que usan esa regla.
En una realización, se implementa una regla de manera que contenga uno o más de los siguientes identificadores de dispositivo; una colección de límites para el dispositivo; y un estado. En una realización, el estado se implementa en la regla de modo que siempre es uno de: (a) "no evaluado”, lo que significa que no hay suficientes datos geoespaciales disponibles; (b) "no cubierto”, lo que significa que al menos una de las condiciones de límite no está satisfecha; y (c) "cubierto”, lo que significa que se cumplen todas las condiciones de límite. El dispositivo puede ser un vehículo o un dispositivo conectado a un vehículo u otro dispositivo informático como se describe en el presente documento.
En una realización, una regla está "cubierta” cuando todas las condiciones de límite son verdaderas. En una realización, una regla está "no cubierta” cuando al menos una condición de límite es falsa. Además, cuando no hay datos suficientes para determinar si una regla está "cubierta” o "no cubierta”, el estado de la regla está "no evaluado”. Cuando hay suficientes datos geoespaciales disponibles para cambiar de estado, el servicio de reglas puede hacer uno de los siguientes: cambia el estado de la regla a "cubierto” o "no cubierto”, y crea un evento de "rule-entiy o “rule-leave” para aplicaciones.
Por ejemplo, supóngase que una aplicación establece una condición de límite alrededor de la vivienda de un propietario de vehículo. Cuando el propietario conduce hacia casa desde el trabajo, el servicio de reglas detecta que se cumple una condición de límite geoespacial. Los diversos círculos de puntos mostrados en las pantallas de interfaz de usuario son ejemplos de límites. La interacción con tales límites puede activar diversas reglas. El servicio establece el estado de regla a "cubierto” y luego envía un evento de "ru le-entrf a la aplicación. Del mismo modo, cuando el propietario de vehículo sale de casa para trabajar, el servicio de reglas detecta que ya no se cumple una condición de límite geoespacial. El servicio establece el estado de regla en "no cubierto” y luego envía un evento de "rule-leave” a la aplicación. Pueden suscribirse aplicaciones a estos eventos de tres maneras, que son las siguientes: solo a la "rule-entrf, solo a la "rule-leave”, y/o a ambas con "rule-*’.
En una realización, para una regla dada que se maneja por el motor de reglas/servicio de reglas, un límite es: o bien un límite geoespacial que define una región en la superficie de la Tierra, o bien un límite paramétrico que define un rango para algún parámetro de vehículo. Un límite geoespacial define una región geográfica circular especificando: un único punto geográfico, y un radio en metros u otras unidades. En una realización, un límite paramétrico especifica: o bien un intervalo limitado, tal como "RPM entre 2000 y 4000”, o bien • un intervalo no limitado, tal como "RPM mayor de 3500”. Una regla está "cubierta” cuando todas las condiciones de límite son verdaderas. Este hecho tiene implicaciones útiles para el diseño de reglas.
Como ejemplo, supóngase que un desarrollador de aplicación añade dos límites geoespaciales separados a una regla. La regla nunca puede entrar en el estado "cubierto” ni activar nunca un evento de "rule-entry” o “rule-leave”. Siempre permanecerá en el estado "no evaluado”. Debido a que el dispositivo solo puede estar en una ubicación a la vez, en el mejor de los casos, solo puede satisfacer una de las condiciones de límite, pero nunca ambas. De manera similar, una regla nunca activará un evento si la regla contiene dos límites paramétricos separados para el mismo parámetro del vehículo. Por ejemplo, "RPM mayor de 3500” y "RPM menor de 2000” permanecerán siempre en el estado "no evaluado”.
En una realización, debido a estas implicaciones, el servicio de reglas permite como máximo un límite geoespacial en una regla. Esto elimina el problema de las regiones geoespaciales separadas. Sin embargo, los desarrolladores de aplicaciones en las plataformas de vehículos siguen evitando crear límites paramétricos separados. En una realización, el servicio de reglas y el dispositivo informático que lo implementa a través de motores de software y reglas, en una realización, permite que su aplicación gestione las reglas para dispositivos.
En algunas realizaciones, las reglas son invariables. Es decir, una vez creada, una regla no puede modificarse. Para cambiar una regla, una aplicación debe borrar una regla existente, y luego crear otra. La invariabilidad asegura que una regla siempre esté en un estado perfectamente consistente. En una realización, el/los motor(es) de servicio de reglas/reglas incluye(n) una API que realiza uno o más de los siguientes: enumerar todas las reglas para un dispositivo, obtener una regla específica, crear una regla para un dispositivo, y borrar una regla.
Se han descrito varias implementaciones. No obstante, se entenderá que pueden realizarse
4
diversas modificaciones sin apartarse del espíritu y alcance de la divulgación. Por ejemplo, pueden usarse diversas formas de los flujos mostrados anteriormente, con etapas reordenadas, añadidas, o eliminadas. En consecuencia, otras implementaciones se encuentran dentro del alcance de las siguientes reivindicaciones.
En diversas realizaciones, pueden usarse módulos o software para poner en práctica determinados aspectos de la invención. Por ejemplo, modelos de software como servicio (SaaS) o modelos de proveedor de servicios de aplicación (ASP) pueden emplearse como modelos de entrega de aplicaciones de software para comunicar aplicaciones de software a clientes u otros usuarios. Tales aplicaciones de software pueden descargarse a través de una conexión a Internet, por ejemplo, y hacerse funcionar independientemente (por ejemplo, descargadas a un ordenador portátil o de escritorio) o a través de un proveedor de servicios de terceros (por ejemplo, accediendo a través de un sitio web de terceros). Además, pueden emplearse técnicas de computación en la nube en relación con diversas realizaciones de la invención. En determinadas realizaciones, un "módulo” puede incluir software, firmware, hardware, o cualquier combinación razonable de los mismos.
Diversas realizaciones de los sistemas y métodos pueden incluir y/o utilizar un dispositivo informático. En diversas realizaciones, un ordenador puede estar en comunicación con un servidor o sistema de servidor que utiliza cualquier tipo adecuado de comunicación que incluye, por ejemplo, comunicaciones digitales por cable o inalámbricas. En algunas realizaciones, el servidor o sistema de servidor puede implementarse como una aplicación informática en la nube o de manera similar y puede proporcionar diversas funcionalidades de los sistemas y métodos como SaaS.
Los ejemplos presentados en el presente documento pretenden ilustrar implementaciones potenciales y específicas de la presente invención. Los ejemplos están destinados principalmente a fines de ilustración de la invención para los expertos en la técnica. No se pretende necesariamente que ningún aspecto o aspectos particulares de los ejemplos limiten el alcance de la presente invención.
Las figuras y descripciones de la presente invención se han simplificado para ilustrar elementos que son relevantes para una comprensión clara de la presente invención, al tiempo que se eliminan, por motivos de claridad, otros elementos. Los expertos en la técnica pueden reconocer, sin embargo, que este tipo de comentarios enfocados no facilitarían una mejor comprensión de la presente invención, y, por lo tanto, en el presente documento no se
proporciona una descripción más detallada de tales elementos.
Los procesos asociados con las presentes realizaciones pueden ejecutarse por equipos programables, tales como ordenadores. El software u otros conjuntos de instrucciones que pueden emplearse para hacer que el equipo programable ejecute los procesos pueden almacenarse en cualquier dispositivo de almacenamiento, tales como, por ejemplo, una memoria de sistema informático (no volátil), un disco óptico, cinta magnética, o disco magnético. Además, algunos de los procesos pueden programarse cuando se fabrica el sistema informático o a través de un medio de memoria legible por ordenador.
También puede apreciarse que determinados aspectos de proceso descritos en el presente documento pueden realizarse usando instrucciones almacenadas en un medio o medios de memoria legibles por ordenador que dirigen un ordenador o sistema informático para realizar etapas de proceso. Un medio legible por ordenador puede incluir, por ejemplo, dispositivos de memoria tales como disquetes, discos compactos de ambas variedades de solo lectura y de lectura/escritura, unidades de disco óptico, y unidades de disco duro. Un medio legible por ordenador también puede incluir almacenamiento de memoria que puede ser físico, virtual, permanente, temporal, semipermanente y/o semitemporal.
Un "ordenador”, "sistema informático”, "componente”, "dispositivo informático”, "dispositivo de ordenador”, o "procesador” puede ser, por ejemplo y sin limitación, un procesador, microordenador, miniordenador, servidor, gran sistema, ordenador portátil, una llave, un transceptor de información de vehículo, asistente de datos personal (PDA), un sistema de comunicación de vehículo, un sistema de diagnóstico de vehículo, uno o más sensores del vehículo, dispositivo de correo electrónico inalámbrico, teléfono celular, buscapersonas, procesador, máquina de fax, escáner, o cualquier otro dispositivo programable configurado para transmitir y/o recibir datos a través de una red. Los sistemas informáticos y dispositivos basados en ordenador dados a conocer en el presente documento pueden incluir memoria para almacenar determinadas aplicaciones de software usadas en la obtención, procesamiento, y comunicación de información. Puede apreciarse que tal memoria puede ser interna o externa con respecto al funcionamiento de las realizaciones dadas a conocer. La memoria también puede incluir cualquier medio para almacenar software, incluyendo un disco duro, un disco óptico, disco flexible, ROM (memoria de solo lectura), RAM (memoria de acceso aleatorio), PROM (ROM programable), EEPROM (PROM borrable eléctricamente) y/u otros medios de memoria legibles por ordenador. En diversas realizaciones, un "huésped”, "motor”, "portal” "filtro”, "servicio”, "plataforma”, o "componente” puede incluir diversos ordenadores o
sistemas informáticos, o puede incluir una combinación razonable de software, firmware, y/o hardware.
En diversas realizaciones de la presente invención, un único componente puede reemplazarse por múltiples componentes, y múltiples componentes pueden reemplazarse por un único componente, para realizar una función o funciones dadas. Excepto cuando tal sustitución no sea operativa para poner en práctica las realizaciones de la presente invención, tal sustitución se encuentra dentro del alcance de la presente invención. Cualquiera de los servidores, por ejemplo, puede reemplazarse por una "granja de servidores” u otra agrupación de servidores en red (por ejemplo, un grupo de hojas de servidor) que están ubicadas y configuradas para funciones cooperantes. Puede apreciarse que una granja de servidores puede servir para distribuir la carga de trabajo entre componentes individuales de la granja y puede expedir procesos informáticos aprovechando el poder colectivo y cooperativo de múltiples servidores. Tales granjas de servidores pueden emplear un software de equilibrio de carga que realiza tareas tales como, por ejemplo, seguimiento de la demanda de potencia de procesamiento de diferentes máquinas, priorización y tareas de programación basadas en la demanda de red, y/o proporcionar contingencia de copia de seguridad en caso de fallo de componente o reducción de la operabilidad.
En general, puede ser evidente para un experto en la técnica que diversas realizaciones descritas en el presente documento, o componentes o partes de los mismos, pueden implementarse en muchas realizaciones diferentes de software, firmware, y/o hardware, o módulos de los mismos. El código de software o hardware de control especializado usado para implementar algunas de las presentes realizaciones no es limitante de la presente invención. Por ejemplo, las realizaciones descritas anteriormente en el presente documento pueden implementarse en software informático usando cualquier lenguaje de programación informático adecuado tal como .NET, SQL, MySQL, o HTML usando, por ejemplo, técnicas convencionales u orientadas a objetos. Los lenguajes de programación para software informático y otras instrucciones implementadas por ordenador pueden traducirse al lenguaje de máquina por un compilador o un ensamblador antes de la ejecución y/o pueden traducirse directamente en tiempo de ejecución por un intérprete.
Ejemplos de lenguajes de ensamblaje incluyen ARM, MIPS, y x86; ejemplos de lenguajes de alto nivel incluyen Ada, BASIC, C, C++, C#, COBOL, Fortran, Java, Lisp, Pascal, Object Pascal; y ejemplos de lenguajes de scripting incluyen script de Bourne, JavaScript, Python, Rubí, PHP, y Perl. Diversas estructuras de datos, API (interfaces de programación de
7
aplicaciones), tipos de datos, y pueden usarse otras arquitecturas informáticas. En una realización, la notación de objetos JavaScript (JSON) se usa como formato de intercambio de datos/transmisión de datos. Pueden usarse otros formatos de intercambio/transmisión de datos entre los diversos dispositivos, plataformas, portales, y API descritos y representados en el presente documento sin limitación.
Pueden emplearse diversas realizaciones en un entorno de Lotus Notes, por ejemplo. Tal software puede almacenarse en cualquier tipo de medio o medios legibles por ordenador adecuados tales como, por ejemplo, un medio de almacenamiento magnético u óptico. Por lo tanto, la operación y el comportamiento de las realizaciones se describen sin referencia específica al código de software real o componentes de hardware especializados. La ausencia de tales referencias específicas es factible porque se entiende claramente que los expertos en la materia podrán diseñar software y hardware de control para implementar las realizaciones de la presente invención basándose en la descripción en el presente documento con solo un esfuerzo razonable y sin experimentación indebida.
Diversas realizaciones de los sistemas y métodos descritos en el presente documento pueden emplear una o más redes informáticas electrónicas para promover la comunicación entre diferentes componentes, datos de transferencia, o para compartir recursos e información. Tales redes informáticas pueden clasificarse según la tecnología de hardware y software que se usa para interconectar los dispositivos en la red, tales como fibra óptica, Ethernet, LAN inalámbrica, HomePNA, comunicación de línea eléctrica o G.hn. Las redes informáticas también pueden realizarse como uno o más de los siguientes tipos de redes: red de área local (LAN); red de área metropolitana (MAN); red de área amplia (WAN); red privada virtual (VPN); red de área de almacenamiento (SAN); o red de área global (GAN), entre otras variedades de red.
Por ejemplo, una red informática de WAN puede cubrir un área amplia enlazando comunicaciones a través de límites metropolitano, regional, o nacional. Como los sistemas y métodos descritos en el presente documento tienen como objetivo minimizar las transacciones de I/O, pueden ser útiles en situaciones, tales como configuraciones de computación en la nube, donde las transacciones de I/O se realizan a través de una WAN u otra red con largos retardos de I/O. La red puede usar enrutadores y/o enlaces de comunicación pública. Un tipo de red de comunicación de datos puede cubrir un área geográfica relativamente amplia (por ejemplo, ciudad a ciudad o país a país) que usa instalaciones de transmisión proporcionadas por portadores comunes, tales como proveedores de servicios telefónicos.
En otro ejemplo, una red informática de GAN puede dar soporte a comunicaciones móviles a través de múltiples redes LAN inalámbricas o por satélite. En otro ejemplo, una red informática VPN puede incluir enlaces entre nodos portados por conexiones abiertas o circuitos virtuales en otra red (por ejemplo, Internet) en lugar de mediante cables físicos. Los protocolos de capa de enlace de la VPN pueden tunelizarse a través de la otra red. Una aplicación VPN puede promover comunicaciones seguras a través de Internet. La VPN también puede usarse para conducir de manera independiente y segura el tráfico de diferentes comunidades de usuarios a través de una red subyacente. La VPN puede proporcionar a los usuarios la experiencia virtual de acceder a la red a través de una ubicación de dirección IP distinta de la dirección IP real que conecta el dispositivo de acceso a la red.
La red informática puede caracterizarse basándose en relaciones funcionales entre los elementos o componentes de la red, tal como red activa, cliente-servidor, o arquitectura funcional punto a punto. La red informática puede clasificarse según la topología de red, tal como una red de bus, red en estrella, red de anillo, red de malla, red de bus en estrella, o red de topología jerárquica, por ejemplo. La red informática también puede clasificarse basándose en el método empleado para la comunicación de datos, tales como redes digitales y analógicas.
Realizaciones de los métodos, sistemas, y herramientas descritas en el presente documento pueden emplear interconexión de redes para conectar dos o más redes o segmentos de red electrónicos distintos a través de una tecnología de enrutamiento común. El tipo de interconexión de redes empleado puede depender de la administración y/o participación en la interconexión de red. Ejemplos no limitantes de interconexión de redes incluyen intranet, extranet, e Internet. Las intranets y extranets pueden o no tener conexiones a Internet. Si está conectado a Internet, la intranet o extranet puede protegerse con tecnología de autenticación apropiada u otras medidas de seguridad. Como se aplica en el presente documento, una intranet puede ser un grupo de redes que emplean protocolo de Internet, navegadores web y/o aplicaciones de transferencia de archivos, bajo control común de una entidad administrativa. Una entidad administrativa de este tipo podría restringir el acceso a la intranet a solo usuarios autorizados, por ejemplo, u otra red interna de una organización o entidad comercial. Como se aplica en el presente documento, una extranet puede incluir una red o interconexión de red generalmente limitada a una organización o entidad primaria, pero que también tiene conexiones limitadas a las redes de una u otras más organizaciones o entidades de confianza (por ejemplo, a clientes de una entidad se les puede dar acceso a una intranet
de la entidad creando de ese modo una extranet).
Redes informáticas pueden incluir elementos de hardware para interconectar nodos de red, tales como tarjetas de interfaz de red (NIC) o tarjetas de Ethernet, repetidores, puentes, concentradores, conmutadores, enrutadores, y otros componentes similares. Tales elementos pueden estar cableados físicamente para la comunicación y/o las conexiones de datos pueden estar dotadas de enlaces de microondas (por ejemplo, IEEE 802.12) o fibra óptica, por ejemplo. Una tarjeta de red, adaptador de red o NIC puede diseñarse para permitir que ordenadores se comuniquen a través de la red informática proporcionando acceso físico a una red y un sistema de direccionamiento a través del uso de direcciones MAC, por ejemplo. Un repetidor puede realizarse como un dispositivo electrónico que recibe y retransmite una señal comunicada a un nivel de potencia incrementado para permitir que la señal cubra una distancia de telecomunicación con degradación reducida. Puede configurarse un puente de red para conectar múltiples segmentos de red en la capa de enlace de datos de una red informática mientras que aprende qué direcciones pueden alcanzarse a través de qué puertos específicos de la red. En la red, el puente puede asociar un puerto con una dirección y luego enviar tráfico para esa dirección solo a ese puerto. En diversas realizaciones, pueden emplearse puentes locales para conectar directamente redes de área local (LAN); pueden usarse puentes remotos para crear un enlace de red de área amplia (WAN) entre LAN; y/o pueden usarse puentes inalámbricos para conectar LAN y/o para conectar estaciones remotas a LAN.
En diversas realizaciones, puede emplearse un concentrador que contenga múltiples puertos. Por ejemplo, cuando un paquete de datos llega a un puerto de un concentrador, el paquete puede copiarse sin modificar a todos los puertos del concentrador para su transmisión. También puede usarse un conmutador de red u otros dispositivos que reenvían y filtran datagramas de capa 2 OSI entre puertos en base a direcciones MAC en paquetes de datos. Un conmutador puede poseer múltiples puertos, de manera que la mayor parte de la red está conectada directamente al conmutador, u otro conmutador que a su vez está conectado a un conmutador. El término "conmutador” también puede incluir enrutadores y puentes, así como otros dispositivos que distribuyen el tráfico de datos por contenido de aplicación (por ejemplo, un identificador de URL web u otra información de ubicación de datos como se describe en el presente documento). Los conmutadores pueden funcionar en una o más capas de modelo OSI, incluyendo físico, enlace de datos, red, o transporte (es decir, de extremo a extremo). Un dispositivo que funciona simultáneamente en más de una de estas capas puede considerarse un conmutador multicapa. En determinadas realizaciones, pueden usarse enrutadores u otros
4
dispositivos de interconexión en red similares para reenviar paquetes de datos entre redes usando encabezados y tablas de reenvío para determinar una ruta óptima a través de la cual transmitir los paquetes.
Como se emplea en el presente documento, un servidor de aplicaciones puede ser un servidor que aloja una API para exponer lógica de negocio y procesos de negocio para su uso por otras aplicaciones. Ejemplos de servidores de aplicaciones incluyen servidores de aplicaciones J2EE o Java EE 5 que incluyen el WebSphere Application Server. Otros ejemplos incluyen la edición conjunta de WebSphere Application Server Community Edition (IBM), Sybase Enterprise Application Server (Sybase Inc), WebLogic Server (BEA), JBoss (Red Hat), JRun (Adobe Systems), Apache Geronimo (Apache Software Foundation), Oracle OC4J (Oracle Corporation), Sun Java System Application Server (Sun Microsystems), y SAP Netweaver AS (ABAP/Java).
Además, pueden proporcionarse servidores de aplicaciones según .NET framework, incluyendo la Windows Communication Foundation, .NET Remoting, ADO.NET, y ASP.NET entre varios otros componentes. Por ejemplo, una página de servidor Java (JSP) es un servlet que se ejecuta en un contenedor web que es funcionalmente equivalente a scripts CGI. Pueden usarse JSP para crear páginas HTML incrustando referencias a la lógica de servidor dentro de la página. Los servidores de aplicaciones pueden servir principalmente a aplicaciones basadas en web, mientras que otros servidores pueden funcionar como servidores de protocolo de iniciación de sesión, por ejemplo, o trabajar con redes de telefonía. Especificaciones para la integración de aplicaciones de empresa y la arquitectura orientada al servicio pueden diseñarse para conectar muchos elementos de red informáticos diferentes. Dichas especificaciones incluyen la interfaz de programación de aplicaciones comerciales, interoperabilidad de servicios web, y arquitectura de conector Java EE.
En diversas realizaciones, los sistemas informáticos, medios de almacenamiento de datos, o módulos descritos en el presente documento pueden configurarse y/o programarse para incluir uno o más de los componentes electrónicos, elementos y componentes basados en ordenador, o arquitectura informática descritos anteriormente. Además, estos elementos y componentes pueden configurarse particularmente para ejecutar las diversas reglas, algoritmos, programas, procesos, y etapas del método descritas en el presente documento.
Implementaciones de la presente divulgación y todas las operaciones funcionales proporcionadas en el presente documento pueden realizarse en circuitos electrónicos
digitales, o en software, firmware, o hardware informático, incluyendo las estructuras dadas a conocer en esta memoria descriptiva y sus equivalentes estructurales, o en combinaciones de uno o más de los mismos. Pueden realizarse implementaciones de la divulgación como uno o más productos de programa informático, es decir, uno o más módulos de instrucciones de programa informático codificados en un medio legible por ordenador para su ejecución por, o para controlar la operación de, un aparato de procesamiento de datos. El medio legible por ordenador puede ser un dispositivo de almacenamiento legible por máquina, un sustrato de almacenamiento legible por máquina, un dispositivo de memoria, o una combinación de uno o más de los mismos. El término "aparato de procesamiento de datos” abarca todos los aparatos, dispositivos, y máquinas para procesar datos, incluyendo a modo de ejemplo un procesador programable, un ordenador, o múltiples procesadores u ordenadores. El aparato puede incluir, además de hardware, código que cree un entorno de ejecución para el programa informático en cuestión, por ejemplo, código que constituye firmware de procesador, una pila de protocolos, un sistema de gestión de base de datos, un sistema operativo, o una combinación de uno o más de los mismos.
Un programa informático (también conocido como programa, software, aplicación de software, script, o código) puede escribirse en cualquier forma de lenguaje de programación, incluyendo lenguajes compilados o interpretados, y puede desplegarse de cualquier forma, incluyendo como un programa autónomo o como un módulo, componente, subrutina, u otra unidad adecuada para su uso en un entorno informático. Un programa informático no necesariamente corresponde a un archivo en un sistema de archivos. Un programa puede almacenarse en una parte de un archivo que contiene otros programas o datos (por ejemplo, una o más secuencias de comandos almacenadas en un documento de lenguaje de marcado), en un único archivo dedicado al programa en cuestión, o en múltiples archivos coordinados (por ejemplo, archivos que almacenan uno o más módulos, subprogramas, o partes de código). Un programa informático puede desplegarse para ejecutarse en un ordenador o en múltiples ordenadores que están ubicados en un sitio o distribuidos a través de múltiples sitios e interconectados por una red de comunicación.
Los procesos y flujos lógicos descritos en esta divulgación pueden realizarse por uno o más procesadores programables que ejecutan uno o más programas informáticos para realizar funciones operando en datos de entrada y generando salida. Los procesos y flujos lógicos también pueden realizarse por, y el aparato también puede implementarse como, circuitos lógicos de propósito especial, por ejemplo, una FPGA (matriz de compuerta programable en campo) o un ASIC (circuito integrado de aplicación específica).
Los procesadores adecuados para la ejecución de un programa informático incluyen, a modo de ejemplo, microprocesadores de propósito tanto general como especial, y uno cualquiera o más procesadores de cualquier tipo de ordenador digital. Generalmente, un procesador recibirá instrucciones y datos de una memoria de solo lectura o una memoria de acceso aleatorio o ambas. Los elementos esenciales de un ordenador son un procesador para realizar instrucciones y uno o más dispositivos de memoria para almacenar instrucciones y datos. Generalmente, un ordenador también incluirá, o estará acoplado operativamente para recibir datos desde o transferir datos a, o ambos, uno o más dispositivos de almacenamiento masivo para almacenar datos, por ejemplo, discos magnetoópticos, magnéticos, o discos ópticos. Sin embargo, un ordenador no necesita tener tales dispositivos. Además, un ordenador puede estar incrustado en otro dispositivo, por ejemplo, un teléfono móvil, un asistente digital personal (PDA), un reproductor de audio móvil, un receptor del Sistema de Posicionamiento Global (GPS), por nombrar solo unos pocos. Los medios legibles por ordenador adecuados para almacenar instrucciones de programas informáticos o productos y datos de programas informáticos incluyen todas las formas de memoria no volátil, medios y dispositivos de memoria, incluyendo a modo de ejemplo dispositivos de memoria semiconductores, por ejemplo, EPROM, EEPROM, y dispositivos de memoria flash; discos magnéticos, por ejemplo, discos duros internos o discos extraíbles; discos magnetoópticos; y discos CD ROM y DVD-ROM. Estos también pueden denominarse medios de almacenamiento legibles por ordenador. El procesador y la memoria pueden complementarse con, o incorporarse en, circuitos lógicos de propósito especial.
Para proporcionar interacción con un usuario, implementaciones descritas en el presente documento pueden implementarse en un ordenador que tenga un dispositivo de visualización, por ejemplo, un monitor de CRT (tubo de rayos catódicos) o LCD (pantalla de cristal líquido), para visualizar información al usuario y un teclado y un dispositivo señalador, por ejemplo, un ratón o una bola de seguimiento, mediante el cual el usuario puede proporcionar entrada al ordenador. También pueden usarse otros tipos de dispositivos para proporcionar interacción con un usuario; por ejemplo, la retroalimentación proporcionada al usuario puede ser cualquier forma de retroalimentación sensorial, por ejemplo, retroalimentación visual, retroalimentación auditiva, o retroalimentación táctil; y la entrada del usuario puede recibirse de cualquier forma, incluyendo entrada acústica, por voz, o táctil.
Implementaciones de la presente divulgación pueden realizarse en un sistema informático que incluye un componente de back-end, por ejemplo, como servidor de datos, o que incluye un
4
componente de software intermedio, por ejemplo, un servidor de aplicaciones, o que incluye un componente de extremo frontal, por ejemplo, un ordenador de cliente que tiene una interfaz de usuario gráfica o un navegador web a través del cual un usuario puede interactuar con una implementación de la presente divulgación, o cualquier combinación de uno o más de tales back-end, software intermedio, o componentes de extremo frontal. Los componentes del sistema pueden interconectarse mediante cualquier forma o medio de comunicación de datos digitales, por ejemplo, una red de comunicación. Ejemplos de redes de comunicación incluyen una red de área local ("LAN”) y una red de área amplia (“WAN”), por ejemplo, Internet.
El sistema informático puede incluir clientes y servidores. Un cliente y un servidor generalmente están alejados entre sí y normalmente interactúan a través de una red de comunicación. La relación de cliente y servidor surge en virtud de programas informáticos que se ejecutan en los ordenadores respectivos y que tienen una relación cliente-servidor entre sí.
Si bien esta divulgación contiene muchos detalles, estos no deben interpretarse como limitaciones en el alcance de la divulgación o de lo que puede reivindicarse, sino más bien como descripciones de características específicas para implementaciones particulares de la divulgación. Determinadas características que se describen en esta divulgación en el contexto de implementaciones independientes también pueden proporcionarse en combinación en una sola implementación. Por el contrario, diversas características que se describen en el contexto de una sola implementación también pueden proporcionarse en múltiples implementaciones por separado o en cualquier subcombinación adecuada. Además, aunque anteriormente pudieron describirse características como que actúan en determinadas combinaciones e incluso reivindicarse inicialmente como tales, una o más características de una combinación reivindicada pueden en algunos casos eliminarse de la combinación, y la combinación reivindicada puede dirigirse a una subcombinación o variación de una subcombinación.
De manera similar, mientras que las operaciones se representan en los dibujos en un orden particular, esto no debe entenderse como que requiere que tales operaciones se realicen en el orden particular mostrado o en orden secuencial, o que se realicen todas las operaciones ilustradas, para lograr resultados deseables. En determinadas circunstancias, la multitarea y el procesamiento paralelo pueden ser ventajosos. Además, la separación de diversos componentes del sistema en las implementaciones descritas anteriormente no debe entenderse como que requiere dicha separación en todas las implementaciones, y debe entenderse que los componentes y sistemas de programa descritos generalmente pueden integrarse juntos en un único producto de software o empaquetarse en múltiples productos de
software.
En cada caso donde se menciona un archivo HTML, pueden sustituirse otros tipos o formatos de archivos. Por ejemplo, un archivo HTML puede reemplazarse por un XML, JSON, texto sin formato, u otros tipos de archivos. Además, donde se menciona una tabla o tabla hash, otras estructuras de datos (tales como hojas de cálculo, bases de datos relacionales, o archivos estructurados).
Aunque en el presente documento se han descrito diversas realizaciones, debería ser evidente, sin embargo, que diversas modificaciones, alteraciones y adaptaciones a esas realizaciones pueden ocurrir a personas expertas en la técnica con el logro de algunas o todas las ventajas de la invención. Por lo tanto, las realizaciones descritas pretenden incluir todas esas modificaciones, alteraciones y adaptaciones sin apartarse del alcance y espíritu de la invención. En consecuencia, otras realizaciones e implementaciones están dentro del alcance de las siguientes reivindicaciones. Por ejemplo, las acciones mencionadas en las reivindicaciones pueden realizarse en un orden diferente y aun así lograr resultados deseables.
Lo que se reivindica es:
Apéndice A- Referencia de API
API de dispositivo
Lista de todos los dispositivos
Esto devuelve una lista paginada de dispositivos que están registrados con una determinada aplicación de software relacionada con vehículo clasificada cronológicamente cuando se añadió el dispositivo.
Solicitud
6ET https://platform.vin.li/api/vl/devices
Accept: application/json
Respuesta
4
HTTP/l.1 200 OK
Content-Type: application/json
{
"devices" : [
<
"id" : ,,8b8al810-d6d8-lle3-9cla-0800200c9a66",
"ñame" : "testdevice001",
“links" : {
"self" : “https://platform.vin.li/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66", “vehicles" : "https://platform.vin.li/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66/vehicles",
"latestVehicle" : "https://platform.vin.Ii/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66/vehicles/_latest"
}
}.
],
"meta" : {
"pagination" : {
"total" : 1431,
"offset" : 0,
"limit" : 20,
"links" : {
"first" : "https://platform.vin.li/api/vl/devices?offset=0&limit=20",
"last" : "https://platform.vin.li/api/vl/devices?offset=1420&limit=20",
"next" : "https://platform.vin.li/api/vl/devices ?offset=2081imit=20"
>
}
>
}
Obtener un dispositivo
Solicitud
GET h t t / 821 37 4 c 0 - d 6 d 8 - l l e 3 - 9 c l a - 0800200 c 9 a 66
Respuesta
4
HTTP/l.l 200 OK
Content-Type: application/json
{
“device" : {
"id" : "821374c0-d6d8-lle3-9cla-0800200c9a66”,
"links" : {
"self" : "https://platform.vin.Ii/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66" "groups" : '“https://platform.vin. Ii/api/vl/devices/821374c0-d6d8-lle3-9cla-08O020Oc9a66/groups"J
"vehicles" : 'https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles“,
"latestVehicle" : “https://platform.vin.Ii/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles/_latest"
>
}
>
Registrar un dispositivo
Una determinada aplicación de software relacionada con vehículo puede registrar un dispositivo después de que se haya autorizado por el propietario del dispositivo (véase la sección anterior sobre “Autenticación para acciones del usuario”). Esta etapa se usa antes de que una determinada aplicación de software relacionada con vehículo pueda acceder a cualquier dato del dispositivo o realizar cualquier acción en el dispositivo.
Un proceso de dos etapas permite a un usuario gestionar la autorización de dispositivo independientemente de la acción del usuario. Un usuario puede retirar un dispositivo sin requerir que un usuario revoque el acceso al dispositivo.
Solicitud
POST https://platform.vin,li/api/vl/devices
Content-Type: application/json
Accept: application/json
{
"device” : {
"id” : ,,821374c0-d6d8-lle3-9cla-0800200c9a66”
}
>
R e s p u e s ta
HTTP/l.1 201 CREATED Content-Type: application/json
Location: https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66
{
“device" : {
"id" : "821374c0-d6d8-lle3-9cla-0800200c9a66 ",
"links" : {
"self" : "https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66" "groups" : "https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/groups",
"vehicles" : “https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles”,
"latestVehicle" : "https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles/_latest"
}
>
>
Cancelar el registro de un dispositivo
La cancelación de un dispositivo de una determinada aplicación de software relacionada con vehículo impide que un usuario acceda a los datos de ese dispositivo. Obsérvese que esto tiene diversos efectos diferentes en otra sección de una plataforma de vehículo. Por ejemplo, servicios de eventos eliminarán las reglas asociadas con el dispositivo, servicios de seguridad eliminarán cualquier acción de contacto de emergencia del dispositivo (si una aplicación de software relacionada con vehículo registrada en el dispositivo con servicios de seguridad), y servicios de diagnóstico eliminarán cualquier alerta de DTC para este dispositivo registrado por una determinada aplicación de software relacionada con vehículo.
Es importante tener en cuenta que la cancelación de registro de un dispositivo es una acción a nivel de aplicación que no tendrá ningún efecto en ninguna otra aplicación (de un usuario o de otra persona) que haya sido autorizada para el dispositivo.
Solicitud
DELETE h t t p s : / / p l a t f o r m . v i n . I i / a p i /v l /d e v i c e s / 821374 c 0 - d 6 d 8 - l le 3 -9 c la - 0800200 c 9 a 66
Respuesta
4
H T T P / l . l 204 NO CONTÉNT
API de vehículo
Lista de todos los vehículos de un dispositivo
Devuelve los vehículos asociados con el dispositivo dado en orden cronológico.
Solicitud
6ET https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-6800200c9a66/vehicles Accept: application/json
Respuesta
4
HTTP/1.1 200 OK
Content-Type: application/json
"vehicles" : [
{
"id" : "67ele940-d6da-lle3-9cla-0800200c9a66”,
"year” : "2007",
"make" : "Toyota",
"model" : "Cantry",
"trim" : "SE V6",
"vin" : "2B4GP44R6WR942762",
"links" : {
"self" : "https://platform.vin.Ii/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66", "trips" : "https://trip.vin.li/api/vl/vehicles/67ele940-d6da-lle3-9cla-08002O0c9a66/trips",
"collisions" : "https://safety.vin.li/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66/collisions",
"reportCards" : “https://behavioral.vin.Ii/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66/reportCards"
}
}.
í
"id" : "2a88b0f0-d6db-lle3-9cla-0800200c9a66",
"Vin" : "3E3BW50W4NZ676124”,
"links" : {
"self" : "https://platform.vin.li/api/vl/vehicles/2a88b0f0-d6db-lle3-9cla-0800200c9a66", "trips" : "https://trip.vin.Ii/api/vl/vehicles/2a88b0f0-d6db-lle3-9cla-0800200c9a66/trips",
"collisions" : "https://safety.vin.Ii/api/vl/vehicles/2a88b0f0-d6db-lle3-9cla-0800200c9a66/collisions",
"reportCards" : "https://behavioral.vin.li/api/vl/vehicles/2a88b0f0-d6db-lle3-9cla-0800200c9a66/reportCards"
}
>.
].
"meta": {
"paginaLion" : {
"total" : 24,
"limit" : 10,
"offset" : 0,
"links” : {
"first" : "https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles?offset=081imit=10",
"next" : "https://platform.vin.li/api/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles?offset=10&limit=10",
"last" : "https://platform.vin.li/api/vl/devices/82l374c0-d6d8-lle3-9cla-0800200c9a66/vehicles?offset=20&limit=10"
>
}
}
}
Lista del vehículo final de un dispositivo
Devuelve el vehículo más recientemente asociado con el dispositivo dado si existe. Si el dispositivo no se ha asociado con un vehículo, se hace retornar un objeto nulo de vehículo.
Se devuelve información de vehículo básica como parte de esta respuesta. Se sigue el “autoenlace” del vehículo para obtener información detallada completa sobre el vehículo.
Solicitud
títi https://platform.vin.Ii/apl/vl/devices/821374c0-d6d8-lle3-9cla-0800200c9a66/vehicles/_latest Accept: application/json
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"vehicle" : {
"id" : "67ele940-d6da-lle3-9cla-0800200c9a66",
"yoar" i "3007",
"make" : "Toyota",
"model" : "Camry",
"trim" : "SE V6",
"vin” : "2B4GP44R6WR942762",
"links" : {
"self" : "https://platform.vin.li/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66", "trips" : “https://trip.vin.li/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66/trips", "collisions" : "https://safety.vin.Ii/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66/collisions",
"reportCards" : "https://behavioral.vin.li/api/vl/vehicles/67ele940-d6da-lle3-9cla-0800200c9a66/reportCards"
>
}
Obtener información sobre un vehículo
Devuelve información detallada sobre un vehículo. Esto puede incluir, pero no se limita a:
• Año
1
• Fabricante
• Modelo
• Versión
• Información de motor
• Información de transmisión
• Opciones disponibles
Solicitud
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"vehicle" : {
"id” : "67ele940-d6da-lle3-9cla-0800200c9a66",
"year" : "2007",
"iraké" : "T oyota",
"model” : "Camry",
"trim" : "SE V6",
"vin" : "2B4GP44R6WR942762",
"data" : { ... >,
"links" : {
"self" : "https://platform.vin.li/api/vl/vehicIes/67ele940-d6da-lle3-9cla-0800200c9a66" }
>
API de transacción
2
Obtener todas las transacciones para esta aplicación
Devuelve una lista de todas las transacciones realizadas por esta aplicación.
Se devuelven resultados en orden cronológico inverso, es decir, orden de series temporales, usando el método de “paginación secuencial” (del inglés, stream pagination).
Solicitud
GET https://platform.vin.li/api/vl/transactions
Accept: application/json
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"transactions" : [
{
"id": "e7924989-e942-4ebb-a566-427984b91afl",
"timestamp": "2015-06-22T00:30:19.4SSZ",
"path": "/api/vl/devices?limit=l",
"statusCode": 200,
"method": “GET".
"service": "vinli-platform-service"
>,
{
"id": "b7d746ce-1794-4796-9dc9-30ae091dlce6",
"timestamp": "2015-06-20T21:41:13.520Z",
"path": ”/api/vl/devices/c38ce5f2-0c4d-4d82-b301-fd87af5fcbd3/locations?limit®20", "Service": "vinli-telemetry-service",
"method": "GET",
"statusCode": 200
),
),
"meta" : {
"pagination” : {
“remainingCount" : 1324,
"limit" : 50,
"until" : 1408945415426,
"links" : {
"latest" : "https://platform.vin.li/api/vl/transactions",
"prior" : “https://platform.vin.li/api/vl/transactions?until=1408944636328"
>
>
}
}
API de telemetría
Obtener una lista de mensajes de telemetría
Devuelve el último número de límite de mensajes de telemetría que se produjeron antes o en
el momento until y después del momento since. Si no se especifica el momento until, entonces,
el servicio devolverá instantáneas hasta el momento actual en que se realiza la llamada.
Estos mensajes se envían al menos cada cinco segundos e incluyen el último valor de
4
parámetros capturados por un dispositivo desde el último mensaje enviado.
Solicitud
GET h ttp s :/ / te le m e try .v in . l i/a p i/v l/d e v ic e s /27 a 2 a c 50 -d 7 b d - lle B -9 c la -0800200 c 9 a 66 /m e s s a g e s Accept: a p p lic a t io n / js o n
• until - Los resultados contendrán instantáneas cuyas marcas de tiempo son menores o iguales que el valor until. Si no se especifica un valor until, el tiempo actual cuando se realiza la llamada se usará como el valor until.
• since - Los resultados contendrán instantáneas cuyas marcas de tiempo son mayores que el valor since. Si no se especifica un valor since, no se colocará límite inferior en las instantáneas devueltas.
• limit - Los resultados contendrán no más del número de límite de instantáneas
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"messages" : [
{
"id": "2fSf2a7c-02d8-4502-80c6-8cb52d9a08d5",
"timestamp": "2014-07-14T17:46:06.759Z”,
"location": {
"longitude": -90.0811,
"latitude": 29.9508
>.
"data" : { "vehicleSpeed": 12,
"calculatedloadValue": 34.5,
"fuelType”: "Gasoline",
"rpm": 1254
}
},
{
"id": "bl38303e-e40f-4d02-88a5-df4lca50ea3c",
"timestamp": "2014-w/-1411/:4b:01.5442",
"location": {
"longitude": -90.0813,
"latitude": 29.950802
},
“data" : {
"vehicleSpeed": 15,
"rpm": 1766
}
>.
{
“id": "fff266e2-deb3-4d3d-bl81-bd0f048ce20c",
“timestamp": "2014-07-14T17:45:54.872Z",
"location": {
"longitude”: -90.08104,
"latitude": 29.950013
},
"data" : { "vehicleSpeed": 16,
"calculatedLoadValue": 56.3,
"rpm": 1486
}
}
"meta" : {
"pagination" : {
"remainingCount" : 1324,
: 50,
"until" : 1394733261450,
"links" : {
"latest" : "https://telemetry.vin.li/api/vl/devices/27a2ac50-d7bd-lle3-9cla 0800200c9a66/messages"
"prior" : "https://telemetry.vin.li/api/vl/devices/27a2ac50-d7bd-lle3-9cla-
0800200c9a66/m essages?until=1394733251897"
>
}
>
}
Obtener un mensaje de telemetría específico
Devuelve un mensaje particular mediante messageld. Esto se usa principalmente cuando un mensaje específico se referencia por un servicio diferente.
Solicitud
GET h t t p s : / / t e l e m e t r y . v i n . l i / a p i / v l / m e s s a g e s / 2 f l l d 630 - 141 e - l l e 4 - b 717 - 5977 b 6 c 38 d 23 Accept: a p p l i c a t i o n / j s o n
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"message" : {
"id" : "27a2ac50-d7bd-lle3-9cla-0800200c9a66",
"timestamp" : "2014-07-14T17:46: 06.759Z",
"data": {
"location”: {
"type": "point",
"coordinates": [
-90.0811,
29.9508
]
>.
"vehicleSpeed": 0
},
"links" : {
self“: "https://telemetry.vin.li/api/vl/messages/2flld630-141e-lle4-b717-5977b6c38d23" }
}
}
Ubicaciones
7
Devuelve el último número de límite de puntos de la ubicación del dispositivo antes o en el momento until y después del momento since. Si no se especifica el momento until, entonces, el servicio devolverá instantáneas hasta el momento actual en que se realiza la llamada. La propiedad de ubicación contiene un objeto FeatureCollection GeoJSON válido que consiste en características de punto para cada ubicación. La marca de tiempo para cada ubicación está en el campo de propiedades de la característica.
Adicionalmente, también pueden incluirse en el campo de propiedades todos o los parámetros seleccionados que se registraron en cada ubicación. Cuando se especifica todo, este método actúa al igual que el método de mensajes de dispositivo a continuación, pero se formatea como GeoJSON válido.
Solicitud
GET h t tp s : / / te le m e t r ,y .v in . l i/a p i/v l/d e v ic e s /27 a 2 a c 50 -d 7 b d - lle 3 -9 c la -0800200 c 9 a 66 /lo c a t io n s ? fie lds= rpm ,veh ic leS peed
Accept: a p p lic a t io n / js o n
• fields - Puede ser todas o una lista separada por comas de clave de parámetro que va a incluirse en el campo de propiedades.
• until - Los resultados contendrán instantáneas cuyas marcas de tiempo son menores o iguales que el valor until. Si no se especifica un valor until, el tiempo actual cuando se realiza la llamada se usará como el valor until.
• since - Los resultados contendrán instantáneas cuyas marcas de tiempo son mayores que el valor since. Si no se especifica un valor since, no se colocará límite inferior en las instantáneas devueltas.
• limit - Los resultados contendrán no más del número de límite de instantáneas
Respuesta
{
" lo c a t io n s " : {
“type" : " F e a tu re C o l le c t io n " ,
" fe a tu re s " : [
{
"type" : "F e a tu re " ,
"geometry" : {
"type" : " P o in t" ,
"co o rd in a te s ” : [ -90.0811 , 29.9508 ]
E
" p ro p e r t ie s " : {
"timestamp" : "2 014 -03 -13 T 17 :54 :20.050 Z " ,
"rpm" : 1264,
"vehicleSpeed" : 54
>
},
{
"type" : "Fe a tu re " ,
“geometry" : {
"type" : " P o in t" ,
"coord inates" : [ -90.08198 , 29.9498 ]
} ,
" p ro p e r t ie s " : {
"timestamp" : "2 014 -03 -13 T 17 :54 :07.122 Z " ,
"rpm" : 1832
}
} ,
]
E
"meta” : {
"p ag in a t io n " : {
"rem aining" : 2341,
" l i m i t " : 200,
" u n t i l " : 1394733260050,
" l i
}
}
}
)
Instantáneas de telemetría
Devuelve el último número de límite de instantáneas de telemetría que contienen al menos uno de los parámetros solicitados que se produjo antes o en el momento until y después del momento since. Si no se especifica el momento until, a continuación, el servicio devolverá instantáneas hasta el momento actual en que se realiza la llamada.
Solicitud
GET https://telemetry.vin.li/api/vl/devices/27a2ac50-d7bd-lle3-9cla-0800200c9a66/snapshots? fields=rpm,vehicleSpeed,calculatedLoadValue,fuelType
Accept: application/json
• fields - Lista separada por comas de claves de parámetro para filtrar
• until - Los resultados contendrán instantáneas cuyas marcas de tiempo son menores o iguales que el valor until. Si no se especifica un valor until, el tiempo actual cuando se realiza la llamada se usará como el valor until.
• since - Los resultados contendrán instantáneas cuyas marcas de tiempo son mayores que el valor since. Si no se especifica un valor since, no se colocará límite inferior en las instantáneas devueltas.
• limit - Los resultados contendrán no más del número de límite de instantáneas
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"snapshots": [
{
"timestamp": 1394733260050,
"data": {
"vehicleSpeed": 12,
"calculatedLoadValue": 34.5,
"fuelType": "Gasoline"
}
>.
{
"timestamp": 1394733255337,
"data": {
"vehicleSpeed": 15
>
>.
{
"timestamp": 1394733251898,
"data": {
"rpm”: 3027,
"calculatedLoadValue": 56.3
}
}
].
"meta”: {
"pagination": (
"remainingcount": 1324,
"limit": 50,
"until": 1394733261450,
"links": {
"latest": "https://telemetry.vin.li/api/vl/devices/27a2ac50-d7bd-lle3-9cla-0800200c9a66/snapshots?fields=rpm,vehicleSpeed,calculatedLoadValue,fuelType",
"prior": "https://telemetry.vin.li/api/vl/devices/27a2ac50-d7bd-lle3-9cla-0800200c9a66/snapshots?fields=rpm,vehicleSpeed, calculatedLoadValue,fuelType&until=1394733251897"
>
>
}
}
API de evento
Obtener todos los eventos para un dispositivo
Devuelve la lista de todos los eventos para un dispositivo dado en orden cronológico inverso.
Cada evento contiene información con respecto al dispositivo, el objeto involucrado en el
evento, y metadatos asociados.
1
Los siguientes campos se contienen dentro de una respuesta de evento:
• id - ID del evento
• timestamp - marca de tiempo cuando se produjo el evento
• deviceld- ID del dispositivo
• eventType - Tipo de evento
• object - Información sobre el objeto del evento (es decir, la regla o vehículo asociado)
• meta - Datos opcionales dependiendo del tipo de evento. Por ejemplo, para un evento de rule-entry o de rule-leave, la metapropiedad contiene información sobre la propia regla y el estado y la dirección del evento.
• links - objeto que contiene enlaces a datos asociados
Solicitud
6ET h t tp s : / /e v e n t s .v in . l i / a p i /v l /d e v ic e s /68 d 489 c 0 -d 7 a 2 - l l e 3 -9 c la - 0800200 c 9 a 66 /e v e n t s Accept: a p p l ic a t io n / js o n
Parámetros
• type - eventos de filtro (opcionales) para los de un tipo dado
• until - Los resultados contendrán eventos cuyas marcas de tiempo son menores o iguales que el valor until. Si no se especifica un valor until, el tiempo actual cuando se realiza la llamada se utilizará como el valor until.
• since - Los resultados contendrán eventos cuyas marcas de tiempo son mayores que el valor since. Si no se especifica un valor since, no se colocará límite inferior en los eventos devueltos.
• limit - Los resultados contendrán no más de un número de límite de eventos
2
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"events": [
{
"id": "538fll95-a733-4ee7-a4e8-lfbbe7131f6a“,
"timestamp": "2015-05-22T23:33:57.000Z",
"deviceld": "68d489c0-d7a2-lle3-9cla-0800200c9a66“,
"stored": "2015-05-22T23:33:58.741Z",
"storageLatency": 1741,
"eventType”: "rule-leave",
"meta": {
"direction": "leave",
"firstEval": false,
"rule”: {
"id": "429f9aa7-4c97-42cl-a459-eeldf6bc625b",
"ñame": "Speed Limit",
"deviceld": "68d489c0-d7a2-lle3-9cla-0800200c9a66", "boundaries": [
{
"id": "0cadb0c8-alc3-4176-86f2-20280ea72ad9",
"type": "parametric",
"parameter": "vehicleSpeed",
"min": 48
>
].
"evaluated": true,
"covered": folsc,
"createdAt": nuil,
"links": {
"self": "https://rules.vin.li/api/vl/rules/429f9aa7-4c97-42cl-a459 eeldf6bc625b"
}
>.
"message": {
“id": "60afa670-dl5b-4d2f-81bf-a068f4a9a7fb",
"timestamp": "2015-05-22T23:33:57.000Z",
"snapshot": {
"location": {
"lat": 33.0246240995378,
"Ion": -97.0560955928522
"vehicleSpeed": 32
}
}
},
"object": {
"id": "429f9aa7-4c97-42cl-a459-eeldf6bc625b",
"type": "rule",
"appld": "b75afd8f-7247-46e6-a0f9-04fl87c9d9bd"
>,
"links": {
"self": "https://events.vin.li/api/vl/events/538fll95-a733-4ee7-a4e8-Ifbbe7131f6a",
"notifications": "https://events.vin.li/api/vl/events/538fll95-a733-4ee7-a4e8-lfbbe7l31f6a/notifications"
}
M
"id": "53bcdb2f-7a75-4225-acl5-b2d4364d9c7b",
"timestamp": "2015-05-22T18:25:43.000Z",
"deviceld": "68d489c0-d7a2-lle3-9cla-0800200c9a66".
“stored": "2015-05-22T18:25:44.609Z",
"storageLatency”: 1609,
"eventType": "startup”,
"object": {
"id": "5956bc07-be98-4af5-91cc-86816aca7eb0",
"type": "vehicle"
E
"links": {
“s e l f “https://events.vin.li/api/vl/events/53bcdb2f-7a75-4225-acl5-b2d4364d9c7b",
"notifications": "https://events.vin.li/api/vl/events/53bcdb2f-7a75-4225-acl5-b2d4364d9c7b/notifications“
>
}
].
"meta": {
“pagination": {
"remaining": 109,
"limit": 2,
"until": "2015-05-25T15:23:26.933Z",
"links": {
"prior": "https://events.vin.li/api/vl/devices/68d489c0-d7a2-lle3-9cl3-0800200c9o66/oventS?untÍl-2015-05-22T20X3A13X3A49.999Z"
}
>
>
}
Obtener un evento específico
Devuelve información sobre un evento específico.
Solicitud
GET h t t p s : / / e v e n t s . v i n . l i / a p i / v l / e v e n t s / 538 f 1195 - a 733 - 4 e e 7 - a 4 e 8 - l f b b e 7131 f 6 a
A c c e p t: a p p l i c a t i o n / j s o n
Respuesta
4
HTTP/1.1 200 OK
Contení-Type: application/json
{
"event”: {
"id": ”538fll95-a733-4ee7-a4e8-lfbbe713lf6a",
"timestamp": "2015-05-22T23:33:57.000Z",
"deviceld": "68d489c0-d7a2-lle3-9cla-0800200c9a66",
"stored": "2015-05-22T23:33:58.741Z",
"storageLatency": 1741,
"eventType": "rule-leave",
■'meta": {
"direction": “leave",
"firstEval": false,
"rule": {
‘'id”: "429f9aa7-4c97-42cl-a459-eeldf6bc625b",
"ñame": “Speed Limit",
"deviceld": "68d489c0-d7a2-lle3-9cla-0800200c9a66",
"boundaries": [
{
"id": "0cadb0c8-alc3-4176-86f2-20280ea72ad9",
"type": "parametric",
"parameter": "vehicleSpeed",
"min": 48
}
1.
"evaluated": true,
"covered": false,
"createdAt": nuil,
"links": {
"self": "https: //rules.vin.Ii/api/vl/rules/429f9aa7-4c97-42cl-a459-eeldf6bc625b"
}
"message": {
"id": "60afa670-dl5b-4d2f-81bf-a068f4a9a7fb",
"timestamp": "2015-05-22T23:33:57.000Z",
"snapshot": {
"location": {
"lat": 33.0246240905378,
"Ion": -97.0560955928522
"vehicleSpeed": 32
}
>
>.
"object": {
"id": "429f9aa7-4c97-42cl-a459-eeldf6bc625b",
"type”: "rule",
"appld": "b75afd8f-7247-46e6-a0f9-04f187c9d9bd"
>,
"links": {
"self": "https://events.vin.Ii/api/vl/events/538fll95-a733-4ee7-a4e8-lfbbe7l3lf6a "notifications": "https://events.vin.li/api/vl/events/538fll95-a733-4ee7-a4e8-Ifbbe7131f6a/notifications"
}
}
>
Suscripciones
Con el fin de recibir notificación para eventos de vehículo, una determinada aplicación de software relacionada con vehículo se usa para suscribirse a eventos para cada dispositivo individualmente.
Cada suscripción se refiere a un evento o clase de eventos dados de un dispositivo dado y especifica la URL externo que se llamará cuando se produzca el evento y cualquier "App Data” adicional que debería incluirse.
Carga útil de notificación
Cuando se activa una suscripción, se realiza una llamada HTTP usando el método "POST” a la URL de suscripción. Esta llamada utiliza el tipo de contenido de "application/json” y envía una representación JSON que contiene un objeto de raíz de notificación junto con representaciones del evento que activaron la notificación y la suscripción asociada:
{
"notification": {
“event": {
"id": "314d7fcd-d4d6-4b78-9804-bl71db60790a",
"timestamp": "2015-06-16T13:12:34.000Z“,
"deviceld": "4bffefbb-9fba-43ee-aebe-ed7f7f2fae84",
“eventType": "rule-leave”,
"object": {
"id": "79f2e013-b6b9-44dd-9f34-4be5da971d7a",
"type": "rule",
"appld": nb75afd8f-7247-46e6-a0f9-04fl87c9d9bd"
h
"meta": {
"direction": "leave",
"firstEval": false,
"rule": {
"id": "79f2e013-b6b9-44dd-9f34-4be5da971d7a",
"ñame": "My Geofence",
"deviceld": "4bffefbb-9fba-43ee-aebe-ed7f7f2fae84",
"boundaries": [],
"evaluated": true,
"covered": false,
"createdAt": "2015-06-16T12:54:09.601Z",
"links": {
"self": "https://rules.vin.li/api/vl/rules/79f2e013-b6b9-44dd-9f34-4be5da97ld7a",
"events": "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events?type=rule&object!d=79f2e013-b6b9-44dd-9f34-4be5da971d7a",
"subscriptions": "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43eeaebe-ed7f7f2fae84/subscriptions?objectType=rule&objectld=79f2e013-b6b9-44dd-9f34-4be5da971d7a"
}
}.
"message": {
" id " : "Cd339f3d-b0d8-49a9-a87d-ca7ee3a937e2",
“timestamp": "2015-06-16T13:12:34.000Z”,
•’snapshpt"; {
"location": {
"iat": 32.55364b8870112,
"Ion": -96.1153222519258
}
}
}
>.
“subscription": {
"id": "a896ff7d-ca46-4bf4-af71-b9bl573c3efl",
"deviceld": "4bffefbb-9fba-43ee-aebe-ed7f7f2fae84",
“eventType": "rule-leave",
"url": "https://myapp.com/notifications",
"object": {
"id": "79f2e013-b6b9-44dd-9f34-4be5da971d7a",
"type": "rule"
"appData": "{\"message\":\"This is a userr app-specific data\">"
>
7
>
}
Obsérvese que el atributo appData de la propiedad de suscripción contiene los datos específicos de aplicación con los que un usuario creó la suscripción, si puede aplicarse.
En el ejemplo anterior, la suscripción activada está asociada con una regla. En este caso, se pone a disposición información adicional en la notificación que incluye una representación de la regla en la metapropiedad. Adicionalmente, se proporciona una propiedad firstEval muy útil que permite que una determinada aplicación de software relacionada con vehículo sepa si esta es o no la primera evaluación de la regla. La primera evaluación de una regla en la que puede establecerse que el dispositivo está cubierto o no por los límites siempre dará como resultado una notificación. Usando la propiedad firstEval, su aplicación puede determinar si el dispositivo estaba previamente en un estado diferente o estaba justo en un estado desconocido.
Crear una suscripción
Una suscripción incluye, como mínimo, un eventType y una URL. Adicionalmente, si la suscripción hace referencia a una regla dada, se incluye normalmente en el objeto.
Solicitud
POST https://events.vin.li/api/vl/devices/de01abbl-453d-4293-831a-f0d804b48-fd-f/subscriptions Accept: application/json
Content-Type: application/json
{
"subscription" : {
"eventType" : "startup",
"url": "https://myapp.com/notifications"
>
>
Respuesta
HTTP/l.l 201 CREATED Content-Type: application/json
Location: https://events.vin.li/api/vl/subscriptions/77965f0f-d468-48el-9585-69d547900058
{
"subscription" : {
"id": "77965f0f-d468-48e1-9585-69d547900058",
"deviceld": "de01abbl-453d-4293-831a-f0d804b48fdf",
"eventType": "startup",
"url": •'https://myapp.coin/notifications",
"createdAt": "2015-06-16T12:54:09.876Z",
"updatedAt": "2015-06-16T12:S4:09.876Z",
"links": {
"self“: "https://events.vin.li/api/vl/subscriptions/77965f0f-d468-48el-9585-69d547900058",
"notifications": “https://events.vin.li/api/vl/subscriptions/77965f0f-d468-48el-9585 69d547900058/notifications"
}
}
}
Cuando se crea una suscripción a los eventos de una regla, se requiere la identificación de la
regla. Una aplicación solo puede suscribirse a los eventos de reglas para las reglas a las que
tiene acceso. Puede usarse un eventType especial (rule-*) para suscribirse a los eventos tanto
rule-enter como rule-leave.
Obsérvese también que en el ejemplo a continuación, appData se da de modo que esto se
pasa a la aplicación cada vez que se activa la suscripción.
Solicitud
POST https://events.vin.li/api/vl/devices/de01abbl-453d-4293-83la-f0d804b48fdf/subscriptions Accept: application/json
Content-Type: application/json
{
"subscription" : {
"eventType" : "rule-*",
"url": "https://myapp.com/notifications",
"appData": "{\"message\M:V ’This is your app-specific data\"}“,
"object": {
"id": ”41d68c9e-2914-4923-8593-3abdf299537c",
"type": "rule"
>
}
R e s p u e s ta
HTTP/1.1 201 CREATED Content-Type: application/json
Locatlon: https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6-53fa099b313b
{
"subscription" : {
"id": "917fb546-5666-4fdd-aed6-53fa099b313b",
"deviceld": "de01abbl-4S3d-4293-831a-f0d804b48fdf",
"eventType": "rule-*",
"object": {
"id": "58f815b9-693d-450a-8814-779c9bf8ad6f",
"type": "rule"
},
"url": "https://myapp.com/notifications",
"appData": "{\"message\":\"This is your app-specific data\"}"
"createdAt": "2015-06-16T12:54:09.876Z",
"updatedAt": "2015-0G-1GT12:54:09.876Z",
"línks": {
"self": "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6-53fa099b313b",
"notifications": "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6 53fa099b313b/notifications"
>
}
>
Obtener todas las suscripciones para un dispositivo
Solicitud
GET https://events.vin.li/api/vl/devices/de0labbl-453d-4293-831a-f0d804b48fdf/subscriptions Accept: application/json
Respuesta
7
HTTP/l.l 200 OK
Content-Type: application/json
{
"subscriptions": [
{
'■id": "917fb546-5666-4fdd-aed6-53fa099b313b",
"deviceld”: Mde01abbl-453d-4293-831a-f0d804b48fdf",
"eventType": "rule-*",
"object": {
"id": "58f815b9-693d-450a-8814-779c9bf8ad6f",
"type": "rule"
"url": "https://inyapp.coin/notifications",
"appData": "{\"message\":\"This is your app-specific data\"}“
"createdAt": "2015-06-16112:54:09.8762",
"updatedAt*: "2015-06-16T12:54:09.8762",
"links": {
"self": "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6-53fd099b313b",
"notifications”: "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd aed6-53fa099h3l3h/notifications"
}
},
].
"meta": {
"pagination": {
"total": 70,
"limit": 20,
"offset": 0,
"links": {
"first": "https://events.vin.Ii/api/vl/devices/de0labbl-453d-4293-831af0d804b48fdf/subscriptions ?offset=0&limit=20",
"last": "https://events.vin.li/api/vl/devices/de01abbl-453d-4293-831af0d804b48fdf/subscriptions?offset-60&limit-20",
"next": "https://events.vin.li/api/vl/devices/de01abbl-453d-4293-831af0d804l>48fdf/ subscriptions ?offset=20&limit=20"
>
>
>
}
Obtener una suscripción específica
Solicitud
GET h t t p s : / / e v e n t s . v i n . l i / a p i /v l / s u b s c r ip t io n s /917 fb 546 -5666 -4 fd d -a e d 6 -53 fa 099 b 313 b Accept: a p p l ic a t io n / js o n
R e s p u e s ta
HTTP/l.l 200 OK
Content-Type: application/json
{
"subscription": {
"id": "917fb546-5666-4fdd-aed6-53fa099b313b",
"deviceld": "de01abbl-453d-4293-831a-f0d804b48fdf ",
“eventType”: "rule-*",
"object": {
"id": "58f815b9-693d-450a-8814-779c9bf8ad6f",
"type": "rule”
"url": "https://myapp.com/notifications",
"appData": "{ V ’messageV:\"This is your app-specific data\"}"
“createdAt": "2015-06-16T12:54:09.876Z",
"updatedAt": "2015-06-16T12:54:09.876Z",
"links": {
"self": "https://events.vin.li/api/vl/subscriptions/9l7fb546-5666-4fdd-aed6-53fa099b313b",
"notifications": "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6 53fa099b313b/notifications"
>
}
>
Actualizar una suscripción
Las suscripciones son principalmente invariables. Las propiedades de url y appData pueden
actualizarse; sin embargo, las partes “funcionales” de la suscripción (eventType, object, etc.)
no son modificables.
Solicitud
POST https://events.vin.li/api/vl/devices/de01abbl-453d-4293-83la-f0d804b48fdf/subscriptions Accept: application/json
Content-Type: application/json
{
"subscription" : {
“url": "https://myapp.com/v2/notifications",
"appData": "{V'messageV:V'This is updated app-specific dataV'}",
>
}
R e s p u e s ta
HTTP/l.l 200 OK
Content-Type: application/json
{
"subscription" : {
"id": "917fb546-5666-4fdd-aed6-53fa099b313b")
"deviceld": "de01abbl-453d-4293-831a-f0d804b48fdf“,
"eventType": "rule-*"j
"object": {
"id": "58f815b9-693d-450a-8814-779c9bf8ad6f",
"type": "rule"
},
"url": "https://myapp.com/v2/notifications
" ,
“appData": "{\"message\":\"This is updated app-specific data\“}",
"createdAt": "2015-06-16T12:54:09.876Z",
"updatedAt": "2015-06-16T12:54:09.876Z",
"links": {
"self": "https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6-53ta099b313b",
"notifications": “https://events.vin.li/api/vl/subscriptions/917fb546-5666-4fdd-aed6 53fa099b313b/notifications"
}
}
>
Borrar una suscripción
Solicitud
DELETE h ttp s : / /e v e n ts .v in . l i /a p i /v l /s u b s c r ip t io n s /917 fb 546 -5666 -4 fd d -a e d 6 -53 fa 099 b 313 b Accept: a p p l i td l io n / js o r i
Respuesta
HTTP/l.l 204 NO CONTENT
Notificaciones
Cada vez que se activa una suscripción por un evento, se crea una nueva notificación que
representa el evento, suscripción, y acciones posteriores tomadas por una o más plataformas
o sistemas descritos en el presente documento para notificar una determinada aplicación de
7
software relacionada con vehículo.
El estado de notificación es útil en los manejadores de notificaciones de depuración en su aplicación. Este estado, responseCode, y propiedades de respuesta informarán a un usuario sobre el resultado del intento de los servicios de eventos de llamar a la URL de notificación. Una notificación se vinculará a una suscripción y puede contener metadatos adicionales dependiendo del activador de la suscripción. En el caso de suscripciones a reglas, estos metadatos
Campos incluidos en una respuesta de notificación incluyen:
• id - ID de la notificación
• eventld- ID del evento que activó la notificación
• eventType - Tipo del evento asociado
• eventTimestamp - Tiempo en que se produjo el evento asociado
• subscriptionId- ID de la suscripción con la que está asociada esta notificación
• url - URL que fue llamada por Event Service; esto se copia de la suscripción en la creación de la notificación.
• payload - Cadena de la carga útil exactamente como se publicó en la URL anterior
• state - Estado actual de la notificación. Los valores de estado pueden incluir creados, en cola, completa, o error
El estado de una notificación comienza a medida que se crea y se mueve a la cola tan pronto como se coloca en la cola de notificación que se procesará. Una vez que la notificación se ha publicado en la URL de devolución de llamada, el estado se moverá para completarse si se completó la transacción HTTP y se recibió un código de respuesta en los 200s. Si la llamada HTTP no puede completarse o un código de respuesta distinto de los 200s, el estado se convertirá en error.
Si la notificación está en el estado completo o de error, los campos a continuación estarán disponibles en la respuesta:
• responseCode - código HTTP recibido del URL anterior
• response - Cadena de la respuesta del URL anterior
• notifiedAt - Tiempo en que se inició la llamada HTTP
• respondedAt - Tiempo en que la llamada HTTP se completó (si fue exitosa)
Obtener una notificación específica
Solicitud
GET https://events.vin.li/api/vl/notifications/09704b59-83d9-44a5-a0f8-33d973bdac5e Accept: application/json
Respuesta
7
HTTP/l.l 200 OK
Corttent-Type: application/json
{
"notification": {
"id": "09704b59-83d9-44a5-a0f8-33d973bdacSe",
"eventld": "314d7fcd-d4d6-4b78-9804-bl7ldb60790a",
"everttType": "rule-leave",
"event7imestamp": ''2015-06-16713:12:34.000Z",
"subscriptionld": "a896ff7d-ca46-4bf4-af71-b9bl573c3efl",
"State": "complete",
"responseCode": 201,
"response": "{\"status\“:\"success\"}",
"url": "https://myapp.com/notifications",
"payload”: "{ V'notification\":{\"event\":{\"id\“:\"314d7fcd-d4d6-4b78-9804-bl71db60790a\",\"timestamp\":\"2015-06-16T13:12:34.000ZV,\"deviceld\”:\"4bffefbb-9fba-43ee-aebe eü7
n
72 rde84\", V M u r e d V .\"2013-CS-16713:12:35.82SZV,\"storageLatency\":1825,\"eventType\”:\"rule-leave\",\"meta\“:
{V'directionV:\"leave\",\"firstEval\":false,\"rule\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da97ld7aV,,\"name\":\"[geofence] Harlee\",\"deviceld\":\"4bffefbb-9fba-43ee-aebeed7f7f2fae84\",\"boundaries\": [],\"evaluated\":true,\,,covered\" :false,\"createdAt\" :\"20l5-06-16T12:54:09.601Z\",\"links\":{\"self\""https://rules.vin.li/api/vl/rules/79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"events\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events?type-rule&objectld=79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"subscriptions\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/subscriptions?objectType=rule&objectId=79f2e013-b6b9-44dd-9f34-4be5da971d7a\"}},\"message\":{\"id\":\“cd339f3d-b0d8-49a9-a87dca7ee3a937e2\",\"timestamp\":\"2015-06-16713:12:34.000Z\",\"snapshot\":{\"location\":
{\"lat\”: 32 .5536468870112,\"lon\":-96.1153222519258}>>}, V'object\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"type\":\"rule\",\"appld\":\"b75afd8f-7247-46e6-a0f9-04f187c9d9bd\"}},\"subscription\":{\"id\": V'a896ff7d-ca46-4bf4-af71-b9bl573c3efl\",\"deviceld\":\"4bffefbb-9fba-43ee-aebe-ed7f7f2fae84\",\"event7ype\":\"ruleleave\",\"url\" : \"https ://myapp.com/notifications\", V'objectV :{\"id\": \"79f2e013-b6b9-44dd-9f34 4be5da971d7a\",\"type\":\"rule\"},\"appData\":\"{\\\"message\\\":\\\"7his is your app-specific data\\\"}\"}}}“,
"notifiedAt": "2015-06-16713:12:35.862Z",
"respondedAt": "2015-06-16713:12:36.300Z",
"createdAt": "2015-06-16713:12:35.842Z",
“links": {
"self": “https://events.vin.li/api/vl/notifications/09704b59-83d9-44a5-a0f8-33d973bdac5e",
"event": "https://events.vin.li/api/vl/deviccs/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events/314d7fcd-d4d6-4b78-9804-bl71db60790a",
"subscription": "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/subscriptions/a896ff7d-ca46-4bf4-af71-b9bl573c3efl"
}
>
}
Obtener notificaciones para una suscripción
Solicitud
7
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"notifications": [
{
"id": "09704b59-83d9-44a5-a0f8-33d973bdacSe",
“eventld": "314d7fcd-d4d6-4b78-9804-bl71db60790a",
"eventType": "rule-leave",
"eventTimestamp": "2015-06-16T13:12:34.000Z",
"subscriptionld": "a896ff7d-ca46-4bf4-af71-b9bl573c3efl",
"State": "complete",
“responseCode": 201,
“response": “{\"status\“:\"success\"}“,
"url": "https://myapp.com/notifications",
"payload": "{\"notification\“: {Y'eventV : {\"id\" : V'314d7fcd-d4d6-4b78-9804-bl71db60790a\",\"timestamp\":\"2015-06-16T13:12:34.000Z\",\"deviceId\":\"4bffefbb-9fba-43ee-aebeed7f7f2fae84\",\"stored\":\"2015-06-16T13:12:35.825Z\",\,'storageLatency\“:1825,\"eventType\":\"rule-leave\",\"meta\":
{\"direction\":\"leave\",\"firstEval\“ : false,\"rule\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\“,\"name\":\"[geofence] MarleeY’,\"deviceld\":\"4bffefbb-9fba-43ee-aebeed7f7f2fae84\",\"boundaries\":[],\"evaluated\":true, V'coveredV:false, \"createdAt\":\"2015-06-16T12:54:09.601Z\“, V'linksV :{Y ’s elfV:\"https://rules.vin.li/api/vl/rules/79f2e013-b6b9-44dd-9f34-4be5da971d7a\",Y'events\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events?type=rule&objectld=79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"subscriptions\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/subscriptions ?objectType=rule&objectId=79f2e013-b6b9-44dd-9f34-4be5da97ld7a\"}},\"message\" :{Vid\" : Y'cd339f3d-b0d8-49a9-a87dca7ee3a937e2\",\"timestamp\":\"2015-06-16T13:12:34.000Z\",\"snapshot\":{\"location\":
{\"lat\":32.5536468870112,\"lon\":-96.1153222519258}>>>,\"object\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"type\": Y ' r u l e , \"appld\":\"b75afd8f-7247-46e6-a0f9-04f 187c9d9bd\"}}, V'subscriptionV :{\"id\" : \“a896ff7d-ca46-4bf4-af71-b9bl573c3efl\",\"deviceld\":\"4bffefbb-9fba-43ee-aebe-ed7f7f2fae84\", V'eventTypeV’: V'ruleleave\",\"url\":\"https://myapp.com/notifications\",\“object\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"type\":\"rule\“},\"appData\":\"{\\\"message\\\":WY'This is your app-specific data\\\"}\"}}>",
"notifiedAt": "2015-06-16T13:12:35.862Z",
"respondedAt": "2015-06-16T13.12:36.300Z",
"createdAt": "2015-06-16T13:12:35.842Z",
"links": {
"self": "https://events.vin.li/api/vl/notifÍcations/09704b59-83d9-44a5-a0f8-33d973bdac5e",
"event": "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events/314d7fcd-d4d6-4b78-9804-bl71db60790a",
"subscription": "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/subscriptions/a896ff7d-ca46-4bf4-af71-b9bl573c3efl“
}
}
},
"meta": {
"pagination": {
"total": 1,
"limit": 20,
"offset": 0,
"links": {
7
"first": "https://events.vin.li/api/vl/subscriptions/a896ff7d-ca46-4bf4-af71-b9bl573c3efl/notifications?offset=0&limit=20">
"last": "https://events.vin.li/api/vl/subscriptions/a896ff7d-ca46-4bf4-af7lb9bl573c3efl/notifications?offset>=0&limit=20"
}
}
>
>
Obtener notificaciones para un evento
Devuelve las notificaciones que se activaron para cualquier suscripción asociada con un evento dado.
Solicitud
GET https://events.vin.li/api/vl/events/314d7fcd-d4d6-4b78-9804-bl71db60790a/notifications Accept: app lica tion / json
Respuesta
7
HTTP/l.l 200 OK
Content-Type: application/json
{
"notifications": [
í
"id": "09704b59-83d9-44aS-a0f8-33d973bdac5e",
"eventld": "314d7fcd-d4d6-4b78-9804-bl71db60790a",
"eventType": "rule-leave",
"eventTimestamp": "201S-06-16T13:12:34.000Z",
"subscriptionld": ”a896ff7d-ca46-4bf4-af71-b9bl573c3efl“,
"state": "complete",
"responseCode": 201,
"response": "{\"status\":\”success\"}",
"url": "https://myapp.com/notifications",
"payload": "{V,notificationV,:{\"event\":{V'idY,:V'314d7fcd-d4d6-4b78-9804-bl7ldb60790a\",\"timestamp\":\"2015-06-16T13:12:34.000Z\",\"deviceId\“: V'4bffefbb-9fba-43ee-aebeed7f7f2fae84\",\"stored\":\"2015-06-16T13:12:35.825Z\“,\"storageLatency\" :1825, Y'eventTypeV :\"rule-leave\", Y'metaV':
{\’’direction\":\"leave\",\"'firstEval\":false,\"rule\": {\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da97ld7a\",\"name\":\"[geofence] Marlee\",\"deviceld\":\"4bffefbb-9fba-43ee-aebeed7f7f2fae84\",\"boundaries\":[], V'evaluatedV' :true,\"covered\“:false,\"createdAt\H:\"2015-06-16T12:54:09.601Z\", V'linksV: {Y’self V : \ "https://rules.vin.li/api/vl/rules/79f2e013-b6b9-44dd-9+34-4be5da971d7a\",\"events\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7-f2fae84/events?type=rule&objectld=79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"subscriptions\":\"https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7-f:7f2fae84/subscriptions?objectType=rule8objectId=79f2e013-b6b9-44dd-9f34-4be5da971d7a\”}},\"message\": {V'idV :\"cd339f3d-b0d8-49a9-a87d-Ca7ee3a937e2\",\"timestamp\":\"2015-06-16T13:12:34.000Z\",\"snapshot\":{\"location\":
{\”lat\":32.5536468870112,\"lon\":-96.1153222519258}>}},\"object\":{\"id\":\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"type\":\"rule\",\"appId\":\"b75afd8f-7247-46e6-a0f9-04fl87c9d9bd\"}},\"subscription\":{\"id\":\"a896ff7d-ca46-4bf4-af71-b9bl573c3efl\",\"deviceId\":\"4bf-l:efbb-9fba-43ee-aebe-ed7f7f2fae84\,',\"eventType\":\"ruleleave\”, \"url\“ :\"https: //myapp. com/notificationsV, \"object\" : {\"id\" :\"79f2e013-b6b9-44dd-9f34-4be5da971d7a\",\"type\":\"rule\"},\"appData\":\"{\\\"message\\\":\\\"This is your app-specific data\\\"}\“}}}",
"noti-fiedAt": "2015-06-16T13:12:35.862Z",
'VespondedAt' : "2015-06-16T13:12:36.300Z",
"createdAt": "2015-06-16T13:12:35.842Z",
“links": {
"self": ‘https://events.vin.li/api/vl/notifications/09704b59-83d9-44a5-a0-F8-33d973bdac5e"
"event”: "https://events.vin.li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/events/314d7fcd-d4d6-4b78-9804-bl71db60790a",
"subscription": "https://events.vin,li/api/vl/devices/4bffefbb-9fba-43ee-aebeed7f7f2fae84/subscriptions/a896ff7d-ca46-4bf4-af71-b9bl573c3efl”
}
>
],
"meta”: {
"pagination": {
"total": 1,
"limit”: 20,
"offset": 0,
"links": {
"first”: "https://events.vin.li/api/vl/events/314d7fcd-d4d6-4b78-9804-bl71db60790a/notifications ?offset=0&limit=20",
"last": "https://events.vin.li/api/vl/events/314d7fcd-d4d6-4b78-9804-bl71db60790a/notifications?offset=0&limit=20"
}
>
}
>
API de diagnóstico
Lista de todos los códigos DTC para un dispositivo
El DTC History Service proporciona información histórica para códigos DTC para un vehículo dado. Cada vez que se ve un nuevo código DTC, activa un evento DTC. Estos eventos se resuelven cuando el código DTC ya no se ve o permanecen “abiertos” hasta que se resuelve el código.
Solicitud
GET h t tp s : / /d ia g n o s t ic . v in . l i /ap i/v l /vehic les /47fa348e-c3fa-4cad-8272-61940eae7748/codes Accept: applica tion /json
El parámetro de consulta de estado puede usarse para filtrar la respuesta. Los valores válidos son activos e inactivos. Estos filtrarán la respuesta para incluir solo cualquiera de los códigos DTC que todavía están o no activos actualmente. La ausencia del parámetro de consulta de estado no filtrará la respuesta y, por lo tanto, la respuesta contendrá los códigos DTC de historial completo.
Respuesta
1
HTTP/l.l 206 OK
Content-Type: application/json
{
"codes": [
{
"id": "dd46be07-24d0-48ad-be76-c459d35661ed",
"deviceld": "397c302b-b083-4e5f-940b-15824b228e0b",
"vehicleld": "7e94bdb6-7578-484d-99f5-37dec3el72b6",
"number": "P0102",
"description": "Mass or Volume Air Flow Sensor \"A\" Circuit Low",
"start": "2015-12-01T19:58:58.279Z",
"stop": nuil,
"links": {
"code": "http://diagnostic. vin. li/api/vl/codes/27268249-a716-402c-8550-7fc0d4ae6335", "device": "http://platform.vin.li/api/vl/devices/397c302b-b083-4e5f-940b-15824b228e0b", "vehicle": "http://platform.vin.li/api/vl/vehicles/7e94bdb6-7578-484d-99f5-37dec3el72b6" }
>,
{
"id": ”02ad82a5-f6e6-4957-8f65-bc791d7399ae",
"deviceld": "397c302b-b083-4e5f-940b-15824b228e0b",
"vehicleld": "7e94bdb6-7578-484d-99f5-37dec3el72b6",
"number": "P0101",
"description": "Mass or Volume Air Flow Sensor \"A\" Circuit Range/Performance”, "start": "2015-12-01T19:58:58.279Z",
"stop": nuil,
"links": {
"code": "http://diagnostic.vin.li/api/vl/codes/a5ccl28c-9a9b-487d-a6dd-375a9cc62dc4", "device": "http://platform.vin. li/api/vl/devices/397c302b-b083-4e5f-940b-15824b228e0b", "vehicle”: "http://platform.vin.li/api/vl/vehicles/7e94bdb6-7578-484d-99f5-37dec3el72b6" }
h
{
"id": “91el05ab-4f65-434e-8f41-088735299319",
"deviceld": "397c302b-b083-4e5f-940b-15824b228e0b”,
"vehicleld": "/ey4bobb-/y/8-484a-yyty-3/aec3ei/2Db",
"number": "P0100",
"description": "Mass or Volume Air Flow Sensor \"A\“ Circuit",
"start": "2015-12-01T19:58:58.279Z",
"stop": nuil,
"links”: {
"code": "http://diagnostic.vin.li/api/vl/codes/88853bda-e43e-4f60-bd72-8083ff02c85f", "device": "http://platform.vin.li/api/vl/devices/397c302b-b083-4e5f-940b-15824b228e0b", "vehicle": "http://platform.vin.lid/api/vl/vehicles/7e94bdb6-7578-484d-99f5-37dec3el72b6" }
}
L
"meta": {
"pagination": {
"rcmaining": 0,
"until": "201S-12-01T19:58:58.761Z",
“since": "1970-01-01T00:00:00.000Z",
"limit": 20,
"sortDir”: "dése",
2
"links": {>
>
)
>
DTC Info Service
Obtener información de código DTC
Hay una gran cantidad de información codificada en los códigos DTC notificada por un vehículo. Este método está destinado a proporcionar esta información para un código DTC dado para que una determinada aplicación de software relacionada con vehículo pueda presentar información útil al usuario final.
Solicitud
GET https://diacnostic.vin.li/api/vl/codes?number=P0001
Accept: application/json
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"codes": [
{
•id": "2db60bc5-0548-43ee-91c0-c34d59ce7lce",
"make": "generic",
"system": "powertrain",
"subSystem": "Fuel and air metering",
"numben":
"PQQOl",
"description”: "Fuel Volume Regulator Control Circuit/Open",
"links": {
“self": "http://diagnost.ic.vin.li/api/vl/codes/2db60bc5-0548-43ee-91c0-c34d59ce71ce" >
>
L
"meta": {
"pagination": {
"total": 1,
"llmiL". 2®,
"offset": O,
"links": {
"first": "http://diagnostic.vin.li/api/vi/codes ?offset=0&limit=20
" ,
"last": "http://diagnostic.vin.li/api/vl/codes?offset=0&limit=20"
>
)
}
}
API de viaje
Lista de todos los viajes de un dispositivo
Este método devuelve una lista de todos los viajes que ha realizado un dispositivo dado. Esto
incluirá viajes que aún no se han completado.
Solicitud
GET h t t p s : / / t r i p s . v i n . l i / a p i / v l / d e v i c e s / f e 4 b b c 20 - c c 90 - l l e 3 - 8 e 05 - f 3 a b a c 5 b 6 b 58 / t r i p s Accept: a p p l ic a t io n / js o n
Respuesta
4
HTTP/l.l 200 OK
Content-Type: application/json
“trips: [
{
"id": "a51a3c87-baa7-4e5d-98e6-4f9588d7e2el",
Mstart": "2015-08-19T19:25:15.951Z",
"stop": "2015-08-19T19:35:28.875Z",
"status": "completed",
“vehicleld": ”0c785aa0-la48-4cc6-9fSc-028350dd907d",
"deviceld": "fe4bbc20-cc90-lle3-8e05-f3abacSb6b58",
"startPoint": {
"type": "Point",
"coordinates": [
-96.789791,
32.780046
]
},
"ctopPoint": {
"type": "Point",
"coordinates": [
-96.791057,
32.780671
]
}.
"preview": "ijagEdgwir«3tC}B'@QAw@\\U?ICCBA@BFGBKFIB@OLBCm@cBa(^@W[Uo@c@i@Oq@]_gMCw(a>z@W?F\\> Fd@c@t@a@f@Td@h@b@n@'gv@'@'§b@n@@?CCEF3v@AlATjAHpA@hAH|@Tz@RvA]dgEAU\\eBbCi@lgWTKl#Oe@> L@AKPy@z@Í@b@Yl@u@jAAPU?sA3mADM[g@aCAgCGIED3m@h@Q'@ICDGA]kAK}@Yy@Bs@Ve@V[f@MAPVb@Ah(a>CNSXSGAKBGFD", "stats": {
"averageLoad": 42.6683,
"averageMovingSpeed": 23.1505,
"averageSpeed": 15.4892,
"comprehensivelocatíons": tnue,
"distance": 2125.35,
"distanceByGPS": 2051.44,
"distanceBvVSS": 2125.35.
"duration": 612924,
“fuelConsumed": 0.358368,
“fuelEconomy": 15.277,
"hardAccelCount": nuil,
"hardBrakeCount": nuil,
“locationCount": 160,
"maxSpeed": 47,
"messageCount": 182,
"stdDevMovingSpeed'': 11.0187,
"stopCount": 8,
"substantial": true
h
"links": {
"self" : "https: //trips. vin. Ii/api/vl/trips/a51a3c87-baa7-4e5d-98e6-4f9588d7c2el", "device": "https://platform.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58“, “vehicle": "https://platform.vin.li/api/vl/vehicles/0c785aa0-la48-4cc6-9f5c-028350dd907d", "locations": "https://telemetry.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/locations?since=14400123159518until=1440012928875",
"messages": "https://telemetry.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-
f3abac5b6b58/messages?since=1440012315951&until=1440012928875",
"events”: "https://events.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/events? since-1440012315951&unti1-1440012928875"
>
>
]>
"meta": {
"pagination": {
"remaining": 1,
"until": "2015-06-19T23:59:59.000Z",
"since": "1970-01-01T00:00:00.000Z",
"limit": 20,
“sortDir": "dése",
"links": {
"prior": "https://trips-dev.vin. Ii/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/trips?until=1434129972999"
}
}
}
Lista de todos los viajes de un vehículo
Este método devuelve una lista de todos los viajes que ha realizado un vehículo dado. Esto incluirá viajes que aún no se han completado. Esta lista incluirá solo viajes para el vehículo para el que la aplicación actual tiene acceso al dispositivo asociado.
Obsérvese, por favor, esos viajes a veces se crean de manera asíncrona, ya sea porque deben construirse mediante posprocesamiento o después de cargar datos a granel para un dispositivo dado.
Solicitud
GET h t t p s : / / t r i p s . v i n . I i / a p i /v l / v e h ic le s /0 c 785 a a 0 - la 48 -4 c c 6 - 9 f5 c - 028350 d d 907 d / t r ip s Accept: a p p l ic a t io n / js o n
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"trips": [
{
"id": "a51a3c87-baa7-4e5d-98e6-4f9588d7c2el",
"start": "2015-08-19T19:25:15.9S1Z",
"stop": "2015-08-19T19:35:28.875Z",
"status": "completed",
"vehicleld": "0c785aa0-la48-4cc6-9f5c-028350dd907d",
"deviceld": "fe4bbc20-cc90-lle3-8e05-f3abac5b6b58",
"startPoint": {
"type": "Point",
"coordinates": [
-96.789791,
32.780046
]
}.
"stopPoint": {
"type": "Point",
"coordinates": [
-96.791057,
32.780671
]
},
"preview": "ijagEdgwmQtC}B'(^,'w@\\U?ICCBA@BFGBKFIBgOLBCm@cBa@u@W[Uo(5>c@i(áraq(a]_@MCw;0z@W?F\\? Fd@c@t@a@f@Td@h@b(3>n@' @v@' @b@n(S^?CCEF3v@''lAT jAHpA@hAH |@Tz@RvA3d@EnU\\eBbCi@l@WTKl@Oe@? L@AKPy@z(S)i@b@Yl(0u@jAAPU?sfl3raADM[g@aCAgCGIED3m@h@Q'(S)ICDGA] kAK}(S)Yy@Bs@Ve(2)V[f(SlMAPVb@Ah|SlCNSXSGAKBGFD", "stats": {
"averageLoad": 42.6683,
"averageMovingSpeed": 23.1505,
"averageSpeed": 15.4892,
"distance": 2125.35,
"distanceByGPS": 2051.44,
"distanceByVSS": 2125.35,
"duration": 612924,
"fuelConsumed": 0.3S8368,
"fuelEconoray": 15.277,
“hardAccelCount": nuil,
"hardBrakeCount": nuil,
"locationCount": 160,
"maxSpeed": 47,
"messageCount": 182,
"stdDevMovingSpeed": 11.0187,
"stopCount": 8
},
"links”: {
"self": "https://trips.vin.Ii/api/vl/trips/a51a3c87-baa7-4e5d-98e6-4f9588d7c2el", "device": "https://platform.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58", "vehicle": "https://platform.vin.Ii/api/vl/vehicles/0c785aa0-la48-4cc6-9f5c-028350dd907d“, "locations": "https://telemetry.vin.Ii/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/locations?since=1440012315951&until=14400l2928875",
"messages": "https://telemetry.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abacSb6b58/messages?since=14400123159518tuntil=1440012928875“,
7
"ev en ts" : "h t t p s : / / e v e n t s .v in . l i / a p i /v l /d e v ic e s / f e 4 b b c 20 - c c 90 - l l e 3 - 8 e 05 -f3abac5b6b58/events?since=1440012315951&until=1440012928875“
>
>
]
>,
"meta” : {
" p a g in a t io n " : {
"rem ain ing": 1,
" u n t i l " : "2015-06-19T23:59 :59.000Z” ,
" s inc e ": "1970-01 -01T00:00 :00.000Z",
" l i m i t " : 20,
}
}
}
Obtener detalles de un viaje
Para cada viaje, en este caso hay disponible información más detallada con respecto a las estadísticas generales de viaje. Esto incluye ubicación de inicio y parada, así como algunas informaciones estadísticas más que pueden ser de interés. Estos elementos incluyen:
• averageLoad - carga promedio de motor (en porcentaje) del viaje
• averageMovingSpeed - velocidad media mientras el vehículo estaba en movimiento (elimina los tiempos en que el vehículo tenía una velocidad de 0)
• averageSpeed - velocidad promedio (en MPH) del viaje
• distance - distancia total recorrida (en metros) por el vehículo durante este viaje
• distanceByGPS - distancia total recorrida (en metros) según GPS. Esto es más preciso para viajes más largos, pero para viajes más cortos puede ser inexacto debido al tiempo para obtener una corrección al inicio de un viaje.
• distanceByVSS - distancia total recorrida (en metros) según la velocidad del vehículo. Esto
tiende a ser más preciso durante períodos de tiempo más cortos.
• duration - tiempo (en milisegundos) entre el inicio y el final de este viaje
• fuelConsumed - cantidad estimada de combustible (en litros) consumido durante este viaje
• fuelEconomy - economía de combustible estimada (en millas por galón) durante este viaje
• hardAccelCount - el número de veces que el vehículo experimentó una aceleración fuerte durante este viaje
• hardBrakeCount -e l número de veces que el vehículo experimentó una parada dura durante este viaje
• maxSpeed - la velocidad máxima (en MPH) notificada para el vehículo durante el viaje
• stdDevMovingSpeed - la desviación estándar de la velocidad mientras el vehículo estaba en movimiento
• stopCount - el número de veces que el vehículo se detuvo
Toda la información detallada enumerada en la fraseología anterior está disponible a través de los viajes obtenidos por el dispositivo o los viajes obtenidos por el vehículo.
Solicitud
Respuesta
HTTP/i.l 200 OK
Content-Type: application/json
{
"trip": {
"id": "a51a3c87-baa7-4e5d-98e6-4f9588d7c2el",
"Start": "2015-Ü8-19T19:25:15.9512",
"stop ": "2015-08-19T19: 35:28.875Z",
"status": "completed",
"vehicleld": “0c785aa0-la48-4cc6-9f5c-028350dd907d“,
"deviceld": "fe4bbc20-cc90-lle3-8e05-f3abac5b6b58",
“startPoint": {
"type": "Point",
"coordinates": (
-96.789791,
32.780046
]
},
"stopPoint": {
"typc": "Point",
"coordinates": [
-96.791057,
32.780671
]
>,
"preview": "ijagEdgwmQtC}B'@QAi/^\U?ICCBA^FGBKFIB<MLBCrn@cBa@u@W[Uo@c@i(Mc$] JMCw@z@W?F\\? Fd@c@t@a@f@Td@h@b@n@ ^ @ @'@b@n^?CCEFJv@AlATjAHpA@hAH|@TzpvA3d@EAU\\eBbCi@l(SWTKl@De@> L@AKPy@z@i@b@Yl@u@jAAPU?sA3mADM[g@aCAgCGIED3m@b@Q'@ICD6A]kAK>@Yy@Bs@Ve@V[f@MAPVb@AhgCNSXSGAKBGFD", "stats": {
"averageLoad": 42.6683,
"avprageMovingSpeed": 23.1505,
"averageSpeed": 15.4892,
"distance": 2125.35,
"distanceByGPS": 2051.44,
"distanceByVSS": 2125.35,
"duration": 612924,
"fuelConsumed": 0.358368,
"fuelEconomy": 15.277,
"hardAccelCount": nuil,
"hardBrakeCount": nuil,
"locationCount": 160,
"maxSpeed": 47,
"messageCount": 182,
"stdDevMovingSpeed": 11.0187,
"stopCount": 8
}.
"links": {
"self": "https://trips.vin.li/api/vl/trips/a51a3c87-baa7-4e5d-98e6-4f9588d7c2el", "device": “https://platform.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58", ''vehicle”: "https://platform.vin. Ii/api/vl/vehicles/0c785aa0-la48-4cc6-9f5c-028350dd907d", "locations": "https://telemetry.vin.Ii/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/locations?since=1440012315951&until=1440012928875",
"messages": "https://telemetry.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/messages?since=1440012315951&until=1440012928875",
"events": "https://events.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/events? since=1440012315951&until=1440012928875"
>
>
>
API de comportamiento
Tarjetas de informe para un dispositivo
Devuelve una tarjeta de informe basada en datos históricos durante un período especificado. En algunos casos, no se recopiló suficiente información para generar una tarjeta de informe. En estos casos, los grados se notificarán como “I” (para “Incompleto” para continuar con la metáfora de tarjeta de informe de escuela).
Solicitud
6ET https://behavior.vin.1i/api/vi/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/report_cards Accept: application/json
Respuesta
1
HTTP/l.l 200 OK
Content-Type: application/json
"remaining": 34,
"until": "2015-08-13T22:20:59.3302",
"since": "1970-01-01T00:00:00.000Z",
"limit": 20,
"sortDir”: “dése",
"links": {
“prior": “https://behavioral-dev.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3abac5b6b58/report_cards?until=1439418498459"
}
>
}
}
Tarjeta de informe de vida útil para un dispositivo
Devuelve una tarjeta de informe basándose en todos los datos históricos disponibles para un dispositivo dado.
Solicitud
GET h t tp s : / / b e h a v io r . v in . l i / a p i / v l / d e v ic e s / 602 c 6490 - d 7 a 3 - l le 3 - 9 c la 0800200c9a66/report_cards/overall
Accept: application/json
Respuesta
2
HTTP/l.l 200 OK
Content-Type: applicatior/json
{
"reportCard": {
"overallGrade": "A"
}
>
Tarjeta de información para un viaje
La tarjeta de informe específica de viaje contiene los mismos datos que la tarjeta de informe a largo plazo y de ciclo de vida, pero es específica para un viaje particular.
En algunos casos, el viaje es demasiado corto para generar los datos para que se ejecute el análisis de tarjeta de informe. En estos casos, los grados se describirán como “I”.
Solicitud
GET h ttp s : / /b e h av io r .v in .l i /ap i/v l / tr ip s /b 9e58eb 4-0743-45e9 -b9c6 -86500f5412b b /rep or t_card Accept: app lica tion / json
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"reportcards" : [
{
"id": "549d628c-48dc-412d-8087-44a9f82fl87e",
"deviceld": "fe4bbc20-cc90-lle3-8e05-f3abac5b6b58",
"vehicleld": ncal0cd7a-d2a5-4bb3-b47b-2aa0b8848f55",
"tripld": "b9e58eb4-0743-45e9-b9c6-86500f5412bb",
"grade”: "i"j
"links”: {
“self": "https://behavioral.vin.li/api/vl/report_cards/549d628c-48dc-412d-8087-44a9f82fl87e",
"trip": "https://trips.vin.li/api/vl/trÍps/b9e58eb4-0743-45e9-b9c6-86500f5412bb", "device": "https://platform.vin.li/api/vl/devices/fe4bbc20-cc90-lle3-8e05-f3ab3C5b6b58”, "vehicle": "https://platform.vin.Ii/api/vl/vehicles/cal0cd7a-d2a5-4bb3-b47b-2aa0b8848f55 }
>
]
>
API de seguridad
Obtener una lista de colisiones para un dispositivo
Devuelve una lista de colisiones registradas para un dispositivo dado.
Solicitud
GET https://safety.vin.Ii/api/vl/devices/8b8al8l0-d6d8-lle3-9cla-0800200c9a66/collisions Accept: application/json
Respuesta
4
HTTP/1.1 200 OK
Content-Type: application/json
{
"collisions" : [
{
"id" : "561f0fa0-3231-lled-8c21-0800200c9a66",
■’timestamp" : "2015-07-05122:16:18+00:00",
"location" : {
"latitude" : 32.766392,
"longitude" : -96.917009
},
"links" : {
"self' : "https://safety.vin.li/api/vl/collisions/561f0fa0-3231-lled-8c21-0800200c9a66" }
h
].
"meta" ; {
"pagination" : {
"total" : 22,
"offset” : 0,
"limit" : 20,
"links” : {
"first" : 'https://safety.vin.li/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66/collisions?offset=081imit=20",
"last" : "https://safety.vin.Ii/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66/colllsions?offset=20filimit=20",
"next" : "https://safety.vin.li/api/vl/devices/8b8al810-d6d8-lle3-9cla-0800200c9a66/collisions?offset=20&limit=20"
}
}
}
>
Obtener una lista de colisiones para un vehículo
Devuelve una lista de colisiones registradas para un vehículo dado.
Solicitud
GET https://safety,vin.li/api/vl/Vehic3.es/e619dcld-b760-410f-b809-2578df22a755/collisions Accept: application/json
Respuesta
HTTP/l.l 200 OK
Content-Type: application/json
{
"collisions" : [
{
"id" : "S61f0fa0-3231-lle4-8c21-0800200c9a66'',
"timestamp" : "201S-07-0ST22:16:18+00:00",
“location" : {
"latitude" : 32.766392,
"longitude" : -96.917009
b
"links" : {
"self" : "https: i/safety. vin. Ii/api/vl/collisions/561f0fa0-3231-lle4-8c21-0800200c9a66‘' >
b
b
"<neta" : {
"pagination" : {
'total’' : 22,
"offset" : 0,
"limit" : 20,
"links" : {
"first" : "https://safety,vin.li/api/vl/vehicles/e619dcld-b760-4l0f-b809-2578df22a755/collisions?offset=0Slímit=20",
"last" : 'https://safety.vin.li/api/vl/vehicles/e619dcld-b760-410f-b809-2578df22a755/collisions?offset=20&limit=20“,
"next" : "https://safety.vin.Ii/api/vl/vehicles/e619dcld-b760-410f-b809-2578df22a75S/collisions?offsct=20&limit=20"
}
)
}
Obtener una colisión específica
Devuelve una lista de colisiones registradas para un vehículo dado.
Solicitud
GET h ttp s : / /s a fe ty .v in . l i /a p i /v l /c o l l is io n s /e 43 ff87 d -b b 58 -42 d a -998 e -d 7 f l0 a 3 f7 a 64 Accept: application /json
Respuesta
HTTP/1.1 200 OK
Content-Type: application/json
{
"collision" : {
"id" : "e43ff87d-bb58-42da-998ed7fl0a3f7aS4", "timestamp" : "2015-07-05T22:16:18+00: 00", "location" : {
"latitude" : 32,766392,
"longitude" : -96.917009
>,
"lintís" : {
’’self" : "https ://safety. vir.Ii/api/vl/collisions/e43ff87d-bb58-42da-998e-d7fl0a3f7a64" >
}
}
7
Claims (1)
- REIVINDICACIONESSistema para recopilar, transmitir y procesar información acerca de un vehículo (V1, V2, V3) para suministrar una fuente de datos a una o más aplicaciones, caracterizado por que el sistema comprende:un dispositivo informático electrónico (11), que comprende al menos un dispositivo móvil, un dispositivo de IoT, o un puerto OBD de conexión, cada dispositivo situado en o conectado con el vehículo (V1, V2, V3) y configurado para recopilar y transmitir, a través de una red (22, 26) información acerca del vehículo, en particular información de telemetría, para suministrar una fuente de datos a un ordenador servidor (20);el ordenador servidor (20), configurado para proveer de una interfaz de programación para una plataforma de entretenimiento informativo de vehículo integrada en la nube en comunicación con una plataforma de información de vehículo, y para transformar y utilizar la información de la fuente de datos para proveer acceso a uno o más servicios en la plataforma de información del vehículo a través de la aplicación interfaz de programación; yun dispositivo electrónico del cliente (28, 30, 32, 34), comprendiendo un dispositivo electrónico móvil (32), una unidad principal de entretenimiento informativo de vehículo, o una consola de tablero de instrumentos (110), cada dispositivo incluyendo una interfaz de usuario gráfica y estando configurada para el acceso y la interacción con la plataforma de entretenimiento informativo de vehículo integrada en la nube por medio de la interfaz de programación.Sistema según la reivindicación 1, en el que adicionalmente información de terceros relevante para el uso del vehículo, los conductores y pasajeros del vehículo se proveen al ordenador servidor (20).Sistema según la reivindicación 1, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a dispositivos de internet de las cosas.Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube requiere una información de autenticación antes de conceder acceso seguro a datos de usuario, en el que la información de autenticación se selecciona del grupo que consiste en una contraseña, una frase, un identificador biométrico, e información de autenticación de múltiples factores.5. Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube está integrada con una unidad principal de entretenimiento informativo de automóvil y la plataforma de información de vehículo.6. Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube proporciona acceso a uno o más de patrones de conducción, salud del vehículo, escenarios específicos de viaje, conexiones, personas, y dispositivos externos.7. Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube permite el acceso a dispositivos domésticos inteligentes que incluyen uno o más de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos.8. Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube está configurada para controlar uno o más dispositivos domésticos inteligentes que incluyen al menos uno de ventilación inteligente, termostatos inteligentes, seguridad inteligente, sistemas de iluminación inteligentes, audio distribuido, dispositivos inteligentes para mascotas, y reconocimiento de estos dispositivos.9. Sistema según cualquiera de las reivindicaciones anteriores, en el que la plataforma de entretenimiento informativo de vehículo integrada en la nube visualiza una o más interfaces de usuario basadas en aplicación de plataforma de información de vehículo a través de una unidad principal de entretenimiento informativo de automóvil.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201562218501P | 2015-09-14 | 2015-09-14 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| ES1299510U true ES1299510U (es) | 2023-05-09 |
| ES1299510Y ES1299510Y (es) | 2023-08-02 |
Family
ID=57042996
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES202230265U Active ES1299510Y (es) | 2015-09-14 | 2016-09-14 | Plataforma de vehiculo integrada en la nube |
Country Status (7)
| Country | Link |
|---|---|
| US (2) | US10375174B2 (es) |
| EP (2) | EP4007239A1 (es) |
| CA (1) | CA2996004C (es) |
| DE (1) | DE202016009103U1 (es) |
| ES (1) | ES1299510Y (es) |
| MX (1) | MX393703B (es) |
| WO (1) | WO2017048874A1 (es) |
Families Citing this family (47)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9020491B2 (en) * | 2011-11-16 | 2015-04-28 | Flextronics Ap, Llc | Sharing applications/media between car and phone (hydroid) |
| US20140309876A1 (en) | 2013-04-15 | 2014-10-16 | Flextronics Ap, Llc | Universal vehicle voice command system |
| US12039243B2 (en) | 2013-04-15 | 2024-07-16 | Autoconnect Holdings Llc | Access and portability of user profiles stored as templates |
| US10154409B2 (en) * | 2014-07-17 | 2018-12-11 | Cirrent, Inc. | Binding an authenticated user with a wireless device |
| US10834592B2 (en) * | 2014-07-17 | 2020-11-10 | Cirrent, Inc. | Securing credential distribution |
| US10356651B2 (en) | 2014-07-17 | 2019-07-16 | Cirrent, Inc. | Controlled connection of a wireless device to a network |
| US9942756B2 (en) | 2014-07-17 | 2018-04-10 | Cirrent, Inc. | Securing credential distribution |
| CN105897818A (zh) * | 2015-10-19 | 2016-08-24 | 乐卡汽车智能科技(北京)有限公司 | 车辆操作控制方法、相关设备和系统 |
| US11256828B1 (en) | 2016-07-05 | 2022-02-22 | Wells Fargo Bank, N.A. | Method and apparatus for controlling IoT devices by agent device |
| US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
| US10555258B2 (en) * | 2017-03-13 | 2020-02-04 | At&T Intellectual Property I, L.P. | User-centric ecosystem for heterogeneous connected devices |
| ES2684593B1 (es) * | 2017-03-29 | 2019-07-09 | Dasware Tech S L | Equipo de control de apertura de puertas de garaje o similar y procedimiento de control de apertura de dichas puertas mediante dicho equipo. |
| GB2564136B (en) * | 2017-07-04 | 2020-01-22 | Ge Aviat Systems Ltd | Method and system for determining degradation in performance of an electronic device connected to a communication network |
| US10791436B2 (en) | 2017-10-11 | 2020-09-29 | Uatc, Llc | Systems and methods for a vehicle application programming interface |
| USD942999S1 (en) | 2017-10-17 | 2022-02-08 | Adobe Inc. | Display screen or portion thereof with icon |
| US10802793B2 (en) | 2017-11-22 | 2020-10-13 | Toyota Motor Engineering & Manufacturing North America, Inc. | Vehicle virtual assistance systems for expediting a meal preparing process |
| SE541396C2 (en) * | 2017-12-27 | 2019-09-10 | Scania Cv Ab | Method and control unit for communicating with a vehicle |
| US10749960B2 (en) | 2018-01-29 | 2020-08-18 | Uatc, Llc | Autonomous vehicle application programming interface and communications systems and methods |
| CN110392067B (zh) | 2018-04-16 | 2021-07-20 | 比亚迪股份有限公司 | 第三方应用的开发系统及方法 |
| US10761527B2 (en) | 2018-07-27 | 2020-09-01 | Uatc, Llc | Integration platform for autonomous vehicles |
| US10553119B1 (en) | 2018-10-04 | 2020-02-04 | Allstate Insurance Company | Roadside assistance system |
| US11349903B2 (en) * | 2018-10-30 | 2022-05-31 | Toyota Motor North America, Inc. | Vehicle data offloading systems and methods |
| US10956587B2 (en) | 2018-11-27 | 2021-03-23 | International Business Machines Corporation | Vehicle computer security |
| WO2020180658A1 (en) * | 2019-03-01 | 2020-09-10 | Ovo Automotive Ltd. | Virtual connected vehicle infrastructure |
| CN110430277A (zh) * | 2019-08-13 | 2019-11-08 | 山东浪潮人工智能研究院有限公司 | 一种基于云计算、大数据、物联网技术的车联网应用系统 |
| CN110782558B (zh) * | 2019-10-08 | 2021-10-08 | 一汽解放汽车有限公司 | 一种差异化gps锁车控制方法 |
| EP4354289B1 (en) | 2019-10-11 | 2025-07-16 | Google Llc | Extensible computing architecture for vehicles |
| US10764751B1 (en) | 2019-12-02 | 2020-09-01 | At&T Mobility Ii Llc | Associating vehicle user equipment with customer mobile accounts |
| CN111354101A (zh) * | 2020-03-09 | 2020-06-30 | Oppo广东移动通信有限公司 | 车辆储能的预警方法、终端设备、车辆、车辆钥匙及介质 |
| US20220009350A1 (en) * | 2020-07-09 | 2022-01-13 | Xevo Inc. | System and method for generating content recommendation rules for a vehicle |
| CN112153621B (zh) * | 2020-10-12 | 2022-05-31 | 南昌智能新能源汽车研究院 | 一种基于蓝牙的人-车交互车库停车系统 |
| US12314587B2 (en) | 2020-11-12 | 2025-05-27 | Snowflake Inc. | Enabling applications to access cloud data |
| WO2022109197A1 (en) * | 2020-11-18 | 2022-05-27 | Vinli, Inc. | Collaborative mobility risk assessment platform |
| CN115119168B (zh) * | 2021-03-22 | 2024-11-12 | 本田技研工业株式会社 | 无线通信系统 |
| WO2023001388A1 (en) * | 2021-07-23 | 2023-01-26 | Audi Ag | System and method for customizing a vehicle function |
| US20230061842A1 (en) * | 2021-08-31 | 2023-03-02 | Allstate Insurance Company | User-controlled vehicle telematics |
| CN113890775B (zh) * | 2021-09-08 | 2023-10-13 | 深圳Tcl新技术有限公司 | 一种设备配网方法、装置、计算机设备和存储介质 |
| EP4378126A1 (en) * | 2021-09-09 | 2024-06-05 | Volkswagen Aktiengesellschaft | Apparatuses, methods and computer programs for a vehicle and for a home network node |
| CN114466043B (zh) * | 2022-01-25 | 2023-10-31 | 岚图汽车科技有限公司 | 车联网系统、智能驾驶控制方法及其设备 |
| KR20230129794A (ko) * | 2022-03-02 | 2023-09-11 | 현대자동차주식회사 | 차량 및 그 커넥티드 카 서비스 안내 방법 |
| CN115416731B (zh) * | 2022-07-20 | 2025-07-08 | 米塔盒子科技有限公司 | 适用于轨道车辆的一体化制动控制平台 |
| USD1066396S1 (en) * | 2022-08-17 | 2025-03-11 | Atieva, Inc. | Automobile display screen with graphical user interface |
| US12242646B2 (en) * | 2022-10-28 | 2025-03-04 | Blackberry Limited | Access restriction of vehicle-associated information |
| US12134388B2 (en) | 2022-11-07 | 2024-11-05 | Volvo Car Corporation | Apparatus for communicatively connecting a car seat to retrieve health data |
| CN115914212A (zh) * | 2022-12-09 | 2023-04-04 | 长城汽车股份有限公司 | 一种车载娱乐信息向仪表系统屏展示的方法及相关产品 |
| CN119218130A (zh) * | 2023-06-30 | 2024-12-31 | 长城汽车股份有限公司 | 车辆座舱的控制方法、车辆及存储介质 |
| DE102024121091A1 (de) | 2024-07-24 | 2026-01-29 | Audi Aktiengesellschaft | Verfahren zum Betrieb eines Smart-Homes und eines Kraftfahrzeugs, entsprechende Steuerungseinrichtung und Vorrichtung mit einer Steuerungseinrichtung |
Family Cites Families (17)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9070243B1 (en) * | 2009-08-19 | 2015-06-30 | Allstate Insurance Company | Assistance on the go |
| US8863256B1 (en) * | 2011-01-14 | 2014-10-14 | Cisco Technology, Inc. | System and method for enabling secure transactions using flexible identity management in a vehicular environment |
| US9285944B1 (en) * | 2011-04-22 | 2016-03-15 | Angel A. Penilla | Methods and systems for defining custom vehicle user interface configurations and cloud services for managing applications for the user interface and learned setting functions |
| DE102011101808A1 (de) * | 2011-05-17 | 2012-11-22 | Volkswagen Ag | Verfahren und System zum Bereitstellen einer Nutzerschnittstelle in einem Fahrzeug |
| US9088572B2 (en) * | 2011-11-16 | 2015-07-21 | Flextronics Ap, Llc | On board vehicle media controller |
| US20130231784A1 (en) * | 2012-03-01 | 2013-09-05 | Toyota Motor Engineering & Manufacturing North America, Inc. | Systems, Methods and Vehicles For Controlling Home Automation |
| US20140309876A1 (en) * | 2013-04-15 | 2014-10-16 | Flextronics Ap, Llc | Universal vehicle voice command system |
| US9098367B2 (en) * | 2012-03-14 | 2015-08-04 | Flextronics Ap, Llc | Self-configuring vehicle console application store |
| US20140006555A1 (en) * | 2012-06-28 | 2014-01-02 | Arynga Inc. | Remote transfer of electronic images to a vehicle |
| US20140121891A1 (en) * | 2012-10-30 | 2014-05-01 | Cloudcar, Inc. | Automobile data abstraction and communication |
| US20140189888A1 (en) * | 2012-12-29 | 2014-07-03 | Cloudcar, Inc. | Secure data container for an ambient intelligent environment |
| EP2817170A4 (en) * | 2013-04-15 | 2015-11-04 | ACCESS TO USER PROFILES STORED IN THE FORM OF MODELS AND PORTABILITY OF THESE USER PROFILES | |
| AU2015218275B2 (en) * | 2014-02-14 | 2019-05-02 | Intertrust Technologies Corporation | Network security systems and methods |
| WO2015160900A1 (en) * | 2014-04-15 | 2015-10-22 | Maris, Ltd | Assessing asynchronous authenticated data sources for use in driver risk management |
| WO2016037193A1 (en) * | 2014-09-05 | 2016-03-10 | Vinli | Vehicle information system |
| US20170075366A1 (en) * | 2015-09-11 | 2017-03-16 | Ford Global Technologies, Llc | Methods and Systems to Synchronize Vehicle Settings Via a Home Network Connection |
| US20170337752A1 (en) * | 2016-05-23 | 2017-11-23 | Panasonic Automotive Systems Company Of America, Division Of Panasonic Corporation Of North America | Vehicle-level multi-modal test platform |
-
2016
- 2016-09-14 US US15/265,778 patent/US10375174B2/en active Active
- 2016-09-14 EP EP21198955.3A patent/EP4007239A1/en active Pending
- 2016-09-14 DE DE202016009103.5U patent/DE202016009103U1/de active Active
- 2016-09-14 WO PCT/US2016/051779 patent/WO2017048874A1/en not_active Ceased
- 2016-09-14 CA CA2996004A patent/CA2996004C/en active Active
- 2016-09-14 EP EP16774742.7A patent/EP3350779A1/en not_active Ceased
- 2016-09-14 MX MX2018002902A patent/MX393703B/es unknown
- 2016-09-14 ES ES202230265U patent/ES1299510Y/es active Active
-
2019
- 2019-07-31 US US16/527,421 patent/US10812593B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| CA2996004A1 (en) | 2017-03-23 |
| US20170078398A1 (en) | 2017-03-16 |
| EP4007239A1 (en) | 2022-06-01 |
| US10812593B2 (en) | 2020-10-20 |
| US10375174B2 (en) | 2019-08-06 |
| WO2017048874A1 (en) | 2017-03-23 |
| ES1299510Y (es) | 2023-08-02 |
| US20190356738A1 (en) | 2019-11-21 |
| EP3350779A1 (en) | 2018-07-25 |
| DE202016009103U1 (de) | 2022-05-13 |
| CA2996004C (en) | 2022-05-17 |
| MX2018002902A (es) | 2018-06-15 |
| MX393703B (es) | 2025-03-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES1299510U (es) | Plataforma de vehiculo integrada en la nube | |
| ES2950595T3 (es) | Sistema de información de vehículo | |
| US9367968B2 (en) | System and methods for mobile applications using vehicle telematics data | |
| Reininger et al. | A first look at vehicle data collection via smartphone sensors | |
| DE102014109876B4 (de) | Verfahren, Systeme und Vorrichtungen zum Bereitstellen einer anwendungserzeugten Information zur Darstellung in einer automobilen Haupteinheit | |
| TWI645305B (zh) | 用於調節運載工具存取之系統及方法 | |
| US9984561B1 (en) | Method and system for remote modification of information for an appliance activation transmission | |
| US9495866B2 (en) | Communicating with residential electrical devices via a vehicle telematics unit | |
| Kosch et al. | Automotive internetworking | |
| US20190378355A1 (en) | Remote vehicle electronics configuration | |
| CN102883306B (zh) | 增强的智能电话车载设施 | |
| Mueck et al. | Networking vehicles to everything: Evolving automotive solutions | |
| CN108985485B (zh) | 用于降低车辆资源消耗风险的系统和方法 | |
| US20180285846A1 (en) | System and method for parking violation risk management | |
| US20190122457A1 (en) | Method and system to deliver telematics solutions | |
| DE102014109877B4 (de) | Verfahren, Systeme und Vorrichtung zum Bereitstellen einer Mitteilung in einer automobilen Haupteinheit, dass eine drahtlose Kommunikationsvorrichtung sich außerhalb eines Fahrzeugs befindet | |
| CN107451921A (zh) | 用于授权保险和注册保险单的车辆计算机系统 | |
| Murphy et al. | Advanced service delivery to the Connected Car | |
| US20240298365A1 (en) | Remote Mobile Device Management | |
| US10195940B2 (en) | Vehicle task recommendation system | |
| Rodrigues et al. | A low-cost vehicular infrastructure of monitoring and communicating information for intelligent transport systems | |
| Albertengo et al. | Smartphone enabled connected vehicles pave the way to intelligent mobility | |
| Aguiari | Exploring Computing Continuum in IoT Systems: sensing, communicating and processing at the Network Edge | |
| US20240407019A1 (en) | System And Method For Prioritizing Vehicle Operator And Vehicle Requirements Over A Secure Wireless Network | |
| CN106875671B (zh) | 一种基于wifi的车辆数据信息获取方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| CA1K | Utility model application published |
Ref document number: 1299510 Country of ref document: ES Kind code of ref document: U Effective date: 20230509 |
|
| FG1K | Utility model granted |
Ref document number: 1299510 Country of ref document: ES Kind code of ref document: Y Effective date: 20230727 |