服务提供系统和用于接收服务的设备的制作方法

文档序号:7626844阅读:175来源:国知局
专利名称:服务提供系统和用于接收服务的设备的制作方法
技术领域
本发明的各方面涉及一种将来自服务提供设备的服务提供给客户设备的系统。
背景技术
服务提供设备将服务相关的信息提供给客户设备的系统已经得到了广泛的使用。这样的服务通常被称作信息提供服务。服务提供设备通过从客户设备获取需处理的数据并且对获取的数据进行处理,而向客户设备提供数据处理服务的系统也已经得到了广泛的使用。
作为用于接收信息提供服务的客户设备,配置为通过接收来自服务器的网络数据并在其显示单元上显示接收到的网络数据,而接收来自服务器的服务的设备已经得到了广泛的使用。在网址“RSS readerRabbit Ticker”<URLhttp//www.work-at.co.jp/rabbit/>上,公开了一个用于接收信息提供服务的客户设备的实例。该网址上公开的客户设备访问服务器以判断服务器上是否张贴了新的信息,并且如果服务器上张贴了新的信息则从服务器获取新信息。
在日本专利临时公开第HEI 9-238215号专利中公开了一种系统,在该系统中数字复印设备连接到主机上,该主机具有该数字复印设备所不具有的功能。在该系统中,主机执行数字复印设备所不具有的功能,并将经过处理的数据提供给数字复印设备,以便使数字复印设备可通过主机实现该功能。
将来自服务提供设备的新近的信息(如新闻)即时地提供给客户设备的系统,也得到了广泛的使用。在这样的系统中,服务提供设备从客户设备获取服务相关的设置信息,以便为客户设备进行服务的使用注册,其后向客户设备提供服务,例如,向客户设备提供与服务相关的设置信息中所包含的关键词或者数据类型相匹配的信息。
通常,这样的服务提供设备配置为,如果发生特定的事件则自动删除服务的使用注册。这种导致使用注册的删除的事件之一是一种状态的延续,在该状态下由于,例如客户设备断电,服务提供设备不能够定位需提供服务的目标客户设备。如果需提供给客户设备的服务是付费服务,如果预付卡变为无效或者信用卡无法交易则该服务提供设备可能会删除该客户设备的使用注册。
需注意,用户不希望这种使用注册的自动删除的情况是存在的。如果用户不希望这种使用注册的自动删除,则用户需要进行重新注册,其通过经客户设备重新输入设置信息以便向服务提供设备重新发送设置信息而实现。但是,这种进行重新注册的输入操作对于用户来说是很麻烦的。

发明内容
本发明的各方面的优势在于,其提供了系统、设备、方法和其上储存有程序的计算机可读介质中的至少一种,用于对已由服务提供设备终止的服务进行重新注册,而不需要用户执行重新注册操作。
需注意到在下面的描述中提出了元件之间的不同连接。需注意到,除非另外说明,这些连接通常可以是直接连接或间接连接,且本说明书并不意于在这方面进行限制。本发明的各方面作为可储存在计算机可读介质上的程序,可以实现为计算机软件,计算机可读介质包括但不限于RAM、ROM、闪速存储器、EEPROM、CD介质、DVD介质、临时存储器、硬盘驱动器、软盘驱动器、永久性存储器,以及类似设备。
根据本发明的一方面,提供了一种用于从服务提供设备向客户设备提供服务的系统。在该系统中,服务提供设备包括数据库、注册单元、提供单元、服务结束判断单元、以及服务终止单元,其中,数据库能够保存多条设置信息,这些信息中的每条分别包括关于将要提供给客户设备的服务的一个或者多个参数,同时将多条设置信息中的每条分别与客户设备的标识符关联起来;如果接收到来自客户设备的请求对服务进行注册的注册请求信号,则注册单元从客户设备获取设置信息,并且将获取的设置信息注册到数据库中,同时将获取的设置信息与客户设备的标识符关联起来;提供单元根据关于将要提供给客户设备的服务的设置信息,向客户设备提供服务;服务结束判断单元判断对应于多条设置信息中的每一条的服务的结束条件是否满足;服务终止单元从数据库中删除判断为满足结束条件的服务的设置信息,以便终止满足结束条件的服务。
在该系统中,客户设备包括使用注册单元、设置信息存储单元、功能执行单元、检测单元、以及重新注册单元,其中,如果通过客户设备的操作单元接收到用户输入,请求对即将接收到的服务进行使用注册,则使用注册单元向服务提供设备发送注册请求信号,从用户获取关于即将接收到的服务的设置信息,并向服务提供设备发送从用户那里获取的设置信息;设置信息存储单元对使用注册单元发送给服务提供设备的设置信息进行复制,以将设置信息保存在客户设备的存储单元中;功能执行单元执行关于服务提供设备所提供的并且由使用注册单元的操作引起的,服务的预定的功能;检测单元从已经通过使用注册单元进行使用注册的服务中,检测出由服务提供设备终止的服务;如果检测单元检测到已终止的服务,则重新注册系统从存储单元中读出对应于已终止的服务的设置信息,并将设置信息与注册请求信号一起发送给服务提供设备,以便对已终止的服务进行使用注册。
通过这种配置,首次提供给服务提供设备的设置信息储存在客户设备中,而在重新注册阶段,储存的设置信息从存储单元中读出,并提供给服务提供设备。因此,不需要请求用户重新输入设置信息,即可完成重新注册。也就是说,不需请求用户操作即可完成对服务的重新注册。
可选择地,当服务终止单元终止满足结束条件的服务时,服务终止单元可以向接收服务的客户设备发送通知,指示满足结束条件的服务的终止。在这种情况下,检测单元可以通过接收来自服务提供设备的通知,来检测由服务提供设备终止的服务。
通过这种配置,可以在客户设备中无困难地检测到服务的终止。
还可选择地,客户设备的重新注册单元可以包括重新注册判断单元,该单元判断已终止的服务是否需要使用注册。在这种情况下,重新注册单元可以对经重新注册判断单元判断为需要进行使用注册的服务进行使用注册,而可对经重新注册判断单元判断为不需要进行使用注册的服务不进行使用注册。
因为对不需要重新注册的服务不执行使用注册,所以防止了不考虑用户的意图而执行重新注册。
在一个实例中,重新注册判断单元可以对检测单元检测到的已终止的服务的终止因素进行分析,并根据分析结果判断已终止的服务是否需要使用注册。
因为客户设备基于对该因素的判断结果来判断是否有必要进行重新注册,所以不需要用户的操作就可以决定是否执行重新注册。
在另一个实例中,当服务终止单元终止满足结束条件的服务时,服务终止单元可以向接收服务的客户设备发送,关于已终止的服务的重新注册的接受的信息。在这种情况下,重新注册判断单元可以根据关于已终止的服务的重新注册的接受的信息,来判断已终止的服务是否需要使用注册。
通过这种配置,可以从服务提供设备控制客户设备上的重新注册的执行。
可选择地,客户设备可以包括许可判断单元和重新注册禁止单元,其中许可判断单元根据关于是否允许对该服务进行重新注册的用户输入信息,来判断检测单元所检测到的已终止服务的重新注册是否得到许可;重新注册禁止单元禁止对经许可判断单元判断为不允许进行重新注册的已终止的服务进行重新注册。
因为根据用户指定的信息来控制重新注册的执行,所以根据用户的意图并且不需要麻烦的用户操作就可以执行重新注册。
还可选择地,使用注册单元可以包括许可信息存储单元,许可信息存储单元请求用户通过操作单元输入关于是否允许对服务进行重新注册的信息,以便获取用户输入信息,并且对于已经进行了使用注册的每项服务,都将用户输入信息储存在存储单元中。许可判断单元可以根据储存在许可信息存储单元中的用户输入信息来判断是否允许对已终止的服务进行重新注册。
通过这种配置,可以在首次使用注册阶段,即从用户处获取关于重新注册许可的信息。因此,可以比在服务完成之后从用户那里获取信息的情况更加迅速地执行重新注册。
仍可选择地,客户设备可以包括消息显示单元和设置信息改变单元,其中,在检测单元检测到服务终止之后,消息显示单元显示消息,请求用户改变设置信息中的特定参数,该特定参数对应于重新注册单元所要注册的服务;设置信息改变单元配置为,当用户通过操作单元新输入了特定参数的值时,设置信息改变单元将储存在存储单元中的特定参数的值改为特定参数的新输入的值,并且控制重新注册单元使用特定参数的新输入的值对已终止的服务进行使用注册。
通过这种配置,可以使用特定参数的改变后的值进行重新注册。因此,即使当特定参数值不适合继续该服务的时候,也不需要麻烦的用户操作即可执行重新注册。应该理解,当提供单元发生修改(例如,实施了服务软件版本升级)的时候会发生这样的情况,从而无法得到改变后的提供单元的参数值。另外,当要提供给用户的信息(例如,新闻或者张贴的评论)变得过多的时候,或者当发现付费目标无效的时候,也可能发生这样的情况。
还可选择地,如果在服务中发生了特定的事件,则服务提供设备的服务结束判断单元可以判断为,服务的结束条件得到满足。当服务终止设备终止该服务时,服务提供设备的服务终止单元可以向接收了即将终止的服务的客户设备发送服务终止因素,该因素与已终止的服务中发生的特定事件有关。在这种情况下,客户设备可以包括参数确定单元,参数确定单元基于从服务提供设备接收到的因素来确定特定的参数。
因为依据服务终止因素来确定特定的参数,所以响应于服务终止因素修改特定参数值的同时,可以适当地执行重新注册。
仍可选择地,如果对应于该服务的设置信息中的一个或者多个参数不能够用于成功地继续该服务,则服务提供设备的服务结束判断单元可以判定为,服务的结束条件得到满足。服务提供设备的服务终止单元可以向接收了即将终止的服务的客户设备发送信息,指示导致结束条件得以满足的适当的参数范围。在这种情况下,客户设备的消息显示单元可以显示导致结束条件得以满足的适当的参数范围,以及请求用户改变导致结束条件得以满足的参数的消息,作为请求用户改变特定参数的消息。
通过这种配置,改变特定参数的指令可以可靠地通知给用户。因此,可以防止用户通过操作单元输入不合适的参数值。从而,使重新注册操作能够顺利执行。
还可选择地,客户设备可以包括删除单元,如果用户通过操作单元输入删除命令,则删除单元将删除储存在存储单元中的至少一条设置信息。
因为储存在存储单元中的设置信息可被删除,所以当客户设备从该用户转交给其他人的时候,可以防止发生个人信息的泄漏。
根据本发明的另一方面,提供有通信设备,用于从服务提供设备向通信设备提供服务的系统中。在这种情况下,服务提供设备包括数据库、注册单元、提供单元、服务结束判断单元、以及服务终止单元,其中数据库能够储存多条设置信息,其中每条设置信息都包括关于即将提供给通信设备的服务的一个或多个参数,同时将多条设置信息中的每条都与通信设备的标识符关联起来;如果从通信设备接收到请求对服务进行注册的注册请求信号,则注册单元从该通信设备获取设置信息,并在数据库中注册所获取的设置信息,同时将获取的设置信息与通信设备的标识符关联起来;提供单元根据关于即将提供给通信设备的服务的设置信息,向通信设备提供服务;服务结束判断单元判断对应于多条设置信息中的每条的服务的结束条件是否得以满足;服务终止单元从数据库中删除判断为满足结束条件的服务的设置信息,以便终止满足结束条件的服务。
此外,通信设备包括使用注册单元、设置信息存储单元、功能执行单元、检测单元、以及重新注册单元,其中,如果通过通信设备的操作单元接收到用户输入,请求对即将接收到的服务进行使用注册,则使用注册单元向服务提供设备发送注册请求信号,从用户获取关于即将接收到的服务的设置信息,并向服务提供设备发送从用户获取的设置信息;设置信息存储单元对使用注册单元发送给服务提供设备的设置信息进行复制,以将设置信息保存在通信设备的存储单元中;功能执行单元执行关于服务提供设备所提供的并且由使用注册单元的操作引起的,服务的预定功能;检测单元从已经通过使用注册单元进行使用注册的服务中,检测出由服务提供设备终止的服务;如果检测单元检测到已终止的服务,则重新注册单元从存储单元中读出对应于已终止的服务的设置信息,并将设置信息与注册请求信号一起发送给服务提供设备,以便对已终止的服务进行使用注册。
通过这种配置,首次提供给服务提供设备的设置信息储存在通信设备中,而在重新注册阶段,储存的设置信息从存储单元中读出,并提供给服务提供设备。因此,不需要请求用户重新输入设置信息即可完成重新注册。也就是说,不需要请求用户操作即可完成对服务的重新注册。
可选择地,当服务终止单元终止满足结束条件的服务时,服务提供设备的服务终止单元可以向接收该服务的通信设备发送通知,指示满足结束条件的服务的终止。在这种情况下,检测单元可以通过接收来自服务提供设备的通知来检测由服务提供设备终止的服务。
通过这种配置,可以在通信设备中无困难地检测到服务的终止。
还可选择地,重新注册单元可以包括重新注册判断单元,重新注册判断单元判断已终止的服务是否需要使用注册。在这种情况下,重新注册单元可以对经重新注册判断单元判断为需要进行使用注册的服务进行使用注册,而可对经重新注册判断单元判断为不需要进行使用注册的服务不进行使用注册。
因为对不需要重新注册的服务不执行使用注册,所以防止了不考虑用户的意图而执行重新注册。
在一个实例中,重新注册判断单元可以对检测单元检测到的已终止的服务的终止因素进行分析,并根据分析结果判断已终止的服务是否需要使用注册。
因为通信设备基于对该因素的判断结果来判断是否有必要进行重新注册,所以不需要用户的操作就可以决定是否执行重新注册。
在另一个实例中,当服务终止单元终止满足结束条件的服务时,服务提供设备的服务终止单元可以向接收服务的通信设备发送,关于已终止的服务的重新注册的许可的信息。在这种情况下,重新注册判断单元可以根据关于已终止的服务的重新注册的许可的信息,来判断已终止的服务是否需要使用注册。
通过这种配置,可以从服务提供设备控制通信设备上的重新注册的执行。
可选择地,通信设备可以包括许可判断单元和重新注册禁止单元,其中许可判断单元根据关于是否允许对该服务进行重新注册的用户输入信息,来判断检测单元所检测到的已终止服务的重新注册是否得到许可;重新注册禁止单元禁止对经许可判断单元判断为不允许进行重新注册的已终止的服务进行重新注册。
因为根据用户指定的信息来控制重新注册的执行,所以根据用户的意图并且不需要麻烦的用户操作就可以执行重新注册。
还可选择地,使用注册单元可以包括许可信息存储单元,许可信息存储单元请求用户通过操作单元输入关于是否许可服务的重新注册的信息,以便获取用户输入信息,并且对于已经进行了使用注册的每项服务,都将用户输入信息储存在存储单元中。许可判断单元可以根据储存在许可信息存储单元中的用户输入信息来判断是否许可已终止的服务的重新注册。
通过这种配置,可以在首次使用注册阶段,即从用户处获取的关于对重新注册的许可的信息。因此,可以比在服务结束之后从用户那里获取信息的情况更加迅速地执行重新注册。
仍可选择地,通信设备可以包括消息显示单元和设置信息改变单元,其中,在检测单元检测到服务终止之后,消息显示单元显示消息,请求用户改变设置信息中的特定参数,该特定参数对应于重新注册单元所要注册的服务;设置信息改变单元配置为,当用户通过操作单元新输入了特定参数的值时,设置信息改变单元将储存在存储单元中的特定参数的值改为特定参数的新输入的值,并且控制重新注册单元使用特定参数的新输入的值对已终止的服务进行使用注册。
通过这种配置,可以使用特定参数的改变后的值进行重新注册。因此,即使当特定参数值不适合继续该服务的时候,也不需要麻烦的用户操作即可执行重新注册。应该理解,当提供单元发生修改(例如,实施了服务软件版本升级)的时候会发生这种情况,从而无法得到改变后的提供单元的参数值。另外,当要提供给用户的信息(例如,新闻或者张贴的评论)变得过多的时候,或者当发现付费目标无效的时候,也可能发生这种情况。
还可选择地,如果在服务中发生了特定的事件,则服务提供设备的服务结束判断单元可以判断为,服务的结束条件得到满足。当服务终止设备终止该服务时,服务提供设备的服务终止单元可以向接收了即将终止的服务的通信设备发送服务终止因素,该因素与已终止的服务中发生的特定事件有关。在这种情况下,通信设备可以包括参数确定单元,参数确定单元基于从服务提供设备接收到的因素来确定特定的参数。
因为根据服务终止因素来确定特定的参数,所以响应于服务终止因素修改特定参数值的同时,可以适当地执行重新注册。
仍可选择地,如果对应于该服务的设置信息中的一个或者多个参数不能够用于成功地继续该服务,则服务提供设备的服务结束判断单元可以判定为,服务的结束条件得到满足。服务提供设备的服务终止单元可以向接收了即将终止的服务的通信设备发送信息,指示导致结束条件得以满足的合适的参数范围。在这种情况下,通信设备的消息显示单元可以显示满足结束条件的合适的参数范围,以及请求用户改变满足结束条件的参数的消息,作为请求用户改变特定参数的消息。
通过这种配置,改变特定参数的指令可以可靠地通知给用户。因此,可以防止用户通过操作单元输入不合适的参数值。从而,使重新注册操作能够顺利执行。
还可选择地,通信设备可以包括删除单元,如果用户通过操作单元输入删除命令,则删除单元将删除储存在存储单元中的至少一条设置信息。
因为储存在存储单元中的设置信息可被删除,所以当通信设备从该用户转交给其他人的时候,可以防止发生个人信息的泄漏。
根据本发明的另一方面,提供有配备了上述的通信设备的成像设备,以及在记录介质上形成图像的成像单元。通信设备的功能执行单元使用成像单元来执行预定的功能。
成像设备,例如打印机,通常具有较差的操作单元。如果给这种成像设备提供通信设备,则不需要麻烦的用户操作即可执行服务的重新注册。
根据本发明的另一方面,提供有服务提供设备,用于从服务提供设备向客户设备提供服务的系统中。服务提供设备包括数据库、注册单元、提供单元、服务结束判断单元、以及服务终止单元,其中,数据库能够储存多条设置信息,其中每条设置信息都包括关于即将提供给客户设备的服务的一个或多个参数,同时将多条设置信息中的每条都与客户设备的标识符联系起来;如果接收到来自客户设备的请求对服务进行注册的注册请求信号,则注册单元从该客户设备获取设置信息,并在数据库中注册所获取的设置信息,同时将获取的设置信息与客户设备的标识符关联起来;提供单元根据关于即将提供给客户设备的服务的设置信息,向客户设备提供服务;服务结束判断单元判断对应于多条设置信息中的每条的服务的结束条件是否得到满足;服务终止单元从数据库中删除判断为满足结束条件的服务的设置信息,以便终止满足结束条件的服务。
在该系统中,客户设备包括使用注册单元、设置信息存储单元、功能执行单元、检测单元、以及重新注册单元,其中,如果通过客户设备的操作单元接收到用户输入,请求对即将接收到的服务进行使用注册,则使用注册单元向服务提供设备发送注册请求信号,从用户获取关于即将接收到的服务的设置信息,并向服务提供设备发送从用户获取的设置信息;设置信息存储单元对使用注册单元发送给服务提供设备的设置信息进行复制,以将设置信息保存在客户设备的存储单元中;功能执行单元执行关于服务提供设备所提供的并且由使用注册单元的操作引起的,服务的预定的功能;检测单元从已经通过使用注册单元进行使用注册的服务中,检测出由服务提供设备终止的服务;如果检测单元检测到已终止的服务,则重新注册单元从存储单元中读出对应于已终止的服务的设置信息,并将设置信息与注册请求信号一起发送到服务提供设备,以便对已终止的服务进行使用注册。
通过这种配置,首次提供给服务提供设备的设置信息储存在客户设备中,而在重新注册阶段,储存的设置信息从存储单元中读出,并提供给服务提供设备。因此,不需要请求用户重新输入设置信息即可完成重新注册。也就是说,不需要请求用户操作即可完成对服务的重新注册。
根据本发明的另一方面,提供了一种用于从服务器向客户设备提供服务的系统。在该系统中,服务器包括注册单元、服务提供单元、以及判断单元,其中,当从客户设备接收到服务注册的请求时,注册单元获取关于服务的设置信息;服务提供单元向客户设备提供服务;判断单元判断服务的结束条件是否得到满足,并发送关于终止满足结束条件的服务的终止信息。在该系统中,客户设备包括使用注册单元、检测单元、以及重新注册单元,其中,响应于用户输入,使用注册单元向服务器发送注册请求,从用户接收关于该服务的设置信息,以便向服务器发送该设置信息,并在存储器中储存该设置信息;检测单元基于发送自服务器的终止信息,检测已终止的服务;重新注册单元配置为,如果检测单元检测到已终止的服务,则重新注册单元从存储器中读出设置信息,并将设置信息与注册请求一起发送给服务器,以便对该服务进行使用注册。
通过这种配置,首次提供给服务提供设备的设置信息储存在客户设备中,而在重新注册阶段,储存的设置信息从存储单元中读出,并提供给服务提供设备。因此,不需要请求用户重新输入设置信息即可完成重新注册。也就是说,不需要请求用户操作即可完成对服务的重新注册。
根据本发明的另一方面,提供有客户设备,用于从服务器向客户设备提供服务的系统中。客户设备包括使用注册单元、检测单元、以及重新注册单元,其中,响应于用户输入,使用注册单元向服务器发送注册请求,从用户接收关于该服务的设置信息,以便向服务器发送该设置信息,并在存储器中储存该设置信息;检测单元基于发送自服务器的终止信息,检测已终止的服务;重新注册单元配置为,如果检测单元检测到已终止的服务,则重新注册单元从存储器中读出设置信息,并将设置信息与注册请求一起发送给服务器,以便对该服务进行使用注册。
通过这种配置,首次提供给服务提供设备的设置信息储存在客户设备中,而在重新注册阶段,储存的设置信息从存储单元中读出,并提供给服务提供设备。因此,不需要请求用户重新输入设置信息即可完成重新注册。也就是说,不需要请求用户操作即可完成对服务的重新注册。


