欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

信息處理裝置、中繼服務(wù)器、信息中繼方法、控制方法和通信系統(tǒng)的制作方法

文檔序號:7799194閱讀:191來源:國知局
信息處理裝置、中繼服務(wù)器、信息中繼方法、控制方法和通信系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及信息處理裝置、中繼服務(wù)器、信息中繼方法、控制方法和通信系統(tǒng)。信息處理裝置能夠與被連接到網(wǎng)絡(luò)的特定固件信息傳輸裝置和固件提供服務(wù)器通信,該信息處理裝置包括:控制設(shè)備;和通信單元,該通信單元能夠連接網(wǎng)絡(luò),其中,控制設(shè)備被配置成:執(zhí)行通過連接獲取特定固件信息的特定固件信息獲取處理;執(zhí)行基于被包括在通過特定固件信息獲取處理獲取的特定固件信息中的特定固件位置信息,從由特定固件位置信息指示的固件提供服務(wù)器獲取特定固件的特定固件獲取處理;并且執(zhí)行將被包括在信息處理裝置中并且對應(yīng)于通過特定固件獲取處理獲取的特定固件的固件更新為所獲取的特定固件的特定固件更新處理。
【專利說明】信息處理裝置、中繼服務(wù)器、信息中繼方法、控制方法和通信系統(tǒng)

【技術(shù)領(lǐng)域】
[0001]本公開涉及一種具有固件的信息處理裝置、具有中繼信息處理裝置和特定服務(wù)器之間的通信的功能的中繼服務(wù)器、在中繼服務(wù)器中使用的信息中繼方法和信息中繼程序、以及通信系統(tǒng)。

【背景技術(shù)】
[0002]已經(jīng)提出用于具有網(wǎng)絡(luò)訪問功能的各種信息處理裝置的各種固件更新方法。
[0003]在JP-A-11-272454中,公開了一種用于使用信息處理裝置訪問因特網(wǎng)、搜尋更新信息、訪問具有通過搜索獲得的統(tǒng)一資源定位符(URL)的網(wǎng)站、并且下載更新對象的軟件的技術(shù)。


【發(fā)明內(nèi)容】

[0004]在圖像處理裝置中自行地搜尋更新信息并且更新諸如固件的軟件的方法可以使信息處理裝置的處理負荷和用戶的負荷增加,并且也不能夠在適當(dāng)?shù)亩〞r更新。
[0005]而且,近年來,針對使用云(在因特網(wǎng)上的各種資源)的消費者(信息處理裝置)的各種特定服務(wù)已經(jīng)被開發(fā)。作為特定服務(wù)的具體示例,能夠考慮到特定供應(yīng)商共同地管理來自于云側(cè)的消費者的多個信息處理裝置。
[0006]為了實現(xiàn)該特定服務(wù),也能夠預(yù)測將會需要將消費者的信息處理裝置的一部分或者全部固件更新為專用于該特定服務(wù)的特定固件。在提供此特定服務(wù)的情況下,特別地,要求將作為特定服務(wù)提供對象的信息處理裝置的固件適當(dāng)?shù)睾陀行У馗聻樗诖奶囟ü碳?br> [0007]本公開至少提供一種將能夠訪問網(wǎng)絡(luò)的信息處理裝置的固件適當(dāng)?shù)睾陀行У馗聻樗诖墓碳募夹g(shù)。
[0008]本公開的信息處理裝置包括控制設(shè)備和能夠連接網(wǎng)絡(luò)的通信單元,并且能夠通過通信單元與被連接到網(wǎng)絡(luò)的特定固件信息傳輸裝置和固件提供服務(wù)器通信??刂圃O(shè)備被配置成執(zhí)行連接建立處理、特定固件信息獲取處理、特定固件獲取處理、以及特定固件更新處理。
[0009]連接建立處理是下述處理:在信息處理裝置和特定固件信息傳輸裝置之間,根據(jù)用于建立使能來自特定固件信息傳輸裝置的服務(wù)器推送的會話的通信協(xié)議來建立會話,并且在所建立的會話中建立與特定固件信息傳輸裝置的連接。特定固件信息獲取處理是通過連接獲取特定固件信息的處理,其中,特定固件信息來自特定固件信息傳輸裝置且以信息處理裝置為地址,包括指示預(yù)定特定固件的位置的特定固件位置信息,以將信息處理裝置的固件更新為特定固件。特定固件獲取處理是下述處理:基于被包括在通過特定固件信息獲取處理獲取的特定固件信息中的特定固件位置信息,從由特定固件位置信息指示的固件提供服務(wù)器獲取特定固件。特定固件更新處理是將固件更新為所獲取的特定固件的處理,該固件被包括在信息處理裝置中并且對應(yīng)于通過特定固件獲取處理獲取的特定固件。
[0010]根據(jù)被如上所述配置的本公開的信息處理裝置,在信息處理裝置和特定固件信息傳輸裝置之間建立根據(jù)用于建立使能來自特定固件信息傳輸裝置的服務(wù)器推送的會話的通信協(xié)議的連接。其后,當(dāng)獲取通過該連接從特定固件信息傳輸裝置傳輸并且以信息處理裝置為地址的特定固件信息時,信息處理裝置基于被包括在特定固件信息中的特定固件位置信息獲取特定固件并且從而將相對應(yīng)的固件更新為所獲取的特定固件。
[0011]因此,根據(jù)本公開的信息處理裝置,能夠基于由信息處理裝置接收到的特定固件信息將信息處理裝置的固件適當(dāng)?shù)睾陀行У馗聻樗诖墓碳?特定固件)。
[0012]順便提及,上述信息處理裝置可以具有下述配置中的至少一個。
[0013]信息處理裝置可以包括:第一存儲器,該第一存儲器被配置成存儲信息,其中在通過特定固件信息獲取處理獲取特定固件信息的情況下,控制設(shè)備執(zhí)行將獲取的特定固件信息存儲在第一存儲器中的存儲處理和接收固件的更新請求的更新請求接收處理,并且其中在通過更新請求接收處理接收到更新請求的情況下,控制設(shè)備基于被存儲在第一存儲器中的特定固件信息執(zhí)行特定固件獲取處理和特定固件更新處理。
[0014]信息處理裝置可以包括:第二存儲器,在該第二存儲器中預(yù)先存儲指示與信息處理裝置的固件相對應(yīng)的預(yù)定的嵌入式固件的位置的嵌入式固件位置信息,其中控制設(shè)備被配置成:在通過更新請求接收處理接收到更新請求的情況下,執(zhí)行確定與作為更新請求的對象的固件相對應(yīng)的特定固件信息是否已經(jīng)被存儲在第一存儲器中的特定固件信息存在確定處理;在通過特定固件信息存在確定處理沒有確定特定固件信息已經(jīng)被存儲在第一存儲器中的情況下,執(zhí)行從由與作為更新請求的對象的固件相對應(yīng)并且被存儲在第二存儲器中的嵌入式固件位置信息指示的固件提供服務(wù)器獲取嵌入式固件的第一嵌入式固件獲取處理;并且執(zhí)行將作為更新請求的對象的固件更新為通過第一嵌入式固件獲取處理獲取的嵌入式固件的第一嵌入式固件更新處理。
[0015]信息處理裝置可以包括:第二存儲器,在該第二存儲器中預(yù)先存儲指示與信息處理裝置的固件相對應(yīng)的預(yù)定的嵌入式固件的位置的嵌入式固件位置信息,其中,控制設(shè)備被配置成:執(zhí)行通過該連接獲取釋放信息的釋放信息獲取處理,其中,釋放信息來自特定固件信息傳輸裝置且以信息處理裝置為地址,并且指示將信息處理裝置的特定固件返回到預(yù)定的嵌入式固件的需要;在通過釋放信息獲取處理獲取釋放信息的情況下,執(zhí)行從由與被存儲在第二存儲器中的釋放信息相對應(yīng)的嵌入式固件位置信息指示的固件提供服務(wù)器獲取嵌入式固件的第二嵌入式固件獲取處理;并且執(zhí)行將與釋放信息相對應(yīng)的特定固件更新為通過第二嵌入式固件獲取處理獲取的嵌入式固件的第二嵌入式固件更新處理。
[0016]在上述信息處理裝置中,在通過釋放信息獲取處理獲取釋放信息的情況下,控制設(shè)備可以執(zhí)行刪除被存儲在第一存儲器中并且與釋放信息相對應(yīng)的特定固件的特定固件信息的特定固件信息刪除處理。
[0017]在上述信息處理裝置中,控制設(shè)備可以執(zhí)行連續(xù)地或者間歇地保持在信息處理裝置和特定固件信息傳輸裝置之間的會話的會話保持處理。
[0018]在上述信息處理裝置中,通信協(xié)議可以是BOSH上XMPP (XMPP over BOSH:extensible Messaging and Presence Protocol over Bidirect1nal-streams OverSynchronous HTTP:基于同步HTTP雙向流上的可擴展通訊和表示協(xié)議)。
[0019]本公開的中繼服務(wù)器包括控制設(shè)備和能夠連接網(wǎng)絡(luò)的通信單元,并且能夠通過通信單元與被連接到網(wǎng)絡(luò)的特定服務(wù)器和至少一個信息處理裝置通信。控制設(shè)備被配置成,執(zhí)行第一建立處理、第二建立處理、特定固件更新命令獲取處理、以及第一特定固件信息傳輸處理。
[0020]第一建立處理是下述處理:響應(yīng)于來自于信息處理裝置的請求,當(dāng)根據(jù)用于建立使能來自中繼服務(wù)器的服務(wù)器推送的會話的第一通信協(xié)議來建立會話時,在中繼服務(wù)器和信息處理裝置之間建立第一連接。第二建立處理是下述處理:在中繼服務(wù)器和特定服務(wù)器之間,根據(jù)不同于第一通信協(xié)議的第二通信協(xié)議來建立第二連接。特定固件更新命令獲取處理是通過第二連接從特定服務(wù)器獲取特定固件更新命令的處理,其中特定固件更新命令用于將至少一個信息處理裝置的預(yù)定的更新對象裝置的固件更新為預(yù)定的特定固件并且至少包括指示更新對象裝置的裝置信息和指示特定固件的位置的特定固件位置信息。第一特定固件信息傳輸處理是基于通過特定固件更新命令獲取處理獲取的特定固件更新命令,通過第一連接將至少包括特定固件位置信息的特定固件信息傳輸?shù)礁聦ο笱b置的處理。
[0021]根據(jù)如上所配置的本公開的中繼服務(wù)器,在中繼服務(wù)器和信息處理裝置之間建立第一連接,在中繼服務(wù)器和特定服務(wù)器之間建立第二連接。其后,當(dāng)通過第二連接從特定服務(wù)器獲取特定固件更新命令時,中繼服務(wù)器通過第一連接,基于特定固件更新命令將特定固件信息傳輸?shù)阶鳛楦聦ο蟮男畔⑻幚硌b置。
[0022]因此,根據(jù)本公開的中繼服務(wù)器,能夠基于來自于特定服務(wù)器的特定固件更新命令將信息處理裝置的固件適當(dāng)?shù)睾陀行У馗聻樗诖墓碳?特定固件)。
[0023]順便提及,上述中繼服務(wù)器可以具有下述配置中的至少一個。
[0024]中繼服務(wù)器可以包括:存儲器,該存儲器被配置成存儲信息,其中控制設(shè)備被配置成:在通過特定固件更新命令獲取處理獲取特定固件更新命令的情況下,執(zhí)行基于特定固件更新命令來存儲與裝置信息相關(guān)聯(lián)的特定固件信息的存儲處理;并且在滿足與一個信息處理裝置有關(guān)的預(yù)定傳輸條件的情況下,執(zhí)行通過第一連接將與該一個信息處理裝置對應(yīng)并且被存儲在存儲器中的特定固件信息傳輸?shù)皆撘粋€信息處理裝置的第二特定固件信息傳輸處理。
[0025]在上述中繼服務(wù)器中,可以執(zhí)行存儲處理的條件和從信息處理裝置到中繼服務(wù)器執(zhí)行用于根據(jù)第一通信協(xié)議的通信的連接的條件中的至少一個被設(shè)定為傳輸條件。
[0026]在上述中繼服務(wù)器中,控制設(shè)備可以被配置成:執(zhí)行通過第二連接從特定服務(wù)器獲取特定固件釋放命令的特定固件釋放命令,其中,特定固件釋放命令用于返回至少一個信息處理裝置的預(yù)定的釋放對象裝置的特定固件,并且至少包括指示釋放對象裝置的裝置信息;并且執(zhí)行基于通過特定固件釋放命令獲取處理獲取的特定固件釋放命令,通過第一連接將表示需要將特定固件返回到嵌入式固件的釋放信息傳輸?shù)结尫艑ο笱b置的釋放信息傳輸處理。
[0027]在上述中繼服務(wù)器中,控制設(shè)備可以被配置成:執(zhí)行通過第二連接從特定服務(wù)器獲取特定固件釋放命令的特定固件釋放命令獲取處理,其中,特定固件釋放命令用于返回至少一個信息處理裝置的預(yù)定的釋放對象裝置的特定固件,并且至少包括指示釋放對象裝置的裝置信息;并且在通過特定固件釋放命令獲取處理獲取特定固件釋放命令的情況下,基于特定固件釋放命令,執(zhí)行刪除與釋放對象裝置相對應(yīng)并且被存儲在存儲器中的特定固件信息的特定固件信息刪除處理。
[0028]在上述中繼服務(wù)器中,第一通信協(xié)議可以是BOSH上XMPP(extensible Messagingand Presence Protocol over Bidirect1nal-streams Over Synchronous HTTP:基于同步HTTP雙向流上的可擴展通訊和表示協(xié)議)。
[0029]在上述中繼服務(wù)器中,第二通信協(xié)議可以是HTTP (HyperText TransferProtocol:超文本傳送協(xié)議)。
[0030]而且,由本公開的中繼服務(wù)器中的控制設(shè)備執(zhí)行的處理中的每一個能夠被實現(xiàn)為用于使計算機執(zhí)行相對應(yīng)的處理的信息中繼程序。
[0031]而且,本公開的中繼服務(wù)器和信息處理裝置兩者被用于構(gòu)造通信系統(tǒng),從而其能夠提供能夠?qū)⑿畔⑻幚硌b置的固件適當(dāng)?shù)睾陀行У馗聻樗诖墓碳?特定固件)的通信系統(tǒng)。

