用于通信与介质处理装置相关的数据的方法和设备与流程

文档序号:17439210发布日期:2019-04-17 04:32阅读:135来源:国知局
用于通信与介质处理装置相关的数据的方法和设备与流程

本发明一般地涉及介质处理装置,更具体地涉及用于通信与介质处理装置相关的数据的方法和设备。



背景技术:

示例介质处理装置包括在介质上产生标记的部件。与介质处理装置相关的实体(比如负责维护和/或管理介质处理装置的人或机器)受益于具有表示例如某些部件的状况、标记产生性能、供应的消耗和/或任何其他所需信息的数据。

附图说明

图1是表示根据本公开的教导所构造的示例介质处理装置的框图。

图2是图1的示例介质处理装置的示例实现方式的透视图。

图3是图2的示例介质处理装置的内部部件的侧视图。

图4是表示图1的介质处理装置和根据本公开的教导所构造的打印机观察服务器的示例实现方式的框图。

图5是表示与图4的示例相关的示例通信的消息示图。

图6是表示可被执行来实现图1和/或图4的示例监视器的示例操作的流程图。

图7是能够执行指令以例如实现图1和/或图4的示例监视器、图1的示例打印控制器和/或操作系统、以及/或者图4的示例打印机观察服务器和/或分析引擎的示例逻辑电路的框图。

具体实施方式

本文联系介质处理装置来描述本公开的教导。然而,本公开的教导可应用于任何适当类型的装置,其执行一个或多个操作并且能够对与该装置的一个或多个操作和/或一个或多个其他方面有关的数据进行通信。例如,尽管下文联系打印机和与打印机部件相关的数据描述了本公开的教导,但本公开的教导可实现于:对标记(例如,条形码、qr码、存储在射频识别(rfid)应答器上的代码)进行成像和解释的扫描器、对射频(rf)传输进行接收和解释并基于接收到的传输来确定对象位置的定位系统的接收器、以及/或者执行一个或多个功能并能够对与该装置的一个或多个操作和/或一个或多个其他方面有关的数据进行通信的任何其他类型的装置。

在一些系统中,可通过未在网络上的机器访问网络上存在的介质处理装置(mpd)。即,mpd可被远程或外部机器(例如,与mpd不在同一网络上的机器,比如远程服务器)访问。对mpd的远程访问可涉及通过网络防火墙或通过创立虚拟专用网络(vpn)将mpd暴露于外部机器。在这种情况下,外部机器可能需要启动与mpd的连接,这通常产生有关网络防火墙的问题。例如,网络防火墙通常被配置为仅允许传出连接请求,因此会使得来自外部机器的连接请求被拒绝。替代地,网络防火墙可将外部连接请求视为非标准互联网连接并阻止该连接。建立这些外部或远程连接可能需要改变网络防火墙的设置以允许这种连接,这会引起安全问题(例如,通过远程连接暴露mpd的控制)。

为了在无需改变网络安全性设置(例如防火墙设置)并且无需创立vpn的情况下实现与外部机器(例如位于云中的服务器)的安全连接,一些mpd被配置为启动与外部机器的连接,并随后建立与外部机器的直到例如mpd被关闭为止的持久连接。mpd可被配置为使用数据通信协议或者诸如超文本传输协议(http)或安全超文本传输协议(https)之类的请求-响应协议来启动与外部机器的连接,并请求随后将连接转换为超文本标记语言(html)5网络套接字协议(websocket)连接(由互联网工程任务组rfc6455定义)。这种websocket连接可以允许mpd和远程服务器进行通信,就像是mpd和外部机器连接在同一防火墙之后(比如通过传统的传输控制协议(tcp)raw端口(例如端口9100))那样。

websocket连接可以提供在单个连接(比如tcp连接)上的全双工通信信道。这种连接是双向的,从而允许任一侧在数据变得可用时传送数据。另外,这种连接可以允许使用诸如java脚本对象表示法(javascriptobjectnotation,json)或zebrasetgetdo(sgd)之类的各种公共或专有格式或语言来传送数据。值得注意的是,当实现或允许在这种持久连接上进行mpd的控制时,获得了对通信信道的访问的恶意行动者可以控制mpd的一个或多个操作。因此,mpd与(多个)外部机器之间的持久连接会带来安全性挑战。

本文公开的示例系统、方法和设备有效且安全地实现了与mpd至例如外部机器(比如远程服务器)相关的数据的通信。如下文详细描述的那样,本文公开的示例在mpd与一个或多个外部机器之间建立了多个持久连接,其中持久连接中的至少一个具有一个或多个独有的限制。在本文公开的一些示例中,在mpd与第一外部机器之间建立了第一持久连接(例如websocket)以允许第一外部机器管理和/或控制mpd的某个(某些)操作。在本文公开的示例中,第一外部机器可被称为管理机器(例如打印管理服务器)。这个(这些)操作的管理和/或控制例如包括改变与硬件(例如打印头、电动机和/或传感器)相关的设置的能力、和/或将特定类型的命令(例如打印命令)发送至mpd的能力。这样,第一持久连接在本文中有时也被称为操作控制连接。当介质处理装置是热敏打印机时,示例操作控制连接使得管理机器能够例如通过发送打印命令或指示来控制打印操作、和/或通过发送打印设置的新值来修改打印设置。

