信息处理装置、其控制方法、存储介质及信息处理系统与流程

文档序号:14993498发布日期:2018-07-20 23:01阅读:301来源:国知局

本发明涉及信息处理装置、其控制方法、非暂时性计算机可读存储介质及信息处理系统。



背景技术:

当前提出了在多功能外围设备中使用语音、运动图像通信和远程操作的远程支持服务。远程支持服务使得呼叫中心能够直接告诉用户错误解决方法,并且在多功能外围设备中出现错误时解决错误而不需要维修人员前往现场。这使得能够缩短直至解决错误的时间。在这样的远程支持服务中,用户通过使用多功能外围设备的通信功能来实现与呼叫中心的连接是有效的,而无需使用除了多功能外围设备之外的诸如电话或pc等的装置。

然而,一般来说,由于安装在办公室中的防火墙,多功能外围设备和呼叫中心的pc通常难以直接建立会话。因此,提出了使用与防火墙具有高兼容性的http来建立信息终端之间的会话的技术。从互联网侧到由防火墙阻止的信息终端的连接通常受到限制。另一方面,只要使用与防火墙具有高兼容性的http,从防火墙的信息终端侧到互联网的连接就通常被许可。

日本特开2015-32224号公报提出了如下技术:使由防火墙阻止的两个信息终端连接到可连接为来自各个信息终端侧的http客户端的会话管理服务器,从而实现信息终端之间的会话的建立。另外,用作远程操作协议的vnc(virtualnetworkcomputing,虚拟网络计算)在被防火墙阻止的两个信息终端之间经由http协议进行通信。在这样的系统中,通常还提出不仅对vnc进行远程操作,而且还对多功能外围设备的web服务器、ssh(secureshell,安全外壳)服务器等的服务器功能进行远程操作的技术。

然而,上述相关技术存在以下问题。例如,上述相关技术需要具有转换通信内容的功能,以针对进行诸如vnc通信、web通信或ssh通信的远程操作的各个通信功能匹配http。也就是说,在当前的系统中,需要针对各个通信功能开发应用等,导致开发成本增加。



技术实现要素:

本发明使得能够实现用于通过通用转换功能进行通信的机制,而不需要针对被防火墙阻止的两个装置之间的各个通信功能的http转换功能。

本发明的一个方面提供了一种信息处理系统,所述信息处理系统经由中继服务器在图像形成装置与信息处理装置之间进行通信,所述信息处理装置包括:多个通信客户端,其分别能够通过不同的通信协议进行通信;以及第一通信控制单元,其将本地主机设置为连接目的地,通过指定预定端口来创建第一通信套接字,启动所述多个通信客户端中的一个通信客户端,并且在所启动的通信客户端与中继服务器之间的通信中,经由第一通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信客户端和所述第一通信控制单元中的至少一者通过至少一个处理器和存储器来实现,所述图像形成装置包括:多个通信服务器,其分别能够通过不同的通信协议进行通信;以及第二通信控制单元,其将本地主机设置为连接目的地,通过指定从所述信息处理装置指定的预定端口来创建到所述多个通信服务器中的一个通信服务器的第二通信套接字,并且在所述通信服务器与所述中继服务器之间的通信中,经由第二通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信服务器和所述第二通信控制单元中的至少一者通过至少一个处理器和存储器来实现。

本发明的另一方面提供了一种信息处理系统,所述信息处理系统经由中继服务器在图像形成装置与信息处理装置之间进行通信,所述信息处理装置包括:多个通信客户端,其分别能够通过不同的通信协议进行通信;以及第一通信控制单元,其将本地主机设置为代理服务器,通过指定预定端口来创建第一通信套接字,启动所述多个通信客户端中的一个通信客户端,并且在所启动的通信客户端与中继服务器之间的通信中,经由第一通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信客户端和所述第一通信控制单元中的至少一者通过至少一个处理器和存储器来实现,所述图像形成装置包括:多个通信服务器,其分别能够通过不同的通信协议进行通信;以及第二通信控制单元,其将本地主机设置为代理服务器,通过指定从所述信息处理装置指定的预定端口来创建到所述多个通信服务器中的一个通信服务器的第二通信套接字,并且在所述通信服务器与所述中继服务器之间的通信中,经由第二通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信服务器和所述第二通信控制单元中的至少一者通过至少一个处理器和存储器来实现。

本发明的又一方面提供了一种信息处理装置,所述信息处理装置经由中继服务器与外部装置通信,所述信息处理装置包括:多个通信客户端,其分别能够通过不同的通信协议进行通信;以及通信控制单元,其将本地主机设置为连接目的地和代理服务器中的一者,通过指定预定端口来创建通信套接字,启动多个通信客户端中的一个通信客户端,并且在启动的通信客户端与中继服务器之间的通信中,经由通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信客户端和所述通信控制单元中的至少一者通过至少一个处理器和存储器来实现。

本发明的又一方面提供了一种信息处理装置,所述信息处理装置经由中继服务器与外部装置通信,所述信息处理装置包括:多个通信服务器,其分别能够通过不同的通信协议进行通信;以及通信控制单元,其将本地主机设置为连接目的地和代理服务器中的一者,通过指定由外部装置指定的预定端口来创建到多个通信服务器中的一个通信服务器的通信套接字,并且在通信服务器与中继服务器之间的通信中,经由通信套接字调整并中继http与对应的通信协议之间的通信数据,其中,所述多个通信服务器和所述通信控制单元中的至少一者通过至少一个处理器和存储器来实现。

本发明的又一方面提供了一种信息处理装置的控制方法,所述信息处理装置包括多个通信客户端,所述多个通信客户端分别能够通过不同的通信协议进行通信并且经由中继服务器与外部装置通信,所述控制方法包括以下步骤:将本地主机设置为连接目的地和代理服务器中的一者,并且通过指定预定端口来创建通信套接字;启动所述多个通信客户端中的一个通信客户端;以及在启动的通信客户端与中继服务器之间的通信中,经由通信套接字来调整并中继http与对应的通信协议之间的通信数据。

