本发明涉及互联网技术领域,具体涉及一种打印机连接状态的检测方法及装置。
背景技术:
在打印机sdk研发和实际应用中,打印机的连接状态是一个需要时刻关注的问题。与此同时,目前市场中打印机类型众多,其中,根据连接类型可分为蓝牙连接打印机,usb连接打印机以及网络打印机,或者,根据支持的指令可分为esc打印机和标签打印机等。
并且,不同类型以及不同厂家的打印机,其性能、品质上通常存在一些差别,其中针对某些类型或者厂家的打印机而言较为有效的连接状态检测方案,往往并无法适用于其它类型或者厂家的打印机。例如,比较正规的打印机厂家通常提供有打印机状态查询指令来辅助确定打印机的连接状态,但是每个厂家的指令存在一定的差异,导致该检测方式的普遍适用性不高;同时,大量的三方小厂家打印机根本不支持状态查询指令,而导致通过该检测方式不仅无法获取连接状态反而有可能造成打印机阻塞。
因此,亟需一种高效且普遍适用于各种打印机的连接状态检测方案,以解决打印机连接状态查询的难题。
技术实现要素:
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的打印机连接状态的检测方法及装置。
根据本发明实施例的一个方面,提供了一种打印机连接状态的检测方法,包括:
根据状态查询指令适用的打印机的型号信息设置打印机白名单;
根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;若是,向所述目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态;
若否,向所述目标打印机发送预设的打印测试任务,根据所述打印测试任务的执行结果确定目标打印机的连接状态。
可选的,在判定目标打印机的型号信息不包含在打印机白名单中之后,所述方法还包括:
对打印队列进行监控,根据监控结果判断是否触发预检测;
所述向所述目标打印机发送预设的打印测试任务具体为:若触发预检测,则向目标打印机发送预设的打印测试任务。
可选的,所述对打印队列进行监控,根据监控结果判断是否触发预检测进一步包括:
以预设时间间隔监控所述打印队列,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则判定触发预检测。
可选的,所述向所述目标打印机发送预设的打印测试任务进一步包括:向所述目标打印机发送写入n个空白字符的写打印任务。
可选的,所述向目标打印机发送写入n个空白字符的写打印任务进一步包括:
读取打印任务中打印小票的宽度信息,设置与所述宽度信息一致的空白字符的数量;
向目标打印机发送写入所述数量的多个空白字符的写打印任务。
可选的,所述根据所述打印测试任务的执行结果确定目标打印机的连接状态进一步包括:
若执行结果为写入异常、和/或等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态。
可选的,所述根据所述打印测试任务的执行结果确定目标打印机的连接状态进一步包括:
若所述执行结果为写入正常、且等待时间未超过预设时长,则确定目标打印机的连接状态为连接正常状态。
可选的,所述方法还包括:若确定目标打印机的连接状态为连接正常状态,则启动打印任务的打印处理;或者,
若确定目标打印机的连接状态为连接异常状态,则执行目标打印机的重连操作。
根据本发明实施例的另一方面,提供了一种打印机连接状态的检测装置,包括:
设置模块,适于根据状态查询指令适用的打印机的型号信息设置打印机白名单;
第一判断模块,适于根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;
检测模块,适于若包含在打印机白名单中,则向所述目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态;若不包含在打印机白名单中,则向目标打印机发送预设的打印测试任务,根据所述打印测试任务的执行结果确定目标打印机的连接状态。
可选的,所述装置还包括:
监控模块,适于对打印队列进行监控,根据监控结果判断是否触发预检测;
所述检测模块进一步适于:若触发预检测,则向目标打印机发送预设的打印测试任务。
可选的,所述监控模块进一步适于:
以预设时间间隔监控所述打印队列,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则判定触发预检测。
可选的,所述检测模块进一步适于:向所述目标打印机发送写入n个空白字符的写打印任务。
可选的,所述检测模块进一步适于:
读取打印任务中打印小票的宽度信息,设置与所述宽度信息一致的空白字符的数量;
向目标打印机发送写入所述数量的多个空白字符的写打印任务。
可选的,所述检测模块进一步适于:若执行结果为写入异常、和/或等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态。
可选的,所述检测模块进一步适于:若所述执行结果为写入正常、且等待时间未超过预设时长,则确定目标打印机的连接状态为连接正常状态。
可选的,所述装置还包括:启动模块,适于若确定目标打印机的连接状态为连接正常状态,则启动打印任务的打印处理;或者,
重连模块,适于若确定目标打印机的连接状态为连接异常状态,则执行目标打印机的重连操作。
根据本发明实施例的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行上述打印机连接状态的检测方法对应的操作。
根据本发明实施例的再一方面,提供了一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如上述打印机连接状态的检测方法对应的操作。
根据本发明实施例的打印机连接状态的检测方法及装置,通过设置打印机白名单,并判断目标打印机是否在打印机白名单中,若在其中,则利用状态查询指令对目标打印机的连接状态进行检测;若不在其中,则通过向目标打印机发送预设的打印测试任务,并根据回抛的执行结果确定目标打印机的连接状态。由此可见,本实施例方案,可在利用状态查询指令进行连接状态检测的基础上,对于不支持状态查询指令的打印机,通过向目标打印机发送预设的打印测试任务,使目标打印机执行简单字符的写入操作,并根据执行结果对目标打印机的连接状态来进行有效的检测,使得打印机连接状态的检测不再受打印机型号以及生产厂家的限制,可以适用于各种各样的打印机;以及,该预设的打印测试任务也不会造成打印机的堵塞,可以快速、准确的完成检测。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明实施例的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明实施例的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的打印机连接状态的检测方法的流程图;
图2示出了本发明另一个实施例提供的打印机连接状态的检测方法的流程图;
图3示出了本发明实施例提供的打印机连接状态的检测装置的结构示意图;
图4示出了本发明实施例提供的计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
图1示出了本发明实施例提供的打印机连接状态的检测方法的流程图。如图1所示,该方法包括以下步骤:
步骤s110:根据状态查询指令适用的打印机的型号信息设置打印机白名单。
其中,打印机白名单中存储的是支持状态查询指令的打印机的信息,例如,打印机白名单中记录打印机信号。
步骤s120:根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;若是,则执行步骤s130;若否,则执行步骤s140。
本发明实施例,通过在待打印设备中对目标打印机进行连接状态的检测,以确定待打印设备与目标打印机之间的连接是否异常。其中,待打印设备是指需要与目标打印机建立连接并向目标打印机发送打印任务以完成打印的设备。例如,需要将电脑中的文件通过打印机a打印出来,则电脑为待打印设备,打印机a即为目标打印机。
具体地,当判定目标打印机包含在打印机白名单中时,则执行步骤s130,以通过向该目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态;反之,当判定目标打印机不包含在打印机白名单中时,则表明目标打印机不支持状态查询指令,此时执行步骤s140,以弥补状态查询指令进行打印机连接状态检测时的不支持问题。
步骤s130:向该目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态。
步骤s140:向目标打印机发送预设的打印测试任务,根据所述打印测试任务的执行结果确定目标打印机的连接状态。
具体地,向目标打印机发送写打印机任务,该写打印任务不同于打印队列中的打印任务,该预设的打印测试任务通常为向目标打印机写入少量特定字符的任务,其中,该特定字符为不会影响打印出的小票内容的简单字符。通过向目标打印机预设的打印测试任务,以利用少量的、且不影响打印出的小票内容的特定字符实现对目标打印机的连接状态的高效、准确检测。在本发明实施例中,不对特定字符的具体类型进行限定,实际实施时,凡是不影响小票内容的简单字符均可作为特定字符,例如,特定字符可以为空白字符、换行字符、制表字符、下划线字符、上划线字符、虚线字符、双划线字符等等;以及,在本发明实施例中,不限定特定字符的具体数量,实际实施时,本领域技术人员可灵活设置,优选地,特定字符的数量为少于小票的一行字符的数量。
以及,预设的测试打印任务的执行结果可反映出向目标打印机写入特定字符的过程是否正常、以及反映出写入的时长,基于此,在向目标打印机发送预设的打印测试任务后,接收系统回抛的执行结果,以确定目标打印机的连接状态。
本发明的上述实施例方案,由待打印设备来执行,具体可由待打印设备中专用于连接状态检测的检测模块来执行。
根据本实施例提供的打印机连接状态的检测方法,通过设置打印机白名单,并判断目标打印机是否在打印机白名单中,若在其中,则利用状态查询指令对目标打印机的连接状态进行检测;若不在其中,则通过向目标打印机发送预设的打印测试任务,并根据回抛的执行结果确定目标打印机的连接状态。由此可见,本实施例方案,可在利用状态查询指令进行连接状态检测的基础上,对于不支持状态查询指令的打印机,通过向目标打印机发送预设的打印测试任务,使目标打印机执行简单字符的写入操作,并根据执行结果对目标打印机的连接状态来进行有效的检测,使得打印机连接状态的检测不再受打印机型号以及生产厂家的限制,可以适用于各种各样的打印机;以及,该预设的打印测试任务也不会造成打印机的堵塞,可以快速、准确的完成检测。
图2示出了本发明另一个实施例提供的打印机连接状态的检测方法的流程图。在本实施例中,以预设的打印测试任务为写入空白字符的写打印任务进行说明。如图2所示,该方法包括以下步骤:
步骤s210:根据状态查询指令适用的打印机的型号信息设置打印机白名单。
步骤s220:根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;若否,则执行步骤s230,若是,则执行步骤s250。
步骤s230:对打印队列进行监控,根据监控结果判断是否触发预检测,若是,向目标打印机发送写入n个空白字符的写打印任务。
其中,打印队列是指待打印设备中存放打印任务的队列。
具体地,对待打印设备中的打印队列进行监控,可以得到打印队列中打印任务的情况,例如,是否存在打印任务,打印任务的数量等,基于此,判断是否触发预检测,该预检测是指在向目标打印机发送打印任务之前、对目标打印机的连接状态的检测。需要在此说明的是,在本发明中,并不限定预检测的具体触发方式,在具体实施时,本领域技术人员可根据预检测的需求进行灵活设定。可选的,可根据打印队列中打印任务的有无变化情况进行判断,或者,可根据打印队列中打印任务的数量多少进行判定。
进一步的,以预设时间间隔监控该打印队列,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则判定触发预检测,若否,则持续进行监控。其中,待打印设备中的检测模块以预设时间间隔对打印队列进行监控,监控打印队列中打印任务的有无,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则表明从前一监控时刻到当前时刻打印队列中的打印任务发生了从无到有的变化;若否,则表明可能的情况包括:从前一监控时刻到当前时刻打印队列中一直存在或者不存在打印任务、或者从前一监控时刻到当前监控时刻打印队列中的打印任务发生了从有到无的变换。在上述判断结果为是或者为否的所有情况中,仅在判断结果为是时,可认为在空闲了一段时间后,有新的打印任务到来了,此时则判定触发预检测并执行预检测;反之,则持续进行监控。
通过上述方式判断是否触发预检测,可以在一批连续的打印任务被处理之前,触发进行一次预检测,使得在开始大量打印任务之前通过写入少量的空白字符来完成目标打印机的连接状态的检测,提高检测的效率。举例来说,前一次监控到打印队列中不存在打印任务,而当前监控到打印队列中存在打印任务,则触发预检测,而此后若连续监控到打印队列中的打印任务,不触发预检测,进而实现了仅在批量打印任务前进行预检测。
更进一步的,当判定触发预检测,则向目标打印机发送写打印任务,以进行连接状态的检测。其中,读取打印任务中打印小票的宽度信息,设置与该宽度信息一致的空白字符的数量,检测模块读取出宽度信息,不同的宽度信息对应的小票每行能容纳的字符数量是不同的,设置与宽度信息一致的空白字符的数量,并向目标打印机发送写入该数量的多个空白字符的写打印任务,则可以刚好写入一行的空白字符,尽量减少对打印出的小票中内容的影响。举例来说,宽度信息为58毫米,一行可容纳16个字符,则设置空白字符的数量为16;宽度信息为80毫米,一行可容纳32个制度,则设置空白字符的数量为16。
步骤s240:接收该写打印任务的执行结果;根据该执行结果确定目标打印机的连接状态;其中,若执行结果为写入异常、和/或等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态。
具体地,在向目标打印机发送写打印任务后,待打印设备的打印sdk运行的系统根据写入情况回抛执行结果,当执行结果为写入异常,即n个空白字符未写入成功,和/或,写入n个空白字符的等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态;若执行结果为写入正常、且等待时间未超过预设时长,则确定目标打印机的连接状态为连接正常状态。
并且,若确定目标打印机的连接状态为连接正常状态,则启动打印任务的打印处理,即对打印队列中的打印任务进行处理;或者,若确定目标打印机的连接状态为连接异常状态,则执行目标打印机的重连操作。
步骤s250:向所述目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态。
需要在此说明的是,本实施例主要以预设的打印测试任务为写入空白字符为例进行说明,但是实际实施时,可将空白字符用其它简单字符代替,例用换行字符、制表字符、下划线字符、上划线字符、虚线字符、双划线字符等来代替,其实施原理及过程同空白字符,本文中不再赘述。
根据本实施例提供的打印机连接状态的检测方法,以预设时间间隔监控打印队列,并在本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务触发预检测,进而在对新一批的打印任务进行打印之前,对目标打印机的连接状态进行预检测,减少连续打印任务的打印过程中、或者在不存在打印任务时的预检测,提高预检测的针对性;以及,当判定触发预检测时,通过读取打印小票的宽度信息来设置空白字符的数量,并向目标打印机发送写入该数量的多个空白字符的写打印任务,使得写入的空白字符减少对打印出的小票内容的影响;并且,对目标打印机是否可支持状态查询指令进行判断,并对不支持的目标打印机利用写打印任务进行连接状态的检测,进而弥补状态查询指令进行检测的适用性不足的问题。由此可见,本实施例方案,通过写打印任务对目标打印机的连接状态进行检测,可以适用于对各种打印机的连接状态进行检测;并且,通过写入空白字符进行检测不会造成打印机阻塞,较为安全,同时也不会影响打印小票的内容。
图3示出了本发明实施例提供的打印机连接状态的检测装置的结构示意图。如图3所示,该装置包括:
设置模块310,适于根据状态查询指令适用的打印机的型号信息设置打印机白名单;
第一判断模块320,适于根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;
检测模块330,适于若包含在打印机白名单中,则向所述目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态;若不包含在打印机白名单中,则向目标打印机发送预设的打印测试任务,根据所述打印测试任务的执行结果确定目标打印机的连接状态。
在一种可选的实施方式中,所述装置还包括:
监控模块,适于对打印队列进行监控,根据监控结果判断是否触发预检测;
所述检测模块进一步适于:若触发预检测,则向目标打印机发送预设的打印测试任务。
在一种可选的实施方式中,所述监控模块进一步适于:
以预设时间间隔监控所述打印队列,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则判定触发预检测。
在一种可选的实施方式中,所述检测模块进一步适于:向所述目标打印机发送写入n个空白字符的写打印任务。
在一种可选的实施方式中,所述检测模块进一步适于:
读取打印任务中打印小票的宽度信息,设置与所述宽度信息一致的空白字符的数量;
向目标打印机发送写入所述数量的多个空白字符的写打印任务。
在一种可选的实施方式中,所述检测模块进一步适于:若执行结果为写入异常、和/或等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态。
在一种可选的实施方式中,所述检测模块进一步适于:若所述执行结果为写入正常、且等待时间未超过预设时长,则确定目标打印机的连接状态为连接正常状态。
在一种可选的实施方式中,所述装置还包括:启动模块,适于若确定目标打印机的连接状态为连接正常状态,则启动打印任务的打印处理;或者,
重连模块,适于若确定目标打印机的连接状态为连接异常状态,则执行目标打印机的重连操作。
本发明实施例提供了一种非易失性计算机存储介质,所述计算机存储介质存储有至少一可执行指令,该计算机可执行指令可执行上述任意方法实施例中的打印机连接状态的检测方法。
图4示出了本发明实施例提供的计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图4所示,该计算设备可以包括:处理器(processor)402、通信接口(communicationsinterface)404、存储器(memory)406、以及通信总线408。
其中:处理器402、通信接口404、以及存储器406通过通信总线408完成相互间的通信。通信接口404,用于与其它设备比如客户端或其它服务器等的网元通信。处理器402,用于执行程序410,具体可以执行上述用于计算设备的打印机连接状态的检测方法实施例中的相关步骤。
具体地,程序410可以包括程序代码,该程序代码包括计算机操作指令。
处理器402可能是中央处理器cpu,或者是特定集成电路asic(applicationspecificintegratedcircuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个cpu;也可以是不同类型的处理器,如一个或多个cpu以及一个或多个asic。
存储器406,用于存放程序410。存储器406可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
程序410具体可以用于使得处理器402执行以下操作:
根据状态查询指令适用的打印机的型号信息设置打印机白名单;
根据目标打印机的型号信息判断目标打印机是否包含在打印机白名单中;若是,向所述目标打印机发送状态查询指令并根据查询结果确定目标打印机的连接状态;
若否,向所述目标打印机发送预设的打印测试任务,根据所述打印测试任务的执行结果确定目标打印机的连接状态。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
对打印队列进行监控,根据监控结果判断是否触发预检测;
若触发预检测,则向目标打印机发送预设的打印测试任务。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
以预设时间间隔监控所述打印队列,判断是否本次监控结果为存在打印任务、且前一次监控结果为不存在打印任务,若是,则判定触发预检测。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
向所述目标打印机发送写入n个空白字符的写打印任务。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
读取打印任务中打印小票的宽度信息,设置与所述宽度信息一致的空白字符的数量;
向目标打印机发送写入所述数量的多个空白字符的写打印任务。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
若执行结果为写入异常、和/或等待时间超过预设时长,则确定目标打印机的连接状态为连接异常状态。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
若所述执行结果为写入正常、且等待时间未超过预设时长,则确定目标打印机的连接状态为连接正常状态。
在一种可选的方式中,所述程序410使所述处理器执行以下操作:
若确定目标打印机的连接状态为连接正常状态,则启动打印任务的打印处理;或者,若确定目标打印机的连接状态为连接异常状态,则执行目标打印机的重连操作。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明实施例的内容,并且上面对特定语言所做的描述是为了披露本发明实施例的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明实施例并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明实施例要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一些或者全部部件的一些或者全部功能。本发明实施例还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明实施例的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明实施例进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明实施例可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。