另外,本文公开的示例在mpd与第二外部机器之间建立了第二持久连接(例如websocket),以使得第二外部机器能够通过接收表示mpd的一个或多个方面的观察数据来观察mpd的一个或多个方面。在本文公开的示例中,第二外部机器可被称为观察机器(例如打印机观察服务器)。尽管本文公开的示例描述了第一和第二外部机器,但本文公开的示例可以应用于处理管理和观察功能的单个外部机器。mpd的观察例如包括将与mpd相关的期望观察数据告知mpd、以及通过第二持久连接从mpd接收观察数据。这样,第二持久连接在本文中有时也被称为观察数据连接。如下文详细描述的那样,本文公开的示例将通过观察数据连接的通信限制在特定类型的数据。此外,本文公开的示例限制了通过观察数据连接对特定类型的数据进行通信的方向。例如,在本文公开的一些示例中,观察数据连接在从mpd至观察机器的第一方向上仅允许第一和第二类型的数据,比如(1)表示配置文件的版本的发现分组(discoverypacket)和(2)表示mpd的方面的观察数据,并且观察数据连接在从观察机器至mpd的第二方向上仅允许第三类型的数据,比如新配置文件。替代地,在一些示例中,观察数据连接在从mpd至观察机器的第一方向上仅允许第一类型的数据(例如观察数据),并且观察数据连接在从观察机器至mpd的第二方向上仅允许第二类型的数据(例如新配置文件)。

此外,本文公开的示例防止了当存在与mpd相关的某些禁止状况(比如,优先于观察数据的打印操作的当前性能)时通过观察数据连接的通信。

值得注意的是,在本文公开的示例中,通过观察数据连接传送的通信均无法进行对mpd的操作控制。例如,当mpd为打印机时,与操作控制连接相反,本文公开的观察数据连接不允许对应的外部机器(即观察机器)控制打印操作(例如通过发送打印命令和/或修改打印设置)。

图1示出包括根据本公开的教导所构造的示例mpd100的系统。图1所示的示例mpd100为打印机。然而,如上所述,本公开的教导可应用于能够执行一个或多个操作并对与装置的一个或多个方面相关的数据进行通信的任何装置。

图1的示例mpd100包括被配置为控制mpd100的部件的操作系统102。在图1所示的示例中,通过逻辑电路(例如一个或多个处理器、微处理器、协处理器和/或集成电路(例如asic(专用集成电路)或fpga(现场可编程门阵列)))来执行操作系统102。示例操作系统102实现打印操作控制器104,其被配置为执行由打印硬件106所实现的打印功能。在图1的示例中,打印硬件106包括通过mpd100来驱动介质的电动机108、在介质上产生标记的打印头110、以及对mpd100的位置、状态和/或消耗品供应(例如介质和/或墨带)量进行检测的供应传感器112。

图1的示例打印操作控制器104接收来自存储器114(例如固定的或可移除的易失性和/或非易失性存储器)和/或外部数据源(例如主机装置、主机系统、网络装置或可移除存储装置)的表示打印任务(例如打印作业)的数据。在图1所示的示例中,打印控制器104对接收到的数据进行处理以使得数据可被打印头110用于在由电动机108驱动通过打印头110的介质上产生标记。例如,图1的打印操作控制器104利用打印引擎基于接收到的数据(例如,直接地或基于位图图像)产生打印数据行。在图1的示例中,打印操作控制器104将打印数据行(或可用于在介质上打印标记的任何其他类型的数据)和控制信号(例如锁存信号和选通信号)传送至被配置为对打印头110的一个或多个操作进行控制的打印头驱动器。打印头驱动器将打印数据行和控制信号转化为根据接收到的数据在介质上产生标记的打印头110的物理操作(例如,通过选择加热元件而施加热)。

在所示示例中,打印操作控制器104管理存储器114中存储的打印设置116。具体地,示例打印操作控制器104根据例如用户输入和/或以其他方式在mpd100处(例如,从下文所述的外部机器)接收到的指令来更新和/或以其他方式修改打印设置116。另外,示例打印操作控制器104在执行与打印硬件106相关的指令时参考打印设置116。即,图1的示例打印操作控制器104根据打印设置116控制打印硬件106的操作。例如,图1的打印设置116包括电动机108的一个或多个速度、打印头110的一个或多个电输入值、和/或供应传感器112的一个或多个捕获速率。因此,图1的示例打印操作控制器104使得mpd100本身的用户和/或外部机器(例如远程服务器)能够控制mpd100的打印操作(例如打印命令和/或打印设置值)。

在一些示例中,通过mpd100与外部机器之间的操作控制连接对外部机器(例如打印管理服务器)提供对示例打印操作控制器104的访问并因此对打印硬件106进行控制。在一些示例中,由诸如websocket之类的持久的双工连接来实现提供对打印操作控制器104的访问的操作控制连接。下面联系图4详细描述操作控制连接的示例实现方式。