【專利附圖】

【附圖說明】
[0032]從參考附圖考慮的下面的詳細描述中,本公開的前述和附加的特征和特性將會變得更加顯而易見,其中:
[0033]圖1是圖示示例性實施例的特定服務(wù)提供系統(tǒng)的示例性配置的配置圖;
[0034]圖2A是圖示被存儲在多功能外圍裝置(MFP)的NVRAM中的固件狀態(tài)表的說明圖,并且圖2B是圖示被存儲在MFP的ROM中的嵌入式固件信息的說明圖;
[0035]圖3A和圖3B是圖示被存儲在中介服務(wù)器中的固件設(shè)定表和設(shè)備管理表的說明圖;
[0036]圖4A和圖4B是圖示示例性實施例的特定服務(wù)提供系統(tǒng)的操作示例的序列圖;
[0037]圖5是圖示由業(yè)務(wù)服務(wù)器執(zhí)行的服務(wù)處理的流程圖;
[0038]圖6是由圖6A和圖6B組成,是圖示由中介服務(wù)器執(zhí)行的中介服務(wù)器處理的流程圖;
[0039]圖7是圖示由中介服務(wù)器執(zhí)行的間隔定時器處理的流程圖;
[0040]圖8是由圖8A和圖8B組成,是圖示由MFP執(zhí)行的MFP處理的流程圖。

