服务器系统的制作方法

文档序号:25237546发布日期:2021-06-01 14:08阅读:66来源:国知局
服务器系统的制作方法

本发明涉及一种服务器系统。



背景技术:

云服务开始变得流行。用户可以相应地从任何客户终端查阅并编辑云服务中存储的数据以及客户终端中存储的数据。

使用云服务的服务和应用的类型有很多。例如,聊天应用使用户不仅可以进行对话,还可以共享文档文件和图像数据。一些聊天应用可以与其他云服务和应用合作,并自动应答用户输入(以下将此类服务称为bot服务)。bot服务是一种在信息处理装置上运行的用于提供自动应答服务的应用。例如,当用户将文字输入到聊天应用服务中且该文字包括预定文字时,bot服务会自动回答该输入。

由于聊天应用通常用于用户之间的对话,因此聊天应用可能不会配备打印功能。在日本特开第2019-144698号公报中讨论的装置中,用户通过使用聊天应用来注册具有打印设置功能的bot服务。bot服务充当对话的合作伙伴。当图像数据被注册时,bot服务向用户询问是否打印注册的图像数据。当用户通过使用聊天应用发出打印指令时,与bot服务关联注册的打印机将执行图像数据的打印。以这种方式使用bot服务可使不具有打印功能的应用能够打印在聊天应用中注册的数据。

当通过使用云服务管理文档和图像数据时,用户可以在云服务中注册与要用于打印在云服务中注册的文档和图像数据的打印机有关的信息。云服务将用户与可以由用户使用的打印机相关联地存储。当用户登录到云服务时,用户可以从与该用户关联的打印机中选择要用于打印的打印机。

相反,当通过聊天应用使用bot服务执行打印时,用户需要注册要在bot服务中使用的打印机。当用户在bot服务中注册由打印机发出的密码时,将打印机与用户在提供bot服务的服务器上所使用的客户终端上运行的聊天应用相关联。

如果用户尝试通过使用云服务中预先注册的打印机打印聊天应用中注册的文档和图像数据,则用户需要再次执行在bot服务中注册关于打印机的信息的操作。



技术实现要素:

根据本说明书的服务器系统是第一服务器系统,该第一服务器系统包括控制单元,其被配置为指示客户终端显示用于向第三服务器系统输入认证信息的画面,所述第三服务器系统作为在第二服务器系统中注册的图像数据的传输目的地;获取单元,其被配置为从已经基于经由所述画面输入的认证信息进行了认证的第三服务器系统获取与能够打印在第二服务器系统中注册的图像数据的打印装置相关的信息;以及传输单元,其被配置为将获取的关于所述打印装置的信息传输到所述第二服务器系统。

根据以下参照附图对示例性实施例的详细描述,本发明的其他特征将变得清楚。

附图说明

图1是示出根据本示例性实施例的打印系统的配置的示例的框图。

图2是示出根据本示例性实施例的客户端计算机的硬件配置的示例的框图。

图3是示出根据本示例性实施例的打印机的硬件配置的示例的框图。

图4是示出根据本示例性实施例的云打印服务的软件模块配置的示例的框图。

图5是示出根据本示例性实施例的打印bot服务的软件模块配置的示例的框图。

图6是示出根据本示例性实施例的消息应用服务的软件模块配置的示例的框图。

图7a是示出根据第一示例性实施例的由打印bot服务执行的处理的示例的流程图。

图7b是示出根据第一示例性实施例的由打印bot服务执行的处理的示例的流程图。

图8是示出根据第一示例性实施例的通过使用打印系统进行打印的处理的示例的顺序图。

图9a示出了根据第一示例性实施例的通过消息应用在客户终端上显示的画面的示例。

图9b示出了根据第一示例性实施例的通过消息应用在客户终端上显示的画面的另一示例。

图10示出根据本示例性实施例的通过打印bot服务的账户信息数据库管理的表格的示例。

图11a是示出根据第二示例性实施例的通过打印bot服务执行的处理的示例的流程图。

图11b是示出根据第二示例性实施例的通过打印bot服务执行的处理的示例的流程图。

图12是示出根据本示例性实施例的用于在云打印服务中注册打印机的处理的顺序图。

图13(包括图13a和图13b)是示出根据第二示例性实施例的通过使用打印系统进行打印的处理的示例的顺序图。

具体实施方式

在必要时或在单个实施例中来自各个实施例的元件或特征的组合是有益的时,可以将以下描述的本发明的每个实施例单独地或者作为多个实施例或其特征的组合来实现。图1是示出根据本发明的系统的整体配置的框图。该系统包括客户端计算机100,打印机200,云打印服务400,打印bot服务500和消息应用服务600。打印bot服务500可被认为是第一服务系统500,消息应用服务600可被认为是第二服务系统600,以及云打印服务400可被认为是第三服务系统400。