图1的示例操作系统102实现了监视器118,其被配置为根据本公开的教导对与mpd100相关的观察数据进行收集和通信。图1的示例监视器118根据监视器配置文件120收集观察数据。图1的示例监视器配置文件120例如由mpd100的存储器114中存储的.ini文件来实现。图1的示例监视器配置文件120定义了监视器118将要采集哪个数据。例如,监视器配置文件120可以使得监视器118采集表示mpd100中剩余的未使用介质的量或未使用墨带的量的数据。附加地或替代地,示例监视器配置文件120可以使得监视器118采集表示打印头110的加热元件的(多个)电特性的数据。附加地或替代地,示例监视器配置文件120可以使得监视器118采集表示mpd100在介质上产生标记的平均打印速度(例如按英寸每秒(ips))的数据。附加地或替代地,示例监视器配置文件120可以使得监视器118采集表示电源状态的数据或表示mpd100的功耗的数据。附加地或替代地,示例监视器配置文件120可以使得监视器118采集表示正执行的特定打印作业的数据以及表示何时执行了打印作业的时间戳。附加地或替代地,示例监视器配置文件120可以使得监视器118采集表示对mpd100进行的修改的数据,比如,例如打印设置116中的一个。值得注意的是,不同类型的实体可能关注不同类型的观察数据,因此监视器配置文件120可被不同的实体进行不同的配置。因此,图1的示例监视器118可以为不同的实体采集与mpd100相关的不同观察数据。

图1的示例监视器配置文件120定义了对所定义的数据进行采集和/或通信的间隔。例如,监视器配置文件120可以使得监视器118对每种类型的观察数据每两(2)分钟或每五(5)分钟采集一次。替代地,示例监视器配置文件120可以使得监视器118对第一类型的观察数据(例如mpd中剩余的介质的量)每一(1)分钟采集一次,并对第二类型的观察数据(例如平均电动机速度)每两(2)分钟采集一次。

在一些示例中,mpd100包括对观察数据的采集和/或通信的禁止或限制。例如,图1的mpd100可以在对诸如打印作业的接收之类的优先任务保留通信带宽时限制由监视器118采集的观察数据的通信。附加地或替代地,示例mpd100可以使得监视器118响应于安全警告停止观察数据的采集和/或通信。图1的示例mpd100包括撤除特征,其使得与mpd100相关的实体能够禁用由示例监视器118执行的观察数据的采集和通信。

在图1所示的示例中,监视器配置文件120由例如mpd100的制造商初始地配置。图1的示例监视器配置文件120被初始地配置了要对其进行观察数据的通信的外部机器的位置标识符(例如电子地址)。在一些示例中,监视器配置文件120使得监视器118响应于mpd100通电和撤除特征指示用户尚未进行撤除而开始采集和通信观察数据。另外,响应于通电和用户未撤除,监视器118将发现分组发送至例如对其进行观察数据的通信的外部机器(例如打印机观察服务器)。在所示示例中,发现分组表示监视器配置文件120的版本。在一些示例中,监视器配置文件120可被例如接收发现分组的外部机器进行更新。例如,外部机器可以确定监视器配置文件120的当前版本将被更新(例如,如果与外部机器相关的用户期望替代的观察数据,而不是由当前监视器配置文件120所提供),并且外部机器向mpd100发送新的或更新后的版本以用作监视器配置文件120。如果监视器配置文件120的新版本或更新后的版本是可信的(例如,由验证后的签名所指示),则图1的示例监视器118替代或更新监视器配置文件120。

在图1的示例中,监视器118通过mdp100与(多个)外部机器之间的观察数据连接将所采集的观察数据通信至一个或多个外部机器。在一些示例中,示例监视器118使用的观察数据连接由持久的双工连接(比如websocket)实现。在一些示例中,图1的示例监视器118使用的观察数据连接是与提供了对打印操作控制器102的访问的操作控制连接相分离的和不同的连接。值得注意的是,在一些示例中,监视器118采集的观察数据不能通过操作控制连接通信,并且打印操作控制器102不能通过观察数据连接进行访问。下面参照图4详细描述监视器118和对应观察连接的示例实现方式。

图2示出图1的mpd100的示例实现方式。图2的示例mpd100是独立的单元。然而,本公开的教导可用于集成mpd中,比如,例如扫描仪、自动取款机(atm)、售货亭、或销售点装置。在图2所示的示例中,mpd100采用了热敏打印技术(例如直接热敏打印技术、热转印技术、和/或染料热升华打印技术)以在介质上产生标记。例如,图2的mpd100可以是热敏标签打印机。然而,本公开的教导可与任何适当的打印技术相关地使用。

图2的示例mpd100包括具有门104的外壳202。如图2中所描绘的,门204处于阻止接近内部部件的关闭的操作位置。除了防止污垢、尘埃和异物进入mpd100的内腔并且潜在地污染消耗品或电子器件,门204还可以减小噪声并且防止无意中触碰到敏感部件。图2的示例门204通过铰链206铰接至mpd100的框架,使得门204可被开启以提供对mpd100的内部部件的接近。如下文联系图3所述,框架包括安装了mpd100的一些部件的底座。例如,如下文联系图3所述,安装至底座的打印机构在由安装至底座的部件馈送至打印机构的介质上产生标记。打印机构在沿着外壳202的正面210布置的出口208处输出介质。