图1是根据本发明的各方面的通信系统的框图;图2A和2B示出了根据本发明的各方面的服务选择屏幕的实例;图3示出了根据本发明的各方面的将用于顶层服务选择屏幕的用作服务定义信息的XML数据的实例;图4示出了根据本发明的各方面的将用作属于一种类型的服务的信息的XML数据的实例;图5A、5B和5C示出了根据本发明的各方面的参数输入屏幕的实例;图6示出了根据本发明的各方面的用于博客(blog)搜索服务的服务I/F信息的实例;图7示出了根据本发明的各方面的用于本地新闻服务的服务I/F信息的实例;图8是显示根据本发明的各方面的由多功能设备执行的多功能设备进程的流程图;图9是显示根据本发明的各方面的由目录服务器执行的目录服务器进程的流程图;图10是显示根据本发明的各方面的由多功能设备执行的服务接收进程的流程图;图11是显示根据本发明的各方面的由多功能设备执行的作业启动进程的流程图;图12是显示根据本发明的各方面的由功能服务器执行的功能服务器进程的流程图;图13是显示根据本发明的各方面的由功能服务器执行的服务控制信息进程的流程图;图14是显示根据本发明的各方面的由功能服务器执行的注册进程的流程图;图15A示出了根据本发明的各方面的请求服务ID管理表的实例;图15B示出了根据本发明的各方面的定期答复管理表的实例;图16A示出了根据本发明的各方面的定期查询管理表的实例;
图16B和16C示出了根据本发明的各方面的使用注册信息的实例;图17是显示根据本发明的各方面的由功能服务器执行的服务端UI作业的流程图;图18是显示根据本发明的各方面的由多功能设备执行的UI作业的流程图;图19是显示根据本发明的各方面的由多功能设备执行的参数信息传输进程的流程图;图20是显示根据本发明的各方面的由多功能设备执行的定期查询进程的流程图;图21是显示根据本发明的各方面的由多功能设备执行的集成查询信息生成进程的流程图;图22示出了根据本发明的各方面的集成查询信息的实例;图23是显示根据本发明的各方面的由功能服务器执行的定期查询响应进程的流程图;图24是显示根据本发明的各方面的由功能服务器执行的参数检验进程的流程图;图25是显示根据本发明的各方面的由功能服务器执行的集成答复信息生成进程的流程图;图26是显示根据本发明的各方面的由功能服务器执行的答复判断进程的流程图;图27示出了根据本发明的各方面的集成答复信息的实例;图28是显示根据本发明的各方面的由功能服务器执行的博客(blog)搜索进程的流程图;图29是显示根据本发明的各方面的由功能服务器执行的新闻信息生成进程的流程图;图30是显示根据本发明的各方面的由功能服务器执行的超时监控进程的流程图;图31是显示根据本发明的各方面的由多功能设备执行的集成答复信息接收进程的流程图;图32是显示根据本发明的各方面的由多功能设备执行的结束服务分析进程的流程图;
图33示出了根据本发明的各方面的导致服务取消的参数的重新输入屏幕的实例;图34是显示根据本发明的各方面的由功能服务器执行的定期服务提供进程的流程图;图35是显示根据本发明的各方面的由功能服务器执行的服务端打印作业的流程图;图36是显示根据本发明的各方面的由多功能设备执行的输出作业的流程图;图37是显示根据本发明的各方面的由多功能设备执行的注册信息删除进程的流程图。
具体实施例方式
以下,将参考附图对依据本发明的各方面的示例性实施例进行描述。
图1是根据本实施例的通信系统1的框图。如图1中所示,通信系统1包括数字多功能设备(以下,称作多功能设备)10、目录服务器20、以及功能服务器30,它们能够通过广域网络NT(例如,互联网)互相通信。多功能设备10、目录服务器20和功能服务器30通过各自的路由器2、3、4连接到广域网络NT上。
路由器2将包括多功能设备10的子网络连接到广域网络NT上。也就是说,路由器2在子网络中的节点与广域网络NT中的节点之间转接数据通信。更具体地,关于要发送到子网络中的设备(例如,多功能设备10)的信息包,路由器2只将判断为是对子网络中的设备的请求的响应的信息包传送给子网络,并阻碍其它信息包。也就是说,路由器2起防火墙的作用,阻碍从广域网络向多功能设备的未授权的接入。
多功能设备10具有电话功能、扫描仪功能、打印功能、复印功能、以及传真功能。可以从功能服务器30使用多功能设备10的这些数据输入/输出功能。
响应于来自设备(例如,多功能设备10)的请求,功能服务器30可向该设备(例如,多功能设备10)提供多种类型的服务。响应于来自多功能设备10的请求类型,功能服务器30可执行合适的进程(例如,如图34中所示的定期服务提供进程)。
为了从功能服务器30接收服务,多功能设备10与功能服务器30进行通信,并启动进程(例如,图8的步骤S116中的服务接收进程,和图11中的步骤S356中的输出作业)。例如,在关于某项服务的数据通信中,多功能设备10从功能服务器30接收打印数据,并使用打印功能打印出打印数据。
目录服务器20向多功能设备10提供关于(将由功能服务器30提供的)可用服务的信息。
以下,将对多功能设备10、目录服务器20和功能服务器30的配置进行说明。如图1所示,多功能设备10包括控制单元11、操作单元12、读取单元13、记录单元14、通信单元15、存储单元16、声音输入单元17、声音输出单元18、以及显示单元19。控制单元11包括在图1中未示出的CPU(中央处理器)、ROM(只读存储器)和RAM(随机存取存储器),并控制多功能设备10中的各种部件。在控制单元11的ROM中,储存有将由CPU执行的用于接收服务的程序。
操作单元12具有供用户操作的按键(未示出)。操作单元12获取关于用户进行的按键操作的信息,并将获得的信息传送给控制单元11。起扫描仪作用的读取单元13读取形成于(打印于)原件上的图像,并生成对应于读取的图像的图像数据。起打印机作用的记录单元14使用打印数据在纸张上形成图像。通信单元15对与广域网络NT上的节点(例如,目录服务器20或者功能服务器30)的数据通信进行数据处理。
存储单元16包括非易失性RAM,其中储存有不同类型的数据。声音输入单元17包括安装在多功能设备10的手持式送受话器(未示出)中的传声器。声音输入单元17生成表示传声器所获取的声音的声音数据(例如PCM数据)。声音输出单元18通过安装在手持式送受话器中的扬声器或者安装在多功能设备10的主体中的扬声器来输出声音。显示单元19包括显示器19a,在其上显示要通知给用户的各种类型的信息。
目录服务器20包括控制单元21、通信单元22、以及存储单元23。控制单元21包括在图1中未示出的CPU、ROM和RAM,并控制目录服务器20中的各种部件。在控制单元21的ROM中,储存有将由控制单元21的CPU执行的程序。
通信单元22对通过广域网络NT的数据通信进行数据处理。存储单元23包括HDD(硬盘驱动器),其中储存有不同类型的信息。具体地,存储单元23具有服务定义信息区24,其中储存有多条服务定义信息25。服务定义信息25是功能服务器30能够提供的关于服务的信息(例如,每项服务的类型,以及每项服务的目标设备的URL(统一资源定位器地址))。
如果用户通过使用操作单元12输入了显示命令,指示多功能设备10显示服务选择屏幕,则多功能设备10运行以从目录服务器20获取服务定义信息25。使用获取的服务定义信息25,多功能设备10的控制单元11在显示器19a上显示表示每项服务的类型的服务选择屏幕(见图2A和2B),以便允许用户选择需要的服务。
在目录服务器20的存储单元23中,由功能服务器30提供的服务分类为多个类型,包括“打印服务”、“复印应用服务”、以及“信息提供服务”。在服务选择屏幕的屏幕表现进程中,多功能设备10首先如图2A中所示显示各个类型。如果用户选择了其中一种类型,则属于选定类型的服务将如图2B中所示进行显示。
在服务定义信息区24中,对于图2A中所示的(对应于各个类型的)顶层屏幕和图2B中所示的(对应于属于选定类型的服务的)屏幕之中的每个屏幕均准备了服务定义信息25,以便如上所述的屏幕表现进程能够完成。
图3示出了将用于顶层屏幕的用作服务定义信息25的XML(可扩展标记语言)数据的实例。图4示出了将用作属于其中一种类型的服务的信息的XML数据的实例。从图3和4中可以看到,每项数据均用XML进行描述。对图3和4中的XML数据中所使用的标签的说明如下表1所示。
表1


如果多功能设备10接收到顶层屏幕的服务定义信息,则在显示器19a上显示图2A中所示的服务选择屏幕。具体地,文字“DIRECTORYSERVICE(目录服务)”作为“Title”显示在图2A的服务选择屏幕的顶部。在“Title”下面,文字“PRINT SERVICE(打印服务)”、“COPYAPPLICATION SERVICE(复印应用服务)”和“INFORMATIONSUPPLY SERVICE(信息提供服务)”作为表示可选类型(“Link_Title”)的项目显示在显示器19a上。
因为ID(“Link_Location”)是与每个项目(每个类型)相关联的,如果通过操作单元12向控制单元11输入了关于选择项目的用户操作信息,则控制单元11使用选定项目的ID,显示出对应于选定类型的服务选择屏幕。
例如,在图2A中所示的顶层服务选择屏幕上,如果选择了“INFORMATION SUPPLY SERVICE(信息提供服务)”,则对应于“INFORMATION SUPPLY SERVICE(信息提供服务)”类型的各项服务的服务选择屏幕将如图2B中所示进行显示。更具体地,在图2B的服务选择屏幕上,文字“INFORMATION SUPPLY SERVICE(信息提供服务)”作为“Title”显示在顶端部分,而文字“BLOG SEARCHSERVICE(博客搜索服务)”、“NEWS SERVICE(新闻服务)”、“XTYPEINFORMATION SERVICE(X型信息提供服务)”和“Y TYPEINFORMATION SERVICE(Y型信息提供服务)”作为表示可选服务的项目(Link_Title)显示出来。如图2B中所示,可以将服务选择屏幕设置为,如果由于显示器19a的尺寸原因,不能同时将所有项目都显示在显示器19a上,则用户可通过滚动项目列表来浏览所有项目。
每个项目都与用于调用服务的URL(Link_Location)相关联,以便控制单元11能够访问目标服务器,其中该目标服务器是由对应于用户通过使用操作单元12选定的项目的URL所指定的。通过访问目标服务器,多功能设备10可以从服务器(即,功能服务器30)接收服务。具体地,多功能设备10访问DNS(域名系统)服务器40,以获取目标服务器的IP(互联网协议)地址,然后使用所获取的IP地址访问目标服务器。
接下来,将对功能服务器30的配置进行说明。功能服务器30包括控制单元31、通信单元32和存储单元33。控制单元31包括在图1中未示出的CPU、ROM和RAM,并控制功能服务器30中的各种部件。在控制单元31的ROM中,储存有将由CPU执行的用于提供服务的程序。
通信单元32对通过广域网络NT的数据通信实施数据处理。存储单元33包括HDD(硬盘驱动器),其中储存有不同类型的信息。具体地,存储单元33具有服务I/F(接口)信息区34,用于储存多条服务I/F(接口)信息36;以及服务软件区35,用于储存多个服务软件37。
多个服务软件37对应于功能服务器30能够提供的各种服务。功能服务器30通过执行多个服务软件37中的一个,为客户设备(例如,多功能设备10)提供所需的服务。每条服务I/F信息36均用于向多功能设备10请求参数,其中该参数是执行相应的服务所需要的。每条服务I/F信息36分别对应于功能服务器30能够提供的服务。
当多功能设备10从功能服务器30接收到服务I/F信息36时,多功能设备10使用接收到的服务I/F信息36生成参数输入屏幕,并在显示器19a上显示该参数输入屏幕(见图5A至5C),以便请求用户输入要设置的参数。
图6和7示出了服务I/F信息36的实例。图6是用于博客(blog)搜索服务的服务I/F信息36的实例,在博客(blog)搜索服务中搜索新近张贴在通常称作blog(Weblog)站点上的评论,以便找到包含有用户所设置的关键词的评论,生成对应于找到的评论的打印数据,并从多功能设备10的记录单元14将打印数据打印出来。图7是用于本地新闻服务的服务I/F信息36的实例,在本地新闻服务中搜索包含在某个数据库中的新闻数据,以便找到对应于用户指定的地区的本地新闻数据,生成对应于找到的本地新闻的打印数据,并从多功能设备10的记录单元14将打印数据打印出来。
图6和7中所示的服务I/F信息36都是用标记语言描述的,该标记语言与服务定义信息25的标记语言相同。在下表2中,对图6和7中的服务I/F信息36中所使用的标签的定义进行了说明。在下表2中,基本数据等同于表1中所示的基本数据。
表2