客户端计算机100是由用户直接操作的客户终端,例如个人计算机(pc),智能电话和平板终端等。打印机200从客户端计算机100和云打印服务400接收页面描述语言(pdl)格式的打印数据,并打印该打印数据。根据示例性实施例,打印机200可以是仅具有打印功能的单功能打印机(sfp),或者是具有打印功能、扫描功能和复印功能的多功能打印机(mfp)。云打印服务400包括一个或多个信息处理装置,以管理用于打印的文档和图像数据。云打印服务400是用于对打印进行打印设置和生成pdl数据的服务器系统。消息应用服务600是包括一个或多个信息处理装置的服务器系统。消息应用服务600向操作客户端计算机100的用户提供向/从其他客户端计算机(未示出)发送和接收消息的功能。根据示例性实施例,用户通过使用消息应用服务600发送和接收文档和图像数据。根据本示例性实施例,消息应用服务600将要打印的文档和图像数据发送到打印bot服务500。

打印bot服务500是包括一个或多个信息处理装置的服务器系统。打印bot服务500是用于从消息应用服务600接收包括文档和图像数据的打印数据并将打印数据提供给云打印服务400的服务器系统。打印bot服务500还从消息应用服务600接收用户输入的文本,并分析该文本。作为文本分析的结果,如果在文本中包括预定字符串,则打印bot服务500开始与使用云打印服务400的打印有关的处理。根据本示例性实施例,即使消息应用服务600不具有打印功能,消息应用服务600也可以和打印bot服务500相互协作来打印消息应用服务600中注册的文档和图像数据。

云打印服务400,打印bot服务500和消息应用服务600是在包括多个服务器装置的云服务上实现的服务器系统。

图2是示出根据本示例性实施例的客户端计算机100的硬件配置的框图的示例。

中央处理单元(cpu)101根据在主存储设备102中包括的只读存储器(rom)1021或随机存取存储器(ram)1022中或在辅助存储设备105中存储的程序来控制整个装置。ram1022还被用作通过cpu101执行各种处理的工作区。辅助存储设备105存储应用1051和操作系统(os)1052。

输入接口(i/f)103接收来自外部装置的输入。输入(i/f)103连接到键盘108和诸如鼠标和触摸面板等的指示设备109。输入装置(例如键盘108、鼠标和触摸面板)是用户用来通过输入i/f103向客户端计算机100输出各种指令的设备。输出i/f104将数据输出到诸如监视器110等的输出装置。客户端计算机100经由与通信i/f106连接的网络(例如,因特网)300与打印机200、消息应用服务600和云打印服务400连接。系统总线107是用于在配置客户端计算机100的硬件模块之间交换各条数据的公用数据系统总线。

图3示出了作为根据本示例性实施例的图像处理装置的示例的打印机的功能块。

包括cpu211的控制单元201控制打印机200的整个操作。cpu211读取rom212或存储器214中存储的控制程序,并执行各种控制,例如打印控制和读取控制。rom212存储可以由cpu211执行的控制程序。ram213是cpu211的主存储设备,并且用作用于加载各种控制程序的工作区域或临时存储区域。存储器214存储打印数据、图像数据、各种程序和各种设置信息。根据本示例性实施例,诸如硬盘驱动器(hdd)的辅助存储设备被作用于存储器214。然而,可以使用诸如固态驱动器(sdd)的非易失性存储器代替hdd。诸如cpu211、rom212和ram213之类的硬件组件构成所谓的计算机。

处理单元215具备光栅图像处理器(rip)的功能,该光栅图像处理器用于对经由网络接收到的打印数据进行光栅化并生成打印图像。处理单元215还具有图像处理能力,并且能够执行图像分辨率转换和校正处理。尽管在本示例性实施例中,处理单元215由诸如专用集成电路(asic)和现场可编程门阵列(fpga)之类的硬件电路实现,但是本发明不限于此。例如,打印机200可以包括用于图像处理应用的处理器,并且处理器可以执行图像处理程序以实现图像处理和打印数据光栅化处理。cpu211还可以执行图像处理程序以执行图像处理和打印数据光栅化处理。可以结合这些处理来执行图像处理。

操作单元i/f216连接操作单元202和控制单元201。操作单元202包括具有触摸面板功能的液晶显示(lcd)单元和各种硬件键。操作单元202用作用于显示信息的显示单元和用于接收用户指令的接收单元。经由打印机i/f(未示出)从控制单元201向打印单元(未示出)发送作为处理单元215进行的打印数据分析结果而生成的打印图像。打印单元经由控制单元201接收控制命令和打印图像。基于接收到的图像,打印单元在从纸盒(未示出)进给的片材上打印图像。

控制单元201经由通信单元i/f217与网络300连接。通信单元i/f217向网络300上的通信装置发送图像和信息,并从网络300上的通信装置接收打印数据和信息。

在本示例性实施例中,打印机200是仅具有打印功能的sfp。然而,打印机200可以包括具有复印和扫描功能的读取单元。在这种情况下,读取单元读取原稿,并将生成的图像数据存储在存储器214中。