图3描绘出在移除了门204的情况下图2的示例mpd100的一部分的侧视图。当开启门204时,可得到与图3类似的示图。如图3所示,底座300支撑内部部件,内部部件包括介质心轴(未示出)、多个导向部件(例如引导介质和/或带的辊子)、带供应轴302、带卷取轴304、传送传感器306、压板组件308、和打印机构310。在图3所示的示例中,打印机构310包括支撑结构312和遮挡打印机构310的可移除盖件314和316。介质心轴(未示出)被配置为对馈送至打印机构310并从出口208出去的一卷介质进行保持。

示例打印机构310包括图1的打印头110。示例打印头110具有被称为点部件的多个加热元件。打印头110的点部件由打印头驱动器控制,打印头驱动器通过与点部件通信的逻辑电路来实现。例如,打印头驱动器被实现为可编程门阵列或通过能够执行存储器中存储的机器可读指令的处理器来实现。打印头驱动器根据从打印控制器104接收到的数据控制信号选择性地对打印头110的点部件供能,以通过电动机108改变被馈送通过打印头110的介质的外观。图4的示例打印头110的点部件被线性布置。基于待打印内容,可以开启或关闭给定行的不同点部件。例如,如果要在介质上打印一条实线,那么将打印头110的所有点部件开启,以将该行打印为点图像的实线。对打印头点部件供能被称为选通点部件,并且针对特定打印事件选通点部件所需的时间被称为选通时间。可通过相对于打印头110移动介质(例如通过电动机108)并且改变哪些点部件开启而哪些点部件关闭,来打印给定打印作业的每一行。打印介质的速度通常按“ips”来测量,其可与打印作业中打印各个行所需的行选通时间有关。“点部件状态”是指是否将对相应点部件供能。“开启”或“1”的点部件状态表示相应点部件将被供能,而“关闭”或“0”的点部件状态表示不应对相应点部件供能。根据从打印控制器104接收到的控制信号来选通打印头110的点部件。

当图3的mpd100被配置用于热转印时,将热转印介质安装至介质心轴,并且将墨带安装至带供应轴302。即,带供应轴302被配置为保持一卷未使用的带。墨带从带供应轴302馈送至打印机构310,打印机构310使用墨带在来自介质心轴的被同时馈送至打印机构310的介质上产生标记。使用后的带行进通过打印机构310并被引导至带卷取轴304。即,带卷取轴304被配置为保持一卷使用后的带。图3的示例打印机构310通过图1的打印头110在由压板组件308的辊子与打印头110所形成的辊隙处在介质上产生标记。具体地,打印机构310通过打印头驱动器选择性地对打印头110的加热元件(例如点部件)供能以按照例如接收到的打印行数据对墨带施加热。在热转印介质上与打印头110的被供能的加热元件接近的点处,墨水从墨带转印至热转印介质,从而在介质上产生表示打印行数据的标记。根据介质的类型,墨带的墨水被转印至介质需要焦耳每平方英寸或瓦特*秒每平方英寸的阈值。

当mpd100被配置用于直接热敏打印时,将直接热敏介质(例如,包括(多个)热敏染料的标签)安装至介质心轴(未示出)。将直接热敏打印介质(例如热变色纸)设计和制造为使得当对介质施加阈值量的能量时,在介质中发生引起外观变化(例如颜色从白色变为黑色)的化学反应。在图3的示例中,直接热敏介质从介质心轴被馈送至打印机构310。在这样的情况中,直接热敏介质没有伴随着通过打印机构310的墨带。相反,在直接热敏模式下,打印头110选择性地直接将热施加至馈送通过打印头110的直接热敏介质,从而引起在直接热敏介质上的选择位置处的介质外观的变化。根据介质的类型,在直接热敏介质中发生化学反应从而引起介质的一个或多个部分的外观变化需要焦耳每平方英寸或瓦特*秒每平方英寸的阈值。

图4示出与根据本公开教导而构造的打印机观察服务器400的示例实施方式进行通信的图1的mpd100的示例实施方式。尽管图4的示例包括打印机观察服务器400,但本公开的教导可被实现为使示例mpd100与任何适当类型的外部装置进行安全通信。

在图4的示例中,在mpd100与打印管理服务器401之间建立第一持久连接。图4的示例第一持久连接在本文中称为操作控制连接402。在图4的示例中,操作控制连接402由通过认证过程建立的相应websocket来实现。为了执行认证过程,示例mpd100的服务器认证器404与打印管理服务器401的端点装置认证器406协作。具体地,当mpd100被连接至网络并通电时,服务器认证器404使用数据通信协议或请求-响应协议将连接请求发送至打印管理服务器401,比如http或https请求(例如,通过tcp端口80或443)。在一些示例中,使用存储在mpd100的存储器114中的定义的变量或设置来识别一个或多个外部装置(例如远程服务器)。连接请求向打印管理服务器401指示mpd100期望使用传输层安全性(tls)或安全套接字层(ssl)来提供mpd100与打印管理服务器401之间的安全信道。在所示示例中,连接请求还指示该连接应当被更新至websocket连接,其包括一个或多个双向持久通信信道。这种连接请求被认作或当作标准网络浏览器请求(比如网络浏览器与网站之间的通信)。端点装置认证器406指示打印管理服务器401是否接受了该连接请求。