本发明的又一方面提供了一种信息处理装置的控制方法,所述信息处理装置包括多个通信服务器,所述多个通信服务器能够通过不同的通信协议进行通信并且经由中继服务器与外部装置通信,所述控制方法包括以下步骤:将本地主机设置为连接目的地和代理服务器中的一者,并且通过指定由外部装置指定的预定端口来创建到多个通信服务器中的一个通信服务器的通信套接字;以及在通信服务器与中继服务器之间的通信中,经由通信套接字调整并中继http与对应的通信协议之间的通信数据。

本发明的又一方面提供了一种非暂时性计算机可读存储介质,其存储用于使计算机执行信息处理装置的控制方法的各个步骤的计算机程序,所述信息处理装置包括多个通信客户端,所述多个通信客户端分别能够通过不同的通信协议进行通信并且经由中继服务器与外部装置通信,所述控制方法执行以下步骤:将本地主机设置为连接目的地和代理服务器中的一者,并且通过指定预定端口来创建通信套接字;启动所述多个通信客户端中的一个通信客户端;以及在启动的通信客户端与中继服务器之间的通信中,经由通信套接字来调整并中继http与对应的通信协议之间的通信数据。

本发明的又一方面提供了一种非暂时性计算机可读存储介质,其存储用于使计算机执行信息处理装置的控制方法的各个步骤的计算机程序,所述信息处理装置包括多个通信服务器,所述多个通信服务器分别能够通过不同的通信协议进行通信并且经由中继服务器与外部装置通信,所述控制方法执行以下步骤:将本地主机设置为连接目的地和代理服务器中的一者,并且通过指定由外部装置指定的预定端口来创建到多个通信服务器中的一个通信服务器的通信套接字;以及在通信服务器与中继服务器之间通信中,经由通信套接字调整并中继http与对应的通信协议之间的通信数据。

通过下面参照附图对示例性实施例的描述,本发明的其他特征将变得清楚。

附图说明

图1是示出根据实施例的网络布置的图;

图2a是示出根据实施例的信息处理系统的硬件布置的框图;

图2b是示出根据实施例的信息处理系统的软件布置的框图;

图3是示出根据实施例的操作者pc的处理的流程图;

图4是示出根据实施例的图像形成装置的处理的流程图;

图5a和图5b是示出根据实施例的中继服务器的处理的流程图;

图6a和图6b是示出根据实施例的操作者pc的处理的流程图;

图7是示出根据实施例的图像形成装置的处理的流程图。

图8a和图8b是示出根据实施例的操作者pc的处理的流程图;

图9是示出根据实施例的图像形成装置的处理的流程图;以及

图10a和图10b是示出根据实施例的中继服务器的处理的流程图。

具体实施方式

现在将参照附图详细描述本发明的优选实施例。应该注意的是,除非另有具体说明,否则在这些实施例中阐述的部件的相对布置、数字表达式和数值不限制本发明的范围。

<第一实施例>

<网络布置>

下面将描述本发明的第一实施例。首先,将参照图1描述根据本实施例的进行远程支持的信息处理系统的网络布置。

在该系统中,图像形成装置101、用作信息处理装置的操作者pc102以及http中继服务器103被布置为可相互通信。图像形成装置101和操作者pc102用作应用本发明的装置并且作为对方装置操作。图像形成装置101和操作者pc102具有通过http(hypertexttransferprotocol,超文本传输协议)执行呼叫控制以进行数据通信的数据通信功能。

如图1所示,图像形成装置101经由防火墙(fw)104连接到网络106。呼叫中心侧的操作者pc102经由fw105连接到网络106。此外,http中继服务器103连接到网络106。在http数据通信中,客户端节点通过向由http中继服务器103提供的uri(统一资源标识符)发送post/get请求来进行数据通信。这使得能够即使在通信路径被专用地址区域和fw阻止的情况下,也允许客户端节点进行数据通信。

根据本实施例,图像形成装置101和操作者pc102作为http客户端节点操作。在本实施例中,例示了客户端节点相对于网络106经由fw彼此通信的构造。本发明不限于此。可以应用没有通过fw的网络布置。另外,可以将比例示的数量多的许多fw、图像形成装置和操作者pc连接到网络106。此外,在本实施例中,可以使用http以外的协议作为通信协议。

<硬件布置>

接下来将参照图2a描述根据本实施例的信息处理系统的硬件布置。图像形成装置101包括系统控制单元200、操作面板212、图像输入设备213、音频输入/输出设备214、扫描器215和打印机216。系统控制单元200包括扫描器i/f201、cpu202、rom203、ram204、hdd205、打印机i/f207、操作面板i/f208、图像输入i/f209、音频输入/输出i/f210和网络i/f211。上述设备可以经由系统总线206交换数据。

cpu202基于存储在rom203或硬盘(hdd)205中的控制程序,系统地控制对连接到系统总线206的各种设备的访问。rom203存储可由cpu202执行的控制程序。ram204主要用作cpu202的主存储器、工作区域等,并且能够通过连接到扩展端口(未示出)的可选ram来扩展存储器容量。硬盘(hdd)205存储引导程序、各种应用、字体数据、用户文件、编辑文件等。注意,在本实施例中,使用hdd205,但也可以使用除hdd205以外的sd卡或闪存作为外部存储设备。

