用于监视和利用远程车辆连接状态的系统和方法转让专利

申请号 : CN201510147790.0

文献号 : CN104954424B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 布莱恩·彼得森瑞塔什·潘迪亚约瑟夫·保罗·洛克普拉文·亚拉法蒂

申请人 : 福特全球技术公司

摘要 :

提供了一种远程车辆连接状态。一种消息代理可响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,初始化将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题的丢失连接通知,并在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。一种服务传送网络可经由消息代理接收针对由服务传送网络和车辆预订的车辆主题的消息发布请求;当消息的类型需要车辆处于连接状态以进行消息发布而车辆处于断开状态时,将唤醒消息发送到消息代理带外的车辆,以请求车辆重新连接到消息代理。

权利要求 :

1.一种系统,包括:

消息代理计算装置,包括一个或更多个硬件处理器并且被配置为:响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,初始化丢失连接通知,其中,所述丢失连接通知将由消息代理计算装置在消息代理计算装置将车辆连接识别为丢失时发布到主题树主题;

当通过车辆连接被发布到消息代理计算装置的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。

2.如权利要求1所述的系统,其中,消息代理计算装置还被配置为:在接收到被发布到与车辆相关联的主题树主题的平滑断开连接通知时,不初始化丢失连接通知。

3.如权利要求1所述的系统,其中,服务传送网络被配置为:根据被发布到与车辆相关联的主题树主题的通知,保存对车辆的连接状态的指示。

4.如权利要求3所述的系统,其中,服务传送网络还被配置为:响应于接收到被发布到与车辆相关联的主题树主题的连接通知,将对车辆的连接状态的指示更新为连接状态;

响应于接收到被发布到与车辆相关联的主题树主题的丢失连接通知,将对车辆的连接状态的指示更新为丢失连接状态;

响应于接收到被发布到与车辆相关联的主题树主题的平滑断开连接通知,将对车辆的连接状态的指示更新为平滑断开连接状态。

5.如权利要求4所述的系统,其中,服务传送网络还被配置为:基于将被发布到主题树的消息类型,识别消息是否需要车辆具有连接状态来作为消息被发布的条件;

当消息类型需要车辆处于连接状态才被发布时,在发布消息之前,使用对车辆的连接状态的指示来验证车辆处于连接状态。

6.如权利要求5所述的系统,其中,服务传送网络还被配置为:当消息类型需要车辆处于连接状态而对车辆的连接状态的指示示出车辆处于断开连接状态时,将唤醒消息发送到消息代理计算装置带外的车辆,以请求车辆重新连接到消息代理计算装置。

7.如权利要求6所述的系统,其中,唤醒消息通过短消息服务被发送到车辆。

8.如权利要求1所述的系统,还包括:车辆的车辆控制器,被配置为将连接通知发布到消息代理计算装置的被服务传送网络预订的与车辆相关联的主题树主题,使得丢失连接通知被建立,从而丢失连接通知在从车辆控制器发布到消息代理计算装置的周期性通知未到达的情况下被发布。

9.一种系统,包括:

服务传送网络计算装置,包括一个或更多个硬件处理器并且被配置为:从消息代理接收针对由车辆预订的车辆主题的消息发布请求;

响应于所述消息发布请求,当消息的类型需要车辆处于连接状态以进行消息发布而车辆处于断开连接状态时,将唤醒消息发送到消息代理带外的处于断开连接状态的车辆,以请求车辆重新连接到消息代理。

10.如权利要求9所述的系统,其中,服务传送网络计算装置还被配置为:当消息的类型不需要车辆连接到消息代理以进行消息发布时,将消息发布到车辆主题,而不发送唤醒消息。

11.如权利要求9所述的系统,其中,服务传送网络计算装置还被配置为:当消息是时效性命令时,确定消息的类型需要车辆连接到消息代理。

12.如权利要求11所述的系统,其中,服务传送网络计算装置还被配置为:响应于来自与车辆相关联的移动装置的请求,接收消息发布请求以执行时效性命令。

13.如权利要求9所述的系统,其中,唤醒消息通过短消息服务被发送到车辆。

14.如权利要求9所述的系统,其中,服务传送网络计算装置还被配置为:当消息是非时效性命令时,确定消息的类型不需要车辆连接到消息代理。

15.如权利要求9所述的系统,其中,服务传送网络计算装置还被配置为:根据被发布到与车辆相关联的主题的通知,保存对车辆的连接状态的指示。

16.如权利要求15所述的系统,其中,服务传送网络计算装置还被配置为:响应于接收到被发布到与车辆相关联的主题的连接通知,将对车辆的连接状态的指示更新为连接状态;

响应于接收到被发布到与车辆相关联的主题的丢失连接通知,将对车辆的连接状态的指示更新为丢失连接状态;

响应于接收到被发布到与车辆相关联的主题的平滑断开连接通知,将对车辆的连接状态的指示更新为平滑断开连接状态。

17.如权利要求16所述的系统,还包括消息代理,所述消息代理被配置为:响应于经由车辆连接被发布到由服务传送网络计算装置预订的与车辆相关联的主题树主题的连接通知,初始化丢失连接通知,其中,所述丢失连接通知将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题;

在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。

18.如权利要求17所述的系统,其中,消息代理还被配置为:在接收到被发布到与车辆相关联的主题树主题的平滑断开连接通知时,不初始化丢失连接通知。

19.一种方法,包括:

由服务传送网络经由消息代理接收针对由服务传送网络和车辆预订的车辆主题的消息发布请求;

当消息的类型需要车辆处于连接状态以发布消息而车辆处于断开连接状态时,将唤醒消息发送到消息代理带外的处于断开连接状态的车辆,以请求车辆重新连接到消息代理。

20.如权利要求19所述的方法,还包括:

响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,由消息代理初始化丢失连接通知,其中,所述丢失连接通知将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题;

在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。

说明书 :

用于监视和利用远程车辆连接状态的系统和方法

技术领域

[0001] 示意性实施例总体上涉及一种用于经由车辆远程信息处理来监视和利用远程车辆连接状态的方法和设备。

背景技术

[0002] 可利用车辆远程信息处理来使车辆的用户能够通过通信网络与可用服务进行交互。这些服务可包括逐向导航(turn-by-turn directions)、电话通信、车辆监视和道路救援。在某些情况下,车辆或远程信息处理单元的制造商可提供远程信息处理服务,而在其他情况下,可由第三方远程信息处理服务提供商来提供所述服务。为了使这些服务能够运行,车辆可使用车辆和服务均知晓的通信协议来通过网络与服务进行通信。

发明内容

[0003] 在第一示意性实施例中,一种系统包括:消息代理,被配置为:响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,初始化将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题的丢失连接通知,并在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。
[0004] 在第二示意性实施例中,一种系统包括:服务传送网络,被配置为:经由消息代理接收针对由服务传送网络和车辆预订的车辆主题的消息发布请求;当消息的类型需要车辆处于连接状态以进行消息发布而车辆处于断开状态时,将唤醒消息发送到消息代理带外的车辆,以请求车辆重新连接到消息代理。
[0005] 根据本发明的一个实施例,服务传送网络还可被配置为:当消息的类型不需要车辆连接到消息代理以进行消息发布时,将消息发布到车辆主题,而不发送唤醒消息。
[0006] 根据本发明的一个实施例,服务传送网络还可被配置为:当消息是时效性命令时,确定消息的类型需要车辆连接到消息代理。
[0007] 根据本发明的一个实施例,服务传送网络还可被配置为:响应于来自与车辆相关联的移动装置的请求,接收消息发布请求以执行时效性命令。
[0008] 根据本发明的一个实施例,唤醒消息可通过短消息服务(SMS)被发送到车辆。
[0009] 根据本发明的一个实施例,服务传送网络还可被配置为:当消息是非时效性命令时,确定消息的类型不需要车辆连接到消息代理。
[0010] 根据本发明的一个实施例,服务传送网络还可被配置为:根据被发布到与车辆相关联的主题的通知,保存对车辆的连接状态的指示。
[0011] 根据本发明的一个实施例,服务传送网络还可被配置为:响应于接收到被发布到与车辆相关联的主题的连接通知,将对车辆的连接状态的指示更新为连接状态;响应于接收到被发布到与车辆相关联的主题的丢失连接通知,将对车辆的连接状态的指示更新为丢失连接状态;响应于接收到被发布到与车辆相关联的主题的平滑断开连接通知,将对车辆的连接状态的指示更新为平滑断开连接状态。
[0012] 根据本发明的一个实施例,所述系统还可包括:消息代理,被配置为:响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,初始化将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题的丢失连接通知,并在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。
[0013] 根据本发明的一个实施例,消息代理还可被配置为:在接收到被发布到与车辆相关联的主题树主题的平滑断开连接通知时,不初始化丢失连接通知。
[0014] 在第三示意性实施例中,一种方法包括:由服务传送网络经由消息代理接收针对由服务传送网络和车辆预订的车辆主题的消息发布请求;当消息的类型需要车辆处于连接状态以发布消息而车辆处于断开状态时,将唤醒消息发送到消息代理带外的车辆,以请求车辆重新连接到消息代理。
[0015] 根据本发明的一个实施例,所述方法还包括:响应于经由车辆连接被发布到由服务传送网络预订的与车辆相关联的主题树主题的连接通知,由消息代理初始化将由消息代理在消息代理将车辆连接识别为丢失时发布到主题树主题的丢失连接通知,并在通过车辆连接被发布到消息代理的周期性通知未到达时,将丢失连接通知发布到与车辆相关联的主题树主题。