如果端点装置认证器406指示该连接请求被拒绝,则mpd100产生错误消息。如果端点装置认证器406接受了连接请求,则端点装置认证器406向mpd100发送安全证书和连接参数。在一些示例中,安全证书仅在安全证书被指定的证书授权中心(ca)(如mdp100的制造商)签署的情况下是有效的。使用指定ca签署的证书以确保mpd100仅连接至信任和认可的外部装置。服务器认证器404评价接收到的安全证书。例如,服务器认证器404例如通过验证证书中的dns名与用于发送连接请求的url相匹配来分析安全证书中的数据以确保mpd100正连接至期望的外部装置。在一些示例中,服务器认证器404还评价安全证书以确保该安全证书由期望的ca(比如mpd100的制造商)签署。

如果服务器认证器404不接受从打印管理服务器401接收到的安全证书,则mpd100产生错误消息。如果服务器认证器404接受了从打印管理服务器400接收到的安全证书,则服务器认证器404将mpd100上存储的安全证书发送至打印管理服务器401以对打印管理服务器401提供认证。端点装置认证器406评价从mpd100接收到的安全证书以确保该安全证书由期望的ca签署并且mpd100是打印管理服务器401期望进行连接的mpd中的一个(例如,特定类型的mpd、特定制造商的mpd、或位于特定网络上的mpd)。

如果端点装置认证器406接受了从mpd100接收到的安全证书,则例如通过打印管理服务器401将连接更新至websocket协议来建立图4的操作控制连接402。由于安全持久的操作控制连接402已到位,mpd100和打印管理服务器401能够使用例如json和/或sgd互相发送数据。

在一些示例中,mpd100和打印管理服务器401在操作控制连接402上建立多个不同的通信信道。在图4所示的示例中,在操作控制连接402上建立第一通信信道408,并将其专用于与mpd100的打印设置116相对应的数据的交换。如前所述,mpd100的打印操作控制器102使得能够对打印设置116进行外部访问。在图4的示例中,打印管理服务器401包括打印操作指令器410,其使用第一通信信道408以指令打印操作控制器102例如对打印设置116进行修改。值得注意的是,在图4的示例中,第一通信信道408被限制在使得打印操作指令器410能够通过打印操作控制器102修改打印设置116的数据类型。这样,图4的第一通信信道408在本文中可被称为打印设置信道。

在图4所示的示例中,在操作控制连接402上建立第二通信信道412,并将其专用于由打印管理服务器401发送至mpd100的打印命令。如上所述,mpd100的打印操作控制器102使得能够外部访问打印硬件106的一个或多个功能。在图4的示例中,打印操作指令器410使用第二通信信道412来指令打印操作控制器102例如通过打印硬件106执行一个或多个打印功能(例如执行打印作业)。值得注意的是,在图4的示例中,第二通信信道412限制于使得打印管理服务器401能够控制mpd100的打印操作的数据类型。这样,图4的第二通信信道412在本文中可被称为打印操作信道。

在图4所示的示例中,在mpd100与打印机观察服务器400之间建立在本文中被称为观察数据连接414的第二持久连接。在图4的示例中,观察数据连接414与操作控制连接402相分离和独立。在图4的示例中,由通过认证过程建立的websocket实现观察数据连接414。因此,图4的示例操作控制连接402由第一websocket实现,并且图4的示例观察数据连接414由不同于且独立于第一websocket的第二websocket实现。替代地,操作控制连接402由一种类型的持久连接实现,并且观察数据连接414由另一种不同类型的持久连接实现。

在所示示例中,通过由服务器认证器404和打印管理服务器401的端点装置认证器406所实现的上述认证过程来对观察数据连接414进行认证。然而,在所示示例中,打印机观察服务器400包括以与打印管理服务器401的端点装置认证器406相似的方式对mpd100进行认证的端点装置认证器415。在一些示例中,通过认证过程的第一会话对操作控制连接402进行认证,并通过认证过程的不同的第二会话对观察数据连接414进行认证。替代地,观察数据连接414和操作控制连接402可各自具有不同的认证过程。

在图4的示例中,监视器118使用观察数据连接414将例如表示mpd100的一个或多个状态和/或性能的数据通信至打印机观察服务器400的观察器416。在图4所示的示例中,观察数据连接414包括专用于由监视器118提供至观察器416的观察数据的通信信道418。值得注意的是,观察数据连接414被防止对能够控制或改变mpd100的任何操作的数据进行通信。例如,观察数据连接414被防止通信对mpd100的打印操作(例如打印命令或打印设置修改)进行控制的数据。相反,观察数据连接414及其通信信道418被限制为通信由监视器118提供至观察器416的不能影响或控制mpd100的任何打印操作的观察数据。换句话说,监视器118和观察器416相对于mpd100的打印操作和打印功能性而言是非主动的(non-active)或被动的元件,而在操作控制连接402上通信数据的打印操作指令器410、打印操作控制器102和其他元件相对于mpd100的打印操作和打印功能性而言是主动(active)元件。