扫描器i/f201控制从扫描器215输入的图像。打印机i/f207控制输出到打印机216的图像。操作面板i/f208进行操作面板212的显示控制,并控制设置在操作面板212中的各种设置信息。图像输入i/f209控制从诸如照相机等的图像输入设备213输入的图像。音频输入/输出i/f210针对诸如头戴式耳机的音频输入/输出设备214控制音频输入/输出。网络i/f211经由网络线缆与外部网络进行数据通信。

操作者pc102包括控制单元220、键盘231、显示器232、图像输入设备233和音频输入/输出设备234。控制单元220包括cpu221、rom222、ram223、hdd224、网络i/f226、键盘i/f227、显示器i/f228、图像输入i/f229以及音频输入/输出i/f230。

cpu221基于存储在rom222或硬盘(hdd)224中的控制程序系统地控制对连接到系统总线225的各种设备的访问。rom222存储可由cpu221执行的控制程序。ram223主要用作cpu221的主存储器、工作区域等,并且可以通过连接到扩展端口(未示出)的可选ram来扩展存储器容量。硬盘(hdd)224存储引导程序、各种应用、字体数据、用户文件、编辑文件等。注意,在本实施例中,使用hdd224,但也可以使用hdd224以外的sd卡或闪存作为外部存储设备。

网络i/f226经由网络线缆进行与外部网络的数据通信。键盘i/f227控制来自键盘231或指点设备(pointingdevice)(未示出)的键输入。显示器i/f228控制显示器232的显示。图像输入i/f229控制从诸如照相机等的图像输入设备233输入的图像。音频输入/输出i/f230针对诸如头戴式耳机的音频输入/输出设备234控制音频输入/输出。

http中继服务器103包括cpu241、rom242、ram243、hdd244和网络i/f246。cpu241基于存储在rom242或硬盘(hdd)244中的控制程序系统地控制对连接到系统总线245的各种设备的访问。rom242存储可由cpu241执行的控制程序。ram243主要用作cpu241的主存储器、工作区域等,并且可以通过连接到扩展端口(未示出)的可选ram来扩展存储器容量。硬盘(hdd)244存储引导程序、各种应用、字体数据、用户文件、编辑文件等。注意,在本实施例中,使用hdd244,但也可以使用除hdd244以外的sd卡或闪存作为外部存储设备。网络i/f246经由网络线缆与外部网络进行数据通信。

<软件布置>

接下来将参照图2b描述根据本实施例的信息处理系统的软件布置。图像形成装置101包括中继服务器通信处理单元255和vnc服务器251、telnet(teletypenetwork,电传打字网络)服务器252、ssh(secureshell,安全外壳)服务器253、web服务器254等的服务器单元。中继服务器通信处理单元255控制与中继服务器103的通信处理。服务器单元不是仅在信息处理系统中使用的软件,而是作为图像形成装置101的通用功能提供的软件。中继服务器通信处理单元255用作第二通信控制单元,并且一般地调整通信服务器251至254的通信协议和用于与中继服务器103通信的http。

另一方面,操作者pc102包括中继服务器通信处理单元265和vnc客户端261、telnet客户端262、ssh客户端263、web浏览器264等的客户端单元。中继服务器通信处理单元265用作第一通信控制单元并且控制与中继服务器103的通信处理。客户端单元不是仅在信息处理系统中使用的软件,而是被提供以在操作者pc102中通用的软件。中继服务器通信处理单元265一般地调整通信客户端261至264的通信协议和用于与中继服务器103通信的http。

中继服务器103包括传送图像形成装置101与操作者pc102的通信的传送处理单元271。中继服务器通信处理单元255执行封装通过http从服务器单元的服务器接受的通信数据的处理,以允许服务器通过使用http与中继服务器103进行通信。例如,中继服务器通信处理单元255将从vnc服务器251输出的vnc数据嵌入到http数据中,并将其发送到中继服务器103。这同样适用于其他服务器。另外,中继服务器通信处理单元255执行从自中继服务器103接收的http数据中提取与各个服务器的通信协议相对应的数据并将其传送到服务器的处理。

在本实施例中,将以操作者pc102包括通信客户端并且图像形成装置101包括通信服务器的形式给出描述。本发明不限于此。例如,可以是如下的形式:以图像形成装置101包括通信客户端并且操作者pc102包括通信服务器的形式从图像形成装置101向操作者pc102请求访问。注意,在图2b中,这指示当通过从操作者pc102概念性地以柱状访问图像形成装置101来实现通信数据的发送时的模式下的http隧道。这是本发明的示例。例如,当通过从图像形成装置101访问操作者pc102来发送通信数据时,在图像形成装置101与操作者pc102之间反转图2b所示的柱状部分。

<整体处理>

接下来将描述根据本实施例的信息处理系统中的整体操作的序列。首先,操作者pc102和图像形成装置101中的各个访问中继服务器103。中继服务器103将两个客户端配对,并且这两个客户端被设置为会话建立状态。为了设置会话建立状态,例如,存在通过向操作者pc102和图像形成装置101输入同一编号或字符串来通过中继服务器103将操作者pc102和图像形成装置101配对的方法。然而,这与本发明无关,因此将省略其详细描述。

在设置会话建立状态之后,操作者从操作者pc102进行vnc(虚拟网络计算)的开始操作,从而进行远程操作。在本实施例中,使用与vnc相对应的通信协议的示例将被作为远程操作的示例进行描述。然而,诸如telnet(teletypenetwork,电传打字网络)和ssh(secureshell,安全外壳)等的通信协议也是适用的。下面将描述图像形成装置101、操作者pc102和中继服务器103的更详细的处理。

<操作者pc的处理序列>

接下来将参照图3描述根据本实施例的操作者pc102的处理序列。通过将存储在例如hdd224中的程序加载到ram223中并由cpu221执行该程序来实现该流程图。由图2b所示的操作者pc102的中继服务器通信处理单元265进行下面将要描述的处理。