如果多功能设备10接收到服务I/F信息36,则图5A中所示的参数输入屏幕将在多功能设备10的显示器19a上显示。具体地,如图5A中所示,文字“BLOG SEARCH SERVICE(博客搜索服务)”作为“Title”在屏幕的顶端部分显示。在“Title”下面,文字“SEARCH KEY 1(搜索关键词1)”作为输入项目(‘Disp_Name’)显示出来。在文字“SEARCHKEY 1(搜索关键词1)”下面,显示出用于输入对应于输入项目“SEARCH KEY 1”的搜索关键词的输入栏。在输入栏内,显示出用户通过使用操作单元12输入的文字(关键词)。
在图6中所示的实例中,用于博客(blog)搜索服务的输入项目包括“SEARCH KEY 1(搜索关键词1)”、“SEARCH KEY 2(搜索关键词2)”和“SEARCH KEY3(搜索关键词3)”三个项目,而这三个输入项目不能同时全部在显示器19a上显示出来。因此,在参数输入屏幕中,在其左端和右端部分设置了三角形标记,以便允许用户沿横向滚动屏幕。如果用户对操作单元12进行操作以滚动屏幕,则根据用户操作,另一参数输入屏幕将显示出来。输入项目“SEARCH KEY 2(搜索关键词2)”或“SEARCH KEY 3(搜索关键词3)”的参数输入屏幕可与“SEARCH KEY 1(搜索关键词1)”的参数输入屏幕相同。
如果多功能设备10接收到图7中所示的服务I/F信息36,则多功能设备10将生成参数输入屏幕并将其在显示器19a上显示(见图5B)。具体地,如图5B中所示,文字“LOCAL NEWS SERVICE(本地新闻服务)”作为‘Title’在屏幕的顶端部分显示。在‘Title’下面,文字“REGION(地区)”作为输入项目(‘Disp_Name’)显示出来。在文字“REGION(地区)”下面,文字“HOKKAIDOH(北海道)”、“KANTOH(关东)”、“TOUKAI(东海)”作为输入项目‘REGION(地区)’的可选参数(‘Disp_Select’)显示出来。参数输入屏幕可设置为,使得用户能够通过竖直地滚动屏幕来浏览图5B中所示的那些项目以外的项目。
“LOCAL NEWS SERVICE(本地新闻服务)”的输入项目(‘Disp_Name’)除“REGION(地区)”之外还包括“PREPAID CARDNUMBER(预付卡号码)”、“NUMBER OF SHEETS FOR COLLECTINGINFORMATION(用于信息收集的纸张数目)”,这些项目不能同时在显示器19a上显示。因此,在参数输入屏幕中,在输入项目的左、右两侧设置了三角形标记,以便允许用户沿横向滚动屏幕。如果通过使用操作单元12进行了滚动屏幕的用户操作,则用于另一输入项目的参数输入屏幕将显示出来。例如,用户执行了向右滚动屏幕的用户操作,则输入项目“PREPAID CARD NUMBER(预付卡号码)”的参数输入屏幕显示在显示器19a上(见图5C)。
在图5C中所示的在输入项目“PREPAID CARD NUMBER(预付卡号码)”的参数输入屏幕中,显示出用于输入预付卡号码的输入栏。在输入栏中,显示出用户通过使用操作单元12输入的文字。在用于输入项目“NUMBER OF SHEETS FOR COLLECTING INFORMATION(用于信息收集的纸张数目)”的参数输入屏幕中,显示出用于输入打印新闻所用的纸张数目的输入栏(图5C中未示出)。
如果用户通过使用操作单元12对输入进行了确认,则用户通过每个参数输入屏幕输入的参数(包括在输入栏中显示的字符串)将发送给程序(其由URL(‘Action’)指定,并使用接收到的参数在功能服务器30上运行)。
以下,将对目录服务器20与功能服务器30之间的通信进行说明。在本实施例中,使用HTTP(超文本传输协议)作为多功能设备10、目录服务器20和功能服务器30之间的通信协议。通过使用可包含在HTTP请求或者对HTTP请求的响应中的消息,在多功能设备10、目录服务器20和功能服务器30之间交换命令和响应。
命令可以分为两种类型,第一类命令是从多功能设备10发送到服务器20或者30的(服务器命令),第二类命令是从服务器20或者30发送到多功能设备10的(多功能设备命令)。在有关这些命令的任何通信中,多功能设备10均用作(发送HTTP请求的)客户设备,使得从服务器20或者30发送给多功能设备10的信息包不会被路由器2阻止。
具体地,多功能设备10通过使用伴随HTTP请求或者POST命令的消息,向目录服务器20或者功能服务器30发送命令。如果服务器20或者30具有要发送给多功能设备10的命令(多功能设备命令),则服务器将(在对HTTP请求的HTTP响应或者来自多功能设备10的POST命令中的)消息附加到多功能设备命令上。
以下,将对由多功能设备10、目录服务器20和功能服务器30执行的进程进行说明。首先,将参考图8对由多功能设备10执行的多功能设备进程进行说明。图8是显示在多功能设备10的控制单元11的控制下执行的多功能设备进程的流程图。当多功能设备10的电源转到ON时,多功能设备进程立即启动。
首先,在步骤S101中,控制单元11执行多功能设备10的初始化进程。接着,在步骤S102中,控制单元11接受命令输入。命令输入是指用于指示多功能设备10执行某个进程的输入。例如,命令输入是用户通过使用操作单元12输入的键盘输入或者从外部计算机发送来的命令。
在步骤S103中,控制单元判断接到的命令输入是否是指示多功能设备10改变到服务模式的命令。如果该命令输入不是指示多功能设备10改变到服务模式的命令(S103否),则控制进行到步骤S104,在该步骤中执行对应于在步骤S102中接受的输入的另一模式的进程。例如,在步骤S104中可以执行将从外部计算机发送来的数据打印出来的打印输出进程。随后,控制返回到步骤S102。
如果命令输入是指示多功能设备10改变到服务模式的命令(S103是),则控制进行到步骤S105。在步骤S105中,控制单元11在显示器19a上显示选择屏幕,请求用户决定,用户是希望从列表中选择(将向功能服务器30请求的)所需服务,还是直接指定所需服务目标的URL。接着,控制单元11等待用户输入。如果用户输入得到接受,则控制单元11判断是否需要从服务列表中选择向功能服务器30请求的服务(S105)。
如果在步骤S105中判断出,应该从服务列表中选择向功能服务器30请求的服务(S105是),则控制进行到步骤S106,在该步骤中控制单元11向目录服务器20发送对服务列表的请求。更具体地,在步骤S106中,控制单元11向目录服务器20发送对顶层服务定义信息25的请求(见图3)。多功能设备10可以设置为,在存储单元23中具有用于请求顶层服务定义信息的URL。
接着,在步骤S107中,控制单元11通过通信单元15从目录服务器20接收顶层服务定义信息。在步骤S108中,控制单元11使用在步骤S107中接收的服务定义信息生成服务选择屏幕,并在显示器19a上显示该屏幕(见图2A)。随后,控制进行到步骤S110。
如果在步骤S105中判断为,将向功能服务器30请求的服务不从服务列表中选出(S105否),则控制进行到步骤S109,在该步骤中控制单元11生成用于允用户直接输入URL的输入屏幕,并在显示器19a上显示该输入屏幕。随后,控制进行到步骤S110。
在步骤S110中,控制单元11等待通过操作单元12在服务选择屏幕或者输入屏幕上执行的用户操作。如果执行了用户操作,则控制进行到步骤S111,在该步骤中控制单元11判断用户操作是否是用于选择链接的操作。具体地,在步骤S111中,如果用户在步骤S108所显示的服务选择屏幕上成功地进行了选择,或者如果向步骤S109显示的输入屏幕成功地输入了URL,则控制单元11判断用户操作是用于选择链接的操作。
如果用户操作不是用于选择链接的操作(S111否),则控制进行到步骤S112,在该步骤中控制单元11判断在步骤S110接受的用户操作是否是用于结束服务模式的操作。如果用户操作是用于结束服务模式的操作(S112是),则控制返回到步骤S102。也就是说,在这种情况下作为服务模式的进程终止。
如果在步骤S112中判断出,用户操作不是用于结束服务模式的操作(S112否),则控制进行到步骤S113,在该步骤中控制单元11发出蜂鸣声。接着,控制返回到步骤S110。也就是说,如果在步骤S110中接受的用户操作不是用于选择链接的操作,也不是用于结束服务模式的操作,则发出蜂鸣声以便通知用户,用户操作无效。
如果用户操作是用于选择链接的操作(S111是),则控制进行到步骤S114,在该步骤中控制单元11判断选定的链接是否是由服务的URL所表示的。
如果选定的链接不是由服务的URL所表示的(即,选定的链接是服务定义信息的ID或者是由目录服务器20的URL所表示的)(S114否),则控制进行到步骤S115。在步骤S115中,控制单元11对由“Link_Location”指定的服务定义信息25的ID进行分析(或者如果用户直接输入的是URL,则控制单元11对该URL进行分析),并向目录服务器20发送对服务定义信息25的请求。接着,控制单元11从目录服务器20接收所请求的服务定义信息。然后,控制返回到步骤S108以便在显示器19a上显示新的服务选择屏幕。
如果选定的链接是由服务的URL所表示的(S114是),则控制进行到步骤S116。在步骤S116中,控制单元11将选定的链接的URL(在服务定义信息的“Link_Location”中指定的URL或者直接输入的URL)赋值给一个自变量,并执行用于接收服务的服务接收进程(见图10)。在完成步骤S116之后,控制返回到步骤S102。
以下,将参考图9对由目录服务器20执行的进程(目录服务器进程)进行说明,目录服务器进程用于处理(在步骤S110中由多功能设备10发送的)对服务列表的请求和对服务定义信息25的请求。图9是显示在目录服务器20的控制单元21的控制下执行的目录服务器进程的流程图。
首先,控制单元21等待HTTP请求(S201)。如果控制单元21接收到HTTP请求,则控制进行到步骤S202。在步骤S202中,控制单元21判断在步骤S201中接收到的请求是否是对服务列表的请求。如果该HTTP请求是对服务列表的请求(S202是),则控制进行到步骤S203,在该步骤中控制单元21从服务定义信息区24读出顶层服务定义信息25。接着,控制进行到步骤S207,在该步骤中控制单元21生成包含有所获取的服务定义信息25的HTTP响应,并将该HTTP响应发送给发送设备。在完成步骤S207之后,目录服务器进程终止。
如果在步骤S202中判断为,在步骤S201中接收到的请求不是对服务列表的请求(S202否),则控制进行到步骤S204。在步骤S204中,控制单元21判断在步骤S201中接收到的HTTP请求是否是对服务定义信息25的请求。如果该HTTP请求是对服务定义信息25的请求(S204是),则控制进行到步骤S205,在该步骤中控制单元21从存储单元23的服务定义信息区24读出所请求的服务定义信息25。接着,控制进行到步骤S207,在该步骤中控制单元21生成包含有所获取的服务定义信息25的HTTP响应,并将该HTTP响应发送到发送设备。在完成步骤S207之后,目录服务器进程终止。
如果在步骤S204中判断为,该HTTP请求不是对服务定义信息25的请求(S204否),则控制进行到步骤S206,在该步骤中控制单元21对在步骤S201中接收到的HTTP请求进行处理。接着,控制单元21生成包含有处理结果的HTTP响应,并将该HTTP响应发送到发送设备。在完成步骤S207之后,目录服务器进程终止。
以下,将参考图10对在多功能设备进程的步骤S116中执行的服务接收进程进行说明。服务接收进程是在多功能设备10的控制单元11的控制下执行的。首先,控制单元11向目标设备发送HTTP请求,该目标设备具有由自变量指定的URL,以便使目标设备(即,功能服务器30)启动对应于该自变量所指定的URL的服务进程(S301)。
接着,在步骤S302中,控制单元11从功能服务器30接收到对话ID。如稍后所描述的,该对话ID是在功能服务器进程(图12)的步骤S405中产生的,并在功能服务器进程的步骤S409中提供给多功能设备10。
接下来,在步骤S303中,控制单元11向功能服务器30发送对多功能设备命令的查询(以下,称作多功能设备命令查询)。多功能设备命令查询包含有在步骤S302中接收到的对话ID。
接下来,控制单元11接收到对多功能设备命令查询的响应(即,HTTP响应)(S304)。然后,控制单元11判断对多功能设备命令查询的响应是否是作业启动命令(S305)。如稍后所描述的,作业启动命令是由功能服务器30的控制单元31输出的,例如,在步骤S603和S1703中。作业启动命令包含有用于指定作业类型的作业ID,和在作业执行期间与多功能设备10通信的目标设备的URL。
如果该响应是作业启动命令(S305是),则控制进行到步骤S306,在该步骤中控制单元11获取执行该作业所需的资源。在步骤S307中,控制单元11执行作业启动进程(见图11)。然后,控制进行到步骤S308,在该步骤中控制单元11等待,直到经过了预定的时间。在步骤S308之后,控制返回到步骤S303。
如果在步骤S305中判断为,该响应不是作业启动命令(S305否),则控制进行到步骤S309。在步骤S309中,控制单元11判断该响应是否是用于终止作业的作业结束命令。如稍后所描述的,作业结束命令是由功能服务器30的控制单元31输出的,例如,在步骤S610和S1708中。作业结束命令包含有用于终止作业的作业ID。
如果在步骤S309中判断为,该响应是作业结束命令(S309是),则控制进行到步骤S310。在步骤S310中,控制单元11向对应于包含在作业结束命令中的作业ID的作业发送结束命令,以便使该作业终止并且将该作业所使用的资源释放。接着,控制进行到步骤S308。
如果在步骤S309中判断为,该响应不是作业结束命令(S309否),则控制进行到步骤S311。在步骤S311中,控制单元11判断该响应是否是用于指示多功能设备10开始定期查询的开始命令(以下,称作定期查询开始命令)。如稍后所描述的,定期查询开始命令是由功能服务器30的控制单元31输出的,例如,在步骤S609中。
如果在步骤S311中判断为,该响应是定期查询开始命令(S311是),则控制进行到步骤S312。在步骤S312中,控制单元11从控制单元11的RAM中读出存储位置信息和重新注册许可信息。如稍后所描述的,在步骤S858(见图19)中,存储位置信息和重新注册许可信息暂时地储存在控制单元11的RAM中。接下来,在步骤S313中,控制单元11将查询管理信息写入储存在存储单元16中的表格中(以下,称作定期查询管理表)(见图16A)。对步骤S313的详细说明,将在稍后与对图14的步骤S609的说明一起进行。在完成步骤S313之后,控制进行到步骤S308。
如果在步骤S311中判断为,该响应不是定期查询开始命令(S311否),则控制进行到步骤S314,在该步骤中控制单元11判断该响应是否是表示无命令。如果该响应表示无命令(S314是),则控制进行到步骤S308。如果该响应不表示无命令(S314否),则控制进行到步骤S315,在该步骤中控制单元11判断该响应是否是服务结束命令。
如果该响应是服务结束命令(S315是),则服务接收进程终止。如果该响应不是服务结束命令(S315否),则控制单元11执行错误进程(例如,用于在显示器19a上显示错误消息的进程)。然后,服务接收进程终止。
以下,将参考图11对在服务接收进程的在步骤S307中执行的作业启动进程进行说明。首先,控制单元11判断作业启动命令是否是UI(用户界面)作业启动命令(S351)。UI作业启动命令是将对多功能设备10的UI设备(例如,操作单元12)的使用通知给多功能设备10的信息。
如果作业启动命令是UI作业启动命令(S351是),则控制进行到步骤S352。在步骤S352中,控制单元11启动UI作业(稍后将参考图18对其进行详细描述)并传送作业ID和该作业的通信目标设备的URL。随后,作业启动进程终止。
如果作业启动命令不是UI作业启动命令(S351否),则控制进行到步骤S353。在步骤S353中,控制单元11判断作业启动命令是否是输入作业启动命令。输入作业启动命令是将对输入设备(例如,读取单元13或者声音输入单元17)的使用通知给多功能设备10的信息。
更具体地,在步骤S353中,如果作业启动命令是(指示多功能设备10使用读取单元13从功能服务器30接收服务的)扫描仪作业启动命令,或者如果作业启动命令是(指示多功能设备10使用声音输入单元17接收服务的)语音作业启动命令,则控制单元11判断该作业启动命令是输入作业启动命令。
如果作业启动命令是输入作业启动命令(S353是),则控制进行到步骤S354,在该步骤中控制单元11启动输入作业,并传送作业ID和该作业的通信目标设备的URL。随后,作业启动进程终止。当输入作业启动时,目标设备(例如,读取单元13或者声音输入单元17)的信息即传送给输入作业。
通过步骤S354的执行,多功能设备10与功能服务器30之间的输入作业的通信进程随即开始。具体地,在输入作业的通信进程中,控制单元11根据来自功能服务器30的请求,使用输入设备(例如,读取单元13或者声音输入单元17)生成数据。也就是说,控制单元11生成功能服务器30所请求的数据,并将该数据发送到功能服务器30,以便接收服务(例如,数据发表服务)。应该注意,输入作业是与服务接收进程并行地执行的。
如果作业启动命令不是输入作业启动命令(S353否),则控制进行到步骤S355,在该步骤中控制单元11判断作业启动命令是否是输出作业启动命令。输出作业命令是将对输出设备(例如,记录单元14或者声音输出单元18)的使用通知给多功能设备10的信息。
具体地,如果作业启动命令是(指示多功能设备10使用多功能设备10的记录单元14(即,打印机)从功能服务器30接收服务的)打印作业启动命令,或者如果作业启动命令是(指示多功能设备10使用声音输出单元18从功能服务器30接收服务的)扬声器作业启动命令,则控制单元11判断该作业启动命令是输出作业启动命令。
如果作业启动命令是输出作业命令(S355是),则控制进行到步骤S356,在该步骤中控制单元11启动输出作业(见图36),并传送作业ID和该作业的通信目标设备的URL。然后,作业启动进程终止。当输出作业启动时,输出目标设备(例如,记录单元14或者声音输出单元18)的信息即传送给输出作业。通过步骤S356的执行,多功能设备10与功能服务器30之间的输出作业的通信进程随即开始。输出作业是与服务接收进程并行地执行的。
如果在步骤S355中判断为,作业启动命令不是输出作业命令(S355否),则作业启动进程终止,而不执行任何作业(UI作业、输入作业和输出作业)。
以下,将参考图12对由功能服务器30执行的功能服务器进程进行说明,其中功能服务器30接收由多功能设备10在步骤S301中输出的服务启动命令。图12的功能服务器进程是在功能服务器30的控制单元31的控制下执行的。应该注意,对于每项服务均准备有用于功能服务器进程的程序。
首先,控制单元31等待HTTP请求(S401)。如果控制单元31通过通信单元32接收到HTTP请求,则控制单元31判断接收到的HTTP请求是否是服务启动请求(S402)。如果接收到的HTTP命令是服务启动命令(S402是),则控制进行到步骤S405,在该步骤中控制单元31生成对话ID,准备包含有对话ID的传输数据,并启动服务进程。例如,如果功能服务器进程是接受对信息提供服务(例如,博客(blog)搜索服务或者本地新闻提供服务)的用户注册的进程,则在步骤S405中启动图14中所示的注册进程,作为服务进程。然后,控制进行到步骤S409。
如果接收到的HTTP请求不是服务启动命令(S402否),则控制进行到步骤S406。在步骤S406中,控制单元31判断接收到的HTTP请求是否是服务终止请求。如果接收到的HTTP请求是服务终止请求(S406是),则控制进行到步骤S407。在步骤S407中,将对话ID和资源释放。然后,控制进行到步骤S409。
如果接收到的HTTP请求不是服务结束命令(S406否),则控制单元31执行图13中所示的服务控制信息进程(S408)。然后,控制进行到步骤S409。在步骤S409中,控制单元31生成包含有在步骤S405、S407或者S408中生成的传输数据的HTTP响应。
在步骤S409之后,控制单元31判断是否已经执行了服务控制信息进程(S410)。如果已经执行了服务控制信息进程(S410是),则控制单元31设置传输完成标志,其储存在对应于对话ID或者作业ID的存储器地址中(S411)。随后,功能服务器进程终止。如果尚未执行服务控制信息进程(S410否),则功能服务器程序终止,而不执行步骤S411。
以下,将参考图13对在功能服务器进程的步骤S408中执行的服务控制信息进程进行解释。服务控制信息进程是在功能服务器30的控制单元31的控制下执行的。
首先,控制单元31判断要传送给服务的信息是否存在(S501)。更具体地,在步骤S501中,控制单元31判断在步骤S401中接收到的HTTP请求是否包含关于进程的信息,其中该进程完成由对话ID或者作业ID所确定的服务。
如果要传送给服务(进程)的信息不存在(S501否),则控制进行到步骤S506。如果要传送给服务(进程)的信息存在(S501是),则控制进行到步骤S502,在该步骤中确定对应于对话ID或者作业ID的进程。也就是说,在步骤S502中,确定了包含在接收到的HTTP请求中的信息将发送到的进程。
如果不能确定该进程(S503是),则控制单元31生成出错信息作为传输数据(S504)。然后,服务控制信息进程终止。如果成功地确定了该进程(S503否),则信息传送到所确定的进程(S505)。
接着,在步骤S506中,确定用于储存答复信息的答复信息区,其中该答复信息是由对应于对话ID或者作业ID的进程生成的。如果不能成功地确定答复信息区(S507是),则控制进行到步骤S504。在步骤S504中,生成出错信息,作为将包含在HTTP响应中的传输数据。然后,服务控制信息进程终止。
如果成功地确定了答复信息区(S507否),则控制进行到步骤S508,在该步骤中控制单元31判断是否已将答复信息储存在答复信息区中。如果答复信息已经储存在该区中(S508是),则控制进行到步骤S509,在该步骤中基于答复信息生成多功能设备命令。然后,服务控制信息进程终止。
如果答复信息尚未储存在该区中(S508否),则控制进行到步骤S510,在该步骤中生成指示无多功能设备命令的信息。然后,服务控制信息进程终止。
以下,将对在图12的功能服务器进程的步骤S405中启动的进程进行说明。在步骤S405中启动的进程的类型依据服务类型而改变。以下,将参考图14,对定期提供信息的服务(例如,博客(blog)搜索服务或者本地新闻服务)的注册进程作为实例进行说明。图14的注册进程是在功能服务器30的控制单元31的控制下执行的。
首先,在步骤S601中控制单元31执行初始化进程。在步骤S602中,控制单元31启动服务端UI作业(见图17)。在步骤S603中,控制单元31输出UI作业启动命令,作为多功能设备命令。具体地,在步骤S603中,控制单元31将UI作业启动命令写入答复信息区中。
通过这样的配置,UI作业启动命令作为对多功能设备10的多功能设备命令,通过服务控制信息进程发送到多功能设备10。控制单元31通过检查(在功能服务器进程的步骤S411中设置的)传输完成标志的设置状态来确认输出。应该注意,UI作业启动命令包含有作业ID和该作业的通信目标设备的URL。
在完成步骤S603之后,控制单元31判断参数输入是否完成(S604)。参数输入的完成是由控制单元31,通过判断指示参数输入完成的通知是否已输入给服务端UI作业(见图17)的步骤S711中的注册进程,来判断的。
如果在步骤S604中判断为,参数输入没有完成(S604否),则控制进行到步骤S605。在步骤S605中,控制单元11判断是否对终止进行了通知。终止通知是在服务端UI作业(见图17)的步骤S709中做出的。
如果在步骤S605中判断为,没有对终止进行通知(S605否),则控制返回到步骤S604。如果在步骤S605中判断为,对终止进行了通知(S605是),则控制进行到步骤S610。如果在步骤S604中判断为,参数输入已完成(S604是),则控制进行到步骤S606,在该步骤中控制单元31生成请求服务ID。
请求服务ID用于将对应于输入参数的服务,提供给作为参数输入源的多功能设备10。对于每项服务注册来说,请求服务ID都是唯一的,并且在步骤S609中仅通知给输入源(多功能设备10)。
在步骤S606之后,控制单元31将在步骤S606中生成的请求服务ID和输入的参数(表示该参数的值)写入储存在存储单元33中的表格(以下,称作请求服务ID管理表)(S607)。图15A示出了请求服务ID管理表的实例。
如图15A中所示,请求服务ID管理表包括请求服务ID,和表示在生成请求服务ID时由多功能设备10输入的参数的参数信息。在该表格中,参数信息与每个请求服务ID相关联。对于每种类型的注册进程分别准备有请求服务ID管理表。也就是说,对于每种类型的服务分别准备有请求服务ID管理表。例如,可以生成用于博客(blog)搜索服务的请求服务ID管理表,和用于本地新闻服务的请求服务ID管理表,并将其储存在存储单元33中。
具体地,在步骤S607中,将请求服务ID和发送自多功能设备10的参数的参数信息写入当前进程的请求服务ID管理表。
接着,在步骤S608中,控制单元31将步骤S606中生成的请求服务ID的答复管理信息写入储存在存储单元33中的定期答复管理表。图15B示出了储存在存储单元33中的定期答复管理表的实例。
如图15B中所示,定期答复管理表包括对每个请求服务ID的答复管理信息。每条答复管理信息均包括服务开始信息、服务URL、服务状态、查询日期、服务取消信息。
服务开始信息是关于服务准备是否完成的信息。如果服务准备已完成,则将服务开始信息表示为“TRUE(真)”值。如果服务准备没有完成,则将服务开始信息表示为“FALSE(假)”值。服务URL表示功能服务器30的URL,其中功能服务器30提供对应于请求服务ID的服务。服务状态表示功能服务器30的状态,其中功能服务器30提供对应于请求服务ID的服务。
如果对应于请求服务ID的服务的状态正常,则将服务状态表示为“0”。如果对应于请求服务ID的服务的状态异常,则将服务状态用负值(例如,“-3”)表示。
查询日期是表示接收到以请求服务ID为目标的定期查询的最近日期的信息。应该注意,如果在步骤S608中执行了写入操作,则当前日期将例外地写入定期答复管理表的查询日期区。
服务取消信息是关于服务是否已经完成的信息。如果服务已经完成,则将服务取消信息表示为“TRUE(真)”。如果服务正在运行,则将服务取消信息表示为“FALSE(假)”。
在步骤S608之后,控制单元31输出定期查询开始命令,作为多功能设备命令(S609)。具体地,在步骤S609中,控制单元31将定期查询开始命令写入答复信息区。通过该写入操作,将定期查询开始命令通过图13的服务控制信息进程传送给多功能设备10。应该注意,定期查询开始命令包括在步骤S606中生成的请求服务ID、表示多功能设备10应遵照的查询间隔的查询间隔信息、请求多功能设备10在间隔时段之后立刻进行查询的即时处理请求信息、以及表示将在多功能设备10端用于接收服务的输入/输出设备的类型的使用设备信息。
如上所述,如果多功能设备10的控制单元11接收到定期的查询开始命令,则执行步骤S312和S313。在步骤S312和S313中,控制单元11基于重新注册许可信息、使用注册信息的存储位置信息、以及包含在定期查询开始命令中的信息,将查询管理信息写入定期查询管理表(见图16A)。具体地,查询管理信息包括请求服务ID、请求状态信息、查询间隔信息、剩余时间信息、即时处理请求信息、使用设备信息、使用注册信息的存储位置信息、以及重新注册许可信息。图16A示出了储存在多功能设备10的存储单元16中的定期查询管理表的实例。图16B和16C示出了储存在多功能设备10的存储单元16中的使用注册信息的实例。
请求服务ID、查询间隔信息、即时处理请求信息、以及使用设备信息是与包含在定期查询开始命令中的相应的各条信息相同的。请求状态信息是关于是否将从功能服务器30获取服务状态作为对查询的响应的信息。如果服务状态将从功能服务器30获取,则将请求状态信息表示为“TRUE(真)”。如果服务状态将不从功能服务器30获取,则将请求状态信息表示为“FALSE(假)”。
在步骤S313中,控制单元11将请求状态信息设置为“TRUE(真)”并将其写入定期查询管理表。在本实施例中,多功能设备10依据用户操作来运行以改变定期查询管理表中的请求状态信息的值(改为“FALSE(假)”或者“TRUE(真)”),其中用户操作是用户通过使用操作单元12执行的,用于改变请求状态信息的操作。
剩余时间信息表示在下一查询时刻以前所剩余的时间。在步骤S313中,将与查询间隔相同的剩余时间写入定期查询管理表中。但是,剩余时间信息是在步骤S901中连续更新的(稍候将对其进行详细描述)。
为每条查询管理信息(即,为每个请求服务ID)都生成并管理使用注册信息。使用注册信息是在服务定义信息中描述的信息,用于注册对应于查询管理信息的服务。使用注册信息包括作为服务的‘Link_Title’标志的值的服务名,其中该服务对应于(在步骤S111中得到的)选定的链接,使用注册信息还包括表示‘Link_Location’标志(或者通过地址输入屏幕输入的URL)的值的注册目标URL、从注册目标设备(‘Link_Location’设备)获取的服务I/F信息、以及在参数信息传输进程中(见图19)用户通过在显示器19a中显示的参数输入屏幕(例如,图5A至5C)输入的参数信息。
图16B中所示的使用注册信息是用于博客(blog)搜索服务的使用注册信息的实例。图16C中所示的使用注册信息是用于本地新闻服务的使用注册信息的实例。
储存在定期查询管理表中的使用注册信息的存储位置信息表示存储器地址,作为使用注册信息的位置。重新注册许可信息表示对重新注册操作的许可或者禁止,其中重新注册操作是在步骤S856(稍后对其进行详细说明)中响应于查询,通过使用操作单元12而进行的。如果重新注册得到允许,则将重新注册许可信息表示为“TRUE(真)”。如果重新注册受到禁止,则将重新注册许可信息表示为“FALSE(假)”。
现在返回到图14,在步骤S609之后,控制进行到步骤S610,在该步骤中控制单元31输出UI作业结束命令,作为多功能设备命令。具体地,控制单元31将UI作业结束命令写入对应于步骤S405中生成的对话ID的答复信息区中。通过该写入操作,将UI作业结束命令作为多功能设备命令,通过图13的服务控制信息进程,传送给多功能设备10。
接下来,控制单元31将结束命令传送给在步骤S603中启动的服务端UI作业,以便终止服务端UI作业,并输出服务结束命令作为多功能设备命令。随后,注册进程终止。
接下来,将参考图17和18,对在注册进程的步骤S602中启动的服务端UI作业,和在步骤S352中由多功能设备10的控制单元11启动的UI作业进行说明,其中UI作业是对在注册进程的步骤S603中输出的UI作业启动命令的响应。图17示出了在功能服务器30的控制单元31的控制下执行的服务端UI作业。图18示出了在多功能设备10的控制单元11的控制下执行的UI作业。
如图17中所示,首先,控制单元31从多功能设备10接收到多功能设备作业命令查询(S701)。多功能设备作业命令查询由多功能设备10的控制单元11在步骤S800中准备成在所执行的UI作业中的传输数据,并在步骤S806中输出(见图18)。
在步骤S702中,控制单元31将(请求用户输入服务的参数的)参数请求命令发送到多功能设备10,作为多功能设备命令。具体地,控制单元31将储存在存储单元33中的服务I/F信息36,与参数请求命令一起,发送到多功能设备10。例如,如果启动服务端UI作业的注册进程的进程是用于接收博客(blog)搜索服务的进程,则图6中所示的服务I/F信息36将发送到多功能设备10。如果启动服务端UI作业的注册进程的进程是用于接收本地新闻服务的进程,则图7中所示的服务I/F信息36将发送到多功能设备10。
接下来,在步骤S703中,控制单元31初始化错误计数。接着,控制单元31从多功能设备10接收参数信息,包含有用户基于服务I/F信息36通过参数输入屏幕输入的参数。参数信息由多功能设备10在步骤S810中准备成传输数据,并在步骤S806中输出(见图18)。
接下来,在步骤S705中,控制单元31判断在步骤S704中接收到的参数值是否正确。如果参数值不正确(S705否),则控制进行到步骤S706。在步骤S706中,控制单元11基于错误计数,判断参数判断为不正确的次数是否达到二。
如果在步骤S706中判断为,错误计数不是二(即,错误计数是一)(S706否),则控制进行到步骤S707。在步骤S707中,控制单元31将“服务器接收NG”发送给多功能设备10的UI作业,该信息是作为服务器接收状态的信息,指示功能服务器30是否成功地从多功能设备10接收到信息。
在步骤S707之后,错误计数递增(S708)。接着,控制返回到步骤S704。
如果在步骤S706中判断为,错误计数达到二(S706是),则控制进行到步骤S709。在步骤S709中,控制单元31通知源进程(即,注册进程)终止,并终止服务端UI作业。
如果在步骤S705中判断为,参数是正确的,则控制进行到步骤S710。在步骤S710中,控制单元31将“服务器接收OK”作为服务器接收状态发送给多功能设备10的UI作业。
接下来,在步骤S711中,控制单元31将“参数输入完成”通知源进程(启动服务端UI作业的注册进程)。接着,控制单元31等待来自多功能设备10的服务状态请求(S712)。如果控制单元31接收到来自多功能设备10的服务状态请求,则控制单元31将服务状态信息发送给多功能设备10的UI作业(S713)。然后,控制返回到步骤S712。
也就是说,控制单元31继续接收来自多功能设备10的服务状态请求,并继续发送服务状态信息,直到服务端UI作业被另一作业终止(见S611)。服务状态信息是指示参数输入成功完成的信息。
以下,将对由多功能设备10的控制单元11执行的UI作业进行说明。响应于在图14的步骤S603中由功能服务器30输出的UI作业启动命令,在图11的步骤S352中启动UI作业。
如图18所示,首先,控制单元11准备多功能设备作业命令查询,作为传输数据。接着,控制单元11判断结束命令是否从(启动UI作业的)源进程发布给UI作业。该结束命令由源进程在图10的步骤S310中发布。
如果发布了结束命令(S801是),则控制进行到步骤S801,在该步骤中控制单元11通知UI作业的源进程(服务接收进程)终止,并终止该UI作业。
如果没有发布结束命令(S801否),则控制进行到步骤S803,在该步骤中控制单元11判断操作单元12和显示单元19是否处于忙碌状态。具体地,如果表示操作单元12和显示单元19的状态的忙碌标志Fu为ON,则控制单元11判断操作单元12和显示单元19是处于忙碌状态。如果忙碌标志Fu为OFF,则控制单元11判断操作单元12和显示单元19不处于忙碌状态。
如果操作单元12和显示单元19是处于忙碌状态(S803是),则控制进行到步骤S804,在该步骤中控制单元11等待,直到操作单元12和显示单元19的忙碌状态得到释放。接着,控制返回到步骤S803。如果操作单元12和显示单元19不处于忙碌状态(S803否),则控制进行到步骤S805,在该步骤中控制单元11将忙碌标志Fu设置为ON。
接下来,在步骤S806中,控制单元11将例如在步骤S800中已经准备好的传输数据发送到功能服务器30。接着,在步骤S807中,控制单元11接收对在步骤S806中发送的传输数据的响应。接下来,在步骤S808中,控制单元11判断该响应是否是参数请求命令。参数请求命令是由功能服务器30在图17的步骤S702中发布的。
如果该响应是参数请求命令(S808是),则控制进行到步骤S810,在该步骤中控制单元11执行参数信息传输进程(稍后将参考图19对其进行描述),以便于基于包含在参数请求命令中的服务I/F信息36显示参数输入屏幕,并接受用户输入的参数(见图19的S852)。
如果通过操作单元12输入了对输入的参数的确认信号,则将参数信息准备为传输数据,以便将输入的参数发送给在功能服务器30上运行的服务端UI作业(见图19的S870)。但是,如果当前的UI作业是由在图32的步骤S1638(稍后将对其进行说明)中启动的服务接收进程所启动的,则控制单元11使用储存在定期查询管理表中的使用注册信息来准备参数,作为传输数据,而不在显示器19a上显示参数输入屏幕,因为在这种情况下,将要执行的参数信息传输进程是为了对在功能服务器30中已经删除的服务进行重新注册。在步骤S810之后,控制进行到步骤S811,在该步骤中重新设置忙碌标志。接着,控制返回到步骤S801。
如果在步骤S808中判断为,该响应不是参数请求命令(S808否),则控制进行到步骤S812,在该步骤中控制单元11判断该响应是否是服务状态。服务状态是由功能服务器30在图17的步骤S713中发送的。
如果该响应是服务状态(S812是),则控制进行到步骤S813,在该步骤中控制单元11在显示器19a上显示关于服务状态的信息。接着,控制单元11准备服务状态请求,作为传输数据,用于从功能服务器30获取服务状态(S821)。然后,控制进行到步骤S811。
如果该响应不是服务状态(S812否),则控制进行到步骤S814,在该步骤中控制单元11判断该响应是否是服务器接收状态,服务器接收状态指示功能服务器是否成功地从多功能设备10接收到数据。如果该响应是服务器接收状态(S814是),则控制进行到步骤S815,在该步骤中控制单元11判断服务接收状态是否表示服务器接收NG。
如果该服务器接收状态是服务器接收NG(S815是),则控制进行到步骤S816,在该步骤中控制单元11准备与先前发送到功能服务器30的服务端UI作业的信息相同的信息(即,重新传输信息),并将准备好的信息设置为传输数据。接着,控制进行到步骤S811。
如果该服务器接收状态不是服务器接收NG(S815否),则控制进行到步骤S822,在该步骤中控制单元11准备服务状态请求,作为传输数据。接着,控制进行到步骤S811。
如果该响应不是服务器接收状态(S814否),则控制进行到步骤S817,在该步骤中控制单元11判断该响应是否表示无命令。如果该响应是无命令(S817是),则控制进行到步骤S823,在该步骤中控制单元11将多功能设备作业命令查询设置为传输数据。接着,控制进行到步骤S811。
如果该响应不是无命令(S817否),则控制进行到步骤S818,在该步骤中执行另一进程。在这种情况下,另一进程中准备的某些数据设置为传输数据。例如,在执行该响应指定的进程之后,将多功能设备作业命令查询设置为传输数据。接着,控制进行到步骤S811。
以下,将参考图19对在步骤S810中由控制单元11执行的参数信息传输进程进行说明。
首先,控制单元11判断在该进程中执行的参数传输是否与需要定期查询的服务的使用注册有关。如果参数传输与该使用注册无关,即,如果参数传输是对于不需要定期查询的单步服务而执行的(S850否),则控制进行到步骤S852。在步骤S852中,控制单元11基于包含在参数请求命令中的服务I/F信息36,在显示器19a上显示参数输入屏幕,以便接受来自用户的参数输入。
如果用户通过操作单元12对输入的参数进行了确认,则控制单元11基于输入的参数生成参数信息,并将参数信息设置为传输数据(S853)。
接着,在步骤S854中,执行与步骤S850的判断相同的判断。也就是说,如果步骤S850的判断结果是“YES(是)”,则步骤S854的判断结果也是“YES(是)”。如果步骤S850的判断结果是“NO(否)”,则步骤S854的判断结果也是“NO(否)”。如果步骤S854的判断结果是“NO(否)”,则控制进行到步骤S870,而不进行步骤S856至S858。在步骤S870中,控制单元11将在步骤S853中生成的参数信息设置为传输数据。随后,参数信息传输进程终止。
如果在步骤S850中判断为,在该进程中执行的参数传输与使用注册有关(S850是),则控制进行到步骤S851,在该步骤中控制单元11判断将要执行的使用注册是否是首次注册。在步骤S851中,控制单元11识别激活源,激活源启动导致当前参数信息传输进程的启动的服务接收进程,以便判断将要执行的使用注册是否是首次注册。更具体地,在步骤S851中,控制单元11判断服务接收进程是在步骤S116还是在步骤S1638(见图32)中启动的。如果服务接收进程是在步骤S116中启动的,则控制单元11判断将要执行的使用注册是首次注册。如果服务接受进程是在步骤S1638中启动的,则控制单元11判断将要执行的使用注册不是首次注册(即,将要执行的使用注册是重新注册)。
如果在步骤S851中判断为,将要执行的使用注册是首次注册(S851是),则控制进行到步骤S852,在该步骤中控制单元11基于包含在参数请求命令中的服务I/F信息36,将参数输入屏幕显示在显示单元19a上,以接受用户输入。如果用户通过操作单元12对输入的参数进行了确认,则控制单元11基于输入的参数生成参数信息,并将参数信息设置为传输数据(S853)。在这种情况下,步骤S854中的判断结果是“YES(是)”。
如果步骤S854中的判断结果是“YES(是)”,则控制进行到步骤S856,在该步骤中控制单元显示消息,询问用户是否允许自动的重新注册,自动的重新注册是在使用注册由功能服务器30删除时进行的。此外,在步骤S856中,控制单元11接受指示对重新注册的许可或禁止的用户输入。
接下来,在步骤S857中,控制单元11生成使用注册信息,其中包含有在步骤S853中生成的参数信息,并将使用注册信息储存在存储单元16中。接着,在步骤S858中,使用注册信息的存储位置(在步骤S857中生成的使用注册信息储存在存储单元16中的存储器地址)和在步骤S856中获取的重新注册许可信息暂时性地储存在控制单元11的RAM中。
接下来,控制单元11将参数信息设置为传输数据(S870)。然后,参数信息传输进程终止。
如果在步骤S851中判断为,将要执行的使用注册不是首次注册(S851否),则控制进行到步骤S861。在步骤S861中,控制单元11获取在步骤S1638(见图32)中启动服务接收进程时储存在控制单元11的RAM中的请求服务ID,从定期查询管理表获取对应于所获取的请求服务ID的使用注册信息的存储位置,接着,使用所获取的存储位置从存储单元16中读出使用注册信息。
接下来,在步骤S862中,控制单元11将包含在步骤S861中获取的使用注册信息中的服务I/F信息与包含在参数请求命令中的服务I/F信息进行比较,以便判断包含在参数请求命令中的服务I/F信息与包含在使用注册信息中的服务I/F信息是否一致。
如果参数请求命令的服务I/F信息与使用注册信息的服务I/F信息不一致(S862否),则控制进行到步骤S852,以便将与用户通过参数输入屏幕输入的参数相对应的参数信息设置为传输数据。然后,参数信息传输进程终止。
如果参数请求命令的服务I/F信息与使用注册信息的服务I/F信息一致(S862是),则控制进行到步骤S863,在该步骤中生成参数信息,该参数信息是包含在步骤S861中获取的使用注册信息中的参数信息的拷贝。接着,控制进行到步骤S870,在该步骤中控制单元11将该参数信息设置为传输数据。随后,参数信息传输进程终止。
以下,将参考图20对用于完成上述的定期查询的定期查询进程进行说明。定期查询进程是在多功能设备10的加电期间,在多功能设备10的控制单元11的控制下连续地执行的。
首先,控制单元11更新定期查询管理表中的每个请求服务ID的剩余时间(见图16A)。具体地,控制单元11确定上次执行步骤S901的内部计时器的时间与当前内部计时器的时间之间的差,和来自剩余时间的当前值的差。也就是说,在步骤S901中,控制单元11对剩余时间进行倒计数,获取并保存内部计时器的值。
存在这种可能性,定期查询管理表是在步骤S901的执行间隔之间新近生成的,因此在新近生成的定期查询管理表中的剩余时间的倒计数值中出现错误。但是,因为步骤S901高速地反复执行,所以这样的错误是很小的并且可以忽略。对于步骤S901的首次执行,可以基于多功能设备10关闭电源之前的最近一次备份的内部计时器的时间来确定倒计数值,或者可不执行剩余时间的倒计数(即,可只进行对内部计时器的时间的备份)。
接下来,在步骤S902中,控制单元11从定期查询管理表中选择出待处理的查询管理信息。如果没有找到待处理的查询管理信息(S903否),则控制进行到步骤S910。也就是说,如果不存在未经处理的查询管理信息(其不经过从S904开始的步骤),则步骤S903的判断结果变成“NO(否)”。
如果找到了待处理的查询管理信息(以下,经常称作目标查询管理信息)(S903是),则控制进行到步骤S904,在该步骤中控制单元11判断从上一次传输定期查询信号起,是否已经经过了预定的时间。如果还没有经过预定的时间(S904否),则控制进行到步骤S905,在该步骤中控制单元11基于包含在目标查询管理信息中的即时处理请求信息,判断是否需要即时查询。如果需要即时查询(S905是),则控制进行到步骤S906。如果不需要即时查询(S905否),则控制返回到步骤S902。
在步骤S906中,控制单元11基于目标查询管理信息中的剩余时间,来判断是否到达了对应于目标查询管理信息的服务的定期查询的传输时间。具体地,在步骤S906中,如果剩余时间的值为零或者负数,则控制单元11判断已经到达传输时间。如果剩余时间的值为正数,则控制单元11判断没有到达传输时间。如果没有到达传输时间(S906否),则控制返回到步骤S902。如果到达了传输时间(S906是),则控制进行到步骤S907。
在步骤S907中,控制单元11,基于目标查询管理信息中的使用设备信息,判断将用于接收对应于目标查询管理信息的服务的输入/输出设备是否正在由另一与该进程并行地运行的进程使用着(即,处于忙碌状态)。
例如,如果目标查询管理信息中的使用设备信息是“打印机”,则控制单元11判断记录单元14是否处于忙碌状态。如果目标查询管理信息中的使用设备信息是“扫描仪”,则控制单元11判断读取单元13是否处于忙碌状态。如果目标查询管理信息中的使用设备信息是“扬声器”,则控制单元11判断声音输出单元18是否处于忙碌状态。如果目标查询管理信息中的使用设备信息是“传声器”,则控制单元11判断声音输入单元17是否处于忙碌状态。
如果在使用设备信息中列出了两个或者更多输入/输出设备,则控制单元11对所有的输入/输出设备均进行忙碌状态判断。如果这些输入/输出设备中的至少一个处于忙碌状态,则控制单元11判断将用于接收对应于目标查询管理信息的服务的输入/输出设备正在使用。
如果在步骤S907中判断为,输入/输出设备正在使用(S907是),则控制返回到步骤S902。如果在步骤S907中判断为,输入/输出设备未在使用(S907否),则控制进行到步骤S908。
在步骤S908中,执行集成查询信息生成进程。图21是显示在多功能设备10的控制单元11的控制下执行的集成查询信息生成进程的流程图。图22示出了集成查询信息的实例。如图22所示,集成查询信息是用标记语言描述的。在集成查询信息中使用的各标签的定义如下表3中所示。
表3