在图4所示的示例中,监视器118包括文件读取器420以确定监视器配置文件120的内容。图1的示例监视器配置文件120由制造商初始配置为包括用于采集和通信的观察数据的类型、对观察数据进行采集和/或通信的间隔、结合观察数据发送至打印机观察服务器400的签名、以及使得一旦mpd100通电就将观察数据传递至打印机观察服务器400的打印机观察服务器400的标识符(例如地址)。图4的示例文件读取器420得到监视器配置文件120的对应值。

图4的示例监视器118包括数据提供器422,其使用来自监视器配置文件120的所得到的值以适当间隔采集并存储适当的数据。另外,示例数据提供器422通过观察数据连接414根据监视器配置文件120的内容将所采集并存储的观察数据通信至观察器416。在一些示例中,数据提供器422对观察数据追加签名以使得观察器416可以验证接收到的观察数据的真实性。

在一些示例中,在将观察数据通信至观察器416之前,数据提供器422确定在mpd100上是否存在一个或多个禁止状况。一个示例禁止状况是mpd100当前正在接收和/或处理比将要通过观察数据连接414传递的观察数据通信更优先的打印指令。另一示例禁止状况是mpd100正在发送超过阈值的观察数据量和/或mpd100正在以超过阈值的速率发送观察数据。如果数据提供器422确定存在至少一个禁止状况,则数据提供器422停止观察数据的通信直到不存在禁止状况为止。在一些示例中,在mpd100的存储器114的一部分中定义禁止状况。

图4的示例监视器118包括文件更新器424,其更新、替换、或以其他方式修改监视器配置文件120。在图4的示例中,例如将监视器配置文件120的版本指示符提供至观察器416。具体地,一旦建立了观察数据连接414,示例文件更新器424就对观察器416的发现分组接收器426发送发现分组。由示例文件更新器424发送的发现分组向发现分组接收器426告知mpd100上的监视器配置文件120的当前版本。在图4的示例中,通过观察数据连接414将发现分组从mpd100传递至发现分组接收器426。

示例观察器416包括监视器配置文件更新器428,其基于接收到的发现分组确定监视器配置文件120的当前版本是否要更新(例如,修改或替换)。例如,从监视器118接收信息的一个或多个实体可能要求不同的观察数据和/或可能要求以不同间隔的观察数据。如果是这样,则监视器配置文件通信器428产生针对监视器配置文件120的更新和/或监视器配置文件120的新版本,并将其传递至mpd100。具体地,监视器配置文件通信器428从想要附加的或替代的观察数据的一个或多个实体接收输入,并基于接收到的输入产生监视器配置文件120的更新和/或新版本。在一些示例中,监视器配置文件120的更新和/或新版本包括或已被追加了由打印机观察服务器400产生的签名。

mpd100的示例文件更新器424接收监视器配置文件120的签署后的更新和/或新版本,并且,如果对应的签名是可信的,则修改监视器配置文件120的内容和/或删除旧版本并存储新版本。在图4所示的示例中,在根据从监视器配置文件更新器428接收到的更新修改了监视器配置文件120之后,文件更新器424将另一发现分组发送至打印机观察服务器400。图4的示例数据提供器422采集观察数据,并根据更新的和/或新的监视器配置文件120通过观察数据连接414将观察数据通信至打印机观察服务器400。

图4的示例监视器118包括撤除提供器430以使得与mpd100相关的实体能够撤除对观察数据的采集和/或通信。例如,撤除提供器430可通过接口向用户呈现选项,使得用户能够提供表示期望撤除的输入。附加地或替代地,撤除提供器430可以通过网络通信接收撤除指令。

在图4所示的示例中,打印机观察器服务器400将通过观察数据连接414采集到的观察数据提供至分析引擎432。图4的示例分析引擎432使用观察数据来产生例如与mpd100的一个或多个方面有关的一个或多个报告和/或警告。尽管图4的示例包括分析引擎432,但另外或替代的实体可设置有由图4的示例监视器118提供的观察数据。

图5是与图4的示例相关的示例消息示图。在图5的示例中,一旦建立了观察数据连接414,mpd100的文件更新器242就向打印机观察服务器400发送发现分组500,发现分组500是监视器配置文件120的当前版本的指示符。在图5的示例中,根据由文件读取器420读取的监视器配置文件120来初始地配置监视器118的数据提供器422以从mpd100的一个或多个元件采集观察数据502并将观察数据502通信至打印机观察服务器400。示例打印机观察服务器400将包括观察数据502和与发现分组500相关的数据的第一消息504发送至分析引擎432。分析引擎432产生第一报告506,并将第一报告506传递至一个或多个实体,比如,例如要求与mpd100有关的性能和/或状态数据的mpd100的拥有者。