当该处理开始时,首先,在步骤s301中,操作者pc102的中继服务器通信处理单元265访问中继服务器103,并与进行远程维护的图像形成装置101建立会话。如上所述,详细的建立方法的描述将被省略。随后,在步骤s302中,中继服务器通信处理单元265经由诸如键盘231的用户接口接受来自用户的vnc开始操作。例如,中继服务器通信处理单元265在操作者pc102的画面上显示开始按钮并且接受利用鼠标指针的点击操作。

在接受vnc开始操作时,在步骤s303中,中继服务器通信处理单元265向中继服务器103发送vnc开始请求。更具体地,中继服务器通信处理单元265将数据“应用名称:vnc”和“命令:开始”写入http正文部分,并将请求发布(post)到中继服务器103。随后,在步骤s304,中继服务器通信处理单元265创建套接字并开始在特定端口中监听(监听状态)。监听状态是等待从预定端口接收的数据的状态。该端口是要作为外部vnc客户端应用(例如vnc客户端261)的连接目的地的端口,并且可以被预先定义或者可以动态地使用空闲端口。在本实施例中,将假设端口号为10000来给出描述。在中继服务器通信处理单元265开始在该特定端口中监听之后,在步骤s305中,中继服务器通信处理单元265启动vnc客户端应用。此时,中继服务器通信处理单元265将ip地址设置为“127.0.0.1”,作为vnc客户端应用的连接目的地,并将端口号指定为在步骤s304中监听的“10000”,从而启动该vnc客户端应用。也就是,中继服务器通信处理单元265将指示本地装置的本地回送地址(localloopbackaddress)设置为ip地址。

当vnc客户端应用被启动时,在步骤s306中,中继服务器通信处理单元265确定是否接受vnc停止操作。如果vnc停止操作被接受,则处理进行到结束处理。如果vnc停止操作未被接受,则处理进行到步骤s307,在步骤s307中,中继服务器通信处理单元265首先从套接字(通信套接字)读取数据。在步骤s307中,中继服务器通信处理单元265可以接收从vnc客户端应用发送的数据。在接收到数据时,在步骤s308中,中继服务器通信处理单元265创建要发送到中继服务器103的httppost请求,并对http正文部分指定要连接到图像形成装置(mfp)101的vnc服务器251的端口号。期望该端口号预先由操作者pc102指定并保持。在本实施例中,将假定此端口号为5900来给出描述。更具体地,在http正文部分中描述“端口=5900”。

然后,在步骤s309中,中继服务器通信处理单元265将在步骤s307中读取的数据设置到http正文部分。更具体地,描述“数据=xxx(读取的二进制数据)”。当在步骤s308和s309中完成httppost请求时,中继服务器通信处理单元265在步骤s310中将httppost请求发送到中继服务器103,并且在步骤s311中接收post响应。

然后,中继服务器通信处理单元265在步骤s312中将httpget请求发送到中继服务器103,并在步骤s313中接收get响应。在完成接收时,在步骤s314中,中继服务器通信处理单元265从get响应的http正文部分读取数据。更具体地,中继服务器通信处理单元265读取http正文部分的“data=”之后的部分。在步骤s314中读取的数据是由图像形成装置101的vnc服务器251发送的数据。在完成读取数据时,在步骤s315中,中继服务器通信处理单元265将读取的数据写入在步骤s304中创建的套接字中。

中继服务器通信处理单元265重复从步骤s307到s315的处理,直到步骤s306中的vnc停止操作被接受为止。如果在步骤s306中vnc停止操作被接受,则处理进行到步骤s316,在步骤s316中,中继服务器通信处理单元265停止在步骤s305中启动的vnc客户端应用。随后,在步骤s317中,中继服务器通信处理单元265向中继服务器103发送vnc停止请求。更具体地,中继服务器通信处理单元265将数据“应用名称:vnc”和“命令:停止”写入http正文部分,并且向中继服务器103发布请求。最后,在步骤s318中,中继服务器通信处理单元265丢弃在步骤s304中创建的套接字并且终止该处理。

<图像形成装置的处理序列>

接下来将参照图4描述根据本实施例的图像形成装置101的处理序列。通过将存储在例如hdd205中的程序加载到ram204中并由cpu执行202该程序来实现该流程图。在图2b所示的图像形成装置101的中继服务器通信处理单元255中进行下面描述的处理。

当该处理开始时,首先,在步骤s401中,图像形成装置101的中继服务器通信处理单元255访问中继服务器103,并建立与进行远程维护的操作者pc102的会话。如上所述,详细的建立方法的描述将被省略。随后,在步骤s402中,中继服务器通信处理单元255从中继服务器103接收vnc开始请求。当从中继服务器103发送vnc开始请求时,触发是操作者pc102中的、在步骤s303中进行的post请求的发送。中继服务器通信处理单元255定期向中继服务器103发送httpget请求,从而接收vnc开始请求。更具体地,中继服务器通信处理单元255通过从get响应的http正文部分读取数据“应用名称:vnc”和“命令;开始”来检测vnc开始请求。

当在步骤s402中接受vnc开始请求时,处理进行到步骤s403,在步骤s403中,中继服务器通信处理单元255确定vnc停止请求是否被接受,并且如果vnc停止请求被接受,则终止处理。中继服务器通信处理单元255通过以与vnc开始请求相同的方式定期发送httpget请求来接收vnc停止请求。更具体地,中继服务器通信处理单元255通过从get响应的http正文部分读取数据“应用名称:vnc”和“命令:停止”来检测vnc停止请求。