图4是示出根据本示例性实施例的云打印服务400的功能模块的框图。云打印服务400是包括一个或多个信息处理装置的服务器系统。每个信息处理装置都具有与图2所示的客户端计算机100类似的配置。

根据本示例性实施例的云打印服务400基于从外部接收的打印指令,经由网络300向云打印服务400中注册的打印机发送打印数据,并且指示打印机执行打印。云打印服务400包括文件存储器410、处理单元420、通信单元430、认证服务器440、数据库450和打印服务460。

文件存储器410存储要经由通信单元430发送到打印机200的打印作业。认证服务器440包括用于对访问云打印服务400的用户执行认证处理的认证模块。认证服务器440管理用于访问存储在数据库450中的账户信息的认证信息。数据库450存储用户的账户信息、与该用户相关联的打印机队列和打印设置,以及打印机200的设备信息。打印服务460包括与打印设置的反映以及渲染有关的打印服务模块。处理单元420控制认证服务器440和打印服务460中包括的各模块以控制各模块的处理。

图5是示出根据本示例性实施例的打印bot服务500的功能模块的框图。打印bot服务500包括具有与图2所示的客户端计算机100相似的配置的一个或多个信息处理装置。

打印bot服务500从消息应用服务600接收指令,将该指令的结果返回给消息应用服务600,并指示客户终端显示该结果。打印作业存储器510是用于存储经由消息应用服务600输入的打印目标图像和文档数据的存储模块。通信单元520是用于经由网络300与其他装置和服务进行通信的通信模块。处理单元530是用于处理从客户终端发送的数据并向云打印服务400发送作业的模块。打印服务540是用于存储打印设置的改变并将打印设置与打印作业相关联的打印相关模块组。由打印服务540改变的打印设置由图4所示的打印服务460反映到作业。账户信息数据库550存储用于作业管理和认证信息存储的用户数据。打印bot服务500包括上述功能组。

图6是示出根据本示例性实施例的消息应用服务600的功能模块的示例框图。消息应用服务600包括文件存储器610、消息服务620、处理单元630和通信单元640。当用户通过客户端计算机100的网络浏览器操作消息应用服务600时,消息和数据被注册在消息应用服务600中。在本示例性实施例中,消息应用服务600是在网络浏览器上运行的应用。然而,消息应用服务600可以是安装在客户端计算机100中的应用。

首先,将参考图12所示的顺序图来描述根据本示例性实施例的用于在云打印服务400中注册打印机200的方法。

图12所示的顺序是在云打印服务400中注册打印机200的方法的示例。可以通过使用其他方法在云打印服务400中注册打印机200。

在步骤s1001中,用户从打印机200的操作单元202登录到打印机200,然后指示打印机200访问云打印服务400。例如,在用户选择打印机200的操作单元202上显示的预定图标时,打印机200访问云打印服务400。在用户选择预定图标时,具有网络浏览器功能的打印机200访问云打印服务400的统一资源定位器(url)。打印机200显示用户用来输入用于登录到云打印服务400的认证所使用的信息的画面。打印机200在打印机200的操作单元202上显示该画面。用户向操作单元202输入用于登录到云打印服务400的用户名(用户id)和密码。

在步骤s1002中,在打印机200从用户接收到对云打印服务400的认证请求之后,打印机200使用在步骤s1001中输入的用户id和密码将认证请求发送到云打印服务400。云打印服务400接收从打印机200发送的用户id和密码。然后,认证服务器440执行用户认证。在步骤s1003中,如果认证成功,则云打印服务400将连接成功响应发送到打印机200。在步骤s1004中,如果打印机200从云打印服务400接收到连接成功响应,则打印机200向云打印服务400发送用于在云打印服务400中注册打印机200的注册请求和打印机信息。根据本示例性实施例,打印机200发送用于识别每个设备的设备信息作为打印机信息。设备信息例如是通用唯一标识符(uuid)、服务集标识符(ssid)或打印机名称。

在步骤s1005中,在从打印机200接收到注册请求和设备信息之后,云打印服务400将用于识别登录用户的识别信息链接到所接收的设备信息。然后,在数据库450中注册用于识别登录用户的识别信息和接收到的设备信息。在步骤s1006中,云打印服务400将注册完成的通知发送到打印机200。在步骤s1007中,如果打印机200从云打印服务400接收到注册完成的通知,那么打印机200在操作单元202上显示该注册完成通知。作为上述处理的结果,在云打印服务400的数据库450中生成表格,该表格将用于识别用户的识别信息与关于用户可以使用的打印机200的设备信息相关联。

如果打印机执行图12所示的处理,则可以将多条设备信息与一条识别信息相关联。

现在将参考图8所示的顺序图来描述使用在云打印服务400中注册的打印机进行打印的过程。

参照图8,在消息应用服务600中预先生成至少由用户和打印bot服务500加入的聊天室。在消息应用服务600中,预先注册用于访问打印bot服务500的地址。在打印bot服务500中,用于访问消息应用服务600和云打印服务400的地址被预先注册。

在步骤s800中,用户在消息应用服务600上的打印bot服务500所加入的聊天室中注册打印目标文档或图像数据。当用户在消息应用中注册打印目标数据时,如图9a所示,在客户端计算机100的监视器110上显示的聊天室中显示表示数据已经被注册的消息901。

在步骤s801中,消息应用服务600通知打印bot服务500数据已被注册。在步骤s801中,在消息应用服务600中注册的打印bot服务500的账户检测到原稿和图像数据已经被注册,并将事件通知给打印bot服务500。在步骤s801中,消息应用服务600可以仅将表示原稿和图像数据已经被注册的事件通知给打印bot服务500。备选地,消息应用服务600可以连同事件一起将原稿和图像数据的文件名和大小信息通知给打印bot服务500。

在步骤s802中,打印bot服务500响应于来自消息应用服务600的通知,将用于显示“打印”按钮的请求发送到消息应用服务600。如果在步骤s801中获取到消息应用服务600中注册的数据的文件名,则打印bot服务500可以确定由打印bot服务500接收的数据的扩展名是否是预定扩展名。预定扩展名的示例包括表示图像数据的扩展名,例如“.pdf”、“.jpg”、“.png”和“.bmp”,以及表示可打印数据的扩展名,例如电子表格和文档。如果注册数据的扩展名是预定扩展名,则打印bot服务500可以将用于显示“打印”按钮902的请求发送到消息应用服务600。

在步骤s803中,消息应用服务600基于在步骤s802中接收到的指令显示“打印”按钮902。图9a中示出的“打印”按钮902是打印按钮的示例。在步骤s804中,如果用户选择“打印”按钮902,则在步骤s805中,消息应用服务600上的打印bot服务500的账户向打印bot服务500发送表示选择“打印”按钮902的通知。在步骤s805中,消息应用服务600可以将字符串“打印”发送给打印bot服务500,而不是表示选择“打印”按钮902的通知。如果打印bot服务500确定所接收的字符串中包括“打印”,则打印bot服务500执行以下处理。

在步骤s805中,消息应用服务600将打印目标文档或图像数据发送到打印bot服务500。

在步骤s806中,打印bot服务500将在步骤s805中接收到的数据临时存储为打印数据的候选者。在步骤s806中,打印bot服务500将接收到的数据存储在图5所示的打印作业存储器510中。

在完成数据存储之后,打印bot服务500确定是否存在用于访问云打印服务400的访问令牌。如果不存在访问令牌,则在步骤s807中,打印bot服务500将认证请求发送到云打印服务400。在步骤s807中,打印bot服务500将认证请求发送到云打印服务400。当打印在消息应用服务600中注册的文档或图像数据时,打印服务400是数据的传输目的地。如果在打印bot服务500的账户信息数据库550中存在先前使用的访问令牌,则可以省略步骤s807至s812中执行的处理。如果账户信息数据库550不具有用于访问云打印服务400的权限(例如,访问令牌不存在),则云打印服务400执行以下处理。

在步骤s808中,云打印服务400的认证服务器440将用于显示用于执行用户认证的认证画面的url通知给打印bot服务500。

在步骤s809中,当打印bot服务500从云打印服务400接收到权限认证请求806时,打印bot服务500将url通知给消息应用服务600。在步骤s810中,消息应用服务600进一步将url通知给客户端计算机100。在步骤s811中,客户端计算机100访问所接收的url,并显示用于登录到云打印服务400的认证信息输入画面。图9a中例示的区域903是认证信息输入画面的示例。通过客户端计算机100上的web服务器显示区域903。认证信息输入画面的内容不限于此,只要该画面中的信息使得能够进行云打印服务400的用户认证即可。

在步骤s812中,用户通过消息应用服务600上的输入画面向用户当前正在使用的云打印服务400输入认证信息,并将认证请求发送到云打印服务400。云打印服务400的认证服务器440基于从客户端计算机100发送的信息来执行用户认证。在这种情况下,认证服务器440仅执行用户认证。然而,客户端计算机100可以在成功完成用户认证之后显示用于向用户询问是否允许打印bot服务500访问云打印服务400的画面。在这种情况下,当用户允许打印bot服务500访问云打印服务400时处理进入步骤s813。

在步骤s813中,当用户认证成功完成时,云打印服务400发出访问令牌,并将发出的访问令牌附加到打印bot服务500。在步骤s813中,云打印服务400将打印bot服务500用于获取访问令牌的信息发送到客户端计算机100。打印bot服务500经由消息应用服务600获取信息并使用该信息来访问云打印服务400以获取访问令牌。在步骤s814中,打印bot服务500将从云打印服务400获取的访问令牌存储在账户信息数据库550中。

在步骤s815中,打印bot服务500通过使用所获取的访问令牌,发送用于获取与要存储在云打印服务400的数据库450中的打印机队列有关的信息的请求。在步骤s816中,基于对在步骤s815中接收到的访问令牌赋予的权限,云打印服务400将与要存储在数据库450中的访问令牌相关联的打印机队列有关的信息发送给打印bot服务500。在步骤s816中,打印bot服务500获取打印机队列的名称和用户的打印设置。在这种情况下,打印设置是指包括多个设置项目的预设设置的名称。打印bot服务500可以获取与用户相关联的默认打印设置,而不是有关预设设置的信息。

在步骤s817中,打印bot服务500将有关所获取的打印机队列的信息存储在账户信息数据库550中。现在将参考图10描述存储在打印bot服务500的账户信息数据库550中的信息。账户信息数据库550存储图10所示的表格1001。应用标识符(id)是用于识别消息应用服务600的识别信息。用户id是用于识别正在使用消息应用服务600的用户的识别信息。通过参考应用id和用户id,处理单元630可以确定哪个用户正在从哪个应用访问打印bot服务500。

本示例性实施例彼此关联地注册用户的识别信息和打印机的设备信息。备选地,可以将用于识别多个用户所属的组的组识别信息与打印机的设备信息相关联。在这种情况下,属于通过表格1001中存储的组识别信息识别的组的用户可以使用具有与组识别信息相关联地存储的设备信息的打印机。

描述将返回到图8所示的顺序图。

在步骤s818中,打印bot服务500向消息应用服务600发送请求,该请求用于显示与存储在账户信息数据库550中的用户的识别信息相关联的打印机队列。在步骤s819中,消息应用服务600指示客户端计算机100显示打印机队列的名称和打印设置。在步骤s819中,如果没有打印机被注册在云打印服务400中,则消息应用服务600指示客户端计算机100在应用上表明没有打印机被注册。

在步骤s820中,如果用户已经改变了要使用的打印机队列,则消息应用服务600将选择的打印机队列通知给打印bot服务500。在步骤s821中,打印bot服务500向云打印服务400发送关于与所选打印机队列相对应的打印机是否准备好进行打印的询问。打印bot服务500获取与从云打印服务400中选择的打印机队列相对应的打印机的状态。打印bot服务500可以将获取的状态信息通知给消息应用服务600以指示消息应用服务600显示打印机状态。

在步骤s822中,在打印机状态的获取完成之后,打印bot服务500将用于显示消息应用服务600的应用上的打印设置和“开始打印”按钮的指令发送给消息应用服务600。图9a和图9b中例示的消息904是用于选择要使用的打印机的画面的示例。当用户选择按钮907时,如图9b所示,以列表形式显示打印bot服务500中存储的打印机队列的名称。用户可以从显示的打印机名称列表中选择用于图像数据打印的打印机队列的名称。图9a和图9b中例示的区域905是用于显示打印设置的画面的示例。图9a例示的区域905中显示的“默认设置”和“2合1+双面”是预设设置的名称,并且是当用户在云打印服务400中注册预设设置时由用户设置的名称。在图9a中例示的画面中,区域905显示预设打印设置的列表。然而,区域905可以使用户能够执行任何打印设置。例如,区域905可以使用户能够设置打印副本的数量、彩色/黑白打印、纸张尺寸、打印方向和诸如排版等的打印布局。在步骤s823中,消息应用服务600指示客户端计算机100显示“开始打印”按钮908。

在步骤s824中,用户操作客户端计算机100以执行用于改变打印设置的操作。在步骤s825中,消息应用服务600将改变的打印设置通知给打印bot服务500。在选择了“默认设置”的状态下显示区域905,并且将默认设置通知给打印bot服务500。此后,如果用户已经改变了打印设置,则将更改后的打印设置通知给打印bot服务500。

在步骤s826中,打印bot服务500存储更改后的打印设置。每当用户改变打印设置时,都执行步骤s824和s825中的处理。

在步骤s827中,用户操作客户端计算机100以选择“开始打印”按钮908,并且消息应用服务600接收对“开始打印”按钮908的选择。在步骤s828中,消息应用服务600将打印开始指令发送到打印bot服务500。在步骤s828中,消息应用服务600将例如文本“开始打印”发送到打印bot服务500。打印bot服务500分析接收到的文本,并在接收到的文本中包括文本“开始打印”的情况下执行步骤s829中所示的处理。

在步骤s829中,打印bot服务500根据接收到的打印开始指令,将在步骤s804中临时存储的文档和图像数据以及在步骤s826中存储的打印设置发送到云打印服务400。

在步骤s830中,云打印服务400将反映打印设置的打印作业发送到与指定的打印机队列相对应的打印机。当打印成功完成时,打印机200将成功打印的通知发送到云打印服务400。打印bot服务500轮询云打印服务400,检测到打印成功完成,并指示消息应用服务600显示打印完成。在图9a和图9b中例示的消息906是打印完成的通知。