在图5的示例中,观察器416的监视器配置文件更新器428确定监视器配置文件120将被更新,并将包括新的监视器配置文件508的第二消息508发送至mpd100。监视器118的文件更新器424通过将监视器配置文件120的当前版本替换为新的监视器配置文件120来进行响应。在所示示例中,文件更新器424将监视器配置文件120的当前版本替换为在第二消息508中接收到的新版本。

示例文件更新器424将表示监视器配置文件120的新版本的另一发现分组510发送至打印机观察服务器400。示例文件读取器420读取新的监视器配置文件120以确定采集哪个观察数据以及以什么间隔来采集观察数据。数据提供器422根据文件读取器420的发现结果来采集并通信观察数据512。这样,根据监视器配置文件120的一个版本将观察数据502采集并通信至打印机观察服务器400,并根据监视器配置文件120的另一版本将观察数据512采集并通信至打印机观察服务器400。

值得注意的是,在图5的示例中,通过观察数据连接414来通信发现分组500和510、观察数据502、包括监视器配置文件120的新版本的消息508、以及观察数据512。如上所述,防止图4的示例观察数据连接414通信诸如对图1的打印硬件104的操作进行控制的数据之类的任何其他类型的数据。

在图5的示例中,打印机观察服务器400向分析引擎432发送第三消息514,第三消息514包括根据监视器配置文件120的新版本采集的观察数据512以及发现分组510的信息。分析引擎432基于第三消息514产生报告516,并将报告516通信至例如提供了监视器配置文件120的新版本的实体。

在图5的示例中,打印管理服务器400的打印操作指令器410将包括打印设置116的修改的设置命令518发送至mpd100。替代地,示例打印操作指令器410可以向mpd100发送使得打印硬件104执行一个或多个打印功能的打印命令。在图5的示例中,打印操作控制器102根据接收到的设置命令518改变打印设置116。此外,示例打印操作控制器102根据修改后的打印设置116进行打印。这样,打印操作指令器410控制mpd100的打印操作。在图5的示例中,mpd100向打印管理服务器400发送确认消息520,其指示完成了对打印设置116的修改。

值得注意的是,通过操作控制连接402来对设置命令518和确认520进行通信。如上所述,在一些示例中,防止操作控制连接402通过观察数据连接414对由监视器118采集并通信的观察数据进行通信。

图6是说明由示例监视器118和/或更一般地由图1和图4的示例mpd100实现的示例方法的流程图。在图6的示例中,mpd100被通电(框600)。在图6的示例中,监视器118确定撤除提供器430是否已被用于禁用观察数据的采集和/或通信(框602)。如果是,则示例监视器118周期性地确定撤除选项是否不再被选择(框604),并且如果是不再被选择,则控制前进至框606。

当没有选择撤除选项或撤除选项已被取消选中时,监视器118的文件更新器424将发现分组传递至打印机观察服务器400(框606)。在所示示例中,发现分组表示当前存储在mpd100上的监视器配置文件120的版本。如下文所述,打印机观察服务器400可以发送指令以替换或以其他方式修改监视器配置文件120。例如,打印机观察服务器400可以确定由所传递的发现分组指示的监视器配置文件120的当前版本将被改变以使得监视器118采集并通信与mpd100的不同方面相关的数据。

监视器118的文件读取器420读取监视器配置文件120的内容以例如确定将采集哪种类型的观察数据以及以何种间隔采集观察数据(框608)。示例文件读取器420将结果提供至数据提供器422,数据提供器422采集识别的观察数据(框610)。示例数据提供器422确定(例如,从观察数据的最近一次传递起)是否已流逝了在监视器配置文件120中定义的报告时间间隔(框612)。如果尚未流逝该时间间隔,则数据提供器422继续采集观察数据(框610)。

如果已流逝了该时间间隔,则数据提供器422确定在mpd100上是否存在任何禁止状况(例如可用通信带宽不足或将要传递的观察数据的量超过了阈值)(框614)。如果存在至少一个禁止状况(框614),则数据提供器422继续采集观察数据(控制前进至框610)。如果不存在禁止状况(框614),则示例数据提供器422将采集的观察数据通过观察数据连接414传递至打印机观察服务器400(框616)。

在图6的示例中,文件更新器424确定监视器配置文件更新器428是否已向文件更新器424传递了监视器配置文件120的更新后的和/或新的版本。如果文件更新器424接收到这种数据,并且该数据是可验证为真实的(框618),则文件更新器424更新、替换、或以其他方式修改监视器配置文件120(框620)。控制随后前进至框604。

图7是表示一个示例逻辑电路的框图,该示例逻辑电路可被用于例如实现图1和/或图4的示例监视器118、图4的示例服务器认证器404、图1和/或图4的示例打印操作控制器102、图4的示例文件读取器420、图4的示例数据提供器422、图4的示例文件更新器424、图4的示例撤除提供器430、或更一般地图1和/或图4的示例mpd100。附加地或替代地,图7的示例逻辑电路可被用于实现图4的示例观察器416、图4的示例打印操作指令器410、图4的示例端点装置认证器406、发现分组接收器426、图4的监视器配置文件更新器428、和/或更一般地图4的示例打印机观察服务器400。图7的示例逻辑电路是处理平台700,其能够执行例如对由伴随本描述的附图的流程图所表示的示例操作进行实现的指令。如下所述,替代示例逻辑电路包括具体被配置用于执行由伴随本描述的附图的流程图所表示的操作的硬件(例如门阵列)。