如果vnc停止请求未被接受,则处理进行到步骤s404,在步骤s404中,中继服务器通信处理单元255首先根据在步骤s402中被接受的请求创建要连接到图像形成装置101的vnc服务器251的套接字。在这里没有设置要由套接字连接的特定服务器。在完成套接字的创建时,中继服务器通信处理单元255在步骤s405中将httpget请求发送到中继服务器103,并且在步骤s406中接收get响应。在完成接收时,在步骤s407中,中继服务器通信处理单元255从get响应的http正文部分获得连接目的地的端口号。这里获得的值是在步骤s308中由操作者pc102指定的值(端口=5900)。更具体地,中继服务器通信处理单元255读取http正文部分的“端口=”之后的部分。随后,在步骤s408中,中继服务器通信处理单元255从get响应的http正文部分读取数据。更具体地,中继服务器通信处理单元255读取http正文部分的“data=”之后的部分。在步骤s408中读取的数据是由操作者pc102的vnc客户端应用发送的数据。

在完成数据读取时,在步骤s409中,中继服务器通信处理单元255将“127.0.0.1”指定为连接目的地主机名,并且将在步骤s407中获得的端口号指定为连接目的地端口号以连接套接字。此外,中继服务器通信处理单元255将在步骤s408中读取的数据写入套接字中。也就是,在此,中继服务器通信处理单元255将本地主机(例如,指示本地装置的本地回送地址)设置为连接目的地。随后,在步骤s410中,中继服务器通信处理单元255从套接字读取数据。在步骤s410中,中继服务器通信处理单元255可以接收从vnc服务器251发送的数据。

然后,在步骤s411中,中继服务器通信处理单元255将在步骤s410中读取的数据设置为http正文部分。更具体地,中继服务器通信处理单元255描述“数据=xxx(读取的二进制数据)”。当在步骤s411中完成httppost请求时,中继服务器通信处理单元255在步骤s412中将httppost请求发送到中继服务器103,并且在步骤s413中接收post响应。在完成所有通信时,在步骤s414中,中继服务器通信处理单元255丢弃在步骤s404中创建的套接字。重复进行步骤s403至s414中的处理,直到在步骤s403中接受vnc停止请求为止。

<中继服务器的处理序列>

接下来将参照图5a和5b描述根据本实施例的中继服务器103的处理序列。通过将存储在例如hdd244中的程序加载到ram243中并由cpu241执行该程序来实现该流程图。在图2b中的中继服务器103的传送处理单元271中进行下面描述的处理。

当该处理开始时,首先,在步骤s501中,中继服务器103的传送处理单元271首先从客户端接收数据。这里的客户端是指图像形成装置101和操作者pc102。在接收到数据时,传送处理单元271在步骤s502、s504、s507、s510和s515中的各个中确定与接收到的数据相对应的特定请求。如果传送处理单元271不能确定请求,则处理返回到步骤s501,在步骤s501中,传送处理单元271接收下一个数据。更具体地,传送处理单元271在步骤s502中确定接收到的数据是否是会话建立请求。在步骤s504中,传送处理单元271确定接收到的数据是否是功能开始请求。在步骤s507中,传送处理单元271确定所接收的数据是否是功能停止请求。在步骤s510中,传送处理单元271确定接收到的数据是否是用于传送的post请求。在步骤s515中,传送处理单元271确定接收到的数据是否是用于传送的get请求。

如果传送处理单元271在步骤s502中确定所接收的数据是会话建立请求,则处理进行到步骤s503,在步骤s503中,传送处理单元271执行会话建立处理,以使图像形成装置101和操作者pc102配对,并将处理返回到步骤s501。如上所述,详细的建立方法的描述将被省略。

如果传送处理单元271在步骤s504中确定接收到的数据是功能开始请求,则处理进行到步骤s505,在步骤s505中,传送处理单元271将功能开始请求发送到与源客户端建立会话的对方客户端。更具体地,传送处理单元271将数据“应用名称:功能名称”和“命令:开始”设置到get响应的http正文部分,并将它们发送到对方客户端。在本实施例中,传送处理单元271从操作者pc102接收vnc开始请求,并将vnc开始请求发送到图像形成装置101。在完成步骤s505中的处理时,处理进行到步骤s506,在步骤s506中,传送处理单元271向源客户端发送http响应,并将处理返回到步骤s501。

如果传送处理单元271在步骤s507中确定接收到的数据是功能停止请求,则处理进行到步骤s508,在步骤s508中,传送处理单元271将功能停止请求发送到建立与源客户端的会话的对方客户端。更具体地,传送处理单元271将数据“应用名称:功能名称”和“命令:停止”设置到get响应的http正文部分,并将它们发送到对方客户端。在本实施例中,传送处理单元271从操作者pc102接收vnc停止请求,并将vnc停止请求发送到图像形成装置101。在完成步骤s508中的处理时,处理进行到步骤s509,在步骤s509中,传送处理单元271将http响应发送到源客户端,并将处理返回到步骤s501。

如果传送处理单元271在步骤s510中确定接收到的数据是传送远程操作数据的post请求,则处理前进到步骤s511,在步骤s511中,传送处理单元271从接收到的httppost请求的http正文部分读取数据。更具体地,传送处理单元271读取http正文部分的“data=”之后的部分。随后,在步骤s512中,传送处理单元271从post请求的http正文部分获得连接目的地端口号。更具体地,传送处理单元271读取http正文部分的“端口=”之后的部分。当完成步骤s511和s512中的读取时,处理进行到步骤s513,在步骤s513中,传送处理单元271将在步骤s511中读取的数据和在步骤s512中读取的关于连接目的地端口号的信息推送为针对链接到此post请求的源客户端的队列的设置。针对各个请求源存在队列。由图像形成装置101发布的数据被推送到针对图像形成装置101的队列,并且由操作者pc102发布的数据被推送到针对操作者pc102的队列。在推送完成时,处理进行到步骤s514,在步骤s514中,传送处理单元271将post响应发送到源客户端并将处理返回到步骤s501。

