本公開涉及通信,并且具體涉及使能用戶設備瀏覽器和本地設備之間的通信。
背景技術(shù):
1、申請人已經(jīng)標識出與使用本地打印機在用戶設備上打印來自瀏覽器的內(nèi)容相關(guān)聯(lián)的很多缺陷和問題。通過所應用的努力、創(chuàng)造力和創(chuàng)新,申請人通過開發(fā)下面將詳細描述的本發(fā)明實施的解決方案解決了這些標識出的問題中的很多問題。
技術(shù)實現(xiàn)思路
1、因此,提供了一種方法、裝置和計算機程序產(chǎn)品,以使能被配置為在諸如移動設備或個人計算機的用戶設備上操作的瀏覽器與諸如打印機的本地設備之間的通信。由在用戶設備上運行的瀏覽器顯示的很多網(wǎng)站不能直接與本地網(wǎng)絡設備(諸如打印機)交互。各種系統(tǒng)的web頁面開發(fā)方可能想要使其web頁面的用戶能夠以流線型且安全的方式從用戶設備打印。用于直接從瀏覽器打印的當前實現(xiàn)包括操作系統(tǒng)和/或瀏覽器特定的方法。例如,和javatmapplet實現(xiàn)允許直接從瀏覽器打印,但是這些應用并非在所有用戶設備上都可用,并且可能引入安全漏洞。
2、本文中提供的方法、計算機程序產(chǎn)品和裝置提供了一種使能操作于用戶設備上的瀏覽器和本地設備(諸如打印機)之間的通信的流線型方法。本文中提供的示例實施例不依賴于瀏覽器類型,也不依賴于操作系統(tǒng)。根據(jù)本文中提供的示例實施例,主機系統(tǒng)的開發(fā)方可以集成應用編程接口(api),使得由主機系統(tǒng)向在用戶設備上運行的瀏覽器遞送的主機web應用與用戶設備的已安裝的本地設備通信應用通信。本地設備通信應用又可以按照主機系統(tǒng)的指引來控制到其他本地設備的通信和/或打印。
3、提供了一種計算機程序產(chǎn)品,計算機程序產(chǎn)品被配置為在用戶設備上操作以使能本地設備和瀏覽器之間的通信,其中瀏覽器被配置為在用戶設備上操作,并且計算機程序產(chǎn)品被配置為:接收由瀏覽器生成的請求,確定請求包括用以經(jīng)由計算機程序產(chǎn)品傳送從瀏覽器傳輸?shù)臄?shù)據(jù)的請求,以及引起設備命令到本地設備的傳輸,其中設備命令基于從瀏覽器傳輸?shù)臄?shù)據(jù)和與本地設備相關(guān)的信息而被生成。
4、在一些示例中,計算機程序產(chǎn)品確定本地設備是默認本地設備。計算機程序產(chǎn)品還被配置為:經(jīng)由瀏覽器提供可用本地設備的列表以用于在用戶設備的用戶接口上顯示,以及接收基于用戶經(jīng)由用戶接口從列表的選擇的本地設備選擇指示,其中本地設備基于本地設備選擇指示而被標識。在一些示例中,計算機程序產(chǎn)品還被配置為驗證本地設備相對于請求的主機web應用的許可狀態(tài)。
5、計算機程序產(chǎn)品還被配置為引起用戶設備經(jīng)由瀏覽器來輸出與主機web應用和本地設備相關(guān)的用戶許可提示,響應于用戶許可提示經(jīng)由瀏覽器的輸出而接收授權(quán)指示,并且基于授權(quán)指示來更新與主機web應用和本地設備相關(guān)的許可狀態(tài)。
6、計算機程序產(chǎn)品還包括被配置用于使能主機web應用中的腳本的嵌入的本地設備通信應用編程接口,其中確定請求包括用以傳送從瀏覽器傳輸?shù)臄?shù)據(jù)的請求包括執(zhí)行腳本,并且請求從瀏覽器的接收和設備命令到本地設備的傳輸響應于腳本的執(zhí)行而發(fā)生。
7、在一些示例中,生成設備命令包括將超文本標記語言(html)轉(zhuǎn)換成包含從html得出的內(nèi)容、樣式和位置信息的打印命令。在一些示例中,數(shù)據(jù)經(jīng)由瀏覽器執(zhí)行的異步javascript調(diào)用而被接收。在一些示例中,本地設備是打印機,并且向打印機傳輸?shù)脑O備命令是打印命令。在一些示例中,打印機由斑馬(zebra)專有語言控制。
8、在一些示例中,設備命令引起以下中至少一項:本地設備向用戶設備返回本地設備配置信息,本地設備向用戶設備返回本地設備狀態(tài)信息,或者本地設備打印本地設備配置信息。在一些示例中,計算機程序產(chǎn)品被配置為從所選擇的本地設備接收本地設備響應。
9、還提供了一種用于促進數(shù)據(jù)從瀏覽器到本地設備的傳送的系統(tǒng),其中瀏覽器被配置為在用戶設備上操作,并且系統(tǒng)包括被配置為在用戶設備上操作的本地設備通信應用,被配置為在主機系統(tǒng)上操作的主機web應用;以及被配置為在主機系統(tǒng)上操作的本地設備通信應用編程接口,其中本地設備通信應用編程接口被配置用于與主機web應用的通信,其中主機web應用生成用于由瀏覽器顯示的數(shù)據(jù)并且還使瀏覽器能夠與本地設備通信應用通信,并且其中本地設備通信應用被配置為從瀏覽器接收數(shù)據(jù),將數(shù)據(jù)轉(zhuǎn)換成設備特定的格式,以及向本地設備傳輸轉(zhuǎn)換后的數(shù)據(jù)。
10、本地設備通信應用還被配置為向瀏覽器提供可用本地設備以用于顯示并且接收本地設備選擇指示,并且其中本地設備基于本地設備選擇指示而被標識。在一些示例中,轉(zhuǎn)換數(shù)據(jù)包括將超文本標記語言(html)轉(zhuǎn)換成包含從html得出的內(nèi)容、樣式和位置信息的打印命令。
11、在一些示例中,本地設備是打印機,并且向打印機傳輸?shù)脑O備命令是打印命令。本地設備通信應用還被配置為以設備特定的格式從本地設備接收本地設備響應,并且基于本地設備響應來引起消息的提供以用于由瀏覽器顯示。本地設備通信應用還被配置為驗證本地設備相對于請求的主機web應用的許可狀態(tài)。
12、在一些示例中,本地設備通信應用還被配置為引起用戶設備經(jīng)由瀏覽器來輸出與主機web應用和本地設備相關(guān)的用戶許可提示,響應于用戶許可提示經(jīng)由瀏覽器的輸出而接收授權(quán)指示,并且基于授權(quán)指示來更新與主機web應用和本地設備相關(guān)的許可狀態(tài)。
13、在一些示例中,數(shù)據(jù)經(jīng)由瀏覽器所執(zhí)行的異步javascript調(diào)用從瀏覽器被接收。
14、還提供了一種用于促進數(shù)據(jù)從瀏覽器到本地設備的傳送的計算機實現(xiàn)的方法,其中瀏覽器被配置為在用戶設備上操作,計算機實現(xiàn)的方法包括:接收由瀏覽器生成的請求,確定請求包括用以經(jīng)由計算機程序產(chǎn)品傳送從瀏覽器傳輸?shù)臄?shù)據(jù)的請求,以及引起設備命令到本地設備的傳輸,其中設備命令基于從瀏覽器傳輸?shù)臄?shù)據(jù)以及與本地設備相關(guān)的信息而被生成。
15、在一些示例中,根據(jù)權(quán)利要求21所述的計算機實現(xiàn)的方法還包括基于本地設備的類型將從瀏覽器接收的數(shù)據(jù)轉(zhuǎn)換成設備特定的格式。
1.一種用于促進數(shù)據(jù)從瀏覽器到本地設備的傳送的系統(tǒng),其中所述瀏覽器被配置為在用戶設備上操作,所述系統(tǒng)包括:
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述本地設備通信應用被配置為向所述瀏覽器提供可用的本地設備以用于顯示,以及接收本地設備選擇指示,并且所選擇的所述本地設備基于所述本地設備選擇指示被標識。
3.根據(jù)權(quán)利要求1所述的系統(tǒng),其中轉(zhuǎn)換所述數(shù)據(jù)包括:將超文本標記語言html轉(zhuǎn)換為打印命令,所述打印命令包含從所述html得出的所述內(nèi)容、樣式信息和位置信息。
4.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所選擇的所述本地設備是打印機。
5.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述本地設備通信應用被配置為以設備特定的格式從所選擇的所述本地設備接收本地設備響應,以及基于所述本地設備響應引起用于由所述瀏覽器顯示的消息的提供。
6.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述本地設備通信應用被配置為:
7.根據(jù)權(quán)利要求1所述的系統(tǒng),其中所述設備特定的命令引起以下中的至少一項:所選擇的所述本地設備向所述用戶設備返回所選擇的本地設備狀態(tài)信息,或者所選擇的所述本地設備打印所選擇的本地設備配置信息。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),其中當所述許可狀態(tài)在所選擇的所述本地設備與所述主機web應用之間未被驗證時,用戶許可提示在所述用戶設備上被生成,以請求訪問所選擇的所述本地設備的許可。
9.根據(jù)權(quán)利要求1所述的系統(tǒng),其中當所述許可狀態(tài)在所選擇的所述本地設備與所述主機web應用之間被驗證時,所述許可狀態(tài)被記錄在所述主機系統(tǒng)的存儲器中,以避免確定后續(xù)連接中的許可。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其中所選擇的所述本地設備的序列號和所述許可狀態(tài)被存儲在所述存儲器中。
11.根據(jù)權(quán)利要求1所述的系統(tǒng),其中與所述本地設備通信應用相關(guān)聯(lián)的本地設備驅(qū)動器電路通過本地套接字監(jiān)聽由所述瀏覽器生成并且傳輸?shù)街付ǘ丝诘恼埱?,并且當針對所述多個本地設備的請求被做出時,與所述本地設備通信應用相關(guān)聯(lián)的本地設備服務器電路與和所述本地設備通信應用相關(guān)聯(lián)的本地設備配置電路進行通信以指示默認設備或者所述多個本地設備中的哪個本地設備能夠供所述瀏覽器使用,并且經(jīng)由所述本地設備驅(qū)動器電路將設備命令轉(zhuǎn)發(fā)到所選擇的所述本地設備。
12.根據(jù)權(quán)利要求11所述的系統(tǒng),其中所述本地設備驅(qū)動器電路將接收到的html轉(zhuǎn)換為可擴展超文本標記語言xhtml,并且基于可擴展樣式表語言xsl模板生成樣式信息,所述html指定將被打印的內(nèi)容。
13.根據(jù)權(quán)利要求12所述的系統(tǒng),其中所述本地設備驅(qū)動器電路提取放置信息,并且根據(jù)所述xhtml和所述樣式信息生成包含所述內(nèi)容的打印機命令,使得所述打印機命令在所選擇的所述本地設備上的執(zhí)行導致由所述html指定的所述樣式和在從所述html得出的所述位置的所述內(nèi)容的光柵化。
14.一種用于促進數(shù)據(jù)從瀏覽器到本地設備的傳送的系統(tǒng),其中所述瀏覽器被配置為在用戶設備上操作,并且所述系統(tǒng)包括: