元61接收到HTTP請求時,接收與響應(yīng)單元61解釋所接收到的請求的內(nèi)容(步驟S113),并且就根據(jù)所解釋的內(nèi)容進行處理的執(zhí)行而指示信息處理設(shè)備10的中間件層70(步驟S114)。
[0112]中間件層70與硬件層80合作執(zhí)行所指示的處理(S卩,參數(shù)改變)(步驟S115),并且將指示結(jié)果的信息作為狀態(tài)信息供應(yīng)給接收與響應(yīng)單元61 (S116)。接收與響應(yīng)單元61生成描述所供應(yīng)的狀態(tài)信息(在這個示例中,參數(shù)改變結(jié)果)的通知數(shù)據(jù)(步驟S117)。接收與響應(yīng)單元61向作為處理的請求源的顯示裝置4發(fā)送包括所生成的通知數(shù)據(jù)的HTTP響應(yīng)(步驟S118)。顯示裝置4的控制器141使顯示裝置4的顯示器144顯示包括在所發(fā)送的HTTP響應(yīng)中的狀態(tài)信息(步驟S119)。
[0113]1-5-1-2.狀態(tài)信息的第二發(fā)送操作
[0114]圖13是示出了當(dāng)使用了第二方法時裝置和設(shè)備的示例操作的順序圖。圖13所示的操作例如由用戶在信息處理設(shè)備10的圖像讀取單元13上設(shè)定文檔并且執(zhí)行用于相對于顯示裝置4開始復(fù)印的操作的觸發(fā)器來啟動。首先,當(dāng)顯示裝置4的控制器141接收到用于開始復(fù)印的操作(步驟S121)時,控制器141創(chuàng)建與所接收到的操作對應(yīng)的指令數(shù)據(jù)(步驟S122)??刂破?41向信息處理設(shè)備10發(fā)送包括所創(chuàng)建的指令數(shù)據(jù)的處理請求(HTTP請求)。當(dāng)信息處理設(shè)備10的接收與響應(yīng)單元61通過圖8所示的接口 50接收到處理請求時,接收與響應(yīng)單元61分析包括在所接收到的處理請求中的指令數(shù)據(jù)并且因此解釋指令的內(nèi)容(步驟S124) ο
[0115]當(dāng)接收與響應(yīng)單元61指示中間件層70基于所解釋的內(nèi)容執(zhí)行復(fù)印處理(步驟
5125)時,中間件層70和硬件層80基于所指示的內(nèi)容協(xié)作地執(zhí)行處理(復(fù)印處理)(步驟
5126)ο接收與響應(yīng)單元61向顯示裝置4發(fā)送指示在針對復(fù)印處理的指令之后接收到對于復(fù)印處理的請求的HTTP響應(yīng)作為對在步驟S123中接收到的HTTP請求的響應(yīng)(步驟S131)。顯示裝置4的控制器141使顯示裝置4的顯示器144根據(jù)所接收到的HTTP響應(yīng)來顯示內(nèi)容(步驟S132)。另選地,可以在步驟S124或步驟S125中的操作之前執(zhí)行步驟S131中的操作。
[0116]在第二方法中,處理狀態(tài)的通知以及響應(yīng)于來自顯示裝置4的處理請求的處理完成的通知由顯示裝置4獲取,使得顯示裝置4響應(yīng)于HTTP請求執(zhí)行輪詢處理。在控制器141接收到對對復(fù)印處理的請求之后顯示裝置4的控制器141通過發(fā)送用于請求復(fù)印處理的狀態(tài)的通知的通知請求(HTTP請求)來執(zhí)行輪詢處理(S141)。如果仍然未供應(yīng)復(fù)印處理的狀態(tài)信息,則信息處理設(shè)備10的接收與響應(yīng)單元61向顯示裝置4發(fā)送指示該情形的HTTP響應(yīng)(步驟S142)。重復(fù)步驟S141和步驟S142中的操作。
[0117]當(dāng)向介質(zhì)輸出拷貝(指示讀取文檔的圖像)時,信息處理設(shè)備10的中間件層70檢測輸出(步驟S151),并且向接收與響應(yīng)單元61供應(yīng)指示拷貝被輸出到介質(zhì)的狀態(tài)的狀態(tài)信息(步驟S152)。當(dāng)接收與響應(yīng)單元61在供應(yīng)了狀態(tài)信息之后接收到通知請求(HTTP請求)(步驟S141)時,接收與響應(yīng)單元61生成包括該狀態(tài)信息的通知數(shù)據(jù)(步驟S153),并且以包括在HTTP響應(yīng)中的方式將該通知數(shù)據(jù)發(fā)送到顯示裝置4(步驟S154)。顯示裝置4的控制器141使顯示裝置4的顯示器144與步驟S132類似地顯示與通知數(shù)據(jù)對應(yīng)的內(nèi)容(步驟 S155)。
[0118]1-5-1-3.狀態(tài)彳目息的第二發(fā)送操作
[0119]圖14是示出了當(dāng)使用了第三方法時裝置和設(shè)備的示例操作的順序圖。在第一方法和第二方法中,通過使用HTTP在顯示裝置4與信息處理設(shè)備10之間交換數(shù)據(jù)。相反,在第三方法中,通過使用除HTTP之外的WebSocket協(xié)議從信息處理設(shè)備10向顯示裝置4發(fā)送數(shù)據(jù)。具體地說,在第二方法中通過輪詢獲取的狀態(tài)信息在第三方法中作為WebSocket的消息被通知給顯示裝置4。第二方法和第三方法通過不同的方法來實現(xiàn)單個處理,并且因此被選擇性地使用。
[0120]圖14所示的操作由用戶與圖13類似地執(zhí)行用于開始復(fù)印的操作的觸發(fā)器來啟動。首先,當(dāng)顯示裝置4的控制器141接收到用于開始復(fù)印的操作(步驟S121)時,控制器141執(zhí)行用于相對于信息處理設(shè)備10建立WebSocket會話的處理。也就是說,控制器141向信息處理設(shè)備10發(fā)送作為WebSocket的握手請求的HTTP請求。HTTP請求包括用于標(biāo)識顯示裝置4的客戶端ID。
[0121]信息處理設(shè)備10的接口 50執(zhí)行響應(yīng)于從顯示裝置4接收到的HTTP請求而切換到WebSocket。接收與響應(yīng)單元61向顯示裝置4發(fā)送WebSocket的握手響應(yīng),并且因此,在顯示裝置4與信息處理設(shè)備10之間建立WebSocket會話(在下文中,僅僅被稱為“會話”)(步驟S160)。建立會話的定時不限于以上描述的定時。例如,可以在當(dāng)用戶通過使用顯示裝置4來啟動web瀏覽器并且執(zhí)行做出對信息處理設(shè)備10的URL(統(tǒng)一資源定位符)的訪問的操作時的定時處執(zhí)行會話建立處理。
[0122]并且,接收與響應(yīng)單元61將包括在所接收到的HTTP請求中的客戶端ID存儲在存儲器12的預(yù)定區(qū)域(在下文中,被稱為“高速緩存區(qū)域12a”,未例示)中。存儲在高速緩存區(qū)域12a中的客戶端ID保持預(yù)定期限并且然后如果檢測到會話是通過正常處理斷開則被刪除。也就是說,高速緩存區(qū)域12a在相對于信息處理設(shè)備10建立會話中間存儲顯示裝置4的客戶端ID,以及其會話在處理中間被斷開的顯示裝置4的客戶端ID。
[0123]在步驟S161和后面步驟的處理中,顯示裝置4和信息處理設(shè)備10通過使用HTTP或WebSocket的協(xié)議來交換消息。在以下描述中,通過使用HTTP發(fā)送和接收到的消息以及通過使用WebSocket發(fā)送和接收到的消息被僅僅共同地稱為“消息”,除非另外必須彼此區(qū)分這些消息。信息處理設(shè)備10的接收與響應(yīng)單元61連同應(yīng)用于消息的客戶端ID、事務(wù)ID和順序ID —起將由信息處理設(shè)備10發(fā)送的消息存儲在高速緩存區(qū)域12a中。順序ID是用于標(biāo)識消息的標(biāo)識信息。并且,顯示裝置4的控制器141將應(yīng)用于由顯示裝置4接收到的消息的一對事務(wù)ID和順序ID存儲在顯示裝置4的高速緩存區(qū)域(在下文中,被稱為“高速緩存區(qū)域142a”,未例示)中??梢栽诖鎯ζ?42中包括或者可以在RAM中提供高速緩存區(qū)域142a。如果在處理中間斷開了會話,則參照存儲在高速緩存區(qū)域142a中的ID的集入口 ο
[0124]描述返回至圖14。當(dāng)建立了 WebSocket會話時,控制器141向信息處理設(shè)備10發(fā)送包括描述請求了以上描述的第三方法的數(shù)據(jù)的HTTP請求(步驟S161)。當(dāng)信息處理設(shè)備10的接收與響應(yīng)單元61接收到該HTTP請求時,接收與響應(yīng)單元61向中間件層70發(fā)送在包括在所接收到的HTTP請求中的數(shù)據(jù)中描述的請求的內(nèi)容(步驟S162)。中間件層70相對于顯示裝置4通過在下文中使用第三方法來接收所發(fā)送的請求并且執(zhí)行用于狀態(tài)信息的發(fā)送的設(shè)定(步驟S163)。例如,中間件層70將指示通知是否由第三方法做出的標(biāo)志改變?yōu)?N。
[0125]執(zhí)行了圖13所示的從步驟S122到步驟S126的操作以及步驟S131和步驟S132中的操作。然后,當(dāng)信息處理設(shè)備10的中間件層70和硬件層80執(zhí)行步驟S151中的處理(復(fù)印輸出的檢測)時,因為標(biāo)志是0N,所以中間件層70和硬件層80向事件通知單元62而不是接收與響應(yīng)單元61供應(yīng)指示拷貝被輸出到介質(zhì)的狀態(tài)信息(步驟S172)。事件通知單元62生成描述所供應(yīng)的狀態(tài)信息(復(fù)印份數(shù)等)的通知數(shù)據(jù)(步驟S173),并且通過在步驟S160中建立的WebSocket會話將所生成的數(shù)據(jù)發(fā)送到顯示裝置4 (步驟S174)。顯示裝置4的控制器141使顯示裝置4的顯示器144顯示在所接收到的數(shù)據(jù)(例如,圖3A所示的狀態(tài)信息Cl)中描述的內(nèi)容(步驟S175)。
[0126]當(dāng)中間件層70和硬件層80完成復(fù)印處理(步驟S181)時,中間件層70和硬件層80向事件通知單元62供應(yīng)指示完成的狀態(tài)信息(步驟S182)。事件通知單元62生成描述狀態(tài)信息的通知數(shù)據(jù)(例如,包括“復(fù)印完成”的字符串的通知數(shù)據(jù))(步驟S183),并且以包括在WebSocket的消息中的方式將所生成的通知數(shù)據(jù)發(fā)送到顯示裝置4 (步驟S184)。顯示裝置4的控制器141使顯示裝置4的顯示器144顯示在步驟S184中接收到的通知數(shù)據(jù)(例如,圖7B所示的狀態(tài)信息C2)中描述的內(nèi)容(步驟S185)。
[0127]1-5-1-4.狀態(tài)信息的第四發(fā)送操作
[0128]圖15是示出了當(dāng)使用了第四方法時裝置和設(shè)備的示例操作的順序圖。在第四方法中,通過使用WebSocket向顯示裝置4通知狀態(tài)信息。在這個方法中,使用了先前建立的WebSocket會話,例如,在圖14中的步驟S160中建立的會話。如果在信息處理設(shè)備10中出現(xiàn)預(yù)定狀態(tài)(調(diào)色劑用完、紙張用完、收容部打開等),則信息處理設(shè)備10的中間件層70和硬件層80協(xié)作地檢測該預(yù)定狀態(tài)(步驟S201),并且將指示所檢測到的狀態(tài)的狀態(tài)信息供應(yīng)給事件通知單元62(步驟S202)。事件通知單元62生成描述所供應(yīng)的狀態(tài)信息的通知數(shù)據(jù)(步驟S203),并且通過使用所建立的WebSocket會話經(jīng)由接口 50將所生成的通知數(shù)據(jù)發(fā)送到顯示裝置4 (步驟S204)。顯示裝置4的控制器141使顯示裝置4的顯示器144顯示在步驟S204中接收到的通知數(shù)據(jù)中描述的狀態(tài)信息(步驟S205)。
[0129]另選地,如上所述,可以通知取決于顯示裝置4而不同的狀態(tài)。在這種情況下,在步驟S201之前,控制器141通過通信單元43向信息處理設(shè)備10發(fā)送描述要通知給顯示裝置4的狀態(tài)的通知數(shù)據(jù)。已經(jīng)通過接口 50接收到通知數(shù)據(jù)的事件通知單元62與顯示裝置4的目標(biāo)地址相關(guān)聯(lián)地存儲要通知的狀態(tài)。如果步驟S202中供應(yīng)的狀態(tài)信息表示所存儲的要通知的狀態(tài),則事件通知單元62做出關(guān)于狀態(tài)的通知。
[0130]1-5-2.操作示例 I
[0131]圖16是示出了信息處理系統(tǒng)I的特定操作示例的順序圖。在這個示例中描述的是由用戶Ul使用顯示裝置4操作的一系列操作(其中輸入了用于使用由信息處理設(shè)備10提供的各種功能的認(rèn)證信息并且顯示裝置4在信息處理設(shè)備10中記錄的操作)的示例。在這個操作示例中,TCP和HTTP (第一通信協(xié)議的示例)以及TCP和WebSocket (第二通信協(xié)議的示例)被用作用于在顯示裝置4與信息處理設(shè)備10之間交換數(shù)據(jù)的通信協(xié)議。并且,在這個示例中,用戶認(rèn)證是通過HTTP的基本認(rèn)證來執(zhí)行的。
[0132]首先,用戶Ul執(zhí)行在顯示裝置4上啟動web瀏覽器并且做出對信息處理設(shè)備10的URL的訪問的操作。這時,用戶Ul通過使用顯示裝置4的操作單元145來輸入用于登錄到信息處理設(shè)備10的用戶賬戶信息(認(rèn)證信息的示例)。在這個示例中,用戶ID和密碼被用作賬戶信息。用戶ID是分配給各個用戶的標(biāo)識信息。
[0133]在步驟S301中,顯示裝置4的控制器141啟動web瀏覽器。在步驟S302中,控制器141建立到信息處理設(shè)備10的TCP (傳輸控制協(xié)議)連接(第一通信路徑的示例),并且通過所建立的TCP連接向信息處理設(shè)備10發(fā)送包括所輸入的賬戶信息的HTTP請求(認(rèn)證請求)。
[0134]接收與響應(yīng)單元61接收從顯示裝置4發(fā)送的HTTP請求。接收與響應(yīng)單元61將包括在HTTP請求中的賬戶信息發(fā)送到功能單元65。在步驟S303中,功能單元65基于所供應(yīng)的賬戶信息是否被存儲在存儲在存儲器12中的認(rèn)證數(shù)據(jù)庫(未示出)中來執(zhí)行用戶認(rèn)證。如果供應(yīng)給功能單元65的賬戶信息被存儲在認(rèn)證數(shù)據(jù)庫中,則用戶認(rèn)證是成功的。相反,如果賬戶信息未被存儲在認(rèn)證數(shù)據(jù)庫中,則用戶認(rèn)證失敗。圖16示出了在認(rèn)證數(shù)據(jù)庫中注冊了用戶Ul的賬戶信息的情況。因為在認(rèn)證數(shù)據(jù)庫中注冊了用戶Ul的賬戶信息,所以用戶認(rèn)證是成功的。
[0135]如果用戶認(rèn)證是成功的,則在步驟304中,功能單元65將在用戶認(rèn)證中成功的用戶Ul的用戶ID注冊在存儲器12的用戶管理表121 (參見圖6)中(步驟S304)。用戶管理表121是用于管理用戶的登錄狀態(tài)和連接狀態(tài)的表。
[0136]圖17是示出了用戶管理表121的內(nèi)容的示例的例示。在用戶管理表121中,如所例示的,“用戶ID”、“訪問令牌”、“登錄狀態(tài)”和“連接狀態(tài)”的相應(yīng)項彼此相關(guān)聯(lián)。在這些項當(dāng)中,“用戶ID”是用于標(biāo)識用戶的標(biāo)識信息?!霸L問令牌”是用于許可用于打開WebSocket的會話的訪問的信息。如果HTTP的基本認(rèn)證是成功的則訪問令牌由功能單元65生成?!暗卿洜顟B(tài)”是向信息處理設(shè)備10指示用戶ID的登錄狀態(tài)的信息,并且設(shè)定了“登錄”或“注銷”的值?!斑B接狀態(tài)”是指示W(wǎng)ebSocket會話的連接狀態(tài)的信息,并且設(shè)定了“連接”或“斷開”的值。
[0137]描述返回至圖16。在步驟S305中,功能單元65生成用于建立WebSocket的會話的訪問令牌。在這個訪問令牌中,設(shè)定了有效性的期限(例如,自生成了訪問令牌以來三分鐘)。在步驟S306中,功能單元65將所生成的訪問令牌注冊在與用戶Ul的用戶ID相關(guān)聯(lián)的用戶管理表121中。并且,功能單元65將所生成的訪問令牌供應(yīng)給接收與響應(yīng)單元61。功能單元65在當(dāng)功能單元65供應(yīng)訪問令牌時的定時處發(fā)出與由訪問令牌設(shè)定的有