如上所述,即使消息应用服务600不具有打印功能,将消息应用服务600与打印bot服务500关联也使得能够打印注册的文档或图像数据。打印bot服务500向云打印服务400发出认证请求,从而用户可以通过指定在云打印服务400中注册的打印机来执行打印。这使得用户即使不在打印bot服务500中逐一注册打印机也能够进行打印。

在图8所示的示例中,用户打印消息应用服务600中注册的数据。备选地,其他用户或其他客户端计算机可以打印消息应用服务600中注册的数据。如果其他用户或其他客户端计算机能够打印注册的数据,则即使客户端计算机不存储数据也能打印数据。

现在将参考图7a和7b描述根据第一示例性实施例的通过打印bot服务500执行的处理。当多个计算机中的一个或任意一个计算机的cpu执行在打印bot服务500中包括的多个计算机中的一个或任意一个计算机中存储的程序时,执行以下处理。当用户从消息应用服务600打开由打印bot服务500加入的聊天室的画面时,开始图7a中例示的处理。

当打印bot服务500的处理单元530从消息应用服务600接收到聊天室的画面已经打开的通知时,则在步骤s201中,处理单元530执行激活处理。

在步骤s202中,处理单元530将打印bot服务500设置为准备好接收消息应用服务600中注册的数据作为用户要打印的数据。处理单元530管理消息应用服务600的状态。在步骤s202中,处理单元530将消息应用服务600的状态改变为数据注册等待状态。

在步骤s203中,处理单元530确定是否从消息应用服务600接收到打印数据已经被注册的通知。当从消息应用服务600接收到文档和图像数据已经被注册的通知时(在步骤s203为“是”),处理进入步骤s204。相反,当没有从消息应用服务600接收到文档和图像数据已经被注册的通知时(在步骤s203为“否”),则处理返回到步骤s203。

在步骤s204中,处理单元530指示消息应用服务600显示“打印”按钮。

在步骤s205中,处理单元530确定是否从消息应用服务600接收到用户选择了“打印”按钮的通知。如果接收到用户选择了“打印”按钮的通知(在步骤s205中为“是”),则处理进入步骤s206。相反,如果未接收到用户选择了“打印”按钮的通知(在步骤s205为“否”),则处理返回到步骤s205。备选地,如果即使在从指示显示“打印”按钮的时间起经过了预定时间段之后仍未选择“打印”按钮,而是注册了后续数据,则处理可以返回到步骤s204。即使用户没有打印消息应用服务600中注册的数据,该处理也能够使用户打印后续注册的数据。

在步骤s206中,参考账户信息数据库550,处理单元530确定是否注册了与所连接的消息应用服务600的识别信息相对应的访问令牌。基于账户信息数据库550中注册的表格1001,处理单元530基于例如选择了“打印”按钮的通知,识别哪个用户(用户id)从哪个应用(应用id)发布了打印开始指令。当与应用id和用户id对应的访问令牌被注册时(步骤s206中为“是”),处理进入步骤s210。相反,当没有注册与用于消息应用服务600的识别信息相对应的访问令牌时(在步骤s206中为“否”),则处理进入步骤s207。在步骤s207中,处理单元530指示客户端计算机100显示认证信息输入画面。在步骤s207中,处理单元530将用户权限认证请求发送到云打印服务400。云打印服务400将显示认证信息输入画面所需的url返回给打印bot服务500。经由消息应用服务600将url发送到客户端计算机100。在步骤s207中,显示图9a和9b中例示的区域903。

在步骤s208中,处理单元530确定是否已经获取了从云打印服务400获取访问令牌所需的信息。当成功完成用户身份验证时,云打印服务400经由消息应用服务600将获取访问令牌所需的信息发送到打印bot服务500。如果在打印bot服务500获取了用于获取访问令牌所必需的信息之前经过了预定时间,处理可以返回到步骤s203。

在步骤s209中,处理单元530通过使用在步骤s208中获取的信息从云打印服务400获取访问令牌。处理单元530将访问令牌注册在由账户信息数据库550管理的表1001中。

在步骤s210中,处理单元530使用在步骤s209中获取的访问令牌访问云打印服务400,以获取打印机队列信息和打印设置。当处理单元530确定存储了访问令牌时(在步骤s206为“是”),处理进入步骤s210。在步骤s210中,处理单元530通过使用在账户信息数据库550中注册的访问令牌访问云打印服务400,以获取打印机队列信息和打印设置。

在步骤s211中,处理单元530将所获取的打印机队列信息和打印设置存储在账户信息数据库550的表1001中。

在步骤s212中,处理单元530确定在账户信息数据库550中是否存在与使用消息应用服务600的用户相关联的打印机队列。如果在账户信息数据库550中存储了与使用消息应用服务600的用户相关联的打印机队列(在步骤s212为“是”),则处理进入步骤s214。另一方面,当与用户关联的打印机队列未存储在账户信息数据库550中时(在步骤s212为“否”),则处理进入步骤s213。在步骤s213中,处理单元530指示消息应用服务600显示表示未注册相关打印机的消息。然后,处理返回到步骤s203。