图7的示例处理平台700包括处理器702,比如,例如一个或多个微处理器、控制器、和/或任何适当类型的处理器。图7的示例处理平台700包括处理器702(例如通过存储器控制器)可访问的存储器(例如易失性存储器、非易失性存储器)704。示例处理器702与存储器704交互以得到例如存储在存储器704中的与例如由本公开的流程图表示的操作相对应的机器可读指令。附加地或替代地,与流程图的示例操作对应的机器可读指令可被存储在一个或多个可移除介质(例如光盘、数字多功能盘、可移除的闪速存储器等)中,其可被耦接至处理平台700以提供对其上存储的机器可读指令的访问。

图7的示例处理平台700包括网络接口706以使得能够通过例如一个或多个网络与其他机器通信。示例网络接口706包括被配置为根据任何适当的(多个)协议操作的任何适当类型的(多个)通信接口(例如有线和/或无线接口)。

图7的示例处理平台700包括输入/输出(i/o)接口708以使得能够接收用户输入并将输出数据通信至用户。

上面的描述涉及附图的框图。由框图表示的示例的替代实现方式包括一个或多个附加的或替代的元件、过程和/或装置。附加地或替代地,示图的示例框中的一个或多个可被组合、划分、重新布置或省略。由示图的框表示的部件通过硬件、软件、固件、以及/或者硬件、软件和/或固件的任何组合来实现。在一些示例中,由框表示的部件中的至少一个通过逻辑电路来实现。如本文所使用的,术语“逻辑电路”在表达上被定义为这样的物理装置:其包括被配置为(例如通过根据预定配置的操作和/或通过执行所存储的机器可读指令来)控制一个或多个机器和/或执行一个或多个机器的操作的至少一个硬件部件。逻辑电路的示例包括一个或多个处理器、一个或多个协处理器、一个或多个微处理器、一个或多个控制器、一个或多个数字信号处理器(dsp)、一个或多个专用集成电路(asic)、一个或多个现场可编程门阵列(fpga)、一个或多个微控制器单元(mcu)、一个或多个硬件加速器、一个或多个专用计算机芯片、以及一个或多个片上系统(soc)装置。诸如asic或fpga之类的一些示例逻辑电路是用于执行操作(例如由本公开的流程图表示的操作中的一个或多个)的被专门配置的硬件。一些示例逻辑电路是执行机器可读指令以执行操作(例如由本公开的流程图表示的操作中的一个或多个)的硬件。一些示例逻辑电路包括被专门配置的硬件和执行机器可读指令的硬件的组合。

上面的描述涉及附图的流程图。流程图表示本文公开的示例方法。在一些示例中,由流程图表示的方法实现由框图表示的设备。本文公开的示例方法的替代实现方式可以包括附加的或替代的操作。此外,本文公开的方法的替代实现方式的操作可被组合、划分、重新布置或省略。在一些示例中,由流程图表示的操作通过存储在介质(例如有形的机器可读介质)上由一个或多个逻辑电路(例如处理器)执行的机器可读指令(例如软件和/或固件)来实现。在一些示例中,由流程图表示的操作通过一个或多个专门设计的逻辑电路(例如asic)的一个或多个配置来实现。在一些示例中,流程图的操作通过专门设计的(多个)逻辑电路与存储在介质(例如有形的机器可读介质)上由(多个)逻辑电路执行的机器可读指令的组合来实现。

如本文所使用的,术语“有形的机器可读介质”、“非暂时性机器可读介质”、和“机器可读存储装置”中的每一个在表达上被定义为其上可存储机器可读指令(例如,具有例如软件和/或固件形式的程序代码)的存储介质(例如,一盘硬盘驱动、数字多功能盘、光盘、闪速存储器、只读存储器、随机存取存储器等)。此外,如本文中所使用的,术语“有形的机器可读介质”、“非暂时性机器可读介质”、和“机器可读存储装置”中的每一个在表达上被定义为排除传播信号。即,如在本专利的任何权利要求中所使用的那样,术语“有形的机器可读介质”、“非暂时性机器可读介质”、和“机器可读存储装置”中的每一个均不能被解释为通过传播信号来实现。

如本文所使用的,术语“有形的机器可读介质”、“非暂时性机器可读介质”、和“机器可读存储装置”中的每一个在表达上被定义为在其上将机器可读指令存储任何适当的持续时间(例如,永久、一段较长的时间段(例如在与机器可读指令相关的程序正在执行的同时)、和/或较短的时间段(例如在机器可读指令被高速缓存的同时和/或在缓存过程期间))的存储介质。

尽管本文已公开了特定的示例设备、方法和制品,然而本专利的覆盖范围不限于此。相反,本专利覆盖了完全落入本专利权利要求范围之内的所有设备、方法和制品。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1