如图20所示,首先,控制单元11判断集成查询信息生成进程的执行是否是执行步骤S901之后的首次执行。如果集成查询信息生成进程的执行是首次执行(S1001是),则控制进行到步骤S1011。在步骤S1011中,控制单元11在其RAM中获取存储区,以便生成集成查询信息。接着,控制单元11将标题信息写入该区(S1012)。因为集成查询信息作为HTTP中的POST命令传输,所以将目标设备的URL和指示附加了集成查询信息的信息写入标题信息中。集成查询信息将要发送到的目标设备已经预先确定。因此,将预定的设备的URL写入标题信息中。
接下来,在步骤S1013中,控制单元11生成NumPattern标签,将参数NumPattern的值设置为‘1’(即,生成字符串‘<NumPattern>1</NumPattern>’),并将其加入到集成查询信息(即,集成查询信息区)中。接着,控制单元11将Request_Service标签加入到集成查询信息中(S1014)。
接下来,在步骤S1015中,基于目标查询管理信息的请求状态信息,控制单元11在Request_Service标签之间(<Request_Service>与</Request_Service>之间)写入Request_Status标签。例如,请求状态信息的值为“FALSE(假)”,则将参数Request_Status设置为“FALSE(假)”,并且生成Request_Status标签(字符串<Request_Status>FALSE</Request_Status>)。接着,将Request_Status标签写入集成查询信息中。
接下来,在步骤S1016中,控制单元11将参数Num_Service_ID赋值为‘1’,生成Num_Service_ID标签(字符串<Num_Service_ID>1</Num_Service_ID>),并且将其写入集成查询信息中的Request_Service标签之间。
接下来,在步骤S1017中,控制单元11通过将目标查询管理信息的请求服务ID的值赋给参数Request_Service_ID,而生成Request_Service_ID标签(字符串<Request_Service_ID>(请求服务ID)</Request_Service_ID>),并将其写入Request_Service标签之间。随后,集成查询信息生成进程终止。
如果在步骤S1001中判断为,集成查询信息生成进程的执行是第二次或者后续次数的执行(S1001否),则控制单元11判断具有与目标查询管理信息的请求状态信息的值相同的值的Request_Status标签,是否已经储存在集成查询信息中。
如果具有与请求状态相同的值的Request_Status标签已经储存在集成查询信息中(S1021是),则控制进行到步骤S1022,在该步骤中控制单元11对应于具有与请求状态相同的值的Request_Status标签,对位于Request_Service标签之间的Num_Service_ID标签的值进行更新(S1022)。例如,如果在更新之前Num_Service_ID标签是字符串<Num_Service_ID>1</Num_Service_ID>,则将其改变为<Num_Service_ID>2</Num_Service_ID>。
接下来,在步骤S1023中,控制单元11通过将目标请求管理信息的请求服务ID的值赋给参数Request_Service_ID,而生成Request_Service_ID,并将其写入集成查询信息中的Request_Service标签之间。随后,集成查询信息生成进程终止。
如果具有与请求状态相同的值的Request_Status标签还没有储存在集成查询信息中(S1021否),则控制进行到步骤S1031。在步骤S1031中,控制单元11对集成查询信息中的NumPattern标签的参数NumPattern进行更新。也就是说,如果集成查询信息的NumPattern标签是字符串<NumPattern>1</NumPattern>,则控制单元11将其改为字符串<NumPattern>2</NumPattern>。
接下来,控制单元11在已经写入集成查询信息中的Request_Service标签的相邻的区中写入新的Request_Service标签(S1032),并将基于目标查询管理信息的请求状态信息的Request_Status标签写入新的Request_Service标签之间(S1033)。
例如,如果请求状态信息的值为‘TRUE(真)’,则控制单元11通过将参数Request_Status赋值为‘TRUE(真)’,而生成Request_Status标签(字符串<Request_Status>TRUE</Request_Status>),并将其写入集成查询信息。
接下来,在步骤S1034中,控制单元11通过将参数Num_Service_ID赋值为‘1’,而生成Num_Service_ID标签(字符串<Num_Service_ID>1</Num_Service_ID>),并将其写入集成查询信息中的新的Request_Service标签之间。
接下来,在步骤S1035中,控制单元11通过将目标查询管理信息的请求服务ID的值赋给参数Request_Service_ID,而生成Request_Service_ID标签,并将其写入集成查询信息中的新的Request_Service标签之间。随后,集成查询信息生成进程终止,返回到图20的步骤S902。
回到图20参考该图,如果在步骤S903中判断为不存在待处理的查询管理信息,即,如果定期查询管理表中的所有查询管理信息都经过了处理(S903否),则控制进行到步骤S910。在步骤S910中,控制单元11判断是否生成了集成查询信息。如果生成了集成查询信息(S910是),则控制单元11生成包含有集成查询信息的定期查询信号,其中集成查询信息储存在控制单元11的RAM中的集成查询信息区中,并且控制单元11将定期查询信号发送到查询目标设备(功能服务器30)(S911)。接着,控制返回到步骤S901。
如果在步骤S910中判断为,没有生成集成查询信息(S910否),则控制返回到步骤S901,而不执行步骤S911。
以下,将参考图23对定期查询响应进程进行描述,定期查询响应进程是将由功能服务器30,响应于在步骤S911中由多功能设备10输出的定期查询信号而执行的。定期查询响应进程是在功能服务器30加电期间,在功能服务器30的控制单元31的控制下连续地执行的。
首先,控制单元31等待来自多功能设备10的定期查询信号(S1101)。如果接收到定期查询信号(S1101是),则控制单元31从包含在接收到的定期查询信号中的集成查询信息中选择出请求服务ID(S1102)。
接下来,在步骤S1103中,控制单元31判断在集成查询信息中是否存在待处理的请求服务ID(以下,经常称作目标请求服务ID)。如果没有找到待处理的请求服务ID,即,不存在将经过从S1104开始的各步骤的请求服务ID,则步骤S1103的判断结果变为“NO(否)”。在这种情况下,控制进行到步骤S1130。如果找到了待处理的请求服务ID(S1103是),则控制进行到步骤S1104。
在步骤S1104中,控制单元31在其RAM中获取定期答复信息区,用于储存表示对请求服务ID的答复的定期答复信息,并将目标请求服务ID写入定期答复信息区,作为参数Request_Service_ID的值。接着,控制单元31在定期答复管理表中搜索对应于目标请求服务ID的答复管理信息(S1105)。如果没有找到对应于目标请求服务ID的答复管理信息(S1106否),则控制进行到步骤S1107。在步骤S1107中,控制单元31将‘TRUE’作为参数Service_Canceled的值,写入定期答复信息区,并将‘FALSE’作为参数Service_Start的值,写入定期答复信息区。
接下来,在步骤S1108中,控制单元31将值-4作为参数Service_Status的值,写入定期答复信息区。然后,控制进行到步骤S1120,在该步骤中执行图25中所示的集成答复信息生成进程。下面的表4示出了参数Service_Status的值和解释。
表4

如果在存储单元33中的定期答复管理表中找到了对应于目标请求服务ID的答复管理信息,则步骤S1106的判断结果变为‘YES(是)’。接着,控制进行到步骤S1109。在步骤S1109中,控制单元31对定期答复管理表的查询日期进行更新。具体地,在步骤S1109中,控制单元31将定期答复管理表中对应于目标请求服务ID的查询日期,更改为在步骤S1101中接收到定期查询信号时的日期和时间。
接着,控制单元31将包含在对应于目标请求服务ID的答复管理信息中的服务开始信息的值写入定期答复信息区,作为参数Service_Start的值(S1110)。接下来,在步骤S1111中,控制单元31将包含在对应于目标请求服务ID的答复管理信息中的服务取消信息的值写入定期答复信息区,作为参数Service_Cancled的值(S1111)。
接下来,在步骤S1112中,控制单元31判断写入定期答复信息区中的参数Service_Start的值是否为‘TRUE(真)’。如果参数Service_Start的值为‘TRUE(真)’(S1112是),则控制进行到步骤S1113,在该步骤中执行图24中所示的参数检验进程。
图24是显示在功能服务器30的控制单元31的控制下执行的参数检验进程的流程图。如图24中所示,首先,控制单元31判断对应于目标请求服务ID的服务是否是付费服务。如果该服务不是付费服务(S1150否),则控制单元31判断该参数为OK(S1158)。随后,参数检验进程终止。
如果该服务是付费服务(S1150是),则控制单元31基于包含在请求服务ID管理表中的目标请求服务ID的参数信息,判断预付卡号码(参数Prepaid的值)是否有效。如果预付卡号码是有效的(S1151是),则控制单元31判断该参数为OK(S1158)。随后,参数检验进程终止。
如果预付卡号码是无效的(S1151否),则控制进行到步骤S1152,在该步骤中控制单元31更改参数Service_Canceled的值(即,更新参数Service_Canceled)。接着,控制单元31判断重新注册是否将会受到拒绝。如果重新注册将不会受到拒绝(S1153否),则控制单元31将‘-2’作为参数Service_Status的值,写入定期答复信息区中。接着,控制进行到步骤S1156。
如果重新注册将会受到拒绝(S1153是),则控制单元31将‘-1’作为参数Service_Status的值,写入定期答复信息区中。接着,控制进行到步骤S1156。
控制单元31根据使预付卡号码无效的因素,判断重新注册是否将会受到拒绝。也就是说,如果预付卡号码的使用被认为是欺诈,则控制单元31判断重新注册将会受到拒绝。如果预付卡号码判断为无效仅是由于预付卡号码过期的事实,则控制单元31判断重新注册将不会受到拒绝。
在步骤S1156中,控制单元31将储存在定期答复信息区中的参数Service_Start的值更新为‘FALSE’。随后,控制单元31判断参数为NG(S1157)。接着,参数检验进程终止。
回到图23参考该图,如果参数检验进程终止,则控制进行到步骤S1114。在步骤S1114中,控制单元31判断在参数检验进程中参数是否已经判断为OK。如果控制单元31判断参数已经判断为OK(S1114是),则控制单元31将包含在对应于目标请求服务ID的答复管理信息中的服务URL的值(字符串)写入定期答复信息区,作为参数Service_URL的值(S1115)。接着,控制进行到步骤S1117。
如果控制单元31判断参数已经判断为NG(S1114否),则控制进行到步骤S1116,在该步骤中控制单元31从定期答复管理表中删除对应于目标请求服务ID的答复管理信息,并从请求服务ID管理表中删除对应于目标请求服务ID的参数信息。接着,控制进行到步骤S1120。
如果在步骤S1112中判断为,储存在定期答复信息区中的参数Service_Start的值不是‘TRUE(真)’(S1112否),则控制进行到步骤S1117。
在步骤S1117中,控制单元31判断与集成查询信息中的目标请求服务ID相关联的Request_Status标签的值(Reqyest_Status标签是在Request_Service标签之间的,在Request_Service标签之间描述了目标请求服务ID)是否为‘TRUE(真)’。如果Request_Status标签的值为‘TRUE(真)’(S1117是),财控制进行到步骤S1118,在该步骤中控制单元31写入包含在对应于目标请求服务ID的答复管理信息中的服务状态的值。随后,控制进行到步骤S1119。
如果Request_Status标签的值不是‘TRUE’(S1117否),则控制进行到步骤S1119,而不进行步骤S1118。在步骤S1119中,控制单元31判断包含在对应于目标请求服务ID的答复管理信息中的服务取消信息的值是否为‘TRUE(真)’。如果服务取消信息的值为‘TRUE(真)’(S1119是),则控制进行到步骤S1116,在该步骤中执行上述的删除进程。接着,控制进行到步骤S1120。
在步骤S1120中,执行集成答复信息生成进程。图25是显示集成答复信息生成进程的流程图。图26是显示在集成答复信息生成进程中执行的答复判断进程的流程图。图27示出了集成答复信息的实例。如图27中所示,集成答复信息是用标记语言描述的。在下面的表5中示出了对于在集成答复信息中使用的标签的说明。
表5


以下,将对在功能服务器30的控制单元31的控制下执行的集成答复信息生成进程进行描述。首先,控制单元31判断集成答复信息生成进程的执行是否是执行步骤S1101之后的首次执行。如果集成答复信息生成进程的执行是首次执行(S1201是),则控制进行到步骤S1211,在该步骤中控制单元31在其RAM中获取集成答复信息区,用于生成集成答复信息。接着,控制单元31将标题信息写入该区(空区)(S1212)。
接下来,在步骤S1213中,控制单元31通过将参数NumPattern赋值为‘1’,而生成NumPattern标签(字符串<NumPattern>1</NumPattern>),并将其加入到集成答复信息(即,集成答复信息区)中。接着,控制单元31将Response_Service标签加入到集成答复信息中(S1214)。然后,执行答复判断进程(S1215)。
以下,将参考图26对答复判断进程进行说明。首先,在步骤S1301中,控制单元31判断对应于目标请求服务ID的定期答复信息(在定期答复信息区中)的参数Service_Start的值是否为‘TRUE(真)’。如果参数Service_Start的值为‘TRUE(真)’(S1301是),则控制单元31判断答复为OK(S1304)。
如果参数Service_Start的值不为‘TRUE(真)’(S1301否),则控制进行到步骤S1302,在该步骤中控制单元31判断定期答复信息的参数Service_Canceled的值为‘TRUE(真)’。
如果参数Service_Canceled的值为‘TRUE(真)’(S1302是),则控制单元31判断答复为OK(S1304)。如果参数Service_Canceled的值不为‘TRUE(真)’(S1302否),则控制进行到步骤S1303,在该步骤中控制单元31判断在定期答复信息中是否存在参数Service_Status的值。如果在定期答复信息中存在参数Service_Status的值(S1303是),则控制单元31判断答复为OK(S1304)。如果在定期答复信息中不存在参数Service_Status的值(S1303否),则控制单元31判断答复为NG。随后,答复判断进程终止。
回到图25参考该图,如果完成了答复判断进程(S1215),则控制进行到步骤S1216,在该步骤中控制单元31判断答复判断进程的判断结果是否为答复OK。如果答复判断进程的判断结果不是答复OK(S1216否),则集成答复信息生成进程终止。
如果答复判断进程的判断结果是答复OK(S1216是),则控制进行到步骤S1217。在步骤S1217中,控制单元31基于与目标请求服务ID相对应的定期答复信息,在Response_Service标签之间(即,在<Response_Service>与</Response_Service>之间)写入Service_Start标签。
例如,如果定期答复信息中的参数Service_Start的值为‘TRUE’,则控制单元31可生成字符串<Service_Start>TRUE</Service_Start>,作为Service_Start标签,并将其写入集成答复信息中。
接下来,在步骤S1218中,基于与目标请求服务ID相对应的定期答复信息,控制单元31在Response_Service标签之间写入Service_URL标签。如果在定期答复信息中不存在参数Service_URL的值,则控制单元31可生成字符串<Service_URL></Service_URL>,作为Service_URL标签。如果存在参数Service_URL的值,则控制单元31可生成表示参数Service_URL的值的Service_URL标签,并且可将其写入集成答复信息中。
接下来,在步骤S1219中,基于与目标请求服务ID相对应的定期答复信息,在Response_Service标签之间写入Service_Status标签。在步骤S1219中,如果不存在参数Service_Status的值,则控制单元31生成字符串<Service_Status></Service_Status>,作为Service_Status标签。如果存在参数Service_Status的值,则控制单元31生成表示参数Service_Status的值的Service_Status标签。接着,将该生成的值写入集成答复信息中。
接下来,在步骤S1220中,基于与目标请求服务ID相对应的定期答复信息,控制单元31在Response_Service标签之间写入Service_Canceled标签。例如,如果定期答复信息的参数Service_Canceled的值为‘FALSE’,则控制单元31生成字符串<Service_Canceled>FALSE</Service_Canceled>,作为Service_Canceled标签,并且将该字符串写入集成答复信息中。
接下来,在步骤S1221中,控制单元31通过将参数Num_Service_ID赋值为‘1’而生成Num_Service_ID标签(字符串<Num_Service_ID>1</Num_Service_ID>),并将其写入Response_Service标签之间。接着,控制单元31生成Request_Service_ID标签(字符串<Request_Service_ID>(请求服务ID)</Request_Service_ID>),作为参数Request_Service_ID的值,并将其写入集成答复信息中的Response_Service标签之间。然后,集成答复信息生成进程终止。
如果在步骤S1201中判断为,集成答复信息生成进程的执行不是首次执行,而是第二次或者后续次数的执行(S1201否),则控制进行到步骤S1225,在该步骤中控制单元31执行答复判断进程(见图26)。接下来,在步骤S1226中,控制单元31判断答复判断进程的判断结果是否是答复OK。如果答复判断进程的判断结果不是答复OK(S1216否),则集成答复信息生成进程终止。
如果答复判断进程的判断结果是答复OK(S1216是),则控制进行到步骤S1227,在该步骤中控制单元31判断在集成答复信息中是否存在,具有与目标请求服务ID的定期答复信息相同的值的Request_Service标签。也就是说,控制单元31判断Request_Service标签的除了请求服务ID(其对应于目标请求服务ID的定期答复信息的请求服务ID)以外的各条信息,是否与目标请求服务ID的定期答复信息的那些信息相等。
如果步骤S1227的判断结果是“YES(是)”,则控制单元31更新位于Response_Service标签之间的Num_Service_ID标签(S1228)。例如,如果Num_Service_ID标签是字符串<Num_Service_ID>1</Num_Service_ID>,则将其更新为<Num_Service_ID>2</Num_Service_ID>。
接下来,在步骤S1229中,控制单元31通过将目标请求服务ID的值赋给参数Request_Service_ID而生成Request_Service_ID标签,并将其写入Respons_Service标签之间,其中该Response_Service标签具有与目标请求服务ID的定期答复信息相同的参数值。随后,集成答复信息生成进程终止。
如果步骤S1227的判断结果是“NO(否)”,则控制进行到步骤S1231,在该步骤中控制单元31更新集成答复信息中的NumPattern标签的参数NumPattern的值。例如,如果集成答复信息中的NumPattern标签是字符串<NumPattern>1</NumPattern>,则将其更新为<NumPattern>2</NumPattern>。但是,如果在集成答复信息中存在空的Response_Service标签,则控制单元31的运行可不更新参数NumPattern。
接下来,在步骤S1232中,控制单元31在现有的Response_Service标签随后的区中写入新的Response_Service标签。但是,如果在集成答复信息中存在空的Response_Service标签,则控制单元31的运行可不在集成答复信息中写入新的Response_Service标签。
接下来,在步骤S1233中,基于与目标请求服务ID相对应的定期答复信息,控制单元31在新的Response_Service标签(或者空的Response_Service标签)之间写入Service_Start标签。例如,如果定期答复信息中的参数Service_Start的值为‘FALSE’,则控制单元31生成字符串<Service_Start>FALSE</Service_Start>,作为Service_Start标签,并将其写入集成答复信息中。
接下来,在步骤S1234中,基于与目标请求服务ID相对应的定期答复信息,控制单元31在Response_Service标签之间写入Service_URL标签。接着,控制单元31基于与目标请求服务ID相对应的定期答复信息,在Response_Service标签之间写入Service_Status标签(S1235)。
接下来,在步骤S1236中,控制单元31基于与目标请求服务ID相对应的定期答复信息,在Response_Service标签之间写入Service_Canceled标签。接着,控制单元31通过将参数Num_Service_ID赋值为‘1’而生成Num_Service_ID标签,并将其写入集成答复信息中的Response_Service标签之间(S1237)。
接下来,在步骤S1238中,控制单元31通过将目标请求服务ID的值赋给参数Request_Service_ID而生成Request_Service_ID标签,并将其写入集成答复信息中的Response_Service标签之间。随后,集成答复信息生成进程终止。
回到图23参考该图,在步骤S1120中完成上述的集成答复信息生成进程之后,控制返回到步骤S1102,在该步骤中从集成查询信息中的各条请求服务ID中选择出下一个目标。如果在集成查询信息中没有找到未经处理的请求服务ID(S1103否),则控制进行到步骤S1130。在步骤S1130中,控制单元31生成响应信号,该响应信号包含有储存在集成答复信息区中的集成答复信息,并将其发送给源设备(即,多功能设备10),该源设备已经通过通信单元31发送了定期查询信号。接着,在步骤S1101中,控制单元31等待下一个定期查询信号。
以下,将参考图28对博客(blog)搜索进程进行描述,在博客(blog)搜索进程中将信息提供给已注册设备(多功能设备10)。博客(blog)搜索进程是在功能服务器30的控制单元31的控制之下执行的,并且在功能服务器30加电期间以预定的间隔反复执行。
首先,控制单元31从对应于博客(blog)搜索进程的请求服务ID管理表中,选择出待处理的请求服务ID(以下,经常称作目标请求服务ID)。如果没有找到待处理的请求服务ID(即,未经处理的请求服务ID)(S1402否),则博客(blog)搜索进程终止。如果找到了待处理的请求服务ID(S1402是),则控制进行到步骤S1403,在该步骤中控制单元31在定期答复管理表中,将对应于目标请求服务ID的答复管理信息的服务开始信息的值更改为‘FALSE(假)’。
接下来,在步骤S1404中,将储存在请求服务ID管理表中并且与目标请求服务ID相关联的参数设置为关键词。此外,控制单元31访问预定的博客(blog)站点,以便在新近张贴的评论中搜索具有与功能服务器30中设置的关键词相等的关键词的评论。
如果在步骤S1404中的搜索操作中发生了错误,例如,由于具有与功能服务器30中设置的关键词相等的关键词的张贴的评论的数量过多,则步骤S1405的判断结果变成“YES(是)”。在这种情况下,控制进行到步骤S1406,在该步骤中控制单元31在定期答复管理表中,将包含在对应于目标请求服务ID的答复管理信息中的服务取消信息更改为‘TRUE(真)’。
接下来,在步骤S1407中,控制单元31,将定期答复管理表中的,对应于目标请求服务ID的服务状态信息更新为‘3’。然后,控制返回到步骤S1401,以继续从请求服务ID表中选择出未经处理的请求服务ID。
如果在步骤S1401中成功地完成了搜索操作(S1405否),则控制进行到步骤S1408,在该步骤中控制单元31判断是否找到了具有与在功能服务器30中设置的关键词相等的关键词的张贴的评论。如果没有找到具有功能服务器30中的关键词的张贴的评论(S1408否),则控制返回到步骤S1401。
如果找到了具有功能服务器30中的关键词的张贴的评论(S1408是),则控制进行到步骤S1409。在步骤S1409中,控制单元31生成提供信息,该提供信息表示具有功能服务器30中的关键词的张贴的评论。接着,控制单元31将提供信息储存在存储单元33中。接下来,在步骤S1410中,控制单元31生成目标设备的URL,其中提供信息将提供给该目标设备。例如,生成字符串“http//****.co.jp/cgi/blog?=****”。
此外,控制单元31在定期答复管理表中,将对应于目标请求服务ID的服务URL更改为目标设备的URL,其中提供信息将提供给该目标设备(S1411)。
接下来,在步骤S1412中,控制单元31在定期答复管理表中,将对应于目标请求服务ID的服务开始信息更改为‘TRUE(真)’。接着,控制返回到步骤S1401,以继续从请求服务ID管理表中选择出下一个请求服务ID。如果请求服务ID管理表中的所有的服务请求ID都已经过处理,则步骤S1402的判断结果变为“YES(是)”,并且博客(blog)搜索进程终止。
以下,将参考图29对新闻信息生成进程进行描述,在新闻信息生成进程中生成将提供给已注册的设备(即,多功能设备10)的关于本地新闻服务的信息。新闻信息生成进程是在功能服务器30的控制单元31的控制下执行的,并在功能服务器30加电期间以预定的间隔反复执行。
首先,控制单元31从对应于本地新闻服务的请求服务ID管理表中选择出待处理的请求服务ID(以下,经常称作目标请求服务ID)(S1501)。如果没有找到待处理的请求服务ID(即,未经处理的请求服务ID)(S1502否),则新闻信息生成进程终止。如果找到了待处理的请求服务ID(S1502是),则控制进行到步骤S1503,在该步骤中控制单元31在定期答复管理表中,将对应于目标请求服务ID的答复管理信息的服务开始信息的值更改为‘FALSE(假)’。
接下来,在步骤S1504中,控制单元31基于储存在请求服务ID管理表中的目标请求服务ID的参数信息,来判断由参数信息指示的预付卡号码是否有效。如果预付卡号码是无效的(S1504否),则控制进行到步骤S1505,在该步骤中控制单元31在定期答复管理表中,将对应于目标请求服务ID的服务取消信息更改为‘TRUE(真)’。
接下来,在步骤S1506中,控制单元31将服务状态信息的值更改为对应于步骤S1504的出错因素(即,使预付卡号码无效的因素)的值。也就是说,如果预付卡号码的使用被认为是欺诈,则控制单元31将服务状态信息的值更改为‘-1’。如果预付卡号码判断为无效仅是由于卡点数用尽,则控制单元31将服务状态信息的值更改为‘-2’。在步骤S1506之后,控制返回到步骤S1501,以继续选择未经处理的请求服务ID。
如果在步骤S1504中判断为,预付卡号码是有效的(S1504是),则控制进行到步骤S1507,在该步骤中控制单元31访问预定的数据库,以获取与参数Address(见图7或者15A)相匹配的地区的本地新闻数据,其中参数Address是与请求服务ID管理表中的目标请求服务ID相关联的。接下来,在步骤S1508中,控制单元31判断,关于在步骤S1507中获取的本地新闻数据的数据量,参数Numpages(见图7或者15A)的值是否是合适的,其中参数Numpages的值是与请求服务ID管理表中的目标请求服务ID相关联的。
参数Numpages表示能够容纳本地新闻数据的字符数据的纸张数。在步骤S1508中,如果本地新闻数据的字符数据不能够容纳在参数用Numpages表示的页数的纸张中,则控制单元31判断参数Numpages的值是不合适的。如果本地新闻数据的字符数据能够容纳在用参数Numpages表示的页数的纸张中,则控制单元31判断参数Numpages的值是合适的。
如果步骤S1508的判断结果是“NO(否)”,则控制进行到步骤S1509,在该步骤中控制单元31将改变定期答复管理表中的,对应于目标请求服务ID的服务取消信息的值。此外,控制单元31将服务状态的值更改为这样的数据,其包括状态值‘-3’、作为表示导致取消的参数的信息的字符串“Numpages”、以及表示用于避免错误的正常范围的字符串(例如,字符串“-3,Numpages,大于3”)(S1510)。在步骤S1510之后,控制返回到步骤S1501。
如果步骤S1508的判断结果是“YES(是)”,则控制进行到步骤S1511,在该步骤中控制单元31将获取的本地新闻数据转换为提供数据(例如,PDF数据),其页数符合参数Numpages的值,并将其储存在存储单元33中。接下来,在步骤S1512中,控制单元31生成目标设备的URL,其中向该目标设备提供服务。接着,控制单元31在定期答复管理表中,将对应于目标服务请求ID的服务URL更改为目标设备的URL,其中向该目标设备提供服务(S1513)。
接下来,在步骤S1514中,控制单元31在定期答复管理表中,将对应于目标请求服务ID的服务开始信息更改为‘TRUE(真)’。然后,控制返回到步骤S1501。
如果请求服务ID管理表中列出的所有的请求服务ID都已经过处理(S1502否),则新闻信息生成进程终止。
以下,将参考图30对超时监控进程进行说明。超时监控进程是在功能服务器30的控制单元31的控制下执行的,并以预定的间隔反复执行。通过超时监控进程,将没有接收到定期查询的服务的答复管理信息删除,以便删除该服务的注册。
首先,控制单元31从定期答复管理表中选择出请求服务ID(以下,经常称作目标请求服务ID)。如果没有找到未经处理的请求服务ID(S1552否),则超时监控进程终止。如果找到了未经处理的请求服务ID(S1552是),则控制进行到步骤S1553。
在步骤S1553中,控制单元31判断,对目标请求服务ID的定期查询是否在预定时限内(例如,三天)没有发布。具体地,在步骤S1553中,控制单元31通过判断储存在定期答复管理表中的目标请求服务ID的查询日期,在当前的日期和时间之前是否超过了预定时限(例如,三天),来进行判断。
如果定期查询在预定的时限内没有发布(S1553是),则控制进行到步骤S1554,在该步骤中控制单元31从定期答复管理表中,删除对应于目标请求服务ID的答复管理信息,并从请求服务ID管理表中删除对应于目标请求服务ID的参数信息。接着,控制返回到步骤S1551以继续选择下一个未经处理的请求服务ID。
如果在步骤S1553中判断为,定期查询在预定的时限内已发布(S1553否),则控制返回到步骤S1551,而不执行步骤S1554。如果储存在定期答复管理表中的所有请求服务ID都已经过处理(S1552否),则超时监控进程终止。
以下,将参考图31对集成答复信息接收进程进行说明,其中集成答复信息接收进程是在多功能设备10的控制单元11的控制下被执行的,以基于集成答复信息接收服务。
首先,控制单元11等待对定期查询信号的响应(由功能服务器30发送的集成答复信息)(S1601)。如果接收到响应,则控制单元11从包含在响应中的集成答复信息中选择出请求服务ID(以下,经常称作目标请求服务ID)(S1602)。
如果没有找到未经处理的请求服务ID(S1603否),则控制进行到步骤S1606。如果找到了未经处理的请求服务ID(S1603是),则控制进行到步骤S1604。在步骤S1604中,控制单元11判断与集成答复信息中的目标请求服务ID相关联的Service_Status标签是否具有参数Service_Status的参数值。也就是说,控制单元11判断在Response_Service标签之间描述的Service_Status标签之间,是否写入了值。
如果没有找到参数Service_Status的值(即,<Service_Status></Service_Status>),则控制返回到步骤S1602。如果找到了参数Service_Status的值,则控制返回到步骤S1605,在该步骤中控制单元11在显示器19a上显示对应于参数Service_Status的值的状态信息。接着,控制返回到步骤S1602以继续选择未经处理的请求服务ID。
如果集成答复信息中的所有请求服务ID都已经过处理(S1603否),则控制进行到步骤S1606。在步骤S1606中,控制单元11判断是否已经接收到与具有‘TRUE(真)’值的Service_Start标签相关联的所有请求服务ID相对应的服务。
如果在与具有‘TRUE(真)’值的Service_Start标签相关联的各请求服务ID中,找到了功能服务器30还没有提供给多功能设备10的服务(S1606是),则控制进行到步骤S1607。在步骤S1607中控制单元11从集成答复信息中选择出请求服务ID(以下,称作目标请求服务ID)。
如果没有找到未经处理的请求服务ID(S1608否),则控制返回到步骤S1606。如果找到了未经处理的请求服务ID(S1608是),则控制进行到步骤S1609。
在步骤S1609中,控制单元11判断是否已将与集成答复信息中的目标请求服务ID相关联的Service_Start标签赋值为‘TRUE(真)’。也就是说,控制单元11判断‘TRUE(真)’值是否写入到Service_Start标签之间,其中Service_Start标签写入在包括目标请求服务的Response_Service标签之间。
如果‘TRUE(真)’值没有写入到Service_Start标签之间(S1609否),则控制进行到步骤S1607。如果‘TRUE(真)’值写入到Service_Start标签之间(S1609是),则控制进行到步骤S1610。在步骤S1610中,控制单元11判断,在接收对应于目标请求服务ID的服务时将要使用的输入/输出设备(例如,读出单元13、记录单元14、声音输入单元17、或者声音输出单元18)是否正由另一进程(另一服务)使用(即,处于忙碌状态)。
如果输入/输出设备正处于忙碌状态(S1610是),则控制返回到步骤S1607。如果输入/输出设备不处于忙碌状态(S1610否),则控制进行到步骤S1611,在该步骤中控制单元11将与集成答复信息中的目标请求服务ID相关联的Service_URL标签的值赋给自变量,并启动服务接收进程(见图10)。
接着,控制返回到步骤S1607,在该步骤中控制单元11选择未经处理的请求服务ID,并判断集成答复信息中的与选定的请求服务ID相关联的Service_ID标签的值是否是‘TRUE(真)’。如果与选定的请求服务ID相关联的Service_ID标签的值是‘TRUE(真)’,则控制单元11启动另一服务接收进程,其将在操作条件下与服务接收进程并行地执行。
应该注意,只有当新的服务接收进程所需要的输入/输出设备没有被已经启动的服务接收进程使用时(即,只有当所需要的输入/输出设备不处于忙碌状态的时候),才启动新的服务接收进程。
如上面所描述的,在步骤S1607至S1611中,对应于请求服务ID的、具有‘TRUE(真)’值的Service_Start标签与其相关的、且所要求的输入/输出设备没有被已经启动的服务接收进程所使用的服务进程得以启动。另一方面,对于需要正处于忙碌状态的输入/输出设备的服务进程,步骤S1608和S1608中的判断结果是‘NO(否)’。也就是说,这样的进程是串行地进行处理的。
如果控制单元11判断多功能设备10已经接收到了对应于请求服务ID的所有服务,其中具有‘TRUE(真)’值的Service_Start标签与该请求服务ID相关(S1606是),则控制进行到步骤S1620。在步骤S1620中,控制单元11启动结束服务分析进程。在完成结束服务分析进程之后,控制返回到步骤S1601以等待下一个集成答复信息。
以下,将参考图32对结束服务分析进程进行描述,结束服务分析进程是在控制单元11的控制下执行的。首先,控制单元11从所包含的集成答复信息中选择出请求服务ID(以下,经常称作目标请求服务ID)(S1621)。如果没有找到未经处理的请求服务ID(S1622否),则结束服务分析进程终止。
如果找到了未经处理的请求服务ID(S1622是),则控制进行到步骤S1623,在该步骤中控制单元11判断,与集成答复信息中的目标请求服务ID相关联的Service_Canceled标签的值是否是‘TRUE(真)’。如果Service_Canceled标签的值不是‘TRUE(真)’(S1623否),则控制返回到步骤S1621以处理下一个未经处理的请求服务ID。
如果Service_Canceled标签的值是‘TRUE(真)’(S1623是),则控制进行到步骤S1624,在该步骤中控制单元11判断在存储单元16中是否存在对应于目标请求服务ID的使用注册信息。如果使用注册信息没有储存在存储单元16中(S1624否),则控制进行到步骤S1628,在该步骤中控制单元11将指示服务终止的消息,连同表示该服务的请求服务ID的字符信息一起显示在显示器19a上。接着,控制返回到步骤S1621。
如果使用注册信息储存在存储单元16中(S1624是),则控制进行到步骤S1625,在该步骤中控制单元11判断集成答复信息中的,对应于目标请求服务ID的Service_Status标签是否有值(字符串)。如果Service_Status标签没有值,即,Service_Status标签为空(<Service_Status></Service_Status>)(S1625否),则控制进行到步骤S1628,在该步骤中控制单元11将指示服务终止的消息,连同表示服务的请求服务ID的字符信息一起显示在显示器19a上。接着,控制返回到步骤S1621。
如果Service_Status标签有值(字符串)(S1625是),则控制进行到步骤S1626,在该步骤中控制单元11判断定期查询管理表中的,对应于目标请求服务ID的重新注册许可信息是否是‘TRUE(真)’。
如果重新注册许可信息不是‘TRUE(真)’(S1626否),则控制进行到步骤S1628,在该步骤中控制单元11在显示器19a上显示指示服务终止的消息。接着,控制返回到步骤S1621。
如果重新注册许可信息是‘TRUE(真)’(S1626是),则控制进行到步骤S1627,在该步骤中控制单元11判断集成答复信息中的,与目标请求服务ID相关联的Service_Status标签的值是否是‘-1’。如果Service_Status标签的值是‘-1’(S1627是),则控制进行到步骤S1628,在该步骤中控制单元11在显示器19a上显示指示服务终止的消息。接着,控制返回到步骤S1621。
如果Service_Status标签的值不是‘-1’(S1627否),则控制进行到步骤S1629,在该步骤中控制单元11判断集成答复信息中的,与目标请求服务ID相关联的Service_Status标签的值是否是‘-2’。如果Service_Status标签的值是‘-2’(S1629是),则控制进行到步骤S1630,在该步骤中控制单元11在显示器19a上显示重新输入屏幕,以便接受预付卡号码的重新输入。
接下来,在步骤S1631中,根据由用户通过操作单元12输入的预付卡号码,控制单元11更新存储单元16中的使用注册信息。也就是说,控制单元11将储存在存储单元16中的使用注册信息的参数Prepaid更改为通过操作单元12输入的预付卡号码。接着,控制进行到步骤S1635。
如果在步骤S1629中判断为,Service_Status标签的值不是‘-2’(S1629否),则控制进行到步骤S1632,在该步骤中控制单元11判断集成答复信息中的,与目标请求服务ID相关联的Service_Status标签的值是否是‘-3’(或者包括具有状态值‘-3’的附加信息的字符串)。如果Service_Status标签的值是‘-3’或者包括具有状态值‘-3’的附加信息的字符串,则控制进行到步骤S1633。在步骤S1633中,控制单元11显示参数的重新输入屏幕。
具体地,在步骤S1633中,如果Service_Status标签是‘-3’,则基于包含在对应于目标请求服务ID的使用注册信息中的参数信息,控制单元11在显示器19a上显示重新输入屏幕,用于接受用户输入的除参数Prepaid以外的参数。在步骤S1633中,如果Service_Status标签是包括具有状态值‘-3’的附加信息的字符串,则基于表示导致服务取消的参数的信息和表示用于消除参数错误的正常范围的字符串,控制单元11显示导致服务取消的参数(服务终止)的重新输入屏幕。图33示出了导致服务取消的参数的重新输入屏幕的实例。
如图33中所示,在重新输入屏幕中显示出,导致服务取消的参数名的字符串(例如,“NUMBER OF SHEETS FOR INFORMATIONCOLLECTION(用于信息收集的纸张数)”)和参数的输入栏。在输入栏中,当前注册在使用注册信息中的参数值(例如,参数Numpages的值)显示为缺省值。在参数名字符串与输入栏之间,显示出表示参数的正常范围的字符串(例如,“3OR MORE(3或者更多)”)。在这种情况下,基于使用注册信息中的服务I/F信息,准备并显示出表示导致服务取消的参数的字符串和参数的输入栏。
在步骤S1633之后,控制进行到步骤S1634,在该步骤中,基于用户通过重新输入屏幕输入的信息,控制单元11对目标请求服务ID的使用注册信息的参数(例如,参数Numpages)进行更新。接着,控制进行到步骤S1635。
如果Service_Status标签的值不是‘-3’,也不是包括具有状态值‘-3’的附加信息的字符串(即,Service_Status标签不是‘-4’)(S1632否),则控制进行到步骤S1635。
在步骤S1635中,控制单元11判断存储单元16中的,对应于请求服务ID的使用注册信息是否包含参数Address的值。如果包含有参数Address(S1635是),则控制进行到步骤S1636,在该步骤中,基于包含在使用注册信息中的服务I/F信息(例如,图7中所示的在服务I/F信息顶部的Form_Elem标签),控制单元11在显示器19a上显示输入屏幕,用于接受用户输入的参数Address。
接下来,在步骤S1637中,控制单元11根据从操作单元12输入的信息(例如,参数Address的值或者其选定的数据),更新存储单元16中的对应于目标请求服务ID的使用注册信息。也就是说,控制单元11将包含在使用注册信息中的参数Address的值更改为与通过操作单元12输入的信息相等的值。接着,控制进行到步骤S1638。
如果在步骤S1635中判断为,存储单元16中的对应于请求服务ID的使用注册信息中包含参数Address(S1635否),则控制进行到步骤S1638。
在步骤S1638中,基于目标请求服务ID的更新后的使用注册信息,控制单元11启动服务接收进程(见图10)。也就是说,控制单元11将包含在更新后的使用注册信息中的,使用注册的目标设备的URL(即,链接位置),赋值给自变量,并启动服务接收进程。
通过上述的配置,控制单元11执行服务接收进程,服务接收进程与结束服务分析进程并行地执行,并且在服务接收进程中控制单元11访问功能服务器30(见步骤S301)以使得功能服务器30启动注册进程(见S405)。控制单元11根据从注册进程发送来的UI作业启动命令和从服务端UI作业发出的参数请求命令,执行图19中所示的参数信息传输进程。接着,执行步骤S861至S863。
在步骤S1638中启动服务接收进程之后,控制返回到步骤S1621以选择下一个未经处理的请求服务ID。如果包含在集成答复信息中的所有请求服务ID都已经过处理(S1622否),则结束服务分析进程终止。
以下,将对由功能服务器30执行的与服务有关的进程进行描述。如上所述,如果在处理博客(blog)搜索服务和本地新闻服务的请求服务ID之后,在步骤S1611中多功能设备10的控制单元11启动了服务接收进程,则根据赋值给自变量的服务URL,控制单元11访问功能服务器30(S301),以使得功能服务器30启动定期服务提供进程(S405)。
图34是显示在功能服务器30的控制单元31的控制下执行的定期服务提供进程的流程图。在这种情况下,将执行关于博客(blog)搜索服务和本地新闻服务的定期服务提供进程的功能服务器30的URL,储存在定期答复管理表的服务URL中。在服务URL中,对于每种服务类型(即,对于博客(blog)搜索服务和本地新闻服务中的每个)分别描述URL。因为使用不同的URL访问功能服务器30,所以,对于博客(blog)搜索服务的服务启动命令,启动定期服务提供进程,而对于本地新闻服务的服务启动命令,启动另一定期服务提供进程。
如图34中所示,首先,控制单元31执行初始化进程(S1701)。接着,控制单元31启动服务端打印作业,稍后将参考图35对其进行说明(S1702)。在步骤S1703中,控制单元31发布打印作业启动命令作为多功能设备命令。具体地,在步骤S1703中,控制单元31在对应于步骤S405中生成的对话ID的答复信息区中写入打印作业启动命令。
从而,打印作业启动命令通过服务控制信息进程发送到多功能设备10。在打印作业启动命令中,包括有在步骤S1702中启动的服务端打印作业的作业ID,和在该作业中进行通信的目标设备的URL。
接下来,在步骤S1704中,控制单元31判断控制单元31是否从服务端打印作业接收到指示打印准备完成的通知。如果没有接收到该通知(S1704否),则控制进行到步骤S1705,在该步骤中控制单元31判断控制单元31是否接收到指示服务端打印作业停止的通知。如果没有接收到指示服务端打印作业停止的通知(S1705否),则控制返回到步骤S1704以等待指示服务端打印作业停止的通知或者指示打印准备完成的通知。如果接收到指示服务端打印作业停止的通知(S1705是),则控制进行到步骤S1708。如果在步骤S1704中接收到指示打印准备完成的通知(S1704是),则控制进行到步骤S1706。
在步骤S1706中,控制单元31读出作为由URL指定的下载目标的提供数据,其中URL是在此定期服务提供进程启动时由多功能设备10提供的,并且控制单元31将提供数据转换为符合多功能设备10的记录单元14的功能特性的打印数据。接着,在步骤S1707中,控制单元31通过为服务端打印作业提供打印数据,向作为存取源设备的多功能设备10发送打印数据。
接下来,在步骤S1708中,控制单元31等待服务端打印作业的终止。如果服务端打印作业终止,则控制单元31发布打印作业结束命令,作为多功能设备命令。具体地,控制单元31在对应于步骤S405中生成的对话ID的答复信息区中写入打印作业结束命令。
从而,打印作业结束命令作为多功能设备命令,通过服务控制信息进程发送到多功能设备10。在打印作业结束命令中,包含有作业ID和在该作业中通信的目标设备的URL。
接下来,在步骤S1709中,控制单元31发布服务结束命令,作为多功能设备命令,以便使多功能设备10接收到服务结束命令。在步骤S1709之后,定期服务提供进程终止。
以下,将参考图35对在定期服务提供进程的步骤S1702中启动的服务端打印作业进行描述。图35是显示在功能服务器30的控制单元31的控制下执行的服务端打印作业的流程图。应该注意,服务端打印作业是与其它进程并行地执行的。
首先,控制单元31等待多功能设备状态信息(S1801)。多功能设备状态信息是在输出作业(稍后将参考图36对其进行描述)的步骤S1904中,由多功能设备10的控制单元11输出的。
如果控制单元31接收到多功能设备状态信息,则控制单元31初始化错误计数(S1802)。接着,控制单元31向多功能设备10发送将用于记录单元14的参数(多功能设备参数)(步骤S1803)。
接下来,在步骤S1804中,控制单元31判断多功能设备参数是否由多功能设备10成功地接收到。具体地,在步骤S1804中,如果控制单元31接收到在输出作业的步骤S1909中输出的,作为多功能设备接收状态的通知“正常接收”,则控制单元31判断多功能设备参数已被成功地接收到,而如果控制单元31接收到在输出作业的步骤S1908中输出的,作为多功能设备接收状态的通知“异常接收”,则控制单元31判断多功能设备参数没有被成功地接收到。
如果多功能设备参数没有被成功地接收到(S1804否),则控制进行到步骤S1805,在该步骤中,控制单元31基于错误计数,判断多功能设备参数没有被成功接收的次数是否为二。如果次数不是二(即,次数是一),则控制进行到步骤S1806,在该步骤中递增错误计数。接着,控制返回到步骤S1803。
如果次数是二(S1805是),则控制进行到步骤S1807,在该步骤中控制单元31向启动服务端打印作业的源进程发送指示服务端打印作业停止的通知。在这种情况下,控制单元31判断该进程的结束状态不是“正常结束”。在这种情况下,在步骤S1812中,控制单元31向多功能设备10发送表示异常结束的信息,作为服务状态信息。接着,服务端打印作业终止。
如果多功能设备参数被成功地接收到(S1804是),则控制进行到步骤S1808,在该步骤中控制单元31向源进程(定期服务提供进程)发送通知,指示打印准备完成。接着,控制单元31向多功能设备10连续地发送打印数据(S1809)。
接下来,在步骤S1810中,控制单元31等待多功能设备状态信息。如果接收到多功能设备状态信息,则控制进行到步骤S1811。多功能设备状态信息是在输出作业(见图36)的步骤S1913中,由多功能设备10的控制单元11输出的。
在步骤S1811中,控制单元31判断是否成功地完成打印数据的传输。如果没有成功地完成打印数据的传输(S1811否),则控制进行到步骤S1812。如果成功地完成了打印数据的传输(S1811是),则控制进行到步骤S1813,在该步骤中控制单元31向多功能设备10发送表示正常结束的信息,作为服务状态信息。接着,服务端打印作业终止。
以下,将参考图36对输出作业进行描述,输出作业是响应于在定期服务提供进程(见图34)的步骤S1703中发布的打印作业启动命令而执行的。
首先,控制单元11判断输出设备(如果控制单元11接收到打印作业启动命令则其为记录单元14,而如果控制单元11接收到扬声器作业启动命令则其为声音输出单元18)是否处于忙碌状态(S1901)。控制单元11基于表示输出设备状态的忙碌标志Fo进行判断。具体地,如果忙碌标志Fo是ON,则控制单元11判断输出设备处于忙碌状态,而如果忙碌标志Fo是OFF,则控制单元11判断输出设备不处于忙碌状态。
如果输出设备处于忙碌状态(S1901是),则控制进行到步骤S1902,在该步骤中控制单元11等待,直到输出设备的忙碌状态解除。如果输出设备不处于忙碌状态(S1901否),则控制单元11将忙碌标志Fo变为ON(S1903)。接着,控制单元11向功能服务器30发送包括有对话ID和作业ID的多功能设备状态信息(S1904)。
接下来,在步骤S1905中,控制单元11接收到由功能服务器30发送的,作为对多功能设备状态信息的响应的多功能设备参数。如上所述,多功能设备参数是在服务端打印作业的步骤S1803中,由功能服务器30发送的。
接下来,控制单元11判断是否已经接收到来自启动输出进程的源进程(服务接收进程)的结束命令(S1906)。如上所述,结束命令是在服务接收进程(图10)的步骤S310中,由控制单元11输出的。如果还没有接收到结束命令(S1906否),则控制单元11判断是否已经成功地接收到多功能设备参数(S1907)。
如果尚未成功接收到多功能设备参数(S1907否),则控制进行到步骤S1908,在该步骤中控制单元11向功能服务器30发送通知“异常接收”,作为多功能服务设备接收状态,指示多功能设备10是否已经成功地从功能服务器30接收到信息。多功能设备接收状态包括对话ID和作业ID。
如果已经成功地接收多功能设备参数(S1907是),则控制进行到步骤S1909,在该步骤中控制单元11向功能服务器30发送通知“正常接收”,作为多功能设备接收状态。接下来,在步骤S1910中,控制单元11从功能服务器30接收输出数据(例如,打印数据或者音频数据)。如上所述,打印数据是在服务端打印作业的步骤S1809中由功能服务器30发送的。
接下来,在步骤S1911中,控制单元11将输出设备(例如,记录单元14或者声音输出单元18)的多功能设备参数设置为输出数据。例如,如果响应于在由功能服务器30执行的定期服务提供进程中发布的打印作业启动命令,启动输出作业,则控制单元11基于由功能服务器30提供的打印数据,通过使用记录单元14执行打印进程。
具体地,如果定期服务提供进程是用于向多功能设备10提供博客(blog)搜索服务的进程,并且输出作业是用于接收博客(blog)搜索服务的进程,则在博客(blog)搜索进程中搜索到的张贴的评论,通过记录单元14输出。如果定期服务提供进程是用于向多功能设备10提供本地新闻服务的进程,并且输出作业是用于接收本地新闻服务的进程,则在新闻信息生成进程中生成的新闻数据,通过记录单元14打印出来。
接下来,在步骤S1912中,控制单元11将对于输出设备的参数设置更改为先前的值。然后,控制单元11向功能服务器30发送多功能设备状态信息(S1913)。
接下来,在步骤S1914中,控制单元11从功能服务器接收服务状态信息。接着,控制单元11将忙碌标志Fo变为OFF。随后,输出作业终止。
以下,将参考图37对注册信息删除进程进行描述,注册信息删除进程是在控制单元11的控制下执行的,并且是当用户通过操作单元12输入对使用注册信息的删除命令时启动的。首先,控制单元11判断输入的删除命令是否是指示控制单元11删除储存在存储单元16中的所有注册数据的命令(S2001)。如果该删除命令是指示控制单元11删除所有注册数据的命令(S2001是),则控制单元11将储存在定期查询管理表中的使用注册信息的存储位置信息改为空数据(S2002)。然后,注册信息删除进程终止。
如果删除命令不是指示控制单元11删除所有注册数据的命令(S2001否),则控制单元11从定期查询管理表中选择出请求服务ID(以下,称作目标请求服务ID)。如果没有找到未经处理的请求服务ID(S2004否),则注册信息删除进程终止。
如果找到了未经处理的请求服务ID(S2004是),则控制单元11基于目标请求服务ID的存储位置信息,判断目标请求服务ID的使用注册信息是否储存在存储单元16中(S2005)。具体地,在步骤S2005中,如果存储位置信息是空数据,则控制单元11判断目标请求服务ID的使用注册信息没有储存在存储单元16中。如果存储位置信息不是空数据,则控制单元11判断目标请求服务ID的使用注册信息储存在存储单元16中。
如果使用注册信息没有储存在存储单元16中(S2005否),则控制返回到步骤S2003以选择未经处理的请求服务ID。如果使用注册信息是储存在存储单元16中(S2005是),则控制单元11显示目标请求服务ID的使用注册信息,并询问用户是否删除使用注册信息(S2006)。接着,控制单元11等待,直到用户对操作单元12进行操作。
如果用户通过操作单元12进行了操作,则控制单元11基于输入的数据判断用户是否已经输入了删除执行命令(S2007)。如果已经输入了删除执行命令(S2007是),则控制单元11从存储单元16中删除目标请求服务ID的使用注册信息,并改变构成目标请求服务ID的查询管理信息的存储位置信息(S2008)。随后,控制返回到步骤S2003。
如果在步骤S2007中判断为,还没有输入删除执行命令(S2007否),则控制返回到步骤S2003,而不执行步骤S2008。如果定期查询管理表中的所有未经处理的请求服务ID都已经过处理(S2004否),则注册信息删除进程终止。
在上述的实施例中,基于HTTP的通信是在功能服务器30与多功能设备10之间执行的,通过该通信,可以将各种服务(例如,博客(blog)搜索服务和本地新闻服务)提供给多功能设备10。
功能服务器30将包含有一个或者多个参数的参数信息储存在请求服务ID管理表中,其中该参数对将提供给多功能设备10的服务进行定义,功能服务器30同时将参数信息与作为多功能设备10的标识符的请求服务ID关联起来。也就是说,能够将多条参数信息储存在请求服务ID管理表中。
当功能服务器30的控制单元31接收到发往与注册进程相对应的URL地址的服务启动命令时,控制单元31把服务启动命令解释为对服务注册的请求,并执行注册进程。在这种情况下,控制单元31执行服务端UI作业以接收服务的参数信息,生成请求服务ID作为服务的标识符,并将参数信息储存在请求服务ID管理表中,同时将参数信息与请求服务ID关联起来(S607)。
功能服务器30将如上所述生成的请求服务ID,连同定期查询开始命令,仅发送给发布服务启动命令的源设备(多功能设备10)。因此,在功能服务器30中,将请求服务ID用作多功能设备10的标识符,将服务提供给多功能设备10。
在功能服务器30中,将被提供给客户的服务数据是由为每种服务类型准备的服务软件37(例如,用于图28中所示的博客(blog)搜索进程的服务软件37,或者用于图29中所示的新闻信息生成进程的服务软件37)生成的。此外,通过将服务数据的下载目标的URL连同请求服务ID,通知给将向其提供服务的多功能设备10,功能服务器30通过图34中所示的定期服务提供进程,向多功能设备10提供服务数据。
此外,对于储存在请求服务ID管理表中的每条参数信息,功能服务器30均判断,与参数信息相对应的服务的结束条件是否得到满足(S1405、S1504、S1508)。功能服务器30将判断为满足结束条件的服务(请求服务ID)的服务取消信息更改为“TRUE(真)”。
通过向请求服务ID管理表的参数信息注册,功能服务器30基于储存在定期答复管理表中的答复管理信息(例如,在最近一次查询之后是否已经过了预定的时间),判断对应于每条参数信息的服务是否满足结束条件。功能服务器30删除判断为满足结束条件的服务(请求服务ID)的参数信息和答复管理信息(S1116、S1555),以便终止该服务。
当通过操作单元12接收到请求注册的用户输入时,多功能设备10启动服务接收进程。在服务接收进程中,多功能设备10向功能服务器30发送服务启动命令,获取关于服务的参数的信息,其中该参数是多功能设备10通过操作单元12从功能服务器30接收到的(S852),并向功能服务器30发送关于参数的信息(S853、S870、S806),以便完成服务的使用注册。
在发送参数信息时,多功能设备10复制参数信息,生成包含有该参数信息的使用注册信息,并将使用注册信息储存在存储单元16中(S857)。
在图36中所示的输出作业中,多功能设备10通过图20中所示的定期查询进程和图31中所示的集成答复信息接收进程,接收到由功能服务器30提供的与使用注册有关的服务,以便从记录单元14打印出在该服务中所获取的信息。也就是说,对功能服务器30所提供的信息的打印输出功能,是通过输出作业而实现的。
多功能设备10通过接收集成答复信息,来检测由功能服务器30终止的服务的终止。具体地,如果多功能设备10找到了具有值为‘TRUE(真)’的Service_Canceled标签的请求服务ID,则多功能设备10判断对应于请求服务ID的服务是由功能服务器30终止的。
如果存在已终止的服务,则多功能设备10在步骤S1638中启动服务接收进程、向功能服务器30发送服务启动命令以启动注册进程、读出储存在存储单元16中的已终止的服务的使用注册信息(S861)、并将包含在使用注册信息中的参数信息发送到功能服务器30,以便能够对已终止的服务再次进行使用注册。
如上所述,根据本实施例,多功能设备10在首次注册中储存参数信息,该参数信息也发送给了功能服务器30(S857)。当执行重新注册时,从存储单元16中读出该参数信息,并且将从存储单元16中读出的该参数信息发送给功能服务器30(S861、S863、S870、S806)。因此,不需要用户进行重新注册操作就可以完成重新注册。也就是说,根据本实施例,不需要用户操作就可以完成,对在功能服务器30中删除了使用注册的服务的重新注册。
多功能设备10基于从功能服务器30发送来的Service_Status标签的值,判断对已终止的服务的使用注册是否必要(S1627)。因为只有当步骤S1627的判断结果是“NO(否)”时才执行步骤S1638,所以能够选择性地对需要重新注册的服务执行使用注册,并且能够避免对不需要重新注册的服务执行重新注册。
具体地,在本实施例中,如果服务是由于预付卡号码无效而终止的,则将Service_Status标签设置为‘-1’,并且将Service_Status标签的值提供给多功能设备10,以便不自动执行使用注册。因此,根据本实施例,可以防止不顾用户不需要自动重新注册的实际而执行使用注册。
在该实施例中,多功能设备10通过向用户询问用户是否允许重新注册,从用户接收重新注册许可信息,该信息指示用户是否允许对服务进行重新注册(S856、S858)。对于每项已注册的服务,多功能设备10将重新注册许可信息储存在定期查询管理表中(S213、S313)。
如果多功能设备10检测到已终止的服务(S1623是),则多功能设备10根据储存在定期查询管理表中的重新注册许可信息,判断是否允许对已终止的服务进行重新注册(S1626)。如果不允许对已终止的服务进行重新注册,则多功能设备10不执行步骤S1638。
因为多功能设备10根据用户的意图来确定是否执行对已终止的服务的重新注册,所以可以防止不顾用户不需要对已终止的服务进行重新注册的实际而执行重新注册。
如果多功能设备10检测到已终止的服务,则多功能设备10根据指示服务终止因素的Service_Status标签的值,来确定应该改变其值的参数,并显示与Service_Status的值相对应的参数的重新输入屏幕(S1630、S1633)。具体地,如果Service_Status标签的值是‘-2’,则将包括参数输入栏的重新输入屏幕,连同请求改变预付卡号码的消息显示出来(S1630)。如果Service_Status标签的值是‘-3’,则将参数值的合适的范围和包括参数输入栏的重新输入屏幕,连同请求改变预付卡号码的消息显示出来(S1633)。
当用户通过操作单元12新输入参数值时,多功能设备10将储存在存储单元16中的使用注册信息中的参数值更改为新输入的值,以便能够使用通过重新输入屏幕新输入的参数值对服务进行重新注册。
因为用户能够改变导致服务终止的参数的值,然后使用改变后的参数值对该服务进行重新注册,所以通过只请求用户输入特定的参数,即可对服务进行重新注册。应该注意,重新注册的进行不需要请求用户执行麻烦的对参数信息的输入操作。
如果由于参数信息的参数值而不能正常执行服务,则功能服务器30判断结束条件得到满足。此外,功能服务器30将导致服务终止的参数的值的合适范围发送给多功能设备10。多功能设备10将导致服务终止的参数的值的合适范围,连同请求改变导致服务终止的参数的值的消息显示出来(S1633)。因此,可以防止用户输入不合适的参数值。从而,能够顺利地完成重新注册。
在上述的实施例中,如果输入了删除命令,则将储存在存储单元16中的重新输入信息删除。因此可以防止,在多功能设备10从用户转交给其他人时可能发生的使用注册信息中的数据泄漏。
尽管已经参考其中某些优选实施例对本发明进行了相当详细的描述,但是其它实施例也是可行的。
在上述的系统1中,从多功能设备10输出定期查询,以便询问功能服务器30是否准备好提供服务。但是,本发明可以应用于其中服务是从服务提供设备单方地提供给注册的客户设备的系统。
权利要求
1.一种用于从服务提供设备向客户设备提供服务的系统,所述服务提供设备包括能够保存多条设置信息的数据库,其中每条信息都包括一个或者多个与将提供给所述客户设备的服务有关的参数,同时将所述多条设置信息中的每条都与所述客户设备的标识符关联起来;注册单元,如果从所述客户设备接收到请求对服务进行注册的注册请求信号,则所述注册单元从客户设备获取设置信息,并且将获取的设置信息注册到所述数据库中,同时将获取的设置信息与客户设备的所述标识符关联起来;提供单元,其根据与将提供给所述客户设备的服务有关的设置信息,向所述客户设备提供服务;服务结束判断单元,其判断与所述多条设置信息中的每条相对应的服务的结束条件是否得到满足;以及服务终止单元,其将判断为满足结束条件的服务的所述设置信息从所述数据库中删除,以便终止满足结束条件的所述服务,所述客户设备包括使用注册单元,如果通过所述客户设备的操作单元接收到请求对将要接收的服务进行使用注册的用户输入,则所述使用注册单元向所述服务提供设备发送注册请求信号,从用户获取关于将要接收的所述服务的所述设置信息,并将从用户获取的设置信息发送到所述服务提供设备;设置信息存储单元,其复制所述使用注册单元发送给所述服务提供设备的所述设置信息,以将设置信息保存在所述客户设备的存储单元中;功能执行单元,其执行关于从所述服务提供设备提供的并且由所述使用注册单元的操作导致的,服务的预定功能;检测单元,其从已经通过所述使用注册单元进行了使用注册的服务中检测出由所述服务提供设备终止的服务;以及重新注册单元,如果所述检测单元检测到已终止的服务,则所述重新注册单元从所述存储单元中读出对应于已终止的服务的设置信息,并将所述设置信息连同所述注册请求信号一起发送给所述服务提供设备,以便对已终止的服务进行使用注册。
2.依据权利要求1所述的系统,其中当所述服务终止单元终止满足结束条件的服务的时候,服务终止单元向接收服务的所述客户设备发送通知,指示满足结束条件的服务的终止;所述检测单元通过接收来自所述服务提供设备的通知,来检测由服务提供设备终止的服务。
3.依据权利要求1或2的系统,所述客户设备的重新注册单元包括重新注册判断单元,判断已终止的服务是否需要使用注册,其中所述重新注册判断单元对所述重新注册判断单元判断为需要使用注册的服务进行使用注册,而对重新注册判断单元判断为不需要使用注册的服务不进行使用注册。
4.依据权利要求3所述的系统,其中所述重新注册判断单元对所述检测单元检测到的已终止的服务的终止因素进行分析,并依据分析的结果判断已终止的服务是否需要使用注册。
5.依据权利要求3所述的系统,其中当所述服务终止单元终止满足结束条件的服务时,服务终止单元向客户设备发送关于接受已终止的服务的重新注册的信息;以及其中所述重新注册判断单元根据关于接受已终止的服务的重新注册的信息,判断已终止的服务是否需要使用注册。
6.依据权利要求1至5中的任意一条所述的系统,所述客户设备还包括许可判断单元,其根据关于是否许可对所述服务进行重新注册的用户输入信息,判断检测单元检测到的已终止的服务的重新注册是否得到许可;以及重新注册禁止单元,其禁止对经所述许可判断单元判断为不允许进行重新注册的已终止的服务进行重新注册。
7.依据权利要求6所述的系统,其中所述使用注册单元包括许可信息存储单元,其请求用户通过操作单元输入关于是否许可对服务的重新注册的信息,以便获取用户输入信息,并且对于已经进行了使用注册的每项服务,都将所述用户输入信息储存在存储单元中;以及所述许可判断单元根据储存在所述许可信息存储单元中的用户输入信息,判断是否许可已终止的服务的重新注册。
8.依据权利要求1至7中的任意一条所述的系统,所述客户设备还包括消息显示单元,在检测单元检测到服务终止之后,所述消息显示单元显示消息,请求用户改变设置信息中的特定参数,所述特定参数与重新注册单元将要注册的服务相对应;以及设置信息改变单元,其配置为,当用户通过操作单元新输入所述特定参数的值时,所述设置信息改变单元将储存在存储单元中的特定参数的值更改为特定参数的新输入的值,并控制重新注册单元使用特定参数的新输入的值,对已终止的服务进行使用注册。
9.依据权利要求8所述的系统,其中如果在服务中发生了特定事件,则所述服务提供设备的所述服务结束判断单元判断,服务的结束条件得到满足;当所述服务终止设备终止服务时,服务提供设备的所述服务终止单元向接收了将要终止的服务的客户设备发送服务的终止因素,所述因素与发生在已终止的服务中的特定事件有关;以及所述客户设备还包括参数确定单元,其基于从服务提供设备接收到的所述因素来确定所述特定参数。
10.依据权利要求8所述的系统,如果对应于所述服务的设置信息中的一个或者多个参数不能够用于成功地继续所述服务,则服务提供设备的服务结束判断单元判断服务的结束条件得到满足;服务提供设备的服务终止单元向接收了将要终止的服务的客户设备发送信息,指示导致满足结束条件的参数的适当范围;以及客户设备的消息显示单元显示导致满足结束条件的参数的适当范围,以及请求用户改变导致满足结束条件的参数的消息,作为请求用户改变特定参数的消息。
11.依据权利要求1至10中的任意一条所述的系统,所述客户设备还包括删除单元,如果用户通过操作单元输入删除命令,则删除单元删除储存在存储单元中的至少一条设置信息。
12.一种在用于从服务提供设备向通信设备提供服务的系统中使用的通信设备,所述服务提供设备包括能够储存多条设置信息的数据库,其中每条设置信息都包括一个或者多个与将提供给所述通信设备的服务有关的参数,同时将所述多条设置信息中的每条都与通信设备的标识符关联起来;注册单元,如果从所述通信设备接收到请求对服务进行注册的注册请求信号,则所述注册单元从通信设备获取设置信息,并在所述数据库中注册所获取的设置信息,同时将所获取的设置信息与通信设备的标识符关联起来;提供单元,其依据关于将提供给所述通信设备的服务的设置信息,向通信设备提供服务;服务结束判断单元,其判断对应于多条设置信息中的每条的服务的结束条件是否得到满足;以及服务终止单元,其将判断为满足结束条件的服务的设置信息从所述数据库中删除,以便终止满足结束条件的服务,所述通信设备包括使用注册单元,如果通过所述通信设备的操作单元接收到用户输入,请求对将要接收的服务进行使用注册,则所述使用注册单元向所述服务提供设备发送注册请求信号,从用户获取关于将要接收的服务的设置信息,并将从用户获取的设置信息发送给服务提供设备;设置信息存储单元,其复制所述使用注册单元发送给服务提供设备的设置信息,以将设置信息保存在所述通信设备的存储单元中;功能执行单元,其执行关于从服务提供设备提供的并且由所述使用注册单元的操作导致的,服务的预定的功能;检测单元,其从已经通过所述使用注册单元进行了使用注册的服务中,检测出由所述服务提供设备终止的服务,以及重新注册单元,如果所述检测单元检测到已终止的服务,则所述重新注册单元从所述存储单元中读出对应于已终止的服务的设置信息,并将设置信息连同注册请求信号一起发送给所述服务提供设备,以便对已终止的服务进行使用注册。
13.依据权利要求12所述的通信设备,其中当所述服务终止单元终止满足结束条件的服务时,所述服务提供设备的服务终止单元向接收所述服务的所述通信设备发送通知,指示满足结束条件的服务终止;所述检测单元通过从服务提供设备接收通知来检测由服务提供设备终止的服务。
14.依据权利要求12或13所述的通信设备,其中所述重新注册单元包括重新注册判断单元,其判断已终止的服务是否需要使用注册;以及其中重新注册单元对经所述重新注册判断单元判断为需要使用注册的服务进行使用注册,而对经重新注册判断单元判断为不需要使用注册的服务不进行使用注册。
15.依据权利要求14所述的通信设备,其中所述重新注册判断单元对检测单元检测到的已终止的服务的终止因素进行分析,并依据分析的结果判断已终止的服务是否需要使用注册。
16.依据权利要求14所述的通信设备,其中当所述服务终止单元终止满足结束条件的服务时,所述服务提供设备的服务终止单元向接收所述服务的所述通信设备发送关于接受已终止的服务的重新注册的信息;以及其中所述重新注册判断单元根据关于接受对已终止的服务的重新注册的信息,判断已终止的服务是否需要使用注册。
17.依据权利要求12至16中的任意一条所述的通信设备,还包括许可判断单元,其根据关于是否许可对服务的重新注册的用户输入信息,判断检测单元检测到的已终止的服务的重新注册是否得到许可;以及重新注册禁止单元,其禁止对经所述许可判断单元判断为不允许进行重新注册的已终止的服务进行重新注册。
18.依据权利要求17所述的通信设备,其中所述使用注册单元包括许可信息存储单元,其请求用户通过操作单元输入关于是否许可服务的重新注册的信息,以便获取用户输入信息,并且对于已经进行了使用注册的每项服务,都将用户输入信息储存在存储单元中;以及所述许可判断单元根据储存在所述许可信息存储单元中的用户输入信息判断是否许可已终止的服务的重新注册。
19.依据权利要求12至18中的任意一条所述的通信设备,还包括消息显示单元,在所述检测单元检测到服务终止之后,所述消息显示单元显示消息,请求用户改变设置信息中的特定参数,所述特定参数对应于所述重新注册单元将要进行注册的服务;以及设置信息改变单元,其配置为,当用户通过操作单元新输入所述特定参数的值时,所述设置信息改变单元将储存在存储单元中的特定参数的值更改为特定参数的新输入的值,并控制重新注册单元使用特定参数的新输入的值,对已终止的服务进行使用注册。
20.依据权利要求19所述的通信设备,其中如果在服务中发生了特定事件,则服务提供设备的所述服务结束判断单元判断服务的结束条件得到满足;当所述服务终止设备终止服务时,服务提供设备的所述服务终止单元向接收了将要终止的服务的所述通信设备发送服务的终止因素,所述因素与发生在已终止的服务中的特定事件有关;以及通信设备还包括参数确定单元,其基于从服务提供设备接收到的因素来确定所述特定参数。
21.依据权利要求19所述的通信设备,如果对应于服务的设置信息的一个或者多个参数不能够用于成功地继续所述服务,则服务提供设备的服务结束判断单元判断服务的结束条件得到满足;服务提供设备的服务终止单元向接收了将要终止的服务的通信设备发送信息,指示导致满足结束条件的参数的合适范围;以及通信设备的消息显示单元显示导致满足结束条件的参数的合适范围,以及请求用户改变导致满足结束条件的参数的消息,作为请求用户改变所述特定参数的消息。
22.依据权利要求12至21中的任意一条所述的通信设备,还包括删除单元,如果用户通过操作单元输入删除命令,则所述删除单元删除储存在存储单元中的至少一条设置信息。
23.一种成像设备,包括依据权利要求12至22中的任意一条所述的通信设备;以及在记录介质上形成图像的成像单元,其中通信设备的所述功能执行单元使用所述成像单元执行预定的功能。
24.一种在用于从服务提供设备向客户设备提供服务的系统中使用的服务提供设备,包括能够储存多条设置信息的数据库,其中每条设置信息都包括一个或者多个与将提供给所述客户设备的服务有关的参数,同时将所述多条设置信息中的每条都与客户设备的标识符关联起来;注册单元,如果从客户设备接收到请求对服务进行注册的注册请求信号,则所述注册单元从客户设备获取设置信息,并在所述数据库中注册所获取的设置信息,同时将获取的设置信息与客户设备的标识符关联起来;提供单元,其根据关于将提供给客户设备的服务的设置信息,向客户设备提供服务;服务结束判断单元,其判断对应于多条设置信息中每条信息的服务的结束条件是否得到满足;以及服务终止单元,其将判断为满足结束条件的服务的设置信息从数据库中删除,以便终止满足结束条件的服务,其中所述客户设备包括使用注册单元,如果通过客户设备的操作单元接收到用户输入,请求对将要接收的服务进行使用注册,则所述使用注册单元向服务提供设备发送注册请求信号,从用户获取关于将要接收的服务的设置信息,并将从用户获取的设置信息发送给所述服务提供设备;设置信息存储单元,其复制使用注册单元发送给服务提供设备的设置信息,以将设置信息保存在客户设备的存储单元中;功能执行单元,其执行关于从服务提供设备提供的并且由使用注册单元的操作导致的,服务的预定的功能;检测单元,其从已经通过使用注册单元进行了使用注册的服务中,检测出由服务提供设备终止的服务,以及重新注册单元,如果所述检测单元检测到已终止的服务,则所述重新注册单元从存储单元中读出对应于已终止的服务的设置信息,并将设置信息连同注册请求信号,一起发送给服务提供设备,以便对已终止的服务进行使用注册。
25.一种用于从服务器向客户设备提供服务的系统,所述服务器包括注册单元,当从所述客户设备接收到对服务进行注册的请求时,所述注册单元获取关于服务的设置信息;服务提供单元,其向所述客户设备提供服务;以及判断单元,其判断服务的结束条件是否得到满足,并发送关于终止满足结束条件的服务的终止信息;所述客户设备包括使用注册单元,响应于用户输入,所述使用注册单元向所述服务器发送注册请求,从用户接收关于服务的设置信息,以便向服务器发送所述设置信息,并将设置信息储存在存储器中;检测单元,其基于从所述服务器发送来的终止信息,检测已终止的服务;以及重新注册单元,其配置为,如果所述检测单元检测到已终止的服务,则所述重新注册单元从存储器中读出所述设置信息,并将设置信息连同所述注册请求,一起发送给所述服务器,以便对所述服务进行使用注册。
26.一种在用于从服务器向客户设备提供服务的系统中使用的客户设备,包括使用注册单元,响应于用户输入,所述使用注册单元向所述服务器发送注册请求,从用户接收关于所述服务的设置信息,以便向服务器发送所述设置信息,并将设置信息储存在存储器中;检测单元,其基于从所述服务器发送来的终止信息,检测已终止的服务;以及重新注册单元,其配置为,如果所述检测单元检测到已终止的服务,则所述重新注册单元从存储器中读出所述设置信息,并将设置信息连同所述注册请求,一起发送给所述服务器,以便对所述服务进行使用注册。
27.一种在设备上使用的储存有程序的计算机可读介质,所述计算机程序包括计算机可读指令,使所述设备执行从服务器接收服务的方法,所述方法包括以下步骤通过将注册请求,连同用户输入的关于服务的设置信息,一起发送给所述服务器,来执行接收服务的使用注册;将所述设置信息储存在存储器中;基于由所述服务器提供的终止信息,检测由服务器终止的服务;以及如果在所述检测步骤中检测到服务的终止,则通过向所述服务器发送请求和储存在存储器中的所述设置信息,对已终止的服务执行重新注册。
28.一种在用于从服务器接收服务的客户设备上使用的系统,包括通过将注册请求,连同用户输入的关于服务的设置信息,一起发送给所述服务器,来执行接收服务的使用注册的装置;将所述设置信息储存在存储器中的装置;基于由所述服务器提供的终止信息,检测由服务器终止的服务的装置;以及如果所述检测装置检测到服务的终止,则通过向所述服务器发送请求和储存在存储器中的所述设置信息,对已终止的服务执行重新注册的装置。
全文摘要
一种从服务提供设备向客户设备提供服务的系统。在该系统中,服务提供设备包括数据库、注册单元、提供单元、服务结束判断单元、和服务终止单元。客户设备包括使用注册单元,其用于,如果接收到请求对即将接收的服务进行使用注册的用户输入,则向服务提供设备发送注册请求信号,从用户获取该服务的设置信息,并发送给服务提供设备;设置信息存储单元,其复制该设置信息,并保存在客户设备的存储单元中;功能执行单元,其执行该服务的预定功能;检测单元,其检测由服务提供设备终止的服务;以及重新注册单元,其从存储器中读取已终止的服务的设置信息,并将该设置信息与注册请求信号一起发送给服务提供设备,以对已终止的服务进行使用注册。
文档编号H04N1/00GK1783058SQ20051011762
公开日2006年6月7日 申请日期2005年11月7日 优先权日2004年11月5日
发明者青木一磨, 柳哲, 小久保雅俊, 松田诚, 宫泽雅史, 大原清孝 申请人:兄弟工业株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1