附图说明

[0016] 图1示出用于车辆的基于车辆的计算系统的示例框式拓扑图;
[0017] 图2示出经由消息代理通过网络与车辆进行通信的示例性服务传送网络;
[0018] 图3A和图3B示出经由消息代理的车辆与服务传送网络之间的消息的示例性通信流;
[0019] 图4示出用于在基于车辆的计算系统与服务传送网络的通信中使用的示例性主题树;
[0020] 图5A示出示例命令消息分层;
[0021] 图5B示出示例命令响应消息分层;
[0022] 图5C示出示例提醒消息分层;
[0023] 图6示出用于提供车辆的自动丢失连接消息的示例性处理;
[0024] 图7示出用于保存车辆的连接状态的示例性处理;
[0025] 图8示出用于根据车辆的连接状态将消息发布到车辆的示例性处理。

具体实施方式

[0026] 根据需要,在此公开本发明的详细实施例;然而,将理解的是,所公开的实施例仅仅是本发明的示例,本发明可以以各种替代形式实现。附图无需按比例绘制;可夸大或最小化一些特征以示出特定组件的细节。因此,在此公开的具体结构细节和功能细节不应被解释为具有限制性,而仅仅作为用于教导本领域技术人员以多种形式实施本发明的代表性基础。
[0027] 车辆到云端通信协议可被设计为在基于车辆的计算系统(VCS)(诸如,车辆的远程信息处理单元(TCU))与远离车辆的服务传送网络之间提供通信。所述协议可对用于在VCS与服务传送网络之间发送消息有效载荷的传输层以及被发送的消息的有效载荷的格式进行定义。传输层可利用用于消息传输的发布/预订模型,并且有效载荷协议可包括用于对正被传输的数据结构进行组织并使其序列化的名称/值配对模型。在一个示例中,可使用消息队列遥测传输(MQTT)作为传输协议,并可将谷歌协议缓冲器用作有效载荷协议。
[0028] 发布/预订模型可利用还被称为逻辑通道的主题,其中,发布方可通过主题来发送消息,预订方可通过主题来接收消息。在某些情况下,车辆可以是发布方,并可响应于来自服务传送网络的命令将车辆提醒发送到服务传送网络,或者将车辆连接状态通知给服务传送网络。在其他情况下,车辆可以是预订方,并可从服务传送网络接收控制消息或软件更新。在发布/预订模型中,服务传送网络可利用主题树结构来对用于在车辆与服务传送网络之间发送消息的主题和子主题的结构进行定义。通过使用发布/预订模型,车辆和服务传送网络无需使用消息传送重试系统,而所述重试系统可能是复杂且容易出错的。
[0029] 车辆到云端远程信息处理解决方案可依赖于车辆的嵌入式调制解调器(诸如,远程信息处理控制单元)来与服务传送网络进行连接,以执行通信功能。例如,在发布/预订模型中,车辆可利用调制解调器与消息代理进行连接,以发布消息并接收被发布的消息。典型地,调制解调器所利用的通信介质可以是用于车辆的蜂窝通信。由于诸如电池的功率消耗限制以及车辆进入和离开覆盖范围的因素,车辆可能无法与消息代理保持持续连接。
[0030] 无论车辆是否连接,某些消息都可被传送到车辆。例如,无论车辆的当前连接状态如何,发送请求车辆执行固件更新的消息都会是合适的。然而,其他消息仅应在车辆已连接时被发送到车辆。例如,使车辆锁定车门的消息不应被发送到未连接的车辆,这是因为直到车辆重新连接时消息才被延迟传送,而这会导致车门在车辆最终连接到消息代理并接收到发布的消息的未来时间(可能几天之后)非预期地锁定。
[0031] 为了确保某些消息仅被发布到连接的车辆,可利用系统的消息代理和服务传送网络来允许系统对车辆的连接状态进行跟踪。例如,在车辆与消息代理建立连接时,车辆可设置与消息代理的丢失连接消息,并设置在车辆与消息代理突然断开连接的情况下,丢失连接消息应被发布到的车辆连接主题的指示。丢失连接消息可包括丢失连接的连接状态。在一个示例中,与消息代理的车辆连接是MQTT连接,丢失连接消息是遗嘱(last will and testament)MQTT消息。代理可被配置为:当代理接收到连接请求时,代理将丢失连接消息和指示丢失连接消息应被发布到哪个主题的主题信息一起存储在它的持久性存储器中。这种初始化用作针对消息代理在车辆由于任何原因突然断开连接的情况下,消息代理代表车辆将丢失连接状态发布到指定主题的初始设置。发布丢失连接消息可相应地使系统能够在车辆驶过没有数据连接的“暗区”时检测到突然连接断开。示例性暗区可包括车辆可能穿过的隧道或停车场地下室层。
[0032] 当成功地与消息代理建立连接时,车辆可将具有已连接的连接状态的hello(你好)或连接消息发布到消息代理的车辆连接主题。服务传送网络可保持对车辆连接主题的预订。当服务传送网络始终预订车辆连接主题时,一旦车辆发布消息,代理就将连接状态消息传送到服务传送网络,以使服务传送网络能够更新保存的车辆连接状态从而指示车辆连接。
[0033] 当车辆与服务代理断开连接时,车辆可将goodbye(再见)或断开消息发布到消息代理的连接消息被发布到的同一主题。在一个示例中,车辆可在车辆的钥匙断开(key-off)时发布断开消息。由于服务传送网络始终预订车辆连接主题,因此一旦车辆发布该消息,代理就可将连接状态消息传送到服务传送网络。goodbye消息还可被服务传送网络接收,并可使服务传送网络更新保存的车辆连接状态以指示车辆已断开连接。此外,消息可使服务传送网络能够确定发送到车辆的后续消息可在发送到车辆的消息可被发布之前需要(例如,经由短消息服务(SMS)传送的)唤醒消息。
[0034] 通常,车辆(例如,在车辆钥匙断开时)能够通过发布指示车辆正在断开连接的goodbye消息来平滑地断开连接。在其他情况下,车辆可能无法在车辆变为断开连接时发布goodbye消息。这种情况可被称为非平滑的断开连接或突然断开连接,并可能在车辆电池断开连接或故障时发生,或者在车辆进入缺乏足够的无线服务或覆盖的区域时发生。
[0035] 为了使服务传送网络能够被告知非平滑的车辆断开连接,车辆还可被配置为从车辆(即,从那些已发布了hello消息但仍未发布goodbye消息也未以其他方式指示断开连接的车辆)周期性地提供指示车辆继续连接的消息。在一个示例中,车辆每隔两分钟提供这些ping消息,以在几分钟内准确地提供车辆连接状态信息,但是,ping消息之间可能具有不同的间隔长度。消息代理同样可被配置为周期性地接收这些消息,以保持跟踪车辆的心跳消息(heart-beat)。通过接收到周期性ping消息或心跳消息,消息代理能够识别出车辆停止向消息代理提供ping消息。当识别出车辆在超过ping消息间隔的一倍半的时间内(作为示例)未能提供一个或更多个周期性消息时,消息代理可认为车辆不再连接。相应地,响应于检测到车辆断开连接,消息代理可将存储在消息代理的持久性存储器中的(代理在车辆进行初始连接时作为参数接收到的)自动的丢失连接消息发布到该代理自身的在初始连接期间被设置为另一连接参数的指定主题中。相应地,服务传送网络可接收并利用自动的丢失连接消息,从而被通知车辆与消息代理非平滑地断开连接。
[0036] 如上面所提到的,一些消息应仅在车辆已连接时被发送到车辆。服务传送网络可被配置为:如果服务传送网络有应仅被发送到连接的车辆的消息要发布,而保存的车辆连接状态指示车辆断开连接,则服务传送网络尝试使车辆连接以使消息可被发布到车辆。例如服务传送网络可将唤醒消息发送到消息代理带外(out-of-band)的车辆,其中,唤醒消息被配置为使车辆与消息代理重新连接。作为一种可行方案,服务传送网络可将请求车辆重新连接到消息代理的SMS唤醒消息发送到车辆。当重新连接唤醒消息被车辆接收到时,车辆可连接到消息代理并发布hello消息。服务传送网络可检索被发布的hello消息,更新保存的车辆连接状态以指示车辆已连接,并发布应仅被发送到连接的车辆的消息。
[0037] 因此,通过利用hello消息、goodbye消息和自动的丢失连接消息,服务传送网络能够在考虑到非平滑的车辆断开连接的情况下保存车辆的连接状态信息。通过保存准确的连接状态信息,服务传送网络能够减少对将意在针对连接的车辆的消息发送到已与网络非平滑地断开连接的车辆的担忧。此外,通过相对准确地地获知哪些车辆已连接,服务传送网络能够通过避免与针对被服务传送网络指示为当前正连接的车辆的带外车辆重新连接序列相关联的等待时间,来减少用于意在针对连接的车辆的消息的命令执行时间。
[0038] 图1示出用于车辆31的基于车辆的计算系统(VCS)1的示例框式拓扑图。这种基于车辆的计算系统1的示例是由福特汽车公司制造的SYNC系统。启用基于车辆的计算系统的车辆可包含位于车辆31中的可视前端界面4。如果所述界面设置有例如触敏屏幕,则用户还能够与所述界面进行交互。在另一示意性实施例中,通过按钮按压、具有自动语音识别和语音合成的语音对话系统来进行交互。
[0039] 在图1中所示的示意性实施例1中,处理器3或中央处理器(CPU)3控制基于车辆的计算系统的至少某部分操作。设置在车辆31内的处理器3允许对命令和例程进行车载(on-board)处理。另外,处理器3被连接到非永久性存储器5和永久性存储器7两者。在此示意性实施例中,非永久性存储器5是随机存取存储器(RAM),永久性存储器7是硬盘驱动器(HDD)或闪存。通常,永久性(非暂时性)存储器7可包括在计算机或其它装置断电时保持数据的所有形式的存储器。这些处理器包括但不限于:HDD、致密盘(CD)、数字通用盘(DVD)、磁带、固态硬盘、便携式通用串行总线(USB)驱动器和任何其他合适的形式的永久性存储器7。
[0040] 处理器3还设置有允许用户与处理器3以接口互联的若干不同的输入。在此示意性实施例中,麦克风29、辅助输入25(用于输入33)、USB输入23、全球定位系统(GPS)输入24、可以是触摸屏显示器的屏幕4和蓝牙输入15全部被设置。还设置有输入选择器51,以允许用户在各种输入之间进行切换。对麦克风和辅助连接器两者的输入在被传送到处理器3之前,由转换器27对所述输入进行模数转换。尽管未示出,但是与VCS 1进行通信的众多车辆组件和辅助组件可使用车辆网络(诸如但不限于车辆区域网(CAN)总线)向VCS 1(或其组件)传送数据并传送来自VCS 1(或其组件)的数据。
[0041] VCS系统1的输出可包括但不限于可视显示器4以及扬声器13或立体声系统输出。扬声器13被连接到放大器11并通过数模转换器9从处理器3接收其信号。还可分别沿19和21所示的双向数据流进行到远程蓝牙装置(诸如个人导航装置(PND)54)或USB装置(诸如车辆导航装置60)的输出。
[0042] 在一示意性实施例中,系统1使用蓝牙收发器15与移动装置(ND)53(例如,蜂窝电话、智能电话、个人数字助理(PDA)或具有无线远程网络连接能力的任何其他装置)进行通信(17)。移动装置53随后可用于通过例如与蜂窝塔57的通信(55)来与车辆31外部的网络61进行通信(59)。在一些实施例中,蜂窝塔57可以是WiFi接入点。
[0043] 移动装置53与蓝牙收发器之间的示例性通信由通信14表示。
[0044] 可通过按钮52或类似的输入来指示将移动装置53与蓝牙收发器15进行配对。相应地,向CPU指示:车载蓝牙收发器15将与移动装置53中的蓝牙收发器进行配对。
[0045] 可利用例如与移动装置53关联的数据计划、话上数据或双音多频(DTMF)音在CPU 3与网络61之间传送数据。可选地,可期望包括具有天线18的车载调制解调器63以便在CPU 
3与网络61之间通过语音频带传送数据(16)。移动装置53随后可用于通过例如与蜂窝塔57的通信(55)来与车辆31外部的网络61进行通信(59)。在一些实施例中,调制解调器63可与蜂窝塔57建立通信(20),以与网络61进行通信。作为非限制性示例,调制解调器63可以是USB蜂窝调制解调器63,通信20可以是蜂窝通信。
[0046] 在一示意性实施例中,处理器3设置有包括用于与调制解调器应用软件进行通信的API的操作系统。调制解调器应用软件可访问蓝牙收发器上的嵌入式模块或固件,以完成与(诸如设置在移动装置中的)远程蓝牙收发器的无线通信。蓝牙是电气和电子工程师协会(IEEE)802个域网(PAN)协议的子集。IEEE 802局域网(LAN)协议包括无线保真(WiFi)并与IEEE 802PAN具有相当多的交叉功能。两者都适合于车辆31内的无线通信。可在这一范围使用的另一通信方式是自由空间光通信(诸如红外数据组织(IrDA))和非标准化消费者红外(IR)协议。
[0047] 在另一实施例中,移动装置53包括用于语音频带或宽带数据通信的调制解调器。在话上数据的实施例中,当移动装置53的所有者可在数据被传送的同时通过装置说话时,可实施已知为频分复用的技术。在其他时间,当所有者没有在使用装置时,数据传送可使用整个带宽(在一示例中是400Hz至3.4kHz)。尽管频分复用对于车辆31与因特网之间的模拟蜂窝通信而言会是常见的并仍在被使用,但其已经很大程度上被用于数字蜂窝通信的码域多址(CDMA)、时域多址(TDMA)、空域多址(SDMA)的混合体所替代。这些都是ITU IMT-2000(3G)兼容的标准,并为静止或行走的用户提供高达2mbs的数据速率,为在移动的车辆31中的用户提供高达385kbs的数据速率。3G标准现在正被IMT-Advanced(4G)所替代,其中,所述IMT-Advanced(4G)为车辆31中的用户提供200mbs的数据速率并为静止的用户提供1gbs的数据速率。如果用户具有与移动装置53关联的数据计划,则所述数据计划可允许宽带传输且系统可使用宽得多的带宽(加速数据传送)。在另一实施例中,移动装置(ND)53被安装至车辆31的蜂窝通信装置(未示出)所替代。在又一实施例中,ND 53可以是能够通过例如(而非限制)802.11g网络(即WiFi)或WiMax网络进行通信的无线局域网(LAN)装置。
[0048] 在一实施例中,传入数据可经由话上数据或数据计划而经过移动装置53、经过车载蓝牙收发器,并进入车辆31的处理器3。例如,在某些临时数据的情况下,数据可被存储在HDD或其他存储介质7上,直至不再需要所述数据时为止。
[0049] 可与车辆31以接口互联的另外的源包括:具有例如USB连接56和/或天线58的个人导航装置(PND)54、具有USB 62或其他连接的车辆导航装置60、车载GPS装置24、或具有与网络61的连接能力的远程导航系统(未示出)。USB是一类串行联网协议中的一种。IEEE 1394(FireWireTM(苹果)、i.LINKTM(索尼)和LynxTM(德州仪器))、EIA(电子工业协会)串行协议、IEEE 1284(Centronics端口)、S/PDIF(索尼/飞利浦数字互联格式)和USB-IF(USB开发者论坛)形成装置-装置串行标准的骨干。多数协议可针对电通信或光通信来实现。
[0050] 此外,CPU 3可与各种其他的辅助装置65进行通信。这些装置65可通过无线连接67或有线连接69来连接。辅助装置65可包括但不限于个人媒体播放器、无线保健装置、便携式计算机等。
[0051] 此外或可选地,可使用例如WiFi(IEEE 803.11)收发器71将CPU 3连接到基于车辆的无线路由器73。这可允许CPU 3在本地路由器73的范围内连接到远程网络。
[0052] 除了具有由位于车辆31中的车辆计算系统执行的示例性处理之外,在某些实施例中,还可由在车辆计算系统外部且与车辆计算系统进行通信的一个或更多个计算系统来执行至少部分示例性处理。这样的系统可包括但不限于:无线装置(例如但不限于移动电话)或通过无线装置连接的远程计算系统(例如但不限于服务器)。总体上,这样的系统可被称为与车辆关联的计算系统(VACS)。在某些实施例中,VACS的特定组件可根据系统的特定实施方式而执行处理的特定部分。通过示例而并非限制的方式,如果处理包括与配对的无线装置发送或者接收信息的步骤,则很可能无线装置没有在执行该处理,这是因为无线装置不会与自身进行信息的“发送和接收”。本领域的普通技术人员将理解何时不适合对给定解决方案应用特定的VACS。在所有解决方案中,预期至少位于车辆31自身内的VCS 1能够执行示例性处理。
[0053] 图2示出经由消息代理202通过网络61与车辆31进行通信的示例性服务传送网络200。车辆31可经由车辆31的VCS 1与网络61进行无线通信。当车辆31被组装时,车辆31可包括各种硬件组件和软件组件。在组装时或者在组装之后,车辆31的VCS 1可被配置为查询车辆31的这些硬件和软件之中的至少一部分的存在和版本信息。使用查询到的信息和另外的对特定车辆31进行标识的信息(例如,发布在车辆区域网(CAN)总线上的车辆标识号(VIN)信息、调制解调器63的预订方身份模块(SIM)信息(诸如,国际移动站设备标识(IMEI))等),VCS 1可经由网络61与消息代理202进行通信,从而与服务传送网络200建立账户。服务传送网络200可从车辆31接收这些通信,并可保持与车辆31的标识符相链接的硬件配置和软件(例如,固件等)版本的数据存储。
[0054] 消息代理202可另外提供用于在服务传送网络200与车辆31之间进行通信的发布/预订消息功能。发布/预订模型可利用一个或更多个被命名为逻辑通道的主题204,其中,发布方可通过主题204来发送消息206,预订方可通过主题204来接收消息206。主题204的预订方接收被发布到预订方所预订的主题204的消息206,而不是接收所有消息206,并且主题204的所有预订方将接收基本上相同的主题消息206。
[0055] 图3A和图3B示出经由消息代理202的车辆31与服务传送网络200之间的消息206的示例性通信流。消息206可具有各种种类,诸如,命令302、命令响应304和提醒306等。
[0056] 如图3A中所示,服务传送网络200可将命令302发布到消息代理202的车辆31所预订的主题。命令302是请求命令302的接收方执行命令302所指定的动作的一种类型的消息206。命令响应304是响应于接收到命令302而被提供回发送方的消息206。车辆31可将对命令302的响应304发布到服务传送网络200所预订的主题204。参照图5A和图5B来详细讨论命令302和命令响应304。
[0057] 如图3B中所示,车辆31可将提醒306发布到消息代理202的服务传送网络200所预订的主题。提醒306是将信息从发送方提供给接收方而不请求执行特定动作的一种类型的消息206。当不需要服务传送网络200对提醒306提供响应时,响应于提醒306,消息代理202可将提醒响应308发布到车辆31。参照图5C来详细讨论提醒。
[0058] 消息206的发布方可负责向与主题204一致的多个主题204提供消息206。发布方可包括:例如,对于命令302而言,负责保持和/更新车辆软件/固件的OEM或其他实体。在某些情况下,车辆31可以是发布方,并可将车辆提醒306发送到服务传送网络200所预订的主题204,可使用将车辆31与网络61的连接状态通知给服务传送网络200的提醒306,或者可利用命令响应304对来自服务传送网络200的消息206进行响应。在其他情况下,车辆31可以是预订方,并可经由消息代理202从服务传送网络200接收命令302或其他信息。
[0059] 消息206可利用名称/值配对模型,其中,名称/值配对模型可允许车辆31和服务传送网络200通过名称来定义和引用消息206的数据元素。每条消息206可包括存在于所有消息206中的某个基础字段。此外,每种类别的消息206可包括存在于该种类别的所有消息206中的数据元素的特定最小集。例如,从车辆31到服务传送网络200的提醒306或其他消息206可包括可对于从车辆接收消息206的接收方而言有用的公共信息的第一集合,从服务传送网络200到车辆31的命令302或其他消息206可包括可对于从服务传送网络200接收消息206的接收方而言有用的公共信息的第二集合。
[0060] 取决于消息206的类型(例如,命令302的类型),消息206还可包括与特定消息类型206相关的附加字段。为此,名称/值配对模型可允许对数据的子集进行定义(例如,将被包括在来自车辆31的消息206中的信息、将被包括在来自服务传送网络200的消息206中的信息、描述车辆31的状态的信息等),这种定义随后可被包括在消息206定义中,而无需对需要公共信息的每种类型的消息206进行冗余的重新定义。此外,由于车辆31和服务传送网络
200可通过名称或标识符(而不是通过对消息206进行原始字节偏移)来引用消息206的字段,因此,系统可允许将数据元素添加到消息206定义(或公共信息定义),而不会非期望地影响利用先前版本的消息206定义来实现与服务传送网络200进行通信的配备的车辆31。
[0061] 关于对发布到主题204的各种类型的消息206的处理,车辆31可被配置为按照命令302被接收到的顺序来执行从服务传送网络200接收到的命令302。为此,车辆31可被配置为保持接收到的命令302的命令队列,以使车辆31能够按照先入先出(FIFO)方式来执行队列中的接收到的命令302。车辆31还可被配置为按照提醒306在车辆31侧发生的顺序来执行提醒306。为此,车辆31可被配置为保持提醒队列,使得车辆31可按照后入先出(LIFO)方式来执行队列中的提醒306。车辆31可被配置为:在命令302与提醒306之间有冲突的情况下,基于消息206的时间戳,按照消息从服务传送网络200被接收到或在车辆31上发生的顺序来执行消息206。
[0062] 可利用主题204来使消息206被发布到合适的车辆31或者从合适的车辆31被发布,并使消息206被发布为合适的消息206类型。为了便于将消息206发布到合适的主题204,可将主题204布置在主题树208中。服务传送网络200可对主题树208进行定义,以提供用于在车辆31与服务传送网络200之间发送消息206的主题204和子主题204的结构。
[0063] 图4示出用于VCS 1/服务传送网络200通信的示例性主题树208。VCS 1(诸如,车辆31的远程信息处理单元)可预订主题树208的与车辆31的配置文件版本、安装的区域、软件/固件版本、特征等相应的节点。应注意的是,示例性主题树208的特定布局仅是为了进行说明,可使用主题树208的其他布局。例如,服务传送网络200可使用具有更多、更少或不同的分类级的其他主题树208。
[0064] 参照图4的主题树208,主题树208的区域节点400可指示与该区域节点400下面的子主题204节点相关的区域。在某些情况下,区域节点400可表示可销售车辆31的不同的区域市场区(诸如,北美、欧洲和亚太)。在其他示例中,区域节点400可与其他地理区域(诸如,作为一些其他示例,国家、州、邮政编码、电话区号)相关。通过按区域划分主题树208,服务传送网络200可相应地发布车辆31的与不同区域相关联的不同信息。
[0065] 在每个区域节点400下面,主题树208可包括一个或更多个针对车辆的节点402,其中,每个针对车辆的节点402与同上级区域节点400相关联的车辆31相关。作为一种可行方案,服务传送网络200可根据在服务传送网络200登记为属于特定区域的车辆31的VIN或其他唯一标识符为车辆31创建针对车辆的节点402。针对车辆的节点402的子节点可用于进一步组织为了到各个车辆31以及从各个车辆31的通信而配置的主题204。
[0066] 例如,在针对车辆的节点402下面,主题树208还可包括一个或更多个车辆主题节点404,以与特定车辆31进行通信。车辆31可预订与车辆31的VIN或其他唯一标识符相应的车辆主题节点404,使得车辆31能够接收与车辆31自身特定相关的主题204中的消息206。
[0067] 作为一个示例,车辆31可预订时效性更新车辆主题节点404-A,以接收针对特定车辆31的具有时效性质的消息206(诸如,如下面更详细地讨论的时效性命令302)。由于发布到时效性更新车辆主题节点404-A的消息206的时效性质,如果所述消息206在一段时间(例如,由消息206指定的一段时间、所有时效性消息206通用的一段时间等)内未被车辆31接收到,则所述消息206可能超时并从主题204被移除。作为另一示例,车辆31可预订非时效性车辆主题节点404-B,以接收针对特定车辆31的不具有时效性质的消息206(例如,非时效性命令302,下面也将对此进行详细讨论)。
[0068] 更新(诸如,日历更新)可被发布到非时效性车辆主题节点404-B,并可留在主题204中,直到被预订的车辆31接收到为止。作为另一示例,车辆31可预订特征更新车辆主题节点404-C,以接收针对特定车辆31且与对车辆31的特征的更新相关的主题204中的消息
206。在该内容中,特征可表示包括在主题树208中的可应用于特定车辆31的一组配置参数。
例如,特征可表示用于实现可用的连接服务(例如,MY FORD MOBILE)的设置或针对顾客的设置集(例如,由特定的车队买方请求启用和/或禁用的一套特征)。作为另一示例,车辆31可预订固件更新车辆主题节点404-D,以接收针对特定车辆31且与对车辆31的固件的更新相关的主题204中的消息206。
[0069] 主题树208的针对车辆的节点402还可包括一个或更多个车辆主题节点406,以进行来自特定车辆31(例如,到服务传送网络200)的通信。例如,车辆31可使用通用提醒主题节点406-A来发布诸如低燃料的指示、车辆31的不稳定驾驶或周期性的当前车辆31GPS位置的消息206(例如,提醒306)。作为另一示例,车辆31可使用连接状态主题节点406-B来发布诸如车辆31的连接状态的消息206(例如,指示车辆31是否曾断开并随后重新连接到网络61的提醒306)。作为另一示例,车辆31可使用命令响应提醒主题节点406-C来发布诸如指示服务传送网络200所请求的命令302的成功或失败的提醒306的消息206。
[0070] 此外,在每个区域节点400下面,主题树208可包括一个或更多个硬件版本主题节点408,其中,每个硬件版本主题节点408与可由多台车辆31共享的安装的车辆31硬件版本(例如,VCS 1硬件的版本)相关。可相应地使用这些硬件版本主题节点408和子主题节点来根据硬件版本而不是根据各个车辆31对车辆31进行引用。
[0071] 在每个硬件版本主题节点408下面,主题树208可包括一个或更多个固件版本节点410。每个固件版本节点410可组织主题树208的与可被安装在特定区域的上级树关系车辆
31硬件上的固件版本相关联的节点。
[0072] 固件版本节点410还可包括特征节点412,其中,特征节点412组织主题树208的与特定特征相关联的节点。如上所述,特征可表示用于实现可用的连接服务的设置或针对顾客的设置集。因此,固件版本可支持多个不同的特征,其中,固件的不同部分功能针对各种特征接合或分离。
[0073] 特征节点412还可包括配置版本节点414,其中,每个配置版本节点414可表示与针对相关联的特征的配置文件的版本、固件版本、硬件版本和区域相关的主题204。配置文件可包括与它们(例如,针对特定区域安装在硬件版本上的固件的版本)所配置的上级特征相关的设置和其他信息。由于设置和其他选项可能随着版本改变,因此配置文件还可包括它们所兼容的固件的版本号。
[0074] 车辆31可预订主题树208的与车辆31的配置相关的主题204。作为一个示例,车辆可预订与车辆31的VIN相应的车辆主题节点404,以接收针对特定车辆31的任何更新。作为另一示例,车辆31的VCS 1可预订主题树208的配置版本节点414,以接收与车辆31的安装的区域、硬件版本、固件版本、特征和全局配置版本相应的配置或其他更新。预订的车辆31可查看或以其他方式获知被发布到预订的主题204的消息206。
[0075] 服务传送网络200可将消息发布到主题树208的将被执行更新的主题204中。作为一种可行方案,服务传送网络200可将命令302发布到车辆主题节点404中,以使特定车辆31获知应为车辆31执行更新。作为另一可行方案,服务传送网络200可将命令302发布到配置版本节点114中,以使具有特定的区域、硬件版本、固件版本和全局配置版本的任何预订的车辆31执行更新。
[0076] 图5A示出示例命令消息分层500-A。命令消息分层500-A示出与主题树208一起使用的各种类型的命令302的示例性关系。例如,分层500-A包括多个命令302,诸如,车辆状态更新命令302-D、远程启动命令302-E、取消远程启动命令302-F、锁定命令302-G、解锁命令302-H、清除设置命令302-I、配置下载命令302-J、固件下载命令302-K、服务供应(provisioning)数据请求命令302-L、用户授权命令302-M和车辆授权命令302-N。在分层
500-A中,这些命令302作为时效性命令302-B或非时效性命令302-C被组织在基本命令302-A下面。应注意的是,基本命令302-A、时效性命令302-B和非时效性命令302-C为了定义和组织的目的而被包括在分层500-A中,并且不是可被发送到车辆31的典型命令302。还应注意的是,图5A的特定命令消息分层500-A仅是为了说明的目的,可使用命令302的其他组织。例如,服务传送网络200可使用具有更多、更少或不同级别组织的命令302的其他分层500-A。
[0077] 针对命令302的结构,每个命令302可包括数据元素的特定最小集。这些公共元素可被称为基本命令302-A数据元素,并可用于提供关于命令302的基本信息以及关于命令302类型的信息。例如,基本命令302-A可包括名称/值配对,诸如:指示命令302是否为时效性的值、在值指示命令302是时效性的情况下有效的对时效性结构的引用、在值指示命令
302是非时效性的情况下有效的对非时效性结构的引用。
[0078] 命令302还可包括在服务传送网络200所发布的消息206的公共信息的结构中定义的另外的基本名称/值配对,诸如:消息206被发送的日期/时间、消息206的唯一标识符、在消息206是命令302的情况下在响应304消息中被用作对命令302的响应的唯一标识符的相关标识符。
[0079] 如基本命令302-A所定义的那样,可将命令302划分为(例如,与时效性车辆主题节点404-A和非时效性车辆主题节点404-B相应的)时效性302-B种类和非时效性302-C种类。时效性命令302-A是这种类型的命令:如果所述命令在一段时间内未被执行,则所述命令会超时。例如,发送到车辆31的下述命令可被认为是时效性命令302:用于更新车辆状态信息的命令、用于发起对车辆31的远程启动的命令、用于取消对车辆31的远程启动的命令、用于对车辆31进行锁定的命令、用于对车辆31进行解锁的命令和用于清除用户设置的命令。非时效性命令302-C是应被执行但不需要在特定时间窗内被执行的命令。非时效性命令的示例可包括:用户授权命令302、VCS 1授权改变命令302和服务供应数据请求命令302。
[0080] 除了基本命令302-A的信息以外,时效性结构302-B还可包括用于时效性命令302-B的信息。例如,时效性命令302-B可包括名称/值配对,诸如:时效性命令302-B的类型的标识符、以及针对标识符所指定的时效性命令302-B的每种类型,对于该标识符所指定的时效性命令302-B的这种类型而言有效的对数据结构的关联引用。例如,如果时效性命令302-B是车辆状态更新命令302-D,则标识符可指示该命令是车辆状态更新命令302-D,并且对于针对车辆状态更新的结构的引用可以是有效的,并可包括针对车辆状态更新命令302-D的信息。其他类型的时效性命令302-B可包括:远程启动命令302-E、取消远程启动命令302-F、锁定命令302-G、解锁命令302-H和清除设置命令302-I。
[0081] 非时效性结构302-C可包括用于非时效性命令302的信息。例如,非时效性命令302-C可包括名称/值配对,诸如:非时效性命令302-C的标识符、以及针对标识符所指定的非时效性命令302-C的每种类型,对于该标识符所指定的非时效性命令302-C的类型而言有效的对数据结构的关联引用。例如,如果非时效性命令302-C是配置下载命令302-J,则标识符可指示该命令是配置下载命令302-J,并且对针对配置下载的结构的引用可以是有效的,并可包括针对配置下载命令302-J的信息。其他类型的非时效性命令302-C可包括:固件下载命令302-K、服务供应数据请求命令302-L、用户授权命令302-M和车辆授权命令302-N。
[0082] 图5B示出示例命令响应消息分层500-B。VCS 1可被配置为在接收到命令302之后发送命令响应304。被发送的命令响应304的类型可取决于被命令302的接收方响应的命令302的类型。在某些命令302(例如,锁定命令302-G)的情况下,命令响应304可指示动作的成功或失败(门被成功锁定或未被成功锁定)。然而,在其他情况下,命令响应304可指示(例如,在授权命令302-M或固件下载命令302-K之后)动作正在进行中,并且稍后可发送指示动作的成功或失败的提醒306(下面对于提醒306进行详细解释)。
[0083] 与命令302类似的是,针对命令响应304的结构,每个响应304可包括数据元素的特定最小集。例如,基本命令响应304-A可包括名称/值配对,诸如:指示响应304是否针对时效性命令302-B的值、在值指示响应304针对时效性命令302-B的情况下有效的对时效性响应结构304-B的引用、在值指示响应304针对非时效性命令302-C的情况下有效的对非时效性响应结构304-C的引用。
[0084] 命令响应304还可包括在从车辆31到服务传送网络200的消息206的公共信息的结构中定义的另外的名称/值配对,诸如:诱发消息206的发送的事件的日期/时间、发送车辆31的标识符(诸如,VIN)、VCS 1的序号或其他标识符、诸如车辆31的预订方身份模块序号(ICCID)或其他无线运营商标识符的序号、VCS 1的硬件部件号、VCS 1的固件版本、VCS 1的配置版本、消息206的唯一标识符(例如,随机号、序列号等)和由引起命令响应304的命令
302所指定的相关标识符。
[0085] 除了基本命令响应304-A的信息以外,时效性响应结构304-B还可包括用于时效性响应304-B的信息。例如,时效性命令响应304-B可包括名称/值配对,诸如:时效性命令响应304-B的类型的标识符、以及针对标识符所指定的时效性命令响应304-B的每种类型,对于该标识符所指定的时效性命令响应304-B的类型而言有效的对数据结构的关联引用。例如,如果时效性命令响应304-B是车辆状态更新命令响应304-D,则标识符可指示该命令响应是车辆状态更新命令响应304-D,并且对针对车辆状态更新响应的结构的引用可以是有效的,并可包括针对车辆状态更新响应304-D的信息。其他类型的时效性命令304-B可包括:远程启动命令响应304-E、取消远程启动命令响应304-F、锁定命令响应304-G、解锁命令响应
304-H和清除设置命令响应304-I。时效性响应304还可包括另外的信息,诸如,来自车辆31的消息的公共信息、请求的命令的当前状态(例如,成功、失败、进行中等)、关于可能已遇到的任何错误的信息。
[0086] 非时效性响应结构304-C可包括用于非时效性命令响应304的信息。例如,非时效性命令304-C可包括名称/值配对,诸如:非时效性命令响应304-C的标识符、以及针对标识符所指定的非时效性命令响应304-C的每种类型,对于该标识符所指定的非时效性命令响应304-C的类型而言有效的对数据结构的关联引用。例如,如果非时效性命令响应304-C是配置下载命令响应304-J,则标识符可指示该命令响应是配置下载命令响应304-J,并且对针对配置下载响应的结构的引用可以是有效的,并可包括针对配置下载命令响应304-J的信息。其他类型的非时效性命令304-C可包括:固件下载命令响应304-K、服务供应数据请求命令响应304-L、用户授权命令响应304-M和车辆授权命令响应304-N。非时效性响应304还可包括另外的信息,诸如,来自车辆31的消息的公共信息、请求的命令的当前状态(例如,成功、失败、进行中等)、关于可能已遇到的任何错误的信息。
[0087] 参照回图3A并参照图4、图5A和图5B,车辆31和服务传送网络200可利用这些和其他类型的命令302和命令响应304来执行各种动作。
[0088] 例如,服务传送网络200可将车辆状态更新302-D命令发布到车辆31的主题204(例如,时效性主题节点404-A),以请求车辆31向服务传送网络200提供车辆31信息的更新。由车辆31发布(到命令响应主题节点406-C的)的车辆状态响应304-D可包括在从车辆31到服务传送网络200的消息206的公共车辆状态信息的结构中定义的名称/值配对,诸如:车辆31的车窗位置、车辆31的车门(例如,驾驶员车门、乘客车门、驾驶员后侧车门、乘客后侧车门、引擎盖、后备箱、后挡板门、内侧后挡板门等)半掩、门锁状态信息、车辆是否正在移动、远程启动状态和设置、12伏车辆电池状态、胎压状态、点火状态、周界报警状态、燃料液位、机油剩余寿命、车辆速度、燃料耗尽前可行驶距离、当前里程表读数、GPS信息和用于启动车辆31的激活钥匙的标识符。车辆31可被配置为使用诸如CAN总线或其他车辆31传感器的信息源来填充车辆状态信息结构。
[0089] 服务传送网络200可(例如,基于从用户移动装置发送到服务传送网络200的请求,向时效性主题节点404-A)发布发起远程启动命令302-E,以请求车辆31启动。服务传送网络200可类似地发布取消远程启动命令302-F,以请求车辆31取消任何请求过的远程启动事件。服务传送网络200可类似地发布锁定命令302-G来请求车辆31锁定车门,并且服务传送网络200可类似地发布解锁命令302-H来请求车辆31解锁。服务传送网络200可发布清除用户设置命令202-I,以请求车辆31清除所有用户设置并将VCS 1的授权状态设置为等待授权。
[0090] VCS 1可被配置为:响应于接收到这些时效性命令302-B中的任何命令,对命令302的名称/值配对进行解包,确定命令302的类型,并尝试执行命令302。VCS 1还可被进一步配置为:响应于尝试执行命令302,(例如,向车辆31的命令响应主题节点406-C)发布(例如,具有与命令302相应类型的)时效性命令响应304-B。如上所讨论的,响应304可包括:当尝试执行命令302时的车辆状态、针对从车辆31到服务传送网络200的消息提供的公共名称/值配对、指示命令302是否成功(例如,经由发起远程启动命令302-E车辆是否被启动)的状态。如果在处理命令302时遇到错误,则响应304还可包括(例如在命令302属于VCS 1无法识别的类型的情况下)标识失败原因的可选的错误代码。
[0091] 服务传送网络200可将配置下载命令302-J发布到车辆31的主题204(例如,主题节点414),以请求车辆31下载新的车辆31配置。服务传送网络200可将固件下载命令302-K发布到车辆31的主题204(例如,用于对特定固件版本的车辆31进行更新的主题节点410,用于对特定车辆31进行更新的主题节点404-D等),以请求车辆31下载新的固件版本。可通过(例如,经由被发布到主题节点406-C的响应304)指示命令302被接收到而不是指示下载已完成或已安装的确认来对这些命令302进行响应。
[0092] 服务传送网络200可将服务供应数据请求命令302-L发布到车辆31的主题204(例如,主题节点404-B),以使服务传送网络200在VCS 1未正确地发布服务供应提醒306(下面对此进行讨论)或者服务提供消息206丢失或以其他方式未被服务传送网络200接收到的情况下进行恢复。服务供应数据请求命令302-L相应地使车辆31(例如,向主题节点406-C)发布服务供应数据请求命令响应304-L,其中,服务供应数据请求命令响应304-L包括:公共服务供应304信息、指示最近一次的VCS 1状态改变是否成功的命令状态、在命令302未被车辆31识别的情况下的可选错误代码、服务传送网络200未接收到的来自车辆31的当前服务供应数据。当前的服务供应数据可包括:例如,VCS 1的调制解调器信息,诸如,国际移动用户标识(IMEI)、移动站国际用户目录号(MSISDN)、国际移动用户标识(IMSI)以及车辆31的固件信息或其他系统信息)。
[0093] 服务传送网络200可将用户授权命令302-M发布到车辆31的主题204(例如,主题节点404-B),以提供使连接的服务应用能够将用户识别为车辆31的真正所有者的应用层授权。在许多应用中,需要车辆内授权来“开启”VCS 1的服务功能。(例如,由车辆31发布到主题节点406-C的)用户授权命令响应304-M和相关联的用户授权命令响应304-M可相应地告知服务传送网络200:车辆31已接收到授权请求。值得注意的是,用户授权命令302-M/响应304-M序列可不确认用户完成的授权序列(例如,在屏幕上打出“允许”)。相反,可通过提醒
306(下面将对此进行详细讨论)将用户对于授权请求的响应发送到服务传送网络200。在用户授权命令302-M中,服务传送网络200可提供诸如下述项的信息:车辆31的新的所有者的标识符(例如,对用户进行标识的电子邮件地址或其他字符串)、标识请求是对于授权序列的初始请求还是最终请求的请求类型。当接收到用户授权命令302-M时,VCS 1可对命令
302-M进行解码,并发布用户授权命令响应304-M。用户授权命令响应304-M可包括诸如下述项的信息:定义命令302是否被成功完成(例如,命令302能够被解码,并且对用户而言车辆内授权消息在车辆内被准备好)或者命令302是否失败(例如,命令302无法被执行,或者对VCS 1而言授权消息在车辆内未被准备好)的响应类型、在命令302未能识别失败原因的情况下的可选错误代码。
[0094] 可利用车辆授权改变命令302-N来允许手动改变车辆31的授权状态。为此,(例如,由服务传送网络200发布到车辆31主题节点404-B的)授权改变命令302可包括诸如服务传送网络200正请求车辆31改变到的授权状态的信息。作为响应,(例如,被发布到主题节点406-C的)授权改变命令响应304可包括允许告知服务传送网络200命令302是否成功的信息。例如,所述信息可包括:(例如作为公共响应304的一部分的)车辆31的当前授权状态、指示授权改变命令302是否成功的状态、在授权改变命令302不成功(例如,车辆31未识别出针对车辆31所请求的授权状态)的情况下指示失败原因的错误代码。
[0095] 图5C示出示例提醒消息分层500-C。提醒消息分层300-C示出与主题树208一起使用的各种类型的提醒306的示例性关系。例如,分层500-C包括诸如下述项的提醒306:告警触发的提醒306-D、移动模式开始提醒306-E、移动模式结束提醒306-F、远程启动开始提醒306-G、远程启动结束提醒306-H、低电量提醒306-I、消除低电量提醒306-J、低胎压提醒
306-K、消除低胎压提醒306-I、主复位提醒306-M、连接状态提醒306-N、配置更新提醒306-O、固件下载状态提醒306-P、固件重新刷写状态提醒306-Q、用户授权响应提醒306-R、服务供应提醒306-S和休眠状态改变提醒306-T。在分层500-C中,这些提醒306作为通用提醒
306-B或非通用提醒306-C被组织在基本提醒306-A下面。通用提醒306-B可具有公共消息
206结构,而非通用提醒306-C可以是可包括不存在于公共结构中的另外的信息的那些提醒
306。应注意的是,基本提醒306-A、通用提醒306-B和非通用提醒306-C为了定义和组织的目的而被包括在分层500-C中,并且一般不是可从车辆31发送的提醒306。还应注意的是,图5C的特定提醒消息分层500-C仅是为了说明的目的,可使用提醒306的其他组织。例如,服务传送网络200可使用具有更多、更少或不同级别组织的提醒306的其他分层500-C。
[0096] 提醒306可包括各种车辆启动序列。如果VCS 1识别出它应该向服务传送网络200发送提醒306的情况,则VCS 1可利用诸如上面参照图3B所讨论的那些提醒的提醒306序列。通常,针对提醒306,如果VCS 1在预定义的时间段之内(例如,在由VCS 1保存的可配置确认超时值之内)未从消息代理202接收到传送令牌(delivery token),则VCS 1可利用不同的消息标识符(例如,上面提到的随机标识符)对发送提醒306进行重试。如果所述发送失败,则VCS 1可重试设置的次数,针对每次尝试产生新的唯一消息标识符。重试的次数可以是可配置参数,例如,最大重试设置。如果这些重试失败,则VCS 1可使提醒306排队,从而稍后对其进行发送。例如,当已在车辆31与消息代理202之间成功建立了较新会话时,可利用新的消息标识符来重新发送无法被发送的任何提醒306。
[0097] 与命令302和响应304类似,针对提醒306的结构,每个提醒306可包括数据元素的特定最小集。例如,基本提醒306-A可包括名称/值配对,诸如:指示提醒306是否为通用提醒306-B的值、在值指示提醒306是通用提醒306-B的情况下有效的对通用提醒306-B的引用、在值指示提醒306是非通用提醒306-C的情况下有效的对非通用提醒306-C的引用。
[0098] 除了基本提醒306-A的信息以外,通用提醒结构306-B还可包括用于通用提醒306-B的信息。例如,通用提醒306-B可包括名称/值配对,诸如:指示通用提醒306-B的类型的值、对各种类型的通用提醒306(例如,告警触发的提醒306-D、移动模式开始提醒306-E、移动模式结束提醒306-F、远程启动开始提醒306-G、远程启动结束提醒306-H、低电量提醒306-I、消除低电量提醒306-J、低胎压提醒306-K、消除低胎压提醒306-I、主复位提醒306-M等)的引用,其中,所述值所指示的引用是有效的。
[0099] 通用提醒306-B的每种类型还可包括上面讨论过的针对从车辆31到服务传送网络200的消息206提供的另外的公共名称/值配对,诸如:诱发消息206的发送的事件的日期/时间、发送车辆31的标识符(诸如,VIN)、VCS 1的序号或其他标识符、诸如车辆31的用户身份模块序号(ICCID)或其他无线运营商标识符的序号、VCS 1的硬件部件号、VCS 1的固件版本、VCS 1的配置版本、消息206的唯一标识符(例如,随机号、序列号等)和(在可用的情况下)由引起提醒306的命令302指定的相关标识符。通用提醒306-B的每种类型还可包括上面参照车辆状态更新响应304-D所讨论的公共车辆状态信息。例如,车辆31可将提醒306发布到主题树208中的车辆31的主题节点406-A。
[0100] VCS 1可在车辆31触发告警的情况(例如,车辆31安全系统所引发的周界告警情况)下发布告警触发的提醒306-D。VCS 1可在车辆31已进入移动模式(例如,车辆31引擎正运行且向车轮提供扭矩)的情况下发布移动模式开始提醒306-E。VCS 1可在VCS 31已退出移动模式(例如,车辆31引擎已停止且不向车辆提供扭矩)的情况下发布移动模式结束提醒306-F。VCS1可在车辆31已开始远程启动序列的情况下发布远程启动开始提醒306-G。VCS 1可在车辆已结束远程启动序列的情况下发布远程启动结束提醒306-H。VCS 1可在车辆31已检测到12伏电池的电量低的情况下发布低电量提醒306-I。VCS 1可在车辆31已检测到12伏电池的电量不再低的情况下发布消除低电量提醒306-J。VCS 1可在车辆31已检测到一个或更多个轮胎的胎压低的情况下发布低胎压提醒306-K。VCS 1可在车辆31已检测到一个或更多个轮胎的胎压不再低的情况下发布消除低胎压提醒306-I。
[0101] VCS 1可在车辆31已执行了车辆内的工厂复位或主复位的情况下发布主复位提醒306-M等。所述复位可由例如主复位CAN消息触发。VCS 1可被配置为:当该消息被发送时,VCS 1将所有用户设置返回到默认设置,确认主复位已被执行,并向服务传送网络200发送主复位提醒306-M。
[0102] VCS 1可(例如,向主题节点406-B而不是主题节点406-A)发布连接状态提醒306-N,以允许消息代理202和服务传送网络200保存关于车辆31的连接状态的信息。当车辆31与消息代理已建立了新会话时,或者当VCS 1平滑地终止与消息代理202的会话时,车辆31可发布连接状态提醒306-N。VCS 1可被配置为在不重复的情况下发送连接状态提醒306-N,同时保证服务的传送质量。连接状态提醒306-N可包括诸如来自车辆31信息的公共信息和车辆31连接的状态(例如,“连接”、“断开”、“失去连接”)的信息。
[0103] 当连接时,VCS 1可将对主题204的车辆31预订设置为即使在车辆31与消息代理202断开连接的情况下也被保持。这可使车辆31即使在与车辆31具有间歇性连接性质的情况下也保持其对主题204的预订。
[0104] 当VCS 1首次与消息代理202建立连接时,VCS 1可经由连接状态提醒306-N(例如,hello消息)来报告“连接”的连接状态。VCS 1可被配置为:当VCS 1在发送它的“连接”提醒306-N之后接收到传送令牌时,VCS 1继续保持与消息代理202的客户端连接,以使VCS 1能够发布并接收消息206。如上所述,VCS 1可被配置为:如果VCS 1未在预定义的时间段之内(例如,在预先确定的超时时间段之内)从消息代理202接收到传送令牌,则VCS 1利用不同的消息标识符对发送连接状态提醒306-N进行重试。VCS 1可被配置为:当VCS 1平滑地与消息代理202断开连接时,VCS 1提供报告“断开连接”的状态的连接状态提醒306-N(例如,goodbye消息)。VCS 1可被配置为:如果VCS 1在发送它的“断开连接”提醒306-N之后接收到传送令牌,则VCS 1平滑地拆除与消息代理202的连接,随后终止底层连接(例如,经由网络
61的VCS 1的蜂窝连接)。
[0105] 当连接时,VCS 1可设置与消息代理202的丢失连接消息206,并设置在车辆31与消息代理202突然断开连接的情况下,丢失连接消息206应被发布到的车辆连接主题204的指示。丢失连接消息206可包括丢失连接的连接状态,并可与车辆连接主题204的指示一起被消息代理202保存在消息代理202的持久性存储器中。VCS 1还可实现心跳式丢失连接机制,以使消息代理202被告知(例如,当进入没有无线连接(例如,蜂窝连接)的隧道或其他盲区时)连接丢失的车辆31。丢失连接机制可通过使VCS 1周期性地发布指示与消息代理202的持续连接的消息206(例如,周期性连接状态提醒306-N)来进行操作。因此,如果一个或更多个周期性消息206未被发布(例如,如果在超过心跳消息间隔的一倍半的时间内未从VCS 1接收到ping消息),则消息代理202和服务传送网络200能够推断出车辆31连接丢失。在这种情况下,消息代理202可将保存在持久性存储器中的丢失连接消息206发布在该代理自身的由VCS 1在初始连接时指定的车辆连接主题中。因此,可针对连接状态、平滑断开连接状态和丢失连接状态来准确地保存车辆31的连接状态。
[0106] VCS 1可在车辆31已下载或未成功下载针对车辆31的配置更新的情况下发布配置更新提醒306-O,其中,车辆31经由服务传送网络200发布到主题树208的被车辆31预订的主题204的配置下载命令302-J来下载所述配置。配置更新提醒306-O可包括诸如下述项的信息:来自车辆31信息的公共信息、所请求的命令的当前状态(例如,成功、失败、进行中等)、关于可能已遇到的任何错误的信息。
[0107] VCS 1可在车辆31已下载或未成功下载针对车辆31的固件的情况下发布固件下载状态提醒306-P,其中,车辆31经由服务传送网络200发布到主题树208的由车辆31预订的主题204的固件下载命令302-J来下载所述固件。固件下载状态提醒306-P可包括诸如下述项的信息:来自车辆31信息的公共信息、所请求的命令的当前状态(例如,成功、失败、进行中等)、关于可能已遇到的任何错误。
[0108] VCS 1可在车辆31利用下载的固件已成功地刷新或未成功刷新VCS 1的情况下发布固件刷新状态提醒306-Q。固件刷新状态提醒306-Q可包括诸如下述项的信息:来自车辆31信息的公共信息、刷新是否成功、在刷新不成功的情况下关于可能已遇到的任何错误的信息。
[0109] VCS 1可在车辆31已确定用户(例如,经由车载用户界面,诸如经由显示屏或语音命令)已在车辆31中接受或拒绝初始或最终授权请求的情况下发布用户授权响应提醒306-R。例如,车辆31的VCS 1可在多个(例如,十个)钥匙循环(key cycle)内提示用户接受使用VCS 1的条款,直到用户选择同意或不同意为止。如果用户选择同意或不同意(或者在所述多个钥匙循环重复内未做出选择,其中,这种未做出选择会被默认为不同意),则车辆31可发布用户授权响应提醒306-R。用户授权响应提醒306-R可包括诸如下述项的信息:来自车辆31信息的公共信息、公共车辆31状态信息、对于授权是被允许还是被拒绝的指示。
[0110] VCS 1可在车辆31已确定CAN上可用的VIN与存储在VCS 1的非易失性存储器中的VIN不匹配的情况下发布服务供应提醒306-S。例如,当钥匙接通(key-on)时VCS 1可将CAN VIN与存储的VIN进行比较,如果车辆31不处于工厂模式且CAN VIN与存储的VIN之间有差异,则VCS 1可存储新的VIN,将用户设置重设为默认值,将服务供应提醒306-S发布到消息代理202,并将车辆31授权状态设置为等待服务供应。如上面参照服务供应数据请求命令302-1所讨论的那样,服务供应提醒306-S可包括诸如下述项的信息:来自车辆31信息的公共信息、公共车辆31状态信息、当前的服务供应数据。
[0111] VCS 1可发布休眠状态改变提醒306-T,以使消息代理202和服务传送网络200能够保存关于车辆31的休眠状态的信息。当车辆31执行某些功率模式转换(例如,进入高功率状态、进入低功率状态、进入深度休眠功率状态、从深度休眠被唤醒等)时,车辆31可发布休眠状态改变提醒306-T。休眠状态改变提醒306-T可包括诸如下述项的信息:来自车辆31信息的公共信息、公共车辆31状态信息、车辆31的功率状态(例如,“高功率”、“低功率”、“深度休眠”、“唤醒”等)。
[0112] 图6示出用于提供为车辆31的自动的丢失连接消息206的示例性处理600。例如,处理600可由通过网络61与服务传送网络200和车辆31进行通信的消息代理202执行。
[0113] 在框602,消息代理202接收车辆连接通知。例如,当车辆31已与消息代理202建立新会话时,连接的车辆31的VCS 1可将hello消息206发布到主题树208的针对车辆的主题节点406-B。所述消息206可以是指定“已连接”的连接状态的连接状态提醒306-N的形式。
[0114] 在框604,消息代理202初始化丢失连接通知。例如,车辆31的VCS 1可被配置为:在车辆31连接处理期间,初始化地向消息代理202提供自动消息206,以供消息代理202保存自动消息206,并在车辆31与消息代理202的连接丢失的情况下,将自动消息206发布到主题树208的针对车辆的主题节点406-B。例如,所述消息206可以是指定“丢失连接”的连接状态的连接状态提醒306-N。在某些情况下,消息代理202可(例如,基于在框602接收到的指定“已连接”的连接状态的连接状态提醒306-N)自动创建丢失连接通知,而无需车辆31指定将在车辆31连接丢失时被发布的特定消息206。可将下述项一起保存在消息代理202的持久性存储器中:自动消息206、以及对主题树208的在车辆31与消息代理202的连接丢失的情况下,所述消息206将被发布到的针对车辆的主题节点406-B的指示。
[0115] 在确定框606,消息代理202确定是否从车辆31接收到车辆31断开连接的通知。例如,VCS 1可被配置为:当连接的车辆31的VCS 1与消息代理202平滑地断开连接时,VCS 1诸如以报告“断开连接”的状态的连接状态提醒306-N的形式提供goodbye消息。如果消息代理202接收到报告“断开连接”的状态的连接状态提醒306-N,则消息代理202可丢弃在框604建立的自动丢失连接通知,并且处理600可结束。否则,如果未接收到这样的报告“断开连接”的状态的连接状态提醒306-N,则控制移动到确定框608。
[0116] 在确定框608,消息代理202确定是否从车辆31接收到周期性消息206。例如,连接的车辆31的VCS 1可被配置为周期性地发布指示与消息代理202持续连接的消息206。在一个示例中,周期性消息206可以是指示“已连接”的车辆状态的连接状态提醒306-N。因此,如果一个或更多个周期性消息206未被发布,则消息代理202和服务传送网络200能够推断出车辆31连接已丢失。在一个示例中,如果在超过车辆31发送周期性消息206之间的周期的一倍半的时段内没有从车辆31接收到周期性消息206,则消息代理202可确定与车辆31的连接丢失。如果消息代理202接收到周期消息206,则控制返回确定框606。然而,如果在应该接收到下一周期性消息206的预定量时间内没有接收到周期性消息206(或者如果多个这样的消息206未到达),则控制移动到框610。
[0117] 在框610,消息代理202发布自动丢失连接通知。例如,消息代理202可将自动丢失连接通知消息206发布到主题树208的针对车辆的主题节点406-B,其中,自动丢失连接通知消息206在框604被建立并被保存在消息代理202的持久性存储器中,所述主题节点406-B也被建立并被保存在消息代理202的持久性存储器中。例如,自动的丢失连接通知消息206可以是指定“丢失连接”的连接状态的连接状态提醒306-N。在框610之后,处理600结束。
[0118] 图7示出用于保存车辆31的连接状态的示例性处理700。例如,处理700可由经由消息代理202通过网络61与车辆31进行通信的服务传送网络200执行。
[0119] 在框702,服务传送网络200将车辆31连接状态初始化为断开连接。例如,服务传送网络200可保存关于哪个车辆31当前连接的信息,并可初始化地将车辆31设置为断开连接。
[0120] 在确定框704,服务传送网络200确定车辆31是否发布了车辆31连接的通知。例如,当车辆31连接到消息代理202时,车辆31可将指示连接的连接状态提醒306-N发布到主题树208的与车辆31相应的主题204(例如,与车辆31的VIN相应的连接状态主题406-B)。如果服务传送网络200从主题204检索到指示车辆31连接的连接状态提醒306-N(例如,hello消息),则控制移动到框706。否则,控制移动到确定框708。
[0121] 在框706,服务传送网络200将车辆31的状态设置为连接。例如,服务传送网络200可将与车辆31的唯一标识符(例如,VIN)相关联的状态指示更新为指示车辆31当前连接。在框706之后,控制移动到确定框704。
[0122] 在确定框708,服务传送网络200确定车辆31是否发布了车辆31断开连接的通知。例如,当车辆与消息代理202平滑地断开连接时,车辆31可将指示断开连接的连接状态提醒
306-N发布主题树208的与车辆31相应的主题204(例如,与车辆31的VIN相应的连接状态主题406-B)。如果服务传送网络200从主题204检索到指示车辆31断开连接的连接状态提醒
306-N(例如,goodbye消息),则控制移动到框710。否则,控制移动到确定框704。
[0123] 在框710,服务传送网络200将车辆31的状态设置为断开连接。例如,服务传送网络200可将与车辆31的唯一标识符(例如,VIN)相关联的状态指示更新为指示车辆31当前断开连接。在框710之后,控制移动到确定框704。
[0124] 在确定框712,服务传送网络200确定车辆31丢失连接的通知是否被(例如,车辆31的消息代理202)发布。例如,如上面针对处理600所讨论的那样,当车辆31与消息代理202非平滑地断开时,消息代理202可将自动的丢失连接状态提醒306-N自动发布到主题树208的与车辆31相应的主题204(例如,与车辆31的VIN相应的连接状态主题406-B)。如果服务传送网络200从主题204检索到自动的丢失连接状态提醒306-N,则控制移动到框714。否则,控制移动到确定框704。
[0125] 在框714,服务传送网络200将车辆31的状态设置为丢失连接。例如,服务传送网络200可更新与车辆31的唯一标识符(例如,VIN)相关联的状态指示以指示车辆31丢失了连接。相应地,可自动向服务传送网络200告知:由于车辆31进入没有连接的盲区(诸如,隧道或郊区)而导致车辆31断开连接。在框714之后,控制移动到确定框704。
[0126] 图8示出用于考虑车辆31的连接状态而将消息发布到车辆31的示例性处理800。例如,处理800可与处理700一起由经由消息代理202通过网络61与车辆31进行通信的服务传送网络200执行。
[0127] 在框802,服务传送网络200接收将被发布到被接收方车辆31预订的主题204的消息206。作为一个示例,服务传送网络200可基于从用户的移动装置发送到服务传送网络200的请求而接收发起远程启动命令302-E,其中,发起远程启动命令302-E将由服务传送网络200发布到时效性主题节点404-A以请求车辆31启动。作为另一示例,服务传送网络200可将固件下载命令302-K发布到车辆31的主题204,以请求车辆31下载新的固件版本。
[0128] 在确定框804,服务传送网络200确定消息206是否是需要车辆31连接到消息代理202才使消息206被发布的类型。例如,针对车辆31的时效性命令302-B会需要车辆31当前连接到消息代理202才被发布,而针对车辆31的非时效性命令302-C无需考虑车辆的当前连接状态就可被发布。如果服务传送网络200确定在发布消息206之前车辆31应被连接,则控制移动到确定点806。否则,控制移动到框816。
[0129] 在确定框806,服务传送网络200确定接收方车辆31是否处于已连接的连接状态。例如,服务传送网络200可通过查阅与车辆31的唯一标识符(例如,包括在消息请求中的VIN)相关联的状态,检索车辆31的当前连接状态。所述状态可能已经由服务传送网络200设置,例如,如上面参照处理700所讨论的那样。如果服务传送网络200确定车辆31已连接,则控制移动到框816。否则,控制移动到确定框808。
[0130] 在确定框808,服务传送网络200确定是否尝试了使车辆31重新连接到服务传送网络200。例如,服务传送网络200可被配置为将唤醒请求消息发送到车辆31,以尝试使车辆31重新连接到消息代理202从而使得消息206可被发布。当请求被发送时,服务传送网络200可设置指示唤醒消息被发送的标志,或者作为另一可行方案,服务传送网络200可记录唤醒消息被发送的时间。相应地,服务传送网络200可基于标志或记录的时间信息,确定重新连接消息或唤醒消息是否被发送。如果服务传送网络200还未向车辆31发送用于传送消息的重新连接请求,则控制移动到框810。否则,控制移动到确定框812。
[0131] 在框810,服务传送网络200发送请求车辆31重新连接的唤醒消息。例如,服务传送网络200可将消息发送到消息代理202带外的车辆31,其中,唤醒消息被配置为使车辆重新连接到消息代理。作为一种可行方案,服务传送网络200可将请求车辆31重新连接到消息代理202的SMS消息发送到车辆31。如上面参照确定框808所提到的,服务传送网络200还可设置指示消息被发送的标志,或者作为另一种可行方案,服务传送网络200可记录唤醒消息被发送的时间。在框810之后,控制移动到确定框806,以检查车辆31重新连接。
[0132] 在确定点812,服务传送网络200确定针对车辆31重新连接的超时是否已期满。例如,服务传送网络200可被配置为在预定量的时间内等待车辆31进行下述处理:车辆31对请求车辆31重新连接的唤醒消息作出响应,并将指示车辆31连接的连接状态提醒306-N提供给消息代理202(例如,提供hello消息)。如果自(例如,基于在框810记录的时间信息确定的)唤醒消息被发送的时间以来还留有时间,则服务传送网络200可确定超时还未期满。另外地或可选地,服务传送网络200可基于识别自接收到对于发送消息206的请求(例如,根据在框802中记录的时间)以来是否已经过了预定量的时间,确定对消息206的传送的超时是否已期满。如果所述超时未期满,则控制移动到确定框806。否则,控制移动到框814。
[0133] 在框814,服务传送网络200指示消息206未被发布。例如,服务传送网络200可将指示无法联系到车辆31的响应提供给消息206请求的发送方。在框814之后,处理800结束。
[0134] 在框816,服务传送网络200发布消息206。例如,服务传送网络200可根据上面参照图5A-图5C详细讨论的规则,将消息206发布到主题树208的主题204。在框816之后,处理800结束。
[0135] 因此,通过利用hello消息、goodbye消息和自动的断开连接消息,服务传送网络200能够考虑非平滑的车辆31断开连接而保存车辆31的连接状态信息。通过保存准确的连接状态信息,服务传送网络200能够减少对将意在针对连接的车辆31的消息206发送到已与网络非平滑地断开连接(例如,从消息代理202断开连接)的车辆31的担忧。
[0136] 此外,通过相对准确地获知哪些车辆31已连接,服务传送网络200能够减少用于意在针对连接的车辆31的消息206的命令执行时间。例如,服务传送网络200可利用车辆31连接状态信息来避免针对被服务传送网络200指示为当前正连接的车辆31而等待处理带外车辆31重新连接序列。作为一个示例,车辆31所有者可从他或她的移动装置向服务传送网络200发送请求,以解锁车辆31的车门。服务传送网络200可基于用户的车辆31的连接状态信息确定车辆31当前被连接,而无需向消息代理202询问当前的车辆31连接状态,因此,可发布对车门进行解锁的请求,而无需等待车辆31连接到消息代理202。或者,服务传送网络200可基于用户的车辆31的连接状态信息确定车辆31断开连接或丢失连接,因此,应在发布对车辆进行解锁的请求之前发送唤醒消息,以尝试唤醒车辆31。
[0137] 虽然以上描述了示例性实施例,但这些示例性实施例并不意在描述本发明的所有可能形式。相反地,说明书中所使用的词语是描述性词语而非限制,并且应理解的是,可在不脱离本发明的精神和范围的情况下做出各种改变。此外,可将各种实现实施例的特征进行组合以形成本发明的进一步的实施例。