在步骤s214中,处理单元530指示消息应用服务600显示与正在使用消息应用服务600的用户的识别信息相关联地存储的打印机队列的名称。然后,显示图9a中例示的消息904。

在步骤s215中,处理单元530指示消息应用服务600显示与认证的用户关联存储的打印设置。处理单元530从账户信息数据库550中存储的表格1001中获取与正在使用消息应用服务600的用户相关联的打印设置。然后,处理单元530指示消息应用服务600显示打印设置。根据本示例性实施例,处理单元530获取作为具有打印设置的一组在云打印服务400中预先注册的预设设置的名称信息,并指示消息应用服务600显示名称信息。

在步骤s216中,处理单元530向云打印服务400询问所选择的打印机队列是否处于可打印状态,以确定状态获取是否完成。处理单元530执行步骤s216中的处理,直到针对所选打印机队列的状态获取完成为止。当针对所选择的打印机队列的状态获取完成时(在步骤s216为“是”),处理进入步骤s217。

当针对打印机队列的状态获取完成时(在步骤s216中为“是”),处理进入步骤s217。在步骤s217中,处理单元530指示消息应用服务600显示“开始打印”按钮908。在本示例性实施例中,在打印机队列状态获取之后显示“开始打印”按钮908。然而,可以在不获取打印机队列状态的情况下显示“开始打印”按钮908。

在步骤s218中,处理单元530确定用户是否已更改打印设置。如果用户已经改变了区域905中的打印设置(在步骤s218中为“是”),则消息应用服务600将事件通知给打印bot服务500。响应于打印设置已被更改的事件的通知,打印bot服务500的处理单元530执行步骤s219中所示的处理。相反,如果用户尚未改变打印设置(在步骤s218中为“否”),则处理进入步骤s220。

在步骤s219中,处理单元530将更改后的打印设置发送至打印服务540,并将更改后的打印设置存储在打印bot服务500的存储器中。在步骤s220中,处理单元530确定打印机队列是否被更改。当用户已经改变了打印机队列时(在步骤s220中为“是”),该改变作为事件被通知给打印bot服务500。当打印bot服务500的处理单元530接收到事件时(在步骤s220中为“是”),处理返回至步骤s216。在步骤s216中,处理单元530向云打印服务400进行询问,以获取与改变之后的打印机队列相对应的打印机的状态。

如果用户尚未改变打印机队列(在步骤s220中为“否”),则处理进入步骤s221。在步骤s221中,处理单元530确定是否已经发出打印开始指令。当用户选择区域905中的“开始打印”按钮时,消息应用服务600检测到该事件,并将“开始打印”按钮的选择通知给打印bot服务500。当从消息应用服务600接收到表示用户选择了“开始打印”按钮的事件时,处理单元530确定发出了打印开始指令(在步骤s221中为“是”)。相反,如果用户尚未选择区域905中的“开始打印”按钮,则处理单元530确定没有发出打印开始指令(在步骤s221中为“否”)。然后,处理返回到步骤s218。

当发出打印开始指令时(在步骤s221中为“是”),处理进入步骤s222。在步骤s222中,处理单元530将存储在打印作业存储510中的打印数据和存储在打印服务540中的打印设置发送到云打印服务400。在步骤s222中,打印服务540从打印作业存储510中获取打印数据,并将打印数据与打印设置相关联。处理单元530将通过打印服务540使之相互关联的打印数据和打印设置发送到云打印服务400。当在步骤s222中将打印数据和打印设置发送到云打印服务400时,可以打印在消息应用服务600中注册的文档和图像数据。

当打印数据和打印设置已经被发送到云打印服务400时,则在步骤s223中,处理单元530向云打印服务400询问打印是否完成。在步骤s223中,处理单元530向云打印服务400发送关于是否通过定期轮询完成打印的询问。响应于从处理单元530接收到的通知,云打印服务400确定打印是否完成。备选地,云打印服务400可以将打印完成通知给处理单元530,并且处理单元530可以响应于该通知来确定打印完成。

当处理单元530确定打印完成时(在步骤s223为“是”),处理进入步骤s224。在步骤s224中,处理单元530指示消息应用服务600显示打印完成。相应地,用户可以经由消息应用服务600知道打印完成。

如上所述,当打印bot服务500访问打印机信息被预先注册在其中的其他服务时,用户可以通过使用在其他服务中注册的打印机来执行打印。

根据第一示例性实施例,当用户通过使用消息应用服务600发出打印指令时,打印数据和打印设置被发送到云打印服务400。当云打印服务400接收到打印数据和打印设置时,云打印服务400将打印数据和打印设置发送到与指定的打印机队列相对应的打印机。现在将围绕以下情况来描述第二示例性实施例:用户从消息应用服务600中指定其中注册了目标打印机的云打印服务,并发送打印数据和打印设置。在这种情况下,用户操作消息应用服务600以经由打印bot服务500将打印数据和打印设置发送到云打印服务400。然后用户从所使用的打印机登录到云打印服务400,选择打印目标数据,并发出打印指令。