如果传送处理单元271在步骤s515中确定接收到的数据是传送远程操作数据的get请求,则处理进行到步骤s516,在步骤s516中,传送处理单元271从与源客户端建立会话的对方客户端的队列中弹出数据。传送处理单元271针对图像形成装置101的get请求从操作者pc102的队列中弹出数据,并且针对操作者pc102的get请求从图像形成装置101的队列中弹出数据。在完成弹出时,在步骤s517中,传送处理单元271创建要发送到源客户端的httpget响应,并将从队列弹出的连接目的地端口号指定给http正文部分。更具体地,传送处理单元271在http正文部分中描述“端口=xxx(弹出的连接目的地端口号)”。随后,在步骤s518中,传送处理单元271将弹出的数据设置为get响应的http正文部分。更具体地,传送处理单元271描述“数据=xxx(读取的二进制数据)”。当完成步骤s517和s518中的httpget响应时,处理进行到步骤s519,在步骤s519中,传送处理单元271将get响应发送到源客户端,并使处理返回到步骤s501。

如上所述,根据本实施例的信息处理系统是经由中继服务器在图像形成装置与信息处理装置(操作者pc)之间进行通信的远程支持系统。该信息处理装置包括分别能够通过不同的通信协议进行通信的多个通信客户端。另外,该信息处理装置将本地主机设置为连接目的地,通过指定预定端口来创建通信套接字(第一通信套接字),并且启动多个通信客户端当中的一个通信客户端。此外,在被启动的通信客户端与中继服务器之间的通信中,该信息处理装置经由创建的通信套接字来调整并中继http与对应的通信协议之间的通信数据。另一方面,该图像形成装置包括分别能够通过不同的通信协议进行通信的多个通信服务器。另外,该图像形成装置将本地主机设置为连接目的地,并且通过指定从信息处理装置指定的预定端口,将第二通信套接字创建到多个通信服务器中的一个通信服务器。此外,在通信服务器与中继服务器之间的通信中,该图像形成装置经由通信套接字(第二通信套接字)调整并中继http与对应的通信协议之间的通信数据。根据本实施例,当在操作者pc102与图像形成装置101之间存在除了诸如vnc的远程维护之外的原始可用的通信功能时,这消除了为各个通信功能提供传送处理的需要。因此,可以通过通用方法传送通信数据,并且降低开发成本等。由于不必为各个通信功能保持应用,所以也可以有效地在各个装置中使用存储器资源。

<第二实施例>

下面将描述本发明的第二实施例。在本实施例中,将描述在使用多个端口、同时切换该多个端口的通信功能(诸如,web通信)中也通过如上述第一实施例中那样的通用方法传送通信数据的机制。本实施例的网络布置、硬件布置和软件布置与上述第一实施例相同,因此将省略其描述。本实施例的整个系统的操作序列也与上述第一实施例中的相同,因此将省略其描述。在本实施例中,将通过使用web操作作为远程操作的示例给出描述。web操作是指通过操作者pc102的web浏览器对图像形成装置101的web服务器功能进行操作。将在下面描述图像形成装置101、操作者pc102和中继服务器103的更详细的处理。

<操作者pc的处理序列>

将参照图6a和6b描述根据本实施例的操作者pc102的处理序列。通过将存储在例如hdd224中的程序加载到ram223中并由cpu221执行该程序来实现该流程图。由图2b中所示的操作者pc102的中继服务器通信处理单元265进行下面将要描述的处理。

当开始该处理时,首先,在步骤s601中,操作者pc102的中继服务器通信处理单元265访问中继服务器103,并与进行远程维护的图像形成装置101建立会话。如上所述,详细的建立方法的描述将被省略。随后,在步骤s602中,中继服务器通信处理单元265接受web开始操作。更具体地,中继服务器通信处理单元265在操作者pc102的画面上显示开始按钮,并接受利用鼠标指针的点击操作。当接受web开始操作时,处理进行到步骤s603,在步骤s603中,中继服务器通信处理单元265将web开始请求发送到中继服务器103。更具体地,中继服务器通信处理单元265将数据“应用名称:web”和“命令:开始”写入到http正文部分,并将请求发布到中继服务器103。

然后,在步骤s604中,中继服务器通信处理单元265启动web浏览器。当启动web浏览器时,中继服务器通信处理单元265将ip地址设置为“127.0.0.1”来作为web浏览器的代理服务器设置,并将端口号指定为“10000”,从而启动web浏览器。这里指定的端口号被预先设置在操作者pc102中。在本实施例中,将假定端口号是10000来给出描述。

当web浏览器被启动时,处理进行到步骤s605,在步骤s605中,中继服务器通信处理单元265确定是否接受web停止操作。如果web停止操作被接受,则处理从步骤s623前进到结束处理。另一方面,如果web停止操作未被接受,则处理前进到步骤s606,在步骤s606中,中继服务器通信处理单元265首先创建套接字并开始在步骤s604中指定的端口中监听(监听状态)。监听状态如上述第一实施例所述。该端口是由作为代理服务器的外部web浏览器连接的端口。在中继服务器通信处理单元265开始在端口中监听之后,在步骤s607中,中继服务器通信处理单元265从套接字读取数据。在步骤s607中,中继服务器通信处理单元265可以接收从web浏览器发送的数据。

通常,即使设置代理服务器的web浏览器访问与步骤s606中等待的端口不同的url(诸如“http://xxx:8000/yyy/zzz”),设置代理服务器的web浏览器也可以连接到代理服务器的连接目的地。此外,一般来说,设置代理服务器的web浏览器通过使用与web浏览器不设置代理服务器的情况不同的http报头或http方法进行通信。将在下文描述细节。

当接收到数据时,处理进行到步骤s608,在步骤s608中,中继服务器通信处理单元265从接收到的web浏览器的http请求中获得到图像形成装置101的web服务器的连接目的地端口号。更具体地,在从web浏览器接收到的http请求的报头中描述了信息“gethttp://xxx:8000/yyy/zzzhttp/1.1”。端口号“8000”被从该报头的url部分读取并获得。如果url中省略端口号部分,则采用http的默认值80或https的默认值443。在一般的web浏览器中,如果没有设置代理服务器,则获得描述“get/yyy/zzzhttp/1.1”。

然后,在步骤s609中,中继服务器通信处理单元265从接收到的web浏览器的http请求中分析http方法,并确定http方法是否是connect方法。更具体地,从web浏览器接收到的http请求的报头的描述“gethttp://xxx:8000/yyy/zzzhttp/1.1”的开始部分是http方法。如果在步骤s609中确定http方法不是connect方法,则在步骤s610中,中继服务器通信处理单元265执行对在步骤s607中从web浏览器接收到的http请求的报头的重写处理。更具体地,中继服务器通信处理单元265将“gethttp://xxx:8000/yyy/zzzhttp/1.1”重写为“get/yyy/zzzhttp/1.1”,并且将其改变为http报头格式而不经过代理服务器。

然后,在步骤s611中,中继服务器通信处理单元265创建要发送给中继服务器103的httppost请求,并将在步骤s610中处理的web浏览器的http请求写入其http正文部分中。更具体地,中继服务器通信处理单元265描述“data=xxx(在步骤s610中处理的web浏览器的http请求)”。之后,处理进行到步骤s615。

另一方面,如果在步骤s609中确定http方法是connect方法,则处理进行到步骤s612,在步骤s612中,中继服务器通信处理单元265生成httpconnect响应并将其写入在步骤s606中生成的套接字中。connect方法是经由代理服务器进行https通信时使用的方法。因此,在返回connect响应之后,web浏览器在套接字中写入与包括ssl通信的握手的web服务器进行通信的信息。为了读取该信息,在步骤s613中,中继服务器通信处理单元265从在步骤s606中创建的套接字读取数据。

然后,在步骤s614中,中继服务器通信处理单元265创建要发送给中继服务器103的httppost请求,并将在步骤s613中读取的数据写入其http正文部分中。更具体地,中继服务器通信处理单元265描述“数据=xxx(在步骤s613中读取的数据)”。之后,处理进行到步骤s615。

在步骤s611或s614的处理之后,在步骤s615中,中继服务器通信处理单元265将在步骤s608中获得的端口号指定给要发送到中继服务器103的httppost请求的http正文部分。更具体地,中继服务器通信处理单元265在http正文部分中描述“端口=8000”。当在步骤s611、s614和s615中的各个中完成httppost请求时,处理进行到步骤s616,在步骤s616中,中继服务器通信处理单元265将httppost请求发送到中继服务器103,并且在步骤s617中接收post响应。

然后,中继服务器通信处理单元265在步骤s618中将httpget请求发送到中继服务器103,并在步骤s619中接收get响应。当接收完成时,处理进行到步骤s620,在步骤s620中,中继服务器通信处理单元265从get响应的http正文部分读取数据。更具体地,中继服务器通信处理单元265读取http正文部分的“data=”之后的部分。在步骤s620中读取的数据是由图像形成装置101的web服务器发送的数据。

在完成数据的读取时,处理进行到步骤s621,在步骤s621中,中继服务器通信处理单元265将读取的数据写入在步骤s606中创建的套接字中。然后,在步骤s622中,中继服务器通信处理单元265丢弃在步骤s606中创建的套接字。中继服务器通信处理单元265重复从步骤s606到步骤s622的处理,直到步骤s605中的web停止操作被接受为止。

另一方面,如果在步骤s605中接受web停止操作,则处理进行到步骤s623,在步骤s623中,中继服务器通信处理单元265停止在步骤s604中启动的web浏览器。最后,在步骤s624中,中继服务器通信处理单元265向中继服务器103发送web停止请求,并且终止处理。更具体地,中继服务器通信处理单元265将数据“应用名称:web”和“命令:停止”写入http正文部分中,并且将请求发布到中继服务器103。

<图像形成装置的处理序列>

下面将参考图7描述根据本实施例的图像形成装置101的处理序列。处理内容与上述第一实施例中的图4的描述中的处理内容相同,因此将省略其描述。然而,处理内容的唯一不同之处在于,步骤s702和s703中接受的功能不是vnc而是web。

<中继服务器的处理序列>

接下来将描述根据本实施例的中继服务器103的处理序列。中继服务器103的处理序列与在上述第一实施例中的图5a和图5b的流程图相同,因此将省略其描述。

如上所述,代替上述第一实施例的布置,根据本实施例的信息处理系统也可以在使用多个端口、同时切换该多个端口的通信功能(诸如web通信)中通过通用方法传送通信数据。这使得可以解决在图像形成装置101和操作者pc102的通信处理单元中需要预先管理web通信使用的所有端口号的问题。

<第三实施例>

下面将描述本发明的第三实施例。在本实施例中,将描述即使存在由web服务器重定向到外部主机的画面(诸如web服务器将登录画面重定向到外部认证服务器的情况)也能够进行远程操作的机制。本实施例的网络布置、硬件布置和软件布置与上述第一实施例相同,因此将省略其描述。本实施例的整个系统的操作序列也与上述第二实施例中的相同,因此将省略其描述。下面将描述图像形成装置101、操作者pc102和中继服务器103的更详细的处理。

<操作者pc的处理序列>

首先,参照图8a和图8b描述根据本实施例的操作者pc102的处理序列。通过将存储在例如hdd224中的程序加载到ram223中并由cpu221执行该程序来实现该流程图。由图2b中所示的操作者pc102的中继服务器通信处理单元265进行下面将要描述的处理。大部分处理内容与在上述第二实施例中的图6a和图6b中的描述相同,因此省略重复的处理描述。也就是,步骤s801至s807的处理与步骤s601至s607的处理相同。

在步骤s807之后,处理进行到步骤s808,在步骤s808中,中继服务器通信处理单元265从接收到的web浏览器的http请求中获得到图像形成装置101的web服务器的连接目的地的主机名和端口号。更具体地,在从web浏览器接收到的http请求的报头中描述了信息“gethttp://xxx:8000/yyy/zzzhttp/1.1”。中继服务器通信处理单元265从该报头的url部分读取并获得作为主机名的值“xxx”和作为端口号的值“8000”。如果在url中省略端口号部分,则采用针对http的默认值80或针对https的默认值443。

步骤s809至s814中的后续处理与步骤s609至s614中的处理相同。在步骤s811或s814中的处理之后,处理进行到步骤s815,在步骤s815中,中继服务器通信处理单元265将在步骤s808中获得的主机名和端口号指定给httppost请求的http正文部分,以发送到中继服务器103。更具体地,中继服务器通信处理单元265在http正文部分中描述“主机=xxx”和“端口=8000”。步骤s816至s824中的后续处理与步骤s616至s624中的处理相同。

<图像形成装置的处理序列>

接下来将参照图9描述根据本实施例的图像形成装置101的处理序列。通过将存储在例如hdd205中的程序加载到ram204中并由cpu202执行该程序来实现该流程图。由图2b所示的图像形成装置101的中继服务器通信处理单元255进行下面将描述的处理。大部分处理内容与在上述第二实施例中的图7的描述相同,因此省略重复的处理描述。步骤s901至s906的处理与步骤s701至s706的处理相同。

在步骤s906之后,处理前进到步骤s907,在步骤s907中,中继服务器通信处理单元255从get响应的http正文部分获得连接目的地的主机名和端口号。更具体地,中继服务器通信处理单元255分别读取http正文部分的“主机=”和“端口=”之后的部分。步骤s908中的下一个处理与步骤s708中的处理相同。在步骤s908中的处理之后,处理进行到步骤s909,在步骤s909中,中继服务器通信处理单元255将在步骤s907中获得的主机名和端口号指定为连接目的地主机名和连接目的地端口号,连接套接字,并将在步骤s908中读取的数据写入套接字中。步骤s910至s914中的后续处理与步骤s710至s714中的处理相同。

<中继服务器的处理序列>

接下来将参照图10a和10b描述根据本实施例的中继服务器103的处理序列。通过将存储在例如hdd244中的程序加载到ram243中并由cpu241执行该程序来实现该流程图。在图2b所示的中继服务器103的传送处理单元271中进行下面描述的处理。大部分处理内容与上述第一实施例中的图5a和图5b的描述相同,因此省略对处理的重复描述。步骤s1001至s1011的处理与步骤s501至s511的处理相同。

在步骤s1011之后,处理进行到步骤s1012,在步骤s1012中,传送处理单元271从post请求的http正文部分获得连接目的地的主机名和端口号。更具体地,传送处理单元271分别读取http正文部分的“主机=”和“端口=”之后的部分。步骤s1013至s1016中的后续处理与步骤s513至s516中的相同。在步骤s1016中的处理之后,处理前进到步骤s1017,在步骤s1017中,传送处理单元271创建要发送到源客户端的httpget响应,并且将从队列中弹出的连接目的地的主机名和端口号指定给http正文部分。更具体地,传送处理单元271在http正文部分中描述“主机=xxx(弹出的连接目的地主机名)”和“端口=xxx(弹出的连接目的地端口号)”。步骤s1018和s1019中的后续处理与步骤s518和s519中的相同。

如上所述,除了上述第二实施例的布置中的端口号之外,根据本实施例的信息处理系统进一步将主机名指定给http请求。这使得即使存在由web服务器重定向到外部主机的画面(诸如,图像形成装置101的web服务器将登录画面重定向到外部认证服务器的情况),也可以进行远程操作。

其他实施例

还可以通过读出并执行记录在存储介质(也可更完整地称为“非暂时性计算机可读存储介质”)上的计算机可执行指令(例如,一个或更多个程序)以执行上述实施例中的一个或更多个的功能、并且/或者包括用于执行上述实施例中的一个或更多个的功能的一个或更多个电路(例如,专用集成电路(asic))的系统或装置的计算机,来实现本发明的实施例,并且,可以利用通过由系统或装置的计算机例如读出并执行来自存储介质的计算机可执行指令以执行上述实施例中的一个或更多个的功能、并且/或者控制一个或更多个电路以执行上述实施例中的一个或更多个的功能的方法,来实现本发明的实施例。计算机可以包括一个或更多个处理器(例如,中央处理单元(cpu)、微处理单元(mpu)),并且可以包括分开的计算机或分开的处理器的网络,以读出并执行计算机可执行指令。计算机可执行指令可以例如从网络或存储介质被提供给计算机。存储介质可以包括例如硬盘、随机存取存储器(ram)、只读存储器(rom)、分布式计算系统的存储器、光盘(诸如压缩光盘(cd)、数字通用光盘(dvd)或蓝光光盘(bd)tm)、闪存装置以及存储卡等中的一个或更多个。

本发明的实施例还可以通过如下的方法来实现,即,通过网络或者各种存储介质将执行上述实施例的功能的软件(程序)提供给系统或装置,该系统或装置的计算机或是中央处理单元(cpu)、微处理单元(mpu)读出并执行程序的方法。

虽然已经参照示例性实施例对本发明进行了描述,但是应该理解,本发明不限于所公开的示例性实施例。应当对权利要求的范围给予最宽的解释,以使其涵盖所有这些变型例以及等同的结构及功能。

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