專利名稱:服務提供系統和用于接收服務的設備的制作方法
技術領域:
本發明的各方面涉及一種將來自服務提供設備的服務提供給客戶設備的系統。
背景技術:
服務提供設備將服務相關的信息提供給客戶設備的系統已經得到了廣泛的使用。這樣的服務通常被稱作信息提供服務。服務提供設備通過從客戶設備獲取需處理的數據并且對獲取的數據進行處理,而向客戶設備提供數據處理服務的系統也已經得到了廣泛的使用。
作為用于接收信息提供服務的客戶設備,配置為通過接收來自服務器的網絡數據并在其顯示單元上顯示接收到的網絡數據,而接收來自服務器的服務的設備已經得到了廣泛的使用。在網址“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日
發明者青木一磨, 柳哲, 小久保雅俊, 松田誠, 宮澤雅史, 大原清孝 申請人:兄弟工業株式會社