由图13a和图13b组成的图13示出了根据第二示例性实施例的当通过使用消息应用服务600和打印bot服务500执行打印时的顺序图。与根据第一示例性实施例(图8)的处理相当的处理被赋予相同的附图标记,并将省略其的重复描述。

在步骤s1300中,打印bot服务500将打印设置获取请求发送到云打印服务400。

在步骤s1301中,云打印服务400将打印设置发送到打印bot服务500。在步骤s1302中,打印bot服务500将打印设置存储在账户信息数据库550中的表格1001中。

在步骤s1303中,打印bot服务500将用于显示云打印服务400的名称和打印设置的请求发送到消息应用服务600。当消息应用服务600从打印bot服务500接收到显示请求时,则在步骤s1304中,消息应用服务600指示客户端计算机100显示云打印服务400的名称和要用于打印的打印设置。如果打印bot服务500具有用于多个云打印服务400的访问令牌并存储了用于多个云打印服务400的打印设置,则消息应用服务600指示客户端计算机100以可选择的方式显示多个云打印服务400。在步骤s1305中,客户端计算机100从用户接收对要使用的云打印服务400的选择。在步骤s1306中,消息应用服务600将选择的云打印服务400通知打印bot服务500。

在步骤s829中,将打印设置和作业发送到云打印服务400。然后,在步骤s1307中,用户向要用于打印的打印机输入例如id和密码等的认证信息,该认证信息将要用于认证云打印服务400。根据本示例性实施例,用户通过使用由用户输入的id和密码来访问云打印服务400。用户可以在第一次访问中获取访问令牌,并通过使用访问令牌来执行第二次和后续访问。

在步骤s1308中,打印机200将用户输入的认证信息(例如id和密码)通知给云打印服务400。云打印服务400通过使用接收到的认证信息来执行用户识别。当认证成功完成时,则在步骤s1309中,云打印服务400将访问令牌和与打印作业有关的信息发送给打印机200。云打印服务400将与已认证用户关联地存储的打印作业有关的信息发送给打印机200。作业信息的示例包括打印目标文档和图像数据的文件名,以及诸如在云打印服务400中注册数据时的日期和时间及打印设置(例如,彩色模式和打印份数)等的信息。如果云打印服务400的用户认证失败,则云打印服务400通知打印机200认证失败。响应于该通知,打印机200在操作单元202上显示表示认证失败的消息。

在步骤s1310中,打印机200在操作单元202上显示从云打印服务400接收到的作业信息,并从用户接收对要打印的作业的选择。

当用户选择作业时,则在步骤s1311中,打印机200将用于发送所选择的作业的打印数据和打印设置的请求发送到云打印服务400。在步骤s1312中,云打印服务400将包括基于发送请求的打印数据的作业以及打印设置发送到打印机200。

打印机200基于接收到的打印数据和打印设置执行打印,并且将打印完成的通知发送到云打印服务400。

图11a和11b是示出根据第二示例性实施例的由打印bot服务500执行的处理的流程图。与图7a和7b共同的处理被赋予相同的附图标记,并且将省略其的重复描述。当多个计算机中的一个或任意一个的cpu执行打印bot服务500中的多个计算机中的一个或任意一个中存储的程序时,实现图11a和图11b中例示的处理。

在步骤s1400中,处理单元530使用获取的访问令牌访问云打印服务400,以获取与认证用户相对应的打印设置。与第一示例性实施例不同,处理单元530仅获取打印设置,而不获取有关在云打印服务400中注册的打印机队列的信息。在步骤s1401中,处理单元530在账户信息数据库550的表格1001中存储已经从云打印服务400获取的打印设置。

在步骤s1402中,处理单元530访问消息应用服务600,并指示客户端计算机100显示已认证的云打印服务400。当打印bot服务500具有多个云打印服务400的访问令牌时,处理单元530指示客户端计算机100显示多个云打印服务400的名称。

在步骤s1403中,处理单元530访问消息应用服务600,并指示客户端计算机100显示与所选择的云打印服务400相对应的打印设置。此后,处理进入步骤s217。

上述处理完成了在云打印服务400中注册打印数据和打印设置。

随后,用户操作打印机200以访问云打印服务400,从而用户可以打印注册的打印数据。即使在发布打印开始指令之前用户没有选择要用于打印的打印机,根据第二示例性实施例的服务器系统也可以通过使用在云打印服务400中注册的打印机来执行打印。

如果打印bot服务500访问已经注册了打印机信息的其他服务,则根据本说明书的服务器系统使得可以通过使用在其他服务中注册的打印机来执行打印。

其他实施例

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

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

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