【具體實施方式】
[0041]在下文中,將會參考附圖描述本公開的適當(dāng)?shù)氖纠詫嵤├?。本公開不受到下述示例性實施例的特定設(shè)備和結(jié)構(gòu)等等的限制,并且在沒有脫離本公開的范圍的情況下能夠應(yīng)用各種方面。通過在能夠?qū)崿F(xiàn)本公開的目的的范圍內(nèi)省略下面示例性實施例的配置的一部分來配置的方面也是本公開的示例性實施例,并且通過適當(dāng)?shù)亟M合多個下面的示例性實施例來配置的方面也是本公開的示例性實施例。
[0042]( I)特定服務(wù)提供系統(tǒng)I的概述
[0043]如在圖1中所示,本示例性實施例的特定服務(wù)提供系統(tǒng)I包括多個多功能外圍裝置(MFP) 10、個人計算機(PC) 18、路由器20、中介服務(wù)器30、業(yè)務(wù)服務(wù)器40、以及固件提供服務(wù)器50。
[0044]各個MFP10能夠通過路由器20被連接到在因特網(wǎng)(云)5上存在的各種資源,并且在本示例性實施例中,各個MFP10至少被連接到中介服務(wù)器30和固件提供服務(wù)器50,使得它們能夠相互執(zhí)行數(shù)據(jù)通信。PC18能夠通過路由器20被連接到因特網(wǎng)5,并且也能夠通過路由器20執(zhí)行與各個MFPlO的數(shù)據(jù)通信。
[0045]路由器20是用于中繼在多個MFPlO和PC18之間的數(shù)據(jù)通信并且中繼多個MFPlO和PC18與存在于因特網(wǎng)5上的各種資源的數(shù)據(jù)通信的已知的數(shù)據(jù)中繼裝置。路由器20具有諸如防火墻功能和地址轉(zhuǎn)換功能(例如,NAT:網(wǎng)絡(luò)地址轉(zhuǎn)換)的各種功能。
[0046]如從路由器20中看到的,因特網(wǎng)5和被連接到因特網(wǎng)5的各種資源構(gòu)成云。另一方面,路由器20、被連接到路由器20的MFPlO和PC構(gòu)成作為所謂的局域網(wǎng)(LAN)的網(wǎng)絡(luò)。在云側(cè)上,中介服務(wù)器30、業(yè)務(wù)服務(wù)器40、以及固件提供服務(wù)器50被連接到因特網(wǎng)5。
[0047]通過路由器20,在LAN中的MFPlO和PC18中的每一個被連接到存在于云上的中介服務(wù)器30、業(yè)務(wù)服務(wù)器40、以及固件提供服務(wù)器50,使得它們能夠執(zhí)行數(shù)據(jù)通信。而且,甚至在云側(cè)上,中介服務(wù)器、業(yè)務(wù)服務(wù)器40、以及固件提供服務(wù)器50能夠通過因特網(wǎng)5相互執(zhí)行數(shù)據(jù)通信。在此示例性實施例中,將會詳細地描述在業(yè)務(wù)服務(wù)器40和中介服務(wù)器30之間的通信、在中介服務(wù)器30和各個MFPlO之間的通信、以及在各個MFPlO和固件提供服務(wù)器50之間的通信。
[0048]在路由器20中,防火墻功能是防止路由器20的內(nèi)部的網(wǎng)絡(luò)(LAN)被從外部(因特網(wǎng)(5)側(cè))攻擊的功能。防火墻功能被用于監(jiān)視在與外部的接口中流動的數(shù)據(jù),并且檢測和阻擋未經(jīng)授權(quán)的訪問。地址轉(zhuǎn)換功能是一對一執(zhí)行在僅在路由器20的內(nèi)部的網(wǎng)絡(luò)中使用的私人IP地址與在因特網(wǎng)5上的全球IP地址之間的轉(zhuǎn)換的功能。
[0049]將會描述防火墻功能和地址轉(zhuǎn)換功能的具體操作。作為示例,將會描述在任意一個MFPlO與中介服務(wù)器30或者固件提供服務(wù)器40之間建立連接的情況下由路由器執(zhí)行的操作。取決于是否根據(jù)請求-響應(yīng)類型協(xié)議,或者根據(jù)持續(xù)連接類型協(xié)議,建立了在MFPlO和通信方之間的連接,防火墻功能和地址轉(zhuǎn)換功能的操作是不同的。
[0050]持續(xù)連接類型協(xié)議意指具有盡可能長地(連續(xù)地或者間歇地)保持連接(會話)使得能夠在任意的定時從兩側(cè)執(zhí)行通信的形式的協(xié)議。請求-響應(yīng)類型協(xié)議意指,具有相對于請求傳輸響應(yīng)的形式的協(xié)議。在本示例性實施例中,作為示例,BOSH上XMPP(eXtensibleMessaging and Presence Protocol over Bidirect1nal-streams Over SynchronousHTTP:基于同步HTTP雙向流上的可擴展通訊和表示協(xié)議)被用作持續(xù)連接類型協(xié)議,并且HTTP (HyperText Transfer Protocol:超文本傳送協(xié)議)被用作請求-響應(yīng)類型協(xié)議。[0051 ] 具體地,在本示例性實施例中,主要通過根據(jù)持續(xù)連接類型的BOSH上XMPP的連接來執(zhí)行在MFP10和中介服務(wù)器30之間的通信,并且主要通過根據(jù)請求-響應(yīng)類型的HTTP的連接來執(zhí)行在MFP10和固件提供服務(wù)器50之間的通信。也主要通過由HTTP的連接來執(zhí)行在業(yè)務(wù)服務(wù)器40和中介服務(wù)器30之間的通信。
[0052]在中介服務(wù)器30和MFP10之間建立根據(jù)基于作為持續(xù)連接類型協(xié)議的BOSH上XMPP的XMPP會話請求的連接(在下文中,被稱為XMPP連接)的情況下,路由器20的防火墻功能允許在中介服務(wù)器30和MFP10之間的所有的連接通過路由器20。而且,路由器20的地址轉(zhuǎn)換功能執(zhí)行與在中介服務(wù)器30和MFP10之間的所有通信有關(guān)的地址轉(zhuǎn)換。路由器20識別保持XMPP會話的通信方,從而實現(xiàn)這些操作。因此,在使用XMPP連接的情況下,允許從中介服務(wù)器30到MFP10的請求信息經(jīng)過路由器20。下面將會描述與圖8A的步驟S610有關(guān)的用于建立XMPP會話的具體程序,并且從而在此沒有描述。
[0053]在MFPlO和固件提供服務(wù)器50之間建立通過作為請求-響應(yīng)類型協(xié)議的HTTP的連接(在下文中,被稱為HTTP連接)的情況下,路由器20的防火墻功能允許從MFPlO到固件提供服務(wù)器50的請求信息和從固件提供服務(wù)器50到MFPlO的響應(yīng)信息經(jīng)過路由器20。然而,防火墻功能阻擋從固件提供服務(wù)器50到MFPlO的請求信息。這是因為存在來自于防火墻外部的請求信息可能包括用于未經(jīng)授權(quán)的訪問或者入侵的請求信息的風(fēng)險。通過由路由器20的固件功能識別與從MFPlO傳輸?shù)焦碳峁┓?wù)器50的請求信息有關(guān)的響應(yīng)信息來實現(xiàn)此功能。
[0054]而且,路由器20的地址轉(zhuǎn)換功能執(zhí)行與從MFPlO到固件提供服務(wù)器50的請求信息和從固件提供服務(wù)器50到MFPlO的響應(yīng)信息有關(guān)的地址轉(zhuǎn)換。然而,地址轉(zhuǎn)換功能不能夠執(zhí)行與從固件提供服務(wù)器50到MFPlO的請求信息有關(guān)的地址轉(zhuǎn)換。因此,從固件提供服務(wù)器50到MFPlO的請求信息被阻擋。通過由路由器20識別與從MFPlO傳輸?shù)焦碳峁┓?wù)器50的請求信息有關(guān)的響應(yīng)信息來實現(xiàn)這些操作。
[0055]本示例性實施例的特定服務(wù)提供系統(tǒng)I是特定供應(yīng)商能夠使用以將特定服務(wù)提供給合同規(guī)定的消費者的系統(tǒng)。消費者使用多個MFP10,并且特定供應(yīng)商從云側(cè)共同地管理用于消費者的多個MFP10,作為特定服務(wù)。具體地,特定供應(yīng)商能夠管理各個MFPlO的可消費的商品的使用狀態(tài)、置換和補給,并且將對于上述管理所需要的特定功能,或者消費者所期待的特定功能提供給各個MFPlO。
[0056]根據(jù)特定服務(wù)的內(nèi)容,對于將消費者的各個MFPlO的一部分或者全部改變(更新)為對于相對應(yīng)的消費者由用于該特定服務(wù)的通用嵌入式固件專門化的自定義固件來說將會是需要的。
[0057]因此,在本示例性實施例中,根據(jù)需要將自定義固件存儲在固件提供服務(wù)器50中,并且將固件信息傳輸?shù)较M者的各個MFPlO以表示來自于業(yè)務(wù)服務(wù)器40的自定義固件的位置(URL)、內(nèi)容等等。當(dāng)消費者的各個MFPlO從云側(cè)接收固件信息時,基于固件信息,相對應(yīng)的MFPlO能夠訪問固件提供服務(wù)器50的預(yù)定的URL并且能夠下載自定義固件。
[0058]然而,在本示例性實施例中,固件信息沒有從業(yè)務(wù)服務(wù)器40直接地傳輸?shù)较M者的各個MFP10,而是通過中介服務(wù)器30間接地傳輸。即,來自于業(yè)務(wù)服務(wù)器40的固件信息作為包括固件信息的自定義固件指定命令被直接地傳輸?shù)街薪榉?wù)器30。當(dāng)從業(yè)務(wù)服務(wù)器40接收自定義固件指定命令時,基于自定義固件指定命令,中介服務(wù)器30將固件信息傳輸?shù)绞莻鬏攲ο蟮母鱾€MFP10。
[0059]存在為何將中介服務(wù)器30插入在業(yè)務(wù)服務(wù)器40和消費者的各個MFPlO之間的各種原因,并且主要原因是用于使服務(wù)提供側(cè)(特定供應(yīng)商側(cè))能夠容易地提供各種服務(wù)。當(dāng)需要提供的特定服務(wù)的種類的數(shù)目增加時或者當(dāng)作為特定服務(wù)提供對象的MFPlO的數(shù)目增加時,業(yè)務(wù)服務(wù)器40的負載增加,并且服務(wù)提供側(cè)的負載增加。
[0060]而且,為了在必要時將各個MFPlO的固件更新為最新的自定義固件,期待使其能夠?qū)⒐碳畔臉I(yè)務(wù)服務(wù)器40立即地傳輸?shù)剿诖腗FP10。然而,因為各個MFPlO通過路由器20被連接到因特網(wǎng)5,路由器20變成障礙,并且因此難以從業(yè)務(wù)服務(wù)器40直接地訪問各個MFP10。
[0061 ] 因此,在本示例性實施例中,保持基于XMPP會話的、在中介服務(wù)器30和各個MFP1之間的持續(xù)連接狀態(tài),使得必要時能夠?qū)?shù)據(jù)從中介服務(wù)器30傳輸?shù)礁鱾€MPF10。根據(jù)此配置,當(dāng)業(yè)務(wù)服務(wù)器40將以預(yù)定MFPlO為地址的信息傳輸?shù)街薪榉?wù)器30時,通過XMPP會話,中介服務(wù)器30能夠?qū)⒈匾男畔鬏數(shù)教幱诔掷m(xù)連接狀態(tài)的目的地MFP10。
[0062]即,因為將中介服務(wù)器30插入在業(yè)務(wù)服務(wù)器40和各個MFPlO之間,在沒有關(guān)于各個MFPlO是處于什么狀態(tài)(例如,各個MFPlO是否處于能夠執(zhí)行通信的狀態(tài))的情況下,業(yè)務(wù)服務(wù)器40能夠容易地提供各種服務(wù),不論作為特定服務(wù)提供對象的MFP的數(shù)目如何。
[0063](2)特定服務(wù)供應(yīng)系統(tǒng)I的配置
[0064]將會詳細地描述本示例性實施例的特定提供系統(tǒng)I的各種單元的配置和功能。
[0065](2-1) MFPlO 的配置
[0066]MFPlO具有諸如打印功能、掃描功能、復(fù)印功能、以及訪問網(wǎng)絡(luò)的功能的多個功能。如在圖1中所示,MFPlO包括CPUll (控制設(shè)備的一個示例)、ROMl2, RAM13、非易失性RAM(NVRAM) 14、打印單元15、讀取單元16、通信單元17等等。
[0067]在MFPlO中,CPUll根據(jù)被存儲在R0M12和NVRAM14中的各種程序(包括下面要描述的各個固件)和數(shù)據(jù)控制在MFPlO內(nèi)部的各個單元和各種算術(shù)運算。RAM13被用作從CPU12等等直接地訪問的主存儲器。打印單元15在諸如打印紙張的記錄介質(zhì)上形成(打印)圖像。讀取單元16具有圖像傳感器,并且讀取文檔的圖像并且生成表示這些圖像的圖像數(shù)據(jù)。
[0068]通信單元17是用于將MFPlO與另一裝置可通信地連接的網(wǎng)絡(luò)接口。通信單元17使得MFPlO能夠執(zhí)行與PC18的數(shù)據(jù)通信和與云側(cè)的數(shù)據(jù)通信。
[0069]NVRAM14是其中存儲的內(nèi)容是電氣地可重寫的非易失性存儲器。被存儲在NVRAM14中的各種程序包括對于MFPlO的操作所需要的固件。本示例性實施例的各個MFPlO被配置成具有被安裝在其中的三種固件,并且基于這三種固件操作。三種固件分別與固件編號F1、F2、以及F3相關(guān)聯(lián)。
[0070]在各個MPFlO的產(chǎn)品裝運階段,三種固件全部是通用嵌入式固件。即,已經(jīng)作為默認嵌入了用于使得普通用戶能夠使用標(biāo)準(zhǔn)功能的通用固件,而不是專用于特定服務(wù)的消費者的自定義固件。
[0071]同時,當(dāng)由特定供應(yīng)商將MFPlO注冊為特定服務(wù)的管理對象時,相對應(yīng)的MFPlO的唯一的設(shè)備ID被指配,并且被設(shè)定(存儲)在NVRAM14中。因為本示例性實施例的所有MFPlO是特定服務(wù)的管理對象,所以為各個MFPlO設(shè)定唯一的設(shè)備ID。
[0072]當(dāng)MFPlO被注冊為管理對象時,在MFPlO的NVRAM14中生成如在圖2A中示出的固件狀態(tài)表??梢酝ㄟ^在MFPlO等等上的用戶的輸入操作,或者可以通過特定供應(yīng)商的直接操作或者遠程操作,或者通過各種其它方法,來實現(xiàn)固件狀態(tài)表的生成。
[0073]在MFPlO的NVRAM14中生成的固件狀態(tài)表,是存儲指示關(guān)于三種固件中的每一個,固件是否已經(jīng)被改變?yōu)樽远x固件的信息的表。在固件已經(jīng)被改變?yōu)樽远x固件的情況下,固件設(shè)定表也存儲指示自定義固件的版本(固件版本)的信息和指示已經(jīng)從其獲取(下載)自定義固件的URL的信息,如在圖2A中所示。
[0074]緊接在生成固件狀態(tài)表之后,通常,因為所有的三種固件始終處于嵌入式固件狀態(tài)下,因此所有的項目“URL”和“固件版本”是處于空白狀態(tài)或者已經(jīng)寫入表示相對應(yīng)的項目還沒有被設(shè)定的數(shù)據(jù)的狀態(tài)下。其后,當(dāng)通過中介服務(wù)器30從業(yè)務(wù)服務(wù)器40接收到指示改變?yōu)樽远x固件的需要的請求(具體地,下面要描述的服務(wù)器側(cè)固件信息)時,MFPlO根據(jù)請求的內(nèi)容更新固件狀態(tài)表。具體地,當(dāng)接收到指示變成用于固件編號的自定義固件的需要的請求時,固件版本和自定義固件的URL被重寫。其后,對于已經(jīng)被請求改變的固件,基于請求的內(nèi)容,MFPlO訪問URL,并且獲取(下載)自定義固件,并且將相對應(yīng)的固件更新為自定義固件。
[0075]而且,也可以通過中介服務(wù)器30從業(yè)務(wù)服務(wù)器40接收指示將自定義固件返回到嵌入式固件的需要的請求(下面要描述的服務(wù)器側(cè)固件信息)。當(dāng)接收到與特定固件有關(guān)的、指示將自定義固件返回到嵌入式固件的需要的請求時,MFPlO從固件狀態(tài)表中刪除被請求的固件的URL和固件版本。其后,對于需要返回到嵌入式固件的固件,基于被存儲在R0M12中的嵌入式固件信息,MFPlO訪問嵌入式固件的URL,并且下載嵌入式固件,并且執(zhí)行對嵌入式固件的更新。
[0076]被存儲在R0M12中的嵌入式固件信息是下述信息,其中對于各個固件(各個固件編號),已經(jīng)設(shè)定了指示相對應(yīng)的固件的嵌入式固件的位置的URL,如在圖2B中所示。在MFPlO的產(chǎn)品裝運階段,嵌入式固件信息被存儲在R0M12中。
[0077]其后,在需要將固件從自定義固件返回到嵌入式固件的情況下,或者在更新嵌入式固件的情況下,MFPlO能夠基于被存儲在R0M12中的嵌入式固件信息從被指定的URL下載最新的嵌入式固件,并且執(zhí)行更新。
[0078]固件狀態(tài)表的內(nèi)容,即,各個固件編號的自定義固件的URL和固件版本作為MFP側(cè)固件信息被傳輸?shù)骄哂邢鄬?yīng)的設(shè)備ID的MPF10。
[0079](2-2)固件提供服務(wù)器50的描述
[0080]在固件提供服務(wù)器50中,存儲各個MPFlO的各個固件。在本示例性實施例中,對于各個MFPlO的各個固件,存儲嵌入式固件和自定義固件兩者。因此,必要時各個MFPlO通過HTTP訪問固件提供服務(wù)器50的URL,從而下載必要的固件。
[0081]然而,不需要將所有的各種固件存儲在一個固件提供服務(wù)器50中。只要能使用MFPlO訪問和下載所期待的固件,能夠適當(dāng)?shù)卮_定各個固件將會存儲在何處。
[0082](2-3)業(yè)務(wù)服務(wù)器40的描述
[0083]從業(yè)務(wù)服務(wù)器40,將用于改變作為管理對象的MFPlO中的一個或者多個的固件等等的命令傳輸?shù)街薪榉?wù)器30。本命令的示例至少包括兩種,S卩,用于將固件更新為自定義固件(即,用于將固件變成自定義固件)的自定義固件指定命令,和用于將固件從自定義固件返回到嵌入式固件的自定義固件釋放命令。
[0084]自定義固件指定命令是命令,當(dāng)通過特定供應(yīng)商的操作員等等執(zhí)行自定義固件指定操作時該命令被生成并且被傳輸?shù)街薪榉?wù)器30。自定義固件指定操作意指,用于指定已經(jīng)存儲了需要被更新到自定義固件的所期待的設(shè)備(MFPlO)的設(shè)備ID、更新對象的固件編號和固件版本、以及更新對象的自定義固件的固件提供服務(wù)器50的內(nèi)部的URL的操作。
[0085]當(dāng)通過操作員等等執(zhí)行自定義固件指定操作時,業(yè)務(wù)服務(wù)器40基于通過自定義固件指定操作指定的各種信息生成自定義固件指定命令。自定義固件指定命令包括:用于將自定義固件指定命令是用于請求將固件更新為自定義固件的命令通知作為更新對象的各個MFPlO的設(shè)定命令、作為更新對象的(一個或者多個)MFPlO中的每一個的設(shè)備ID、更新對象的固件的固件編號、指示需要被更新的自定義固件的版本的固件版本、以及指示更新對象的固件的位置的URL (在本示例性實施例中的固件提供服務(wù)器50內(nèi)部)。S卩,從業(yè)務(wù)服務(wù)器40傳輸?shù)淖远x固件指定命令是用于共同地指令對于需要將其固件更新為自定義固件的所有MFP進行更新所需要的更新指令和信息的命令。
[0086]自定義固件釋放命令是當(dāng)通過特定供應(yīng)商的操作員等等執(zhí)行自定義固件釋放操作時被生成并且被傳輸?shù)街薪榉?wù)器30的命令。自定義固件釋放操作意指需要將自定義固件更新為嵌入式固件的所期待的設(shè)備(MFPlO)的設(shè)備ID、和更新對象的固件編號的操作。
[0087]當(dāng)由操作員等等執(zhí)行自定義固件釋放操作時,業(yè)務(wù)服務(wù)器40基于通過自定義固件釋放操作指定的各種信息生成自定義固件釋放命令。自定義固件釋放命令包括:用于將自定義固件釋放命令是用于將自定義固件更新為嵌入式固件(即,用于將固件從自定義固件改變成嵌入式固件)的命令通知作為更新對象的各個MFPlO的設(shè)定命令、作為更新對象的(一個或者多個)MFPlO中的每一個的設(shè)備ID、以及要更新的固件的固件編號。S卩,從業(yè)務(wù)服務(wù)器40傳輸?shù)淖远x固件釋放命令是用于共同地指令對于需要將其固件更新為嵌入式固件的所有MFP進行更新所需要的更新指令和信息的命令。
[0088](2-4)中介服務(wù)器的配置
[0089]提供中介服務(wù)器30以中繼從業(yè)務(wù)服務(wù)器40到作為特定服務(wù)提供對象的中介服務(wù)器30的各種命令,并且中介服務(wù)器30包括CPU31 (控制設(shè)備的一個示例)、R0M32、R0M33、硬盤驅(qū)動(HDD) 34、通信單元35等等。
[0090]CPU31執(zhí)行被存儲在R0M32和HDD34中的各種程序,從而實現(xiàn)諸如命令中繼功能的上述功能。要由CPU31執(zhí)行的各種程序、數(shù)據(jù)等等被存儲在R0M32中。RAM33被用作從CPU31直接地訪問的主存儲器。
[0091]通信單元35是用于將中介服務(wù)器30與另一裝置可通信地連接的網(wǎng)絡(luò)接口。通信接口 35使得中介服務(wù)器30能夠執(zhí)行與各個MFPlO和業(yè)務(wù)服務(wù)器40的數(shù)據(jù)通信。
[0092]在HDD34中,已經(jīng)安裝了包括OS的各種軟件。而且,在HDD34中,也存儲了在圖3A中示出的固件設(shè)定表和在圖3B中示出的設(shè)備管理表。在初始狀態(tài)下沒有存儲這些表,并且這些表通過執(zhí)行與MFPlO或者業(yè)務(wù)服務(wù)器40的通信而被生成并且被存儲。
[0093]為作為特定服務(wù)提供對象的各個設(shè)備(各個MPF10)單獨地生成在圖3A中示出的固件設(shè)定表。具體地,當(dāng)?shù)谝淮螐臉I(yè)務(wù)服務(wù)器40傳輸用于MFPlO的自定義固件指定命令時,生成與MFPlO相對應(yīng)的固件設(shè)定表。
[0094]如在圖3A中所示,對于與MFPlO的設(shè)備ID相關(guān)聯(lián)的三種固件中的每一種,固件設(shè)定表存儲指示是否需要改變成自定義固件的信息。在需要更新為自定義固件的情況下,固件設(shè)定表還存儲指示自定義固件的版本(固件版本)的信息和指示從其能夠獲取(下載)自定義固件的URL的信息。
[0095]每次從業(yè)務(wù)服務(wù)器40接收到用于固件設(shè)定表的上述命令中的任意一個,根據(jù)命令的內(nèi)容來更新固件設(shè)定表的內(nèi)容。例如,在接收到用于具有特定的設(shè)備ID的MFPlO的自定義固件指定命令和指示將具有固件編號Fl的固件更新為自定義固件的需要的自定義固件指定命令的情況下,被包括在自定義固件指定命令中的URL和固定版本作為與固件編號Fl相對應(yīng)的URL和固件版本被寫入(覆蓋寫入)在作為對象的MFPlO的固件設(shè)定表中。而且,例如,在接收到用于具有特定設(shè)備ID的MFPlO的自定義固件釋放命令和指示將具有固件編號F2或者F3的固件從自定義固件返回到嵌入式固件的需要的自定義固件釋放命令的情況下,從作為對象的MFPlO的固件設(shè)定表中刪除與固件編號F2或者F3相對應(yīng)的URL和固件版本。
[0096]根據(jù)需要,中介服務(wù)器30傳輸固件設(shè)定表的內(nèi)容,S卩,各個固件編號的URL和固件版本,作為服務(wù)器側(cè)固件信息。
[0097]關(guān)于作為特定服務(wù)提供對象的各個設(shè)備(各個MFP10),為各個設(shè)備(各個MFP10)單獨地生成在圖3B中示出的設(shè)備管理表。具體地,當(dāng)?shù)谝淮谓碜杂贛FPlO的XMPP連接時,生成與MFPlO相對應(yīng)的設(shè)備管理表。
[0098]如在圖3B中所示,關(guān)于相對應(yīng)的MFP10,設(shè)備管理表具有與相對應(yīng)的MFPlO的設(shè)備ID相關(guān)聯(lián)的項目“間隔定時器的定時器值”和項目“狀態(tài)”。
[0099]間隔定時器是被用于中介服務(wù)器30的CPU31根據(jù)程序執(zhí)行定時的軟件定時器,軟件定時器具有初始值150,并且在預(yù)定的間隔(在本示例性實施例中,每I秒)將定時器值減少了 I。下面將會描述如何使用間隔定時器的定時器值。
[0100]狀態(tài)是指示是否保持通過BOSH上XMPP在相對應(yīng)的MFPlO和中介服務(wù)器30之間的會話(在下文中,被稱為XMPP會話)的信息。根據(jù)來自于相對應(yīng)的MFPlO的XMPP連接和間隔定時器的定時器值等等,設(shè)定“在線”(保持通過BOSH上XMPP的會話)或者“離線”(中斷通過BOSH上XMPP的會話),下面將會描述。
[0101](3)特定服務(wù)提供系統(tǒng)I的示意性操作示例
[0102]隨后,將會參考圖4A和圖4B描述本示例性實施例的特定服務(wù)提供系統(tǒng)I的操作示例。圖4A和圖4B的操作示例用于解釋整體系統(tǒng)的操作,并且僅對應(yīng)于整個系統(tǒng)的操作的一部分。
[0103]首先,將會參考圖4A描述在MFPlO的激活之后,從業(yè)務(wù)服務(wù)器傳輸自定義固件指定命令的情況。如在圖4A中所示,當(dāng)通過電源激活MFPlO時,建立通過BOSH上XMPP的、到中介服務(wù)器30的會話(XMPP會話),使得建立XMPP連接。XMPP會話是使能來自中介服務(wù)器30的服務(wù)器推送的會話。
[0104]其后,當(dāng)通過HTTP連接將自定義固件指定命令從業(yè)務(wù)服務(wù)器40傳輸?shù)街薪榉?wù)器30時,基于自定義固件指定命令,中介服務(wù)器30更新需要被更新為自定義固件的對象MFP的固件設(shè)定表的存儲器內(nèi)容(服務(wù)側(cè)固件信息)。
[0105]例如,在作為自定義固件指定命令傳輸了其中已經(jīng)將MFPlO指定為對象MFP(設(shè)備ID已經(jīng)被指定)并且指示了將具有固件編號F2的固件更新為最新版本的自定義固件的需要的命令的情況下,在對象MFPlO的固件設(shè)定表中的固件編號F2的固件信息(URL和固件版本)被覆蓋寫入(或者重新寫入)。
[0106]當(dāng)基于從業(yè)務(wù)服務(wù)器40接收到的自定義固件指定命令更新對象MFP的固件設(shè)定表時,中介服務(wù)器30通過XMPP連接將更新的服務(wù)側(cè)固件信息傳輸?shù)綄ο驧FP并且通過HTTP連接將傳輸完成響應(yīng)傳輸?shù)綐I(yè)務(wù)服務(wù)器40。
[0107]當(dāng)通過XMPP從中介服務(wù)器30接收服務(wù)器側(cè)固件信息時,MFPlO根據(jù)服務(wù)器側(cè)固件信息更新MFP10的固件狀態(tài)表的MFP側(cè)固件信息。其后,關(guān)于更新對象的自定義固件,MFP10通過HTTP連接從固件提供服務(wù)器50請求更新對象的最新版本自定義固件,并且下載最新的版本自定義固件。在下載之后,MFPlO將更新對象的固件更新為被下載的自定義固件。
[0108]例如,在已經(jīng)更新了在來自于中介服務(wù)器30的服務(wù)器側(cè)固件信息中的關(guān)于固件編號F2的自定義固件的URL和固件版本的情況下,MFPlO訪問與固件編號F2的固件有關(guān)的被更新的URL,下載被指定的固件版本的自定義固件,并且將固件編號F2的固件更新為被下載的自定義固件。
[0109]隨后,將會參考圖4B描述從業(yè)務(wù)服務(wù)器40傳輸自定義固件指定命令并且然后激活MFPlO的情況。如在圖4B中所示,與圖4A的情況相類似,當(dāng)在激活對象MFPlO之前通過HTTP連接從業(yè)務(wù)服務(wù)器40傳輸自定義固件指定命令時,基于自定義固件指定命令,中介服務(wù)器30更新需要被更新為自定義固件的對象MFP的固件設(shè)定表的存儲器內(nèi)容(服務(wù)器側(cè)固件信息)。
[0110]這時,因為在中間服務(wù)器30和對象MFPlO之間還沒有建立XMPP會話,中介服務(wù)器30不能夠?qū)⒏碌姆?wù)器側(cè)固件信息傳輸?shù)綄ο驧FP10。為此,在該情況下,中介服務(wù)器30通過HTTP連接將MFP離線響應(yīng)傳輸?shù)綐I(yè)務(wù)服務(wù)器40。其后,當(dāng)激活對象MFP10,并且建立XMPP會話使得在對象MFPlO和中介服務(wù)器30之間建立XMPP連接時,中介服務(wù)器30通過XMPP連接將服務(wù)器側(cè)固件信息傳輸?shù)綄ο驧FP10。在將服務(wù)器側(cè)固件信息從中介服務(wù)器30傳輸?shù)綄ο驧FPlO之后的對象MFPlO的操作與圖4A的相同。
[0111](4)通過業(yè)務(wù)服務(wù)器40的服務(wù)處理的描述
[0112]隨后,將會參考圖5描述由業(yè)務(wù)服務(wù)器40執(zhí)行的服務(wù)處理。當(dāng)圖5的服務(wù)處理開始時,在步驟SllO中,業(yè)務(wù)服務(wù)器40確定是否已經(jīng)發(fā)生任何事件。在已經(jīng)發(fā)生事件的情況下,在步驟S120中,業(yè)務(wù)服務(wù)器40確定是否發(fā)生的事件是通過操作員等等對設(shè)備(具體地,作為特定提供對象的MFP10)的自定義固件指定操作。
[0113]在發(fā)生的事件是通過操作員等等的自定義固件指定操作的情況下,在步驟S130中,業(yè)務(wù)服務(wù)器40根據(jù)自定義固件指定操作的內(nèi)容,通過HTTP請求將自定義固件指定命令傳輸?shù)街薪榉?wù)器30。在傳輸之后,當(dāng)通過HTTP響應(yīng)從中介服務(wù)器30接收響應(yīng)(傳輸完成響應(yīng)或者MFP離線響應(yīng))時,業(yè)務(wù)服務(wù)器40返回到步驟SI 10。
[0114]在步驟S120中確定發(fā)生的事件不是自定義固件指定操作的情況下,在步驟S150中,業(yè)務(wù)服務(wù)器40確定發(fā)生的事件是否是通過操作員等等對設(shè)備的自定義固件釋放操作。在發(fā)生的事件是通過操作員等等的自定義固件釋放操作的情況下,在步驟S160中,業(yè)務(wù)服務(wù)器40根據(jù)自定義固件釋放操作的內(nèi)容,通過HTTP請求將自定義固件釋放命令傳輸?shù)街薪榉?wù)器30。在傳輸自定義固件釋放命令之后,當(dāng)在步驟S170中通過HTTP響應(yīng)從中介服務(wù)器30接收到響應(yīng)(傳輸完成響應(yīng)或者MFP離線響應(yīng))時,業(yè)務(wù)服務(wù)器40返回到步驟S110。
[0115]在步驟S150中確定發(fā)生的事件不是自定義固件釋放操作的情況下,業(yè)務(wù)服務(wù)器40在步驟S180中執(zhí)行另一處理(根據(jù)發(fā)生的事件的處理),并且然后返回到步驟S110。
[0116](5)通過中介服務(wù)器30的中介服務(wù)器處理和間隔定時器處理的描述
[0117]隨后,將會參考由圖6A和圖6B組成的圖6描述由中介服務(wù)器30執(zhí)行的中介服務(wù)器處理。當(dāng)被供應(yīng)電力并且中介服務(wù)器30的CPU31開始操作時,CPU31從HDD34讀取用于圖6的中介服務(wù)器處理的程序,并且執(zhí)行所讀取的程序。
[0118]當(dāng)圖6的中介服務(wù)器處理開始時,在步驟S210中,中介服務(wù)器30的CPU31啟動間隔定時器。本示例性實施例的間隔定時器是軟件定時器,并且具體地開始圖7的間隔定時器處理。當(dāng)指令其在中介服務(wù)器處理的步驟S210中啟動間隔定時器時,中介服務(wù)器30的CPU31從HDD34讀取用于圖7的間隔定時器處理的程序,并且以預(yù)定的間隔(在本示例性實施例中每I秒)重復(fù)地執(zhí)行程序。平行于中介服務(wù)器處理執(zhí)行此間隔定時器處理。
[0119]當(dāng)圖7的間隔定時器處理開始時,在步驟S510中,對于所有生成的設(shè)備管理表,中介服務(wù)器30的CPU31將間隔定時器的定時器值減少I。如上所述,在初始狀態(tài)下,在各個設(shè)備管理表中的間隔定時器的定時器值被設(shè)定為150。因此,當(dāng)圖7的間隔定時器處理開始時,每經(jīng)過I秒,各個表的間隔定時器的定時器值從150順序地減少到149、148、…。
[0120]在步驟S520中,對于間隔定時器的定時器值的值已經(jīng)變成O的設(shè)備管理表,CPU31將狀態(tài)設(shè)定成“離線”并且中斷與相對應(yīng)的MFP的XMPP連接。具體地,丟棄為了保持與相對應(yīng)的MFP的XMPP會話而被確保的連接資源。即,在本示例性實施例中,在已經(jīng)將通過XMPP的來自于MFPlO的訪問執(zhí)行預(yù)定的時間(在該示例性實施例中,150秒)的情況下,對于MFP10,CPU31確定相對應(yīng)的MFPlO已經(jīng)變成離線狀態(tài)。
[0121]然而,如下面將會描述的,從各個MFPlO定期地(在本示例性實施例中,每120秒)傳輸XMPP存在通知,并且每次從MFPlO接收到XMPP存在通知,在(下面要描述的)步驟S410的處理中,中介服務(wù)器30將相對應(yīng)的MFPlO的間隔定時器的定時器值的值設(shè)定(初始化)為150。因此,在從MFPlO定期地接收XMPP存在通知的同時,保持相對應(yīng)的XMPP會話。而且,雖然由于任何因素,間隔定時器的定時器值的值已經(jīng)變成0,并且相對應(yīng)的MFPlO已經(jīng)變成離線,其后,當(dāng)從相對應(yīng)的MFPlO接收到XMPP存在通知時,狀態(tài)再次被設(shè)定為“在線”,并且間隔定時器的定時器值的值被初始化為150。
[0122]再次參考圖6A,將會繼續(xù)中介服務(wù)器處理的描述。當(dāng)在步驟S201中間隔定時器啟動時,在步驟S220中,CPU31確定是否已經(jīng)發(fā)生任何事件。在已經(jīng)發(fā)生事件的情況下,在步驟S230中,CPU31確定發(fā)生的事件是來自于MFPlO的XMPP連接(XMPP會話請求)。在發(fā)生的事件是來自于MFPlO的XMPP連接的情況下,CPU31建立與相對應(yīng)MFPlO的XMPP連接(確保連接資源),并且然后進入步驟S240。
[0123]在步驟S240中,CPU31確定是否存在通過XMPP連接的相對應(yīng)的MFPlO的設(shè)備管理表,即,在HDD34中是否已經(jīng)生成相對應(yīng)的MFPlO的設(shè)備管理表。在已經(jīng)生成設(shè)備管理表的情況下,CPU31進入步驟S260。同時,在還沒有生成設(shè)備管理表的情況下,CPU31在步驟S250中生成相對應(yīng)的MFPlO的設(shè)備管理表,并且然后進入步驟S260。
[0124]在步驟S260中,CPU31將相對應(yīng)的MFPlO的設(shè)備管理表的狀態(tài)設(shè)定為“在線”。在步驟S270中,CPU31將相對應(yīng)的MFPlO的設(shè)備管理表的間隔定時器的定時器值的值設(shè)定為150。
[0125]在步驟S280中,CPU31確定是否存在相對應(yīng)的MFPlO的固件設(shè)定表,即,在HDD34中是否已經(jīng)生成相對應(yīng)的MFPlO的固件設(shè)定表。在還沒有生成相對應(yīng)的MFPlO的固件設(shè)定表的情況下,CPU31返回到步驟S220。同時,在已經(jīng)生成相對應(yīng)的MFPlO的固件設(shè)定表的情況下,在步驟S290中,CPU31通過XMPP將被包括在固件設(shè)定表中的服務(wù)器側(cè)固件信息傳輸?shù)较鄬?yīng)的MFP10,并且然后返回到步驟S220。在本說明書中,“通過XMPP ”意指“通過XMPP連接”,并且“通過HTTP”意指“通過HTTP連接”。
[0126]在步驟S230中確定發(fā)生的事件不是來自于MFPlO的XMPP連接的情況下,在步驟S300中,CPU31確定是否發(fā)生的事件是通過HTTP連接的來自于業(yè)務(wù)服務(wù)器40的HTTP請求。在發(fā)生的事件是來自于業(yè)務(wù)服務(wù)器40的HTTP請求的情況下,在步驟S310中,CPU31確定HTTP請求是自定義固件指定命令或者自定義固件釋放命令。
[0127]在HTTP請求不是這些命令中的任意一個的情況下,在步驟S320中,CPU31執(zhí)行另一處理,即,根據(jù)HTTP請求的處理,并且然后返回到步驟S220。
[0128]在HTTP請求是這些命令中的任意一個的情況下,CPU31對于由相對應(yīng)的命令指定的各個對象MFPlO執(zhí)行步驟S330至S390的一系列處理。即,雖然在圖6中未示出,但是為通過HTTP從業(yè)務(wù)服務(wù)器40獲取的自定義固件指定命令(或者自定義固件釋放命令)中指定的一個或者多個對象MFPlO中的每一個單獨地執(zhí)行步驟S330至S390的一系列處理。
[0129]在步驟S330中,對于通過命令指定的MFPlO的一個對象MFP10,CPU31確定是否存在對象MFPlO的固件設(shè)定表。在存在對象MFPlO的固件設(shè)定表的情況下,CPU31進入步驟S350。同時,在沒有生成對象MFPlO的固件設(shè)定表的情況下,CPU31在步驟S340中生成對象MFPlO的固件設(shè)定表,并且然后進入步驟S350。
[0130]在步驟S350中,CPU31根據(jù)來自于業(yè)務(wù)服務(wù)器40的命令的內(nèi)容來更新對象MFPlO的固件設(shè)定表的服務(wù)器側(cè)固件信息。例如,在通過自定義固件指定命令通知固件編號Fl或者F2的自定義固件的URL和固件版本的情況下,CPU31將被包括在固件設(shè)定表中的固件編號Fl或者F2的URL和固件版本重寫為被通知的URL和固件版本。而且,例如,在通知指定固件編號Fl的自定義固件的自定義固件釋放命令的情況下,CPU31刪除被包括在固件設(shè)定表中的固件編號Fl的URL和固件版本。
[0131 ] 在步驟S360中,CPU31確定是否已經(jīng)在設(shè)備管理表中將對象MFPlO設(shè)定為“離線”。在對象MFPlO已經(jīng)被設(shè)定為“離線”的情況下,在步驟S390中,CPU31通過HTTP將與對象MFPlO有關(guān)的MFP離線響應(yīng)返回到業(yè)務(wù)服務(wù)器40,并且然后返回到步驟S220。
[0132]在對象MFPlO已經(jīng)被設(shè)定為“在線”的情況下,在步驟S370中,CPU31通過XMPP將被包括在固件設(shè)定表中的服務(wù)器側(cè)固件信息傳輸?shù)綄ο驧FP10。其后,在步驟S380中,CPU31將與對象MFPlO有關(guān)的傳輸完成響應(yīng)返回到業(yè)務(wù)服務(wù)器40,并且然后返回到步驟S220。
[0133]在步驟S300中確定發(fā)生的事件不是來自于業(yè)務(wù)服務(wù)器40的HTTP請求的情況下,在步驟S400中,CPU31確定發(fā)生的事件是否是從任何MFPlO接收到XMPP存在通知。通過XMPP從各個MFPlO定期地接收XMPP存在通知。在發(fā)生的事件不是從MFPlO接收到XMPP存在通知的情況下,在步驟S320中,CPU31執(zhí)行另一處理,即,根據(jù)該事件的處理,并且然后返回到步驟S220。
[0134]在發(fā)生的事件是從MFPlO接收到XMPP存在通知的情況下,在步驟S410中,CPU31將相對應(yīng)的MFPlO的設(shè)備管理表的間隔定時器的定時器值的值設(shè)定(即,初始化)成150,并且然后返回到步驟S220。而且,在步驟S410中,在相對應(yīng)的MFPlO的設(shè)備管理表的狀態(tài)是“離線”的情況下,CPU31也執(zhí)行將狀態(tài)改變成“在線”的處理。
[0135](6)通過MFPlO的MFP處理的描述
[0136]隨后,將會參考由圖8A和圖8B組成的圖8描述由MFPlO執(zhí)行的MFP處理。當(dāng)被供應(yīng)電力并且MFPlO的CPUll開始操作時,CPUll從R0M12或者NVRAM14讀取用于圖8的MFP處理的程序,并且執(zhí)行被讀取的程序。
[0137]當(dāng)圖8的MFPlO處理開始時,在步驟S610中,MFPlO的CPUll建立與中介服務(wù)器的XMPP連接。具體地,CPUll通過作為持續(xù)連接類型協(xié)議的BOSH上XMPP建立在MFPlO和中介服務(wù)器30之間的XMPP會話,從而建立XMPP連接。
[0138]將會描述用于建立XMPP會話的具體程序。在相對應(yīng)的MFPlO的電源從關(guān)閉狀態(tài)變成接通狀態(tài)時,MFPlO 將 BOSH (bidirect1nal-streams over synchronous HTTP (基于同步HTTP雙向流)的縮寫)的第一請求信號(即,HTTP請求)傳輸?shù)街薪榉?wù)器30。第一請求信號是用于請求中介服務(wù)器30傳輸要由XMPP會話使用的會話ID的信號。
[0139]在從MFPlO接收到第一請求信號的情況下,中介服務(wù)器30生成會話ID,并且將包括會話ID的響應(yīng)信號傳輸?shù)組FP10。
[0140]在從中介服務(wù)器30接收到響應(yīng)信號的情況下,MFPlO將BOSH的第二請求信號(即,HTTP請求)傳輸?shù)街薪榉?wù)器30。第二請求信號包括與被包括在響應(yīng)信號中的會話ID —致的會話ID。第二請求信號是用于請求中介服務(wù)器30建立XMPP會話的信號。
[0141]在從MFPlO接收到包括會話ID的第二請求信號的情況下,中介服務(wù)器30將指示“0K”的響應(yīng)信號(即,HTTP響應(yīng))傳輸?shù)組FP10。因此,MFPlO和中介服務(wù)器30執(zhí)行諸如用于建立XMPP會話的認證信號和響應(yīng)信號的各種信號的通信,從而建立XMPP會話。
[0142]在建立了 XMPP會話的情況下,MFPlO將BOSH的第三請求信號(即,HTTP請求)傳輸?shù)街薪榉?wù)器30。第三請求信號包括上述會話ID。第三請求信號是要成為用于傳輸包括需要從中介服務(wù)器30傳輸?shù)組FPlO的數(shù)據(jù)(例如,設(shè)定命令)的響應(yīng)信號的基礎(chǔ)的信號。
[0143]在當(dāng)從MFPlO接收到第三請求信號時,存在需要被傳輸?shù)組FPlO的設(shè)定命令的情況下,中介服務(wù)器30將相對應(yīng)的設(shè)定命令作為對第三請求信號的響應(yīng)信號(B卩,HTTP響應(yīng))傳輸?shù)組FP10。然而,在當(dāng)從MFPlO接收到第三請求信號時,不存在需要被傳輸?shù)組FPlO的設(shè)定命令時,中介服務(wù)器30不將任何設(shè)定命令傳輸?shù)組FP10,直到從業(yè)務(wù)服務(wù)器40接收到設(shè)定命令。BOSH的請求信號具有比除了 BOSH之外的正常HTTP的請求信號的超時時間長的超時時間。因此,即使從當(dāng)接收到第三請求信號時到傳輸設(shè)定命令時的時間長時,中介服務(wù)器30也能夠在沒有確定超時的情況下適當(dāng)?shù)貍鬏斣O(shè)定命令。而且,在沒有確定為超時的情況下,路由器20允許將設(shè)定命令從因特網(wǎng)側(cè)(S卩,中介服務(wù)器30)傳輸?shù)絃AN側(cè)(S卩,MFP10)。
[0144]在確定在MFPlO和中介服務(wù)器30之間已經(jīng)建立XMPP會話的情況下,中介服務(wù)器30將設(shè)定命令作為對第三請求信號的響應(yīng)信號傳輸?shù)組FP10。相對應(yīng)的響應(yīng)信號不包括上述會話ID。然而,因為相對應(yīng)的響應(yīng)信號是對包括上述會話ID的第三請求信號(即,通過XMPP會話傳送的第三請求信號)的響應(yīng)信號,能夠說,相對應(yīng)的響應(yīng)信號是通過XMPP會話傳送的信號。
[0145]在步驟S620中,CPUll啟動定時器。該定時器是軟件定時器,每次經(jīng)過預(yù)定的時間(在本示例性實施例中,每120秒),其生成定時器中斷。
[0146]在步驟S630中,CPUll確定是否已經(jīng)發(fā)生任何事件。在已經(jīng)發(fā)生事件的情況下,在步驟S640中,CPUll確定是否發(fā)生的事件是定時器中斷。在發(fā)生的事件是定時器中斷的情況下,在步驟S650中,CPUll通過XMPP將XMPP存在通知傳輸?shù)街薪榉?wù)器30,并且然后返回到步驟S630。在發(fā)生的事件不是定時器中斷的情況下,CPUll進入步驟S660。
[0147]在步驟S660中,CPUll確定發(fā)生的事件是否是來自于PC18的固件更新請求。在任意的定時,用戶等等使能用PC18以指定任意一個MFPlO并且傳輸用于將所指定的MFPlO的固件的一部分或者全部更新為最新的版本的固件更新請求。在步驟S660中,CPUll確定發(fā)生的事件是否是來自于PC18的固件更新請求。
[0148]在步驟S660中確定發(fā)生的事件是來自于PC18的固件更新請求的情況下,在步驟S670中,對于被請求更新的固件,CPUll確定MFP側(cè)固件信息是否已經(jīng)被存儲在固件狀態(tài)表中。在已經(jīng)存儲了與被請求的固件有關(guān)的MFP側(cè)固件信息的情況下,在步驟S680中,CPUll基于被存儲的MFP側(cè)固件信息(URL和固件版本),通過HTTP從固件提供服務(wù)器50下載被請求的固件的自定義固件,并且將被請求的固件更新為自定義固件。在還沒有存儲與被請求的固件有關(guān)的MFP側(cè)固件信息的情況下,在步驟S690中,基于被存儲在ROM12中的嵌入式固件信息(URL),CPUll通過HTTP從固件提供服務(wù)器50下載被請求的固件的嵌入式固件,并且將被請求的固件更新為嵌入式固件。在步驟S680或者S690中更新固件之后,CPUll返回到步驟S630。
[0149]在步驟S660中確定發(fā)生的事件不是來自于PC18的固件更新請求的情況下,在步驟S700中,CPUll確定發(fā)生的事件是否是通過XMPP從中介服務(wù)器30接收到服務(wù)器側(cè)固件信息。在發(fā)生的事件不是從中介服務(wù)器30接收到服務(wù)器側(cè)固件信息的情況下,在步驟S780中,CPUll執(zhí)行另一處理,S卩,根據(jù)發(fā)生的事件的處理,并且然后返回到步驟S630。
[0150]在步驟S700中確定發(fā)生的事件是從中介服務(wù)器30接收到服務(wù)器側(cè)固件信息的情況下,在步驟S710中,CPUll針對被存儲在相對應(yīng)的MFPlO的NVRAM14中的固件狀態(tài)表的內(nèi)容檢查接收到的服務(wù)器側(cè)固件信息。
[0151]在步驟S720中,基于在步驟S710中的檢查結(jié)果,CPUll確定在MFP側(cè)固件信息中是否存在需要被更新(覆蓋寫入)的任何項目,即,是否已經(jīng)接收到指示與MFP側(cè)固件信息的URL和固件版本不同的服務(wù)器側(cè)固件信息。在存在需要被更新為不同的URL和不同的固件版本的項目的情況下,在步驟S730中,CPUll根據(jù)接收到的服務(wù)器側(cè)固件信息更新固件狀態(tài)表的MFP側(cè)固件信息。
[0152]其后,在步驟S740中,對于被包括在三種固件中并且其MFP側(cè)固件信息已經(jīng)在步驟S730中被更新的固件,CPUl I基于被更新的MFP側(cè)固件信息(被更新的URL和固件版本),通過HTTP從固件提供服務(wù)器50下載更新對象的固件的自定義固件,并且將固件更新為自定義固件。
[0153]在步驟S720中確定在MFP側(cè)固件信息中不存在需要被更新(覆蓋寫入)的項目的情況下,在步驟S750中,基于在步驟S710中的檢查結(jié)果,CPUll確定在MFP側(cè)固件信息中是否存在需要被刪除的任意項目,即,自定義固件的URL和固件版本已經(jīng)被存儲在MFP側(cè)固件信息中并且在接收到的服務(wù)器側(cè)固件信息中是否已經(jīng)被刪除。
[0154]在MFP側(cè)固件信息中不存在需要被刪除的項目的情況下,因為能夠確定MFP側(cè)固件信息的內(nèi)容與接收到的服務(wù)器側(cè)固件信息相同,CPUll返回到步驟S630。在MFP側(cè)固件信息中存在需要被刪除的項目的情況下,在步驟S760中,CPUll從MFP側(cè)固件信息中刪除相對應(yīng)的項目(相對應(yīng)的固件編號的URL和固件版本)。
[0155]其后,在步驟S770中,對于被包括在三種固件中并且已經(jīng)從MFP側(cè)固件信息中刪除了其項目的固件,CPUll基于被存儲在R0M12中的嵌入式固件信息,通過HTTP從固件提供服務(wù)器50下載嵌入式固件,并且執(zhí)行對嵌入式固件的更新。在步驟S740或者S770中更新固件之后,CPUll返回到步驟S630。
[0156](7)示例性實施例的作用和其它
[0157]如上所述,在本示例性實施例的特定服務(wù)提供系統(tǒng)I中,在中介服務(wù)器30和各個MFPlO之間建立持續(xù)連接類型XMPP連接,并且在中介服務(wù)器30和業(yè)務(wù)服務(wù)器40之間建立請求-響應(yīng)類型HTTP連接。其后,當(dāng)通過HTTP連接將自定義固件指定命令或者自定義固件釋放命令從業(yè)務(wù)服務(wù)器40傳輸?shù)街薪榉?wù)器時,中介服務(wù)器30通過XMPP連接,根據(jù)接收到的命令的內(nèi)容將服務(wù)器側(cè)固件信息傳輸?shù)接山邮盏降拿钪付ǖ腗FP10。當(dāng)接收到以MFPlO為地址并且從中介服務(wù)器30傳輸?shù)姆?wù)器側(cè)固件信息時,根據(jù)服務(wù)器側(cè)固件信息的內(nèi)容,MFPlO執(zhí)行自定義固件的更新。
[0158]具體地,當(dāng)從業(yè)務(wù)服務(wù)器40傳輸指示具有特定固件編號的固件需要被更新為自定義固件的自定義固件指定命令,并且從中介服務(wù)器30傳輸根據(jù)該命令的服務(wù)器側(cè)固件信息時,對于需要被改變的固件,MFPlO基于被包括在從中介服務(wù)器30接收到的服務(wù)器側(cè)固件信息中的URL和固件版本來下載和更新自定義固件,并且更新為自定義固件。
[0159]因此,根據(jù)需要,從業(yè)務(wù)服務(wù)器40傳輸自定義固件指定命令,從而能夠?qū)⒆鳛樘囟ǚ?wù)提供對象的各個MFPlO的固件適當(dāng)?shù)睾陀行У馗聻樽远x固件。
[0160]而且,當(dāng)從業(yè)務(wù)服務(wù)器40傳輸指示將具有特定固件編號的固件從自定義固件返回到嵌入式固件的需要的自定義固件釋放命令,并且從中介服務(wù)器30傳輸根據(jù)該命令的服務(wù)器側(cè)固件信息時,對于需要被返回到嵌入式固件的固件,MFPlO基于R0M12的嵌入式固件信息來下載嵌入式固件,并且更新為嵌入式固件。
[0161 ] 因此,根據(jù)需要從業(yè)務(wù)服務(wù)器40傳輸自定義固件釋放命令,從而對于其自定義固件已經(jīng)變成不必要的固件,能夠在適當(dāng)?shù)亩〞r有效地執(zhí)行返回到嵌入式固件。
[0162]而且,每次從業(yè)務(wù)服務(wù)器40接收到自定義固件指定命令或者自定義固件釋放命令,中介服務(wù)器30基于接收到的命令的內(nèi)容重寫各個MFPlO的固件設(shè)定表的內(nèi)容(服務(wù)器側(cè)固件信息)。因此,當(dāng)在MFPlO和中介服務(wù)器30建立XMPP連接時,能夠?qū)⑦@時最新的服務(wù)器側(cè)固件信息傳輸?shù)組FP10,并且使MFPlO的固件變成最新狀態(tài)。
[0163]而且,甚至在各個MFPlO中,每次從中介服務(wù)器30接收到服務(wù)器側(cè)固件信息,接收到的服務(wù)器側(cè)固件信息的內(nèi)容被反映到被包括在相對應(yīng)的MFPlO的固件狀態(tài)表中的MFP側(cè)固件信息。因此,在存在從PC18接收到的固件更新請求的情況下,對于自定義固件,能夠基于固件狀態(tài)表的內(nèi)容獲取最新版本的自定義固件。
[0164]甚至在嵌入式固件中,嵌入式固件信息被預(yù)先存儲在R0M12中。因此,在從PC18接收到固件更新請求的情況下,能夠基于R0M12的嵌入式固件信息獲取最新版本的嵌入式固件。
[0165]即,在MFPlO中,與自定義固件有關(guān)的固件狀態(tài)表被存儲在NVRAM14中并且根據(jù)來自于中介服務(wù)器30的服務(wù)器側(cè)固件信息而被適當(dāng)?shù)馗?,并且嵌入式固件信息被預(yù)先存儲在R0M12中。因此,能夠基于固件狀態(tài)表和嵌入式固件信息保持用于特定服務(wù)的內(nèi)容的各個MFPlO的固件,并且適當(dāng)?shù)叵硎芴囟ǚ?wù)。
[0166]而且,在各個MFP10和中介服務(wù)器30之間保持XMPP會話。其后,各個MFPlO能夠?qū)崟r響應(yīng)來自于中介服務(wù)器30的服務(wù)器側(cè)固件信息,并且將固件保持在所期待的最新狀態(tài)。
[0167]而且,在本示例性實施例中,MFPlO對應(yīng)于本公開的信息處理裝置的示例,中介服務(wù)器30對應(yīng)于本公開的中繼服務(wù)器的示例,業(yè)務(wù)服務(wù)器40對應(yīng)于本公開的特定服務(wù)器的示例,中介服務(wù)器30的HDD34對應(yīng)于本公開的存儲器的示例,MFPlO的NVRAM14對應(yīng)于本公開的第一存儲器的示例,并且MFPlO的R0M12對應(yīng)于本公開的第二存儲器的示例。此外,自定義固件對應(yīng)于本公開的特定固件的示例,自定義固件的URL對應(yīng)于本公開的特定固件位置信息的示例,嵌入式固件的URL對應(yīng)于本公開的嵌入式固件位置信息的示例,設(shè)備ID對應(yīng)于本公開的裝置信息的示例,服務(wù)器側(cè)固件信息對應(yīng)于本公開的特定固件信息的示例,由MFPlO傳輸XMPP存在通知對應(yīng)于本公開的通信保持處理的示例,自定義固件指定命令是本公開的特定固件更新命令的示例,并且自定義固件釋放命令對應(yīng)于本公開的特定固件釋放命令的示例。此外,從中介服務(wù)器30傳輸?shù)組FPlO以便于將固件返回到嵌入式固件并且已經(jīng)從其刪除與該固件相對應(yīng)的URL和固件版本的服務(wù)器側(cè)固件信息對應(yīng)于本公開的釋放信息的示例。
[0168][其它示例性實施例]
[0169](I)在從業(yè)務(wù)服務(wù)器40接收到各個命令的情況下,中介服務(wù)器30根據(jù)作為包括三種固件的信息的全部的信息的、接收到的命令,來傳輸服務(wù)器側(cè)固件信息。然而,中介服務(wù)器30不需要傳輸三種固件的全部信息。
[0170]例如,在從業(yè)務(wù)服務(wù)器40傳輸指示關(guān)于具有固件編號Fl的固件,需要更新自定義固件的自定義固件指定命令的情況下,中介服務(wù)器30可以僅對于作為更新對象的固件編號Fl的自定義固件,將相對應(yīng)的自定義固件的URL和固件版本傳輸?shù)较鄬?yīng)的MFP10。
[0171 ] 而且,例如,在從業(yè)務(wù)服務(wù)器40接收到指示將具有固件編號Fl的固件從自定義固件返回到嵌入式固件的需要的自定義固件釋放命令的情況下,中介服務(wù)器30可以僅對于需要被返回到嵌入式固件的固件編號Fl的固件,將指示將固件編號Fl的固件返回到嵌入式固件的需要的信息傳輸?shù)较鄬?yīng)的MFP10。
[0172]結(jié)果,中介服務(wù)器30能夠識別與自定義固件有關(guān)的業(yè)務(wù)服務(wù)器40的最新信息(即,哪個MFPlO的哪個固件需要被更新為自定義固件的哪個版本,或哪個MFPlO的哪個固件需要被返回到嵌入式固件)。只要根據(jù)需要能夠?qū)⒆钚滦畔鬏數(shù)礁鱾€MFP10,則能夠適當(dāng)?shù)卮_定用于將各種信息保存和存儲在中介服務(wù)器30中的具體方法和將各種信息傳輸?shù)礁鱾€MFPlO的定時。
[0173]從MFP (10)側(cè)的角度,只要其能夠適當(dāng)?shù)赝ㄖ鄬?yīng)的MFPlO的哪一個固件需要被處理(是否需要將固件改變成自定義固件或者嵌入式固件,當(dāng)需要將一個固件改變成自定義固件時能夠在哪里獲取自定義固件,等等),能夠適當(dāng)?shù)卮_定相對應(yīng)的MFPlO和中介服務(wù)器30的特定配置。
[0174](2)在上述示例性實施例中,已經(jīng)描述各個MFPlO的固件的種類是三種的情況。然而,固件的種類的數(shù)目不限于此。固件的種類的數(shù)目可以是一種,或者可以是四種或者更多。
[0175](3)不需要將中介服務(wù)器30插入在業(yè)務(wù)服務(wù)器40和各個MFPlO之間。為了更新固件,可以將命令從業(yè)務(wù)服務(wù)器40直接傳輸?shù)礁鱾€MFP10。然而,在該情況下,例如,需要通過使用各個MFPlO以持續(xù)地訪問業(yè)務(wù)服務(wù)器40并獲取命令,或者通過在各個MFPlO和業(yè)務(wù)服務(wù)器40之間建立XMPP會話,來適當(dāng)?shù)厣軌驅(qū)⒚顝臉I(yè)務(wù)服務(wù)器40直接地傳輸?shù)礁鱾€MFPlO的情形。
【權(quán)利要求】
1.一種信息處理裝置,包括: 控制設(shè)備;以及 通信單元,所述通信單元被配置成通過網(wǎng)絡(luò)執(zhí)行與特定固件信息傳輸裝置和固件提供服務(wù)器的通信, 其中,所述控制設(shè)備被配置成: 執(zhí)行建立處理,所述建立處理根據(jù)使能服務(wù)器推送的通信協(xié)議來建立在所述信息處理裝置和所述特定固件信息傳輸裝置之間的會話,并且在所建立的會話中,并且建立與所述特定固件信息傳輸裝置的連接; 執(zhí)行特定固件信息獲取處理,所述特定固件信息獲取處理通過所述連接來從所述特定固件傳輸裝置獲取特定固件信息,其中,所述特定固件信息至少包括指示特定固件的位置的特定固件位置信息,以將所述信息處理裝置的固件更新為所述特定固件; 執(zhí)行特定固件獲取處理,所述特定固件獲取處理基于包括在通過所述特定固件信息獲取處理所獲取的所述特定固件信息中的所述特定固件位置信息來從所述固件提供服務(wù)器獲取由所述特定固件位置信息所指示的所述特定固件;并且 執(zhí)行特定固件更新處理,所述特定固件更新處理將所述固件更新為所獲取的特定固件,所述固件被包括在所述信息處理裝置中并且與通過所述特定固件獲取處理所獲取的所述特定固件相對應(yīng)。
2.根據(jù)權(quán)利 要求1所述的信息處理裝置,進一步包括: 第一存儲器,所述第一存儲器被配置成存儲信息, 其中,當(dāng)通過所述特定固件信息獲取處理來獲取所述特定固件信息時,所述控制設(shè)備執(zhí)行存儲處理和更新請求接收處理,所述存儲處理將所獲取的特定固件信息存儲在所述第一存儲器中,所述更新請求接收處理接收所述固件的更新請求,并且 其中,當(dāng)通過所述更新請求接收處理接收所述更新請求時,所述控制設(shè)備基于存儲在所述第一存儲器中的所述特定固件信息來執(zhí)行所述特定固件獲取處理和所述特定固件更新處理。
3.根據(jù)權(quán)利要求2所述的信息處理裝置,進一步包括: 第二存儲器,在所述第二存儲器中預(yù)先存儲嵌入式固件位置信息,所述嵌入式固件位置信息指示與所述信息處理裝置的所述固件相對應(yīng)的指定的嵌入式固件的位置, 其中,所述控制設(shè)備被配置成: 當(dāng)通過所述更新請求接收處理接收所述更新請求時,執(zhí)行特定固件信息存在確定處理,所述特定固件信息存在確定處理確定與作為所述更新請求的對象的固件相對應(yīng)的所述特定固件信息是否已經(jīng)被存儲在所述第一存儲器中; 當(dāng)所述特定固件信息存在確定處理沒有確定所述特定固件信息已經(jīng)被存儲在所述第一存儲器中時,執(zhí)行第一嵌入式固件獲取處理,所述第一嵌入式固件獲取處理從所述固件提供服務(wù)器獲取由所述嵌入式固件位置信息所指示的所述嵌入式固件,所述嵌入式固件位置信息與作為所述更新請求的對象的所述固件相對應(yīng)并且被存儲在所述第二存儲器中;并且 執(zhí)行第一嵌入式固件更新處理,所述第一嵌入式固件更新處理將作為所述更新請求的對象的所述固件更新為通過所述第一嵌入式固件獲取處理所獲取的所述嵌入式固件。
4.根據(jù)權(quán)利要求2所述的信息處理裝置,進一步包括: 第二存儲器,在所述第二存儲器中存儲嵌入式固件位置信息,所述嵌入式固件位置信息指示與所述信息處理裝置的所述固件相對應(yīng)的指定的嵌入式固件的位置, 其中,所述控制設(shè)備被配置成: 執(zhí)行釋放信息獲取處理,所述釋放信息獲取處理通過所述連接來獲取釋放信息,其中,所述釋放信息從所述特定固件信息傳輸裝置被傳輸?shù)剿鲂畔⑻幚硌b置,并且指示將所述信息處理裝置的所述特定固件返回為指定的嵌入式固件的需要; 在通過所述釋放信息獲取處理獲取所述釋放信息的情況下,執(zhí)行第二嵌入式固件獲取處理,所述第二嵌入式固件獲取處理從所述固件提供服務(wù)器獲取由所述嵌入式固件位置信息所指示的所述嵌入式固件,所述嵌入式固件位置信息與存儲在所述第二存儲器中的所述釋放信息相對應(yīng);并且 執(zhí)行第二嵌入式固件更新處理,所述第二嵌入式固件更新處理將與所述釋放信息相對應(yīng)的所述特定固件更新為通過所述第二嵌入式固件獲取處理所獲取的所述嵌入式固件。
5.根據(jù)權(quán)利要求4所述的信息處理裝置, 其中,當(dāng)所述釋放信息獲取處理獲取所述釋放信息時,所述控制設(shè)備執(zhí)行特定固件信息刪除處理,所述特定固件信息刪除處理刪除存儲在所述第一存儲器中并且與所述釋放信息相對應(yīng)的所述特定固件的所述特定固件信息。
6.根據(jù)權(quán)利要求1所 述的信息處理裝置, 其中,所述控制設(shè)備執(zhí)行會話保持處理,所述會話保持處理連續(xù)地或者間歇地保持在所述信息處理裝置和所述特定固件信息傳輸裝置之間的所述會話。
7.根據(jù)權(quán)利要求1所述的信息處理裝置, 其中,所述通信協(xié)議是通過BOSH的XMPP,其中,所述通過BOSH的XMPP是通過同步HTTP雙向流的可擴展消息收發(fā)和表示協(xié)議。
8.—種中繼服務(wù)器,包括: 控制設(shè)備;以及 通信單元,所述通信單元被配置成通過網(wǎng)絡(luò)執(zhí)行與特定服務(wù)器和至少一個信息處理設(shè)備的通信, 所述控制設(shè)備被配置成: 響應(yīng)于來自所述信息處理裝置的請求,執(zhí)行第一建立處理,所述第一建立處理在根據(jù)第一通信協(xié)議的會話的建立時,在所述中繼服務(wù)器和所述信息處理裝置之間建立第一連接,所述第一通信協(xié)議用于建立使能來自所述中繼服務(wù)器的服務(wù)器推送的會話; 執(zhí)行第二建立處理,所述第二建立處理在所述中繼服務(wù)器和所述特定服務(wù)器之間建立根據(jù)不同于所述第一通信協(xié)議的第二通信協(xié)議的第二連接; 執(zhí)行特定固件更新命令獲取處理,所述特定固件更新命令獲取處理通過所述第二連接來從所述特定服務(wù)器獲取特定固件更新命令,其中,所述特定固件更新命令用于將所述至少一個信息處理裝置的指定的更新對象裝置的固件更新為特定固件,并且至少包括指示所述更新對象裝置的裝置信息和指示所述特定固件的位置的特定固件位置信息;以及 執(zhí)行第一特定固件信息傳輸處理,所述第一特定固件信息傳輸處理基于通過所述特定固件更新命令獲取處理所獲取的所述特定固件更新命令,通過所述第一連接來將至少包括所述特定固件位置信息的特定固件信息傳輸?shù)剿龈聦ο笱b置。
9.根據(jù)權(quán)利要求8所述的中繼服務(wù)器,進一步包括: 存儲器,所述存儲器被配置成存儲信息, 其中,所述控制設(shè)備被配置成: 當(dāng)所述特定固件更新命令獲取處理獲取所述特定固件更新命令時,執(zhí)行存儲處理,所述存儲處理基于所述特定固件更新命令來與所述裝置信息相關(guān)聯(lián)地存儲所述特定固件信息;并且 當(dāng)滿足與一個信息處理裝置有關(guān)的指定的傳輸條件時,執(zhí)行第二特定固件信息傳輸處理,所述第二特定固件信息傳輸處理通過所述第一連接將所述特定固件信息傳輸?shù)剿鲆粋€信息處理裝置,所述特定固件信息與所述一個信息處理裝置相對應(yīng)并且被存儲在所述存儲器中。
10.根據(jù)權(quán)利要求9所述的中繼服務(wù)器, 其中,所述傳輸條件是執(zhí)行所述存儲處理和執(zhí)行從所述信息處理裝置到所述中繼服務(wù)器的用于根據(jù)所述第一通信協(xié)議的通信的連接中的至少一個。
11.根據(jù)權(quán)利要求8所述的中繼服務(wù)器, 其中,所述控制設(shè)備被配置成: 執(zhí)行特定固件釋放命令獲取處理,所述特定固件釋放命令獲取處理通過所述第二連接從所述特定服務(wù)器獲取特定固件釋放命令,其中,所述特定固件釋放命令用于返回所述至少一個信息處理裝置的指定的釋放對象裝置的所述特定固件,并且至少包括指示所述釋放對象裝置的裝置信息;并且 執(zhí)行釋放信息傳輸處理,所述釋放信息傳輸處理基于通過所述特定固件釋放命令獲取處理所獲取的所述特定固件釋放命令,通過所述第一連接來將釋放信息傳輸?shù)剿鲠尫艑ο笱b置,所述釋放信息表示將所述特定固件返回為所述嵌入式固件。
12.根據(jù)權(quán)利要求9所述的中繼服務(wù)器, 其中,所述控制設(shè)備被配置成: 執(zhí)行特定固件釋放命令獲取處理,所述特定固件釋放命令獲取處理通過所述第二連接從所述特定服務(wù)器獲取特定固件釋放命令,其中,所述特定固件釋放命令用于返回所述至少一個信息處理裝置的指定的釋放對象裝置的所述特定固件,并且至少包括指示所述釋放對象裝置的裝置信息;并且 當(dāng)所述特定固件釋放命令獲取處理獲取所述特定固件釋放命令時,執(zhí)行特定固件信息刪除處理,所述特定固件信息刪除處理基于所述特定固件釋放命令來刪除所述特定固件信息,所述特定固件信息與所述釋放對象裝置相對應(yīng)并且被存儲在所述存儲器中。
13.根據(jù)權(quán)利要求8所述的中繼服務(wù)器, 其中,所述第一通信協(xié)議是通過BOSH的XMPP,其中,所述通過BOSH的XMPP是通過同步HTTP雙向流的可擴展消息收發(fā)和表示協(xié)議。
14.根據(jù)權(quán)利要求8所述的中繼服務(wù)器, 其中,所述第二通信協(xié)議是HTTP,其中,所述HTTP是超文本傳送協(xié)議。
15.一種在中繼服務(wù)器中使用的信息中繼方法,所述中繼服務(wù)器被配置成通過網(wǎng)絡(luò)執(zhí)行與特定服務(wù)器和至少一個信息處理裝置的通信,所述方法包括:當(dāng)建立根據(jù)使能來自所述中繼服務(wù)器的服務(wù)器推送的第一通信協(xié)議的會話時,通過在所述中繼服務(wù)器和所述信息處理裝置之間建立的第一連接來從所述特定服務(wù)器獲取特定固件更新命令,其中,所述特定固件更新命令用于更新所述至少一個信息處理裝置的指定的更新對象裝置的固件,并且至少包括指示所述更新對象裝置的裝置信息和指示所述特定固件的位置的特定固件位置信息;以及 基于所獲取的所述特定固件更新命令,通過根據(jù)不同于所述第一通信協(xié)議的第二通信協(xié)議的第二連接,將至少包括所述特定固件位置信息的特定固件信息傳輸?shù)剿龈聦ο?gt;J-U ρ?α裝直。
16.一種在包括在中繼服務(wù)器中的計算機中執(zhí)行的控制計算機的方法,所述計算機被包括在能夠通過網(wǎng)絡(luò)與特定服務(wù)器和至少一個信息處理裝置進行通信的中繼服務(wù)器中,所述方法包括: 當(dāng)建立根據(jù)使能來自所述中繼服務(wù)器的服務(wù)器推送的第一通信協(xié)議的會話時,響應(yīng)于來自所述信息處理裝置的請求,在所述中繼服務(wù)器和所述信息處理裝置之間建立第一連接; 在所述中繼服務(wù)器和所述特定服務(wù)器之間建立根據(jù)不同于所述第一通信協(xié)議的第二通信協(xié)議的第二連接; 通過所述第二 連接從所述特定服務(wù)器獲取特定固件更新命令,其中,所述特定固件更新命令用于將所述至少一個信息處理裝置的指定的更新對象裝置的固件更新為特定固件,并且至少包括指示所述更新對象裝置的裝置信息和指示所述特定固件的位置的特定固件位置信息;以及 基于通過所述特定固件更新命獲取處理所獲取的所述特定固件更新命令,通過所述第一連接來將至少包括所述特定固件位置信息的特定固件信息傳輸?shù)剿龈聦ο笱b置。
17.—種通信系統(tǒng),所述通信系統(tǒng)包括配置成通過網(wǎng)絡(luò)執(zhí)行與特定服務(wù)器和至少一個信息處理裝置的通信的中繼服務(wù)器,所述至少一個信息處理裝置被配置成通過所述網(wǎng)絡(luò)來執(zhí)行與所述中繼服務(wù)器和固件提供服務(wù)器的通信, 所述中繼服務(wù)器被配置成: 響應(yīng)于來自所述信息處理裝置的請求,執(zhí)行第一建立處理,所述第一建立處理在建立根據(jù)使能來自所述中繼服務(wù)器的服務(wù)器推送的第一通信協(xié)議的會話時,在所述中繼服務(wù)器和所述信息處理裝置之間建立第一連接; 執(zhí)行第二建立處理,所述第二建立處理在所述中繼服務(wù)器和所述特定服務(wù)器之間建立根據(jù)不同于所述第一通信協(xié)議的第二通信協(xié)議的第二連接; 執(zhí)行特定固件更新命令獲取處理,所述特定固件更新命令獲取處理通過所述第二連接來從所述特定服務(wù)器獲取特定固件更新命令,其中,所述特定固件更新命令用于將所述至少一個信息處理裝置的指定的更新對象裝置的固件更新為特定固件,并且至少包括指示所述更新對象裝置的裝置信息和指示所述特定固件的位置的特定固件位置信息;并且執(zhí)行特定固件信息傳輸處理,所述特定固件信息傳輸處理基于通過所述特定固件更新命令獲取處理所獲取的所述特定固件更新命令,通過所述第一連接來將至少包括所述特定固件位置信息的特定固件信息傳輸?shù)剿龈聦ο笱b置,并且 所述信息處理裝置被配置成:執(zhí)行連接建立處理,所述連接建立處理在所述信息處理裝置和所述中繼服務(wù)器之間建立所述第一連接; 執(zhí)行特定固件信息獲取處理,所述特定固件信息獲取處理通過所述第一連接來獲取所述特定固件信息,所述特定固件信息從所述中繼服務(wù)器被傳送到所述信息處理裝置; 執(zhí)行特定固件獲取處理,所述特定固件獲取處理基于包括在通過所述特定固件信息獲取處理所獲取的所述特定固件信息中的所述特定固件位置信息,從由所述特定固件位置信息所指示的所述固件提供服務(wù)器獲取所述特定固件;并且 執(zhí)行特定固件更新處理,所述特定固件更新處理將包括在所述信息處理裝置中并且與通過所述特定固件獲取處理所獲取的所述特定固件相對應(yīng)的所述固件更新為所獲取的特定固 件。
【文檔編號】H04L29/06GK104052735SQ201410098138
【公開日】2014年9月17日 申請日期:2014年3月17日 優(yōu)先權(quán)日:2013年3月15日
【發(fā)明者】大原清孝 申請人:兄弟工業(yè)株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
凌海市| 荔波县| 漯河市| 霞浦县| 台前县| 威远县| 惠安县| 游戏| 霍邱县| 章丘市| 武宣县| 柞水县| 长治市| 卓资县| 于田县| 保山市| 犍为县| 个旧市| 任丘市| 河池市| 沛县| 涞源县| 台安县| 都江堰市| 神农架林区| 贵港市| 安康市| 翁牛特旗| 保亭| 永丰县| 六安市| 会同县| 宁乡县| 阿城市| 万载县| 姚安县| 双柏县| 盐亭县| 西宁市| 武功县| 五峰|