(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-05-13
(45)【発行日】2024-05-21
(54)【発明の名称】クラウドベース印刷のための方法、システム及び装置
(51)【国際特許分類】
G06F 3/12 20060101AFI20240514BHJP
H04L 67/02 20220101ALI20240514BHJP
【FI】
G06F3/12 365
G06F3/12 303
G06F3/12 353
G06F3/12 339
G06F3/12 387
H04L67/02
(21)【出願番号】P 2022579788
(86)(22)【出願日】2021-05-14
(86)【国際出願番号】 US2021032547
(87)【国際公開番号】W WO2021262339
(87)【国際公開日】2021-12-30
【審査請求日】2022-12-22
(32)【優先日】2020-06-25
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】519047200
【氏名又は名称】ゼブラ テクノロジーズ コーポレイション
【氏名又は名称原語表記】Zebra Technologies Corporation
【住所又は居所原語表記】3 Overlook Point, Lincolnshire, Illinois 60069, United States of America
(74)【代理人】
【識別番号】100094569
【氏名又は名称】田中 伸一郎
(74)【代理人】
【識別番号】100103610
【氏名又は名称】▲吉▼田 和彦
(74)【代理人】
【識別番号】100109070
【氏名又は名称】須田 洋之
(74)【代理人】
【識別番号】100098475
【氏名又は名称】倉澤 伊知郎
(74)【代理人】
【識別番号】100130937
【氏名又は名称】山本 泰史
(74)【代理人】
【識別番号】100144451
【氏名又は名称】鈴木 博子
(74)【代理人】
【識別番号】100107537
【氏名又は名称】磯貝 克臣
(72)【発明者】
【氏名】アンノ ブレット エム
【審査官】佐賀野 秀一
(56)【参考文献】
【文献】特開2012-160009(JP,A)
【文献】特開2014-102621(JP,A)
【文献】特開2015-118613(JP,A)
【文献】特開2010-204746(JP,A)
【文献】特開2016-043480(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/09- 3/12
B41J 29/00- 29/70
H04N 1/00
H04L 67/02
(57)【特許請求の範囲】
【請求項1】
印刷システムとインタフェースするための印刷構成規則を記憶するように構成されたメモリと、
通信インタフェースと、
前記メモリ及び前記通信インタフェースと相互接続されたプロセッサと、
を備え、
前記プロセッサは、
前記印刷システムにマッピングされる印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成し、
前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を、前記通信インタフェースを介して受信し、
前記印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する
ように構成されている
ことを特徴とするサーバ。
【請求項2】
前記印刷システムネットワーク識別子は、前記印刷ジョブの前記1または複数の印刷パラメータを受信するように構成されたウェブページに対応している
ことを特徴とする請求項1に記載のサーバ。
【請求項3】
前記印刷要求を受信するために、前記プロセッサは、
前記印刷システムネットワーク識別子を解決するための要求を受信し、
前記通信インタフェースを介してクライアントデバイスに前記ウェブページを提供して、前記印刷ジョブの前記1または複数の印刷パラメータを受信し、
前記クライアントデバイスによる前記ウェブページでの送信要求を介して、前記印刷ジョブの前記1または複数の印刷パラメータを含む前記印刷要求を受信する
ように構成されている
ことを特徴とする請求項2に記載のサーバ。
【請求項4】
前記印刷要求は、印刷ジョブネットワーク識別子に対応しており、
前記印刷ジョブネットワーク識別子は、前記印刷システムネットワーク識別子に付加された前記1または複数の印刷パラメータを含む
ことを特徴とする請求項1に記載のサーバ。
【請求項5】
前記印刷要求を受信するために、前記プロセッサは、
前記印刷ジョブネットワーク識別子を解決するための要求を受信し、
前記印刷ジョブネットワーク識別子から、前記印刷システムネットワーク識別子と、前記印刷ジョブの前記1または複数の印刷パラメータと、を抽出する
ように構成されている
ことを特徴とする請求項4に記載のサーバ。
【請求項6】
前記プロセッサは、更に、
要求側デバイスから、前記印刷システム用のネットワーク識別子要求を受信し、
前記ネットワーク識別子要求に応答して、前記印刷システムネットワーク識別子を、前記要求側デバイスに提供する
ように構成されている
ことを特徴とする請求項1に記載のサーバ。
【請求項7】
前記プロセッサは、更に、
前記印刷システムに対する後続のネットワーク識別子要求を受信し、
前記印刷システムにマッピングされる新しい印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される新しい印刷システムネットワーク識別子を生成し、
前記後続のネットワーク識別子要求に応答して、前記新しい印刷システムネットワーク識別子を提供する
ように構成されている
ことを特徴とする請求項6に記載のサーバ。
【請求項8】
前記プロセッサは、更に、
インターネットプロトコルアドレスによって要求される印刷ジョブのカウントを所定の時間間隔にわたって前記メモリ内に維持し、
前記カウントが前記所定の時間間隔の印刷ジョブの閾値数を超える時、前記インターネットプロトコルアドレスからの印刷要求を拒否する
ように構成されている
ことを特徴とする請求項1に記載のサーバ。
【請求項9】
印刷システムとインタフェースするための印刷構成規則を記憶する工程と、
前記印刷システムにマッピングするように構成される印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成する工程と、
前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を受信する工程と、
前記印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する工程と、
を備えたことを特徴とする方法。
【請求項10】
前記印刷システムネットワーク識別子は、前記印刷ジョブの前記1または複数の印刷パラメータを受信するように構成されたウェブページに対応している
ことを特徴とする請求項9に記載の方法。
【請求項11】
前記印刷要求を受信する工程は、
前記印刷システムネットワーク識別子を解決するための要求を受信する工程と、
前記ウェブページを提供して、前記印刷ジョブの前記1または複数の印刷パラメータを受信する工程と、
クライアントデバイスによる前記ウェブページでの送信要求を介して、前記印刷ジョブの前記1または複数の印刷パラメータを含む前記印刷要求を受信する工程と、
を含む
ことを特徴とする請求項10に記載の方法。
【請求項12】
前記印刷要求は、印刷ジョブネットワーク識別子に対応しており、
前記印刷ジョブネットワーク識別子は、前記印刷システムネットワーク識別子に付加された前記1または複数の印刷パラメータを含む
ことを特徴とする請求項9に記載の方法。
【請求項13】
前記印刷要求を受信する工程は、
前記印刷ジョブネットワーク識別子を解決するための要求を受信する工程と、
前記印刷ジョブネットワーク識別子から、前記印刷システムネットワーク識別子と、前記印刷ジョブの前記1または複数の印刷パラメータと、を抽出する工程と、
を含む
ことを特徴とする請求項12に記載の方法。
【請求項14】
要求側デバイスから、前記印刷システム用のネットワーク識別子要求を受信する工程と、
前記ネットワーク識別子要求に応答して、前記印刷システムネットワーク識別子を、前記要求側デバイスに提供する工程と、
を更に備えたことを特徴とする請求項9に記載の方法。
【請求項15】
前記印刷システムに対する後続のネットワーク識別子要求を受信する工程と、
前記印刷システムにマッピングされる新しい印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される新しい印刷システムネットワーク識別子を生成する工程と、
前記後続のネットワーク識別子要求に応答して、前記新しい印刷システムネットワーク識別子を提供する工程と、
を更に備えたことを特徴とする請求項14に記載の方法。
【請求項16】
インターネットプロトコルアドレスによって要求される印刷ジョブのカウントを所定の時間間隔にわたって維持する工程と、
前記カウントが前記所定の時間間隔の印刷ジョブの閾値数を超える時、前記インターネットプロトコルアドレスからの印刷要求を拒否する工程と、
を更に備えたことを特徴とする請求項9に記載の方法。
【請求項17】
プロセッサによって実行可能な複数のコンピュータ可読命令を記憶する非一時的なコンピュータ可読媒体であって、
前記命令の実行は、前記プロセッサをして、
印刷システムにマッピングされる印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成し、
前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を受信し、
メモリに記憶された印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する
ように構成させる
ことを特徴とする非一時的なコンピュータ可読媒体。
【請求項18】
前記プロセッサは、更に、
前記印刷システムネットワーク識別子であって、前記印刷ジョブの前記1または複数の印刷パラメータを受信するように構成されたウェブページに対応している前記印刷システムネットワーク識別子を解決するための要求を受信し、
前記ウェブページを提供して、前記印刷ジョブの前記1または複数の印刷パラメータを受信し、
クライアントデバイスによる前記ウェブページでの送信要求を介して、前記印刷ジョブの前記1または複数の印刷パラメータを含む前記印刷要求を受信する
ことが予定されている
ことを特徴とする請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項19】
前記プロセッサは、更に、
前記印刷要求に対応する印刷ジョブネットワーク識別子であって、前記印刷システムネットワーク識別子に付加された前記1または複数の印刷パラメータを含む印刷ジョブネットワーク識別子を解決するための要求を受信し、
前記印刷ジョブネットワーク識別子から、前記印刷システムネットワーク識別子と、前記印刷ジョブの前記1または複数の印刷パラメータと、を抽出する
ことが予定されている
ことを特徴とする請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項20】
前記プロセッサは、更に、
要求側デバイスから、前記印刷システム用のネットワーク識別子要求を受信し、
前記ネットワーク識別子要求に応答して、前記印刷システムネットワーク識別子を、前記要求側デバイスに提供する
ことが予定されている
ことを特徴とする請求項17に記載の非一時的なコンピュータ可読媒体。
【請求項21】
前記通信インタフェースは、クライアントデバイスと通信するように構成されており、
前記クライアントデバイスは、前記印刷要求を提供するように構成されている
ことを特徴とする請求項1に記載のサーバ。
【発明の詳細な説明】
【背景技術】
【0001】
コンピューティングデバイスからデータを印刷するには、典型的には、当該コンピューティングデバイスに直接的に接続されるか当該コンピューティングデバイスを含むローカルネットワークに接続されたローカルプリンタに、データを送信する必要がある。印刷リソースは、そのようなローカルネットワークの外部からコンピューティングデバイスにアクセス不可であり得る、あるいは、例えば当該ローカルネットワークへのアクセスを得るためにコンピューティングデバイスと様々な他のデバイスとの間で多段階の通信を介してアクセス可能であり得る。
【発明の概要】
【0002】
添付の図面は、以下の詳細な説明と共に、本明細書に組み込まれて本明細書の一部を形成し、特許請求される発明を含む概念の実施形態を更に説明するのに役立ち、また、それら実施形態の様々な原理及び利点を説明するのに役立つ。添付図面において、同様の参照符号は、別個の図面を通して同一または機能的に類似の要素を指している。
【図面の簡単な説明】
【0003】
【
図1】
図1は、クラウドベースの印刷システムを示す概略図である。
【0004】
【
図2】
図2は、
図1のサーバの特定の内部ハードウェア構成要素のブロック図である。
【0005】
【
図3】
図3は、クラウドベースの印刷方法のフローチャートである。
【0006】
【
図4A】
図4Aは、
図3の方法のブロック310の例示的実装のフローチャートである。
【0007】
【0008】
【
図5A】
図5Aは、
図3の方法のブロック310の別の例示的実装のフローチャートである。
【0009】
【0010】
【
図6】
図6は、別のクラウドベースの印刷方法のフローチャートである。
【発明を実施するための形態】
【0011】
当業者は、図面内の要素は簡潔及び明瞭に示されていて、必ずしも一定縮尺で描かれていない、ということを理解するであろう。例えば、図面内の幾つかの要素の寸法は、本発明の実施形態の理解を改善することを助けるべく、他の要素と比較して誇張されている可能性がある。
【0012】
装置及び方法の構成要素は、適切な場合、図面内で従来の符号によって示されており、当該図面は、詳細に関する開示を不明瞭にしないように、本発明の実施形態を理解することに関連する特定の詳細のみを示しており、当該詳細に関する開示は、本明細書の記載の利益を受ける当業者にとって容易に明らかである。
【0013】
本明細書に開示される実施例は、印刷システムとインタフェースするための印刷構成規則を記憶するメモリと、クライアントデバイスと通信するように構成された通信インタフェースと、前記メモリ及び前記通信インタフェースと相互接続されたプロセッサと、を備えたサーバに向けられており、前記プロセッサは、前記印刷システムにマッピングされる印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成し、前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を、前記通信インタフェースを介して前記クライアントデバイスから受信し、前記印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する、ように構成される。
【0014】
本明細書に開示される更なる実施例は、印刷システムとインタフェースするための印刷構成規則を記憶する工程と、前記印刷システムにマッピングされる印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成する工程と、前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を、前記クライアントデバイスから受信する工程と、前記印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する工程と、を備えたことを特徴とする方法に向けられている。
【0015】
本明細書に開示される更なる実施例は、プロセッサによって実行可能な複数のコンピュータ可読命令を記憶する非一時的なコンピュータ可読媒体に向けられており、前記命令の実行は、前記プロセッサをして、前記印刷システムにマッピングされる印刷システムネットワーク識別子であって、複数の印刷ジョブのための印刷パラメータを識別するように構成される印刷システムネットワーク識別子を生成し、前記印刷システムネットワーク識別子に基づいて生成され1つの印刷ジョブのための1または複数の印刷パラメータを含む印刷要求を、前記通信インタフェースを介して前記クライアントデバイスから受信し、メモリに記憶された印刷構成規則に従って生成される印刷命令を、前記印刷システムに送信して、前記1または複数の印刷パラメータに従って前記印刷システムにおいて前記印刷ジョブを開始する、ように構成させる。
【0016】
図1は、クラウドベース印刷のための例示的なシステム100を示している。当該システム100は、サーバ104、印刷システム108-1、108-2、及び、クライアントデバイス112-1、112-2、112-3、を備える。印刷システム108及びクライアントデバイス112は、通信リンク106を介してサーバ104に接続されている。当該システム100は、クラウドベースまたはウェブベースの印刷を可能にするものである。このために、通信リンク106は、携帯電話ネットワークやインターネットを含む適切な広域ネットワーク(WAN)を利用し得る。通信リンク106は、1または複数のルータ、スイッチ、ワイヤレスアクセスポイント等によって定義されるローカルエリアネットワークを更に利用し得る。
【0017】
サーバ104は、接続されたクライアントデバイス112が当該サーバ104を介して印刷システム108に印刷できるように、クラウドベースの印刷サービスを提供する。より具体的には、サーバ104は、アカウントの作成または認証を要求すること無しでクラウド印刷を可能にするように構成される。これを可能にするために、サーバ104は、印刷システムネットワーク識別子(例えば、ユニフォームリソースロケータ、すなわちURL)を、各印刷システム108にマッピングする。印刷システムネットワーク識別子は、複数の印刷ジョブの印刷パラメータを識別するために構成される。すなわち、印刷ジョブは、印刷システムネットワーク識別子を使用して直接的に始動され得て、要求側クライアントデバイス112による認証を必要とすること無しで処理され得る。従って、印刷システムネットワーク識別子は、また、サーバ104での認証を迂回(バイパス)するように構成される。
【0018】
動作中、サーバ104は、当該サーバ104に登録された各印刷システム108に、少なくとも1つの印刷システムネットワーク識別子を生成する。各印刷システムネットワーク識別子は、対応する印刷システム108にマッピングされ、且つ、印刷ジョブの印刷パラメータを識別するように構成される。すなわち、印刷システムネットワーク識別子は、ある1つの印刷ジョブの複数の印刷パラメータがクライアントデバイス112で指定されることを、許容する。例えば、印刷システムネットワーク識別子は、エンドユーザが複数の印刷パラメータを入力し得るウェブページに対応し得て、当該複数の印刷パラメータの提示(入力送信)が、サーバ104での受信時に印刷要求として機能する。代替的に、複数の印刷パラメータは、印刷システムネットワーク識別子に対する変数として付加され得て、印刷ジョブネットワーク識別子を形成し、当該印刷ジョブネットワーク識別子が、サーバ104での受信時に印刷要求として機能する。このように、印刷システムネットワーク識別子へのアクセスが、当該印刷システムネットワーク識別子に基づいて印刷要求が直接的に生成されることを可能にする。
【0019】
従って、印刷システムネットワーク識別子は、当事者間で要求される交信の回数を低減するように、第三者を含めて、共有または分配され得る。例えば、従来モデルでは、エンドユーザは、第三者からドキュメントを要求してダウンロードし得て、その後に、当該ドキュメントを印刷するための印刷要求を生成し得る。一方、本実施例では、エンドユーザは、印刷システムネットワーク識別子を第三者に提供し得て、その後、当該第三者は、印刷システムネットワーク識別子を直接的に使用して、エンドユーザが当該ドキュメントをダウンロードすること無しで、ドキュメントを印刷するための印刷要求を生成し得る。有利な点は、印刷要求が印刷システムネットワーク識別子を直接的に使用して生成されるため、第三者は、サーバ104での認証要件を迂回して印刷要求の生成に進み得ることである。
【0020】
印刷システム108は、通信リンク106を介してサーバ104と通信してドキュメント(文書)または他のデータを印刷するように構成された、任意の適切なシステムを含み得る。例えば、印刷システム108-1は、プリンタ109-1と、ラップトップコンピュータ、デスクトップコンピュータ、プリントサーバ等の別個のコンピューティングデバイス110-1と、を含み、後者は、プリンタ109-1に相互接続されて、当該プリンタ109-1とサーバ104とのネットワーク通信との間を橋渡しする。印刷システム108-2は、当該プリンタ109-2がサーバ104と直接的に通信することを許容するための統合プリンタ通信インタフェース110-2を有するクラウド対応プリンタ109-2を含む。
【0021】
クライアントデバイス112は、デスクトップコンピュータ、ラップトップコンピュータ、モバイルデバイス、キオスク、他のサーバ、タブレット、または他の適切なコンピューティングデバイス、等のコンピューティングデバイスであり得る。特に、クライアントデバイス112は、通信リンク106を介してサーバ104と通信して、印刷システム108の1つで印刷ジョブを開始するように構成される。クライアントデバイス112は、本明細書で説明される機能を可能にする適切なハードウェア(例えば、通信インタフェース、プロセッサ、メモリ、ユーザインタフェース、等を含む)を含む。例えば、クライアントデバイス112は、ウェブブラウザアプリケーションを実装し得て、印刷システムネットワーク識別子にアクセスし得て、ユーザが特定の印刷ジョブのための複数の印刷パラメータを入力することを許容し得る。
【0022】
図2を参照して、特定の内部構成要素を含むサーバ104が、より詳細に示されている。サーバ104は、メモリ204等の非一時的なコンピュータ可読記憶媒体と相互接続されたプロセッサ200を含む。メモリ204は、揮発性メモリ(ランダムアクセスメモリ、すなわちRAM、等)及び不揮発性メモリ(読み取り専用メモリ、すなわちROM、電気的に消去可能なプログラム可能な読み取り専用メモリ、すなわちEEPROM、フラッシュメモリ、等)の組合せを含む。プロセッサ200及びメモリ204は、各々、1または複数の集積回路を有し得る。
【0023】
メモリ204は、プロセッサ200による実行のためのコンピュータ可読命令を記憶(格納)する。特に、メモリ204は、制御アプリケーション208を記憶し、これは、プロセッサ200による実行時に、当該プロセッサ200をして、以下でより詳細に説明されるサーバ104の印刷動作に関連する様々な機能を実行するように、構成させる。当該アプリケーション208は、別個のアプリケーションのスイート(一揃い)としても実装され得る。プロセッサ200は、アプリケーション208の実行によってそのように構成される時、コントローラ200とも呼ばれ得る。
【0024】
当業者は、プロセッサ200によって実装される機能が、他の実施形態において、フィールドプログラマブルゲートアレイ(FPGA)や特定用途向け集積回路(ASIC)等の1または複数の特別に設計されたハードウェア構成要素及びファームウェア構成要素によっても実装され得ることを理解するであろう。一実施形態では、プロセッサ200は、それぞれ、本明細書で説明される寸法決め動作の処理速度を高めるために、ASICやFPGA等の専用論理回路を介して実装され得る専用プロセッサであり得る。
【0025】
メモリ204はまた、印刷動作のための規則及びデータを記憶(格納)するレポジトリ212を含む。例えば、リポジトリ212は、各印刷システム108用に、印刷システムネットワーク識別子、印刷構成規則、及び、当該印刷システム108に関連する他のデータ(例えば、ニックネーム、印刷ジョブ閾値、等)を規定し得る。印刷構成規則は、ドライバインタフェース、印刷パラメータ及び印刷データを送信するための通信プロトコル、等を含み得る。特に、各印刷システム108は、異なる印刷構成規則を有し得て、このため、リポジトリ212は、各印刷システム108に対して適切な印刷構成規則を定義し得る。
【0026】
サーバ104は、プロセッサ200と相互接続された通信インタフェース216をも含む。通信インタフェース216は、サーバ104がリンク106を介して印刷システム108及びクライアントデバイス112等の他のコンピューティングデバイスと通信することを許容する適切なハードウェア(例えば、送信器、受信器、ネットワークインタフェースコントローラ、等)を含む。通信インタフェース216の具体的な構成要素は、サーバ104がそれを介して通信するネットワークまたは他のリンクのタイプに基づいて選択される。サーバ104は、例えば、クライアントデバイス112と通信して印刷要求を受信し、印刷命令を印刷システム108に送信するように、構成され得る。
【0027】
プロセッサ200は、また、1または複数の入力及び/または出力デバイス224に接続され得る。入力デバイス224は、1または複数のキーボード、マウス、タッチセンシティブディスプレイスクリーン、等を含み得る。出力デバイス224は、更に、オペレータに出力またはフィードバックを提供するための、1または複数のディスプレイスクリーン、音響発生器、等を含み得る。
【0028】
プロセッサ200によるアプリケーション208の実行を介して実装される時のサーバ104の機能が、
図3を参照してより詳細に説明される。
図3は、クラウドベース印刷の方法300を示しており、それは、システム100における、特にはサーバ104による、その性能に関連して説明され、
図1及び
図2に示された構成要素を参照して説明される。他の実施例では、当該方法300は、他の適切なシステムで実行され得る。
【0029】
ブロック305で、サーバ104は、当該サーバ104に関連付けられた印刷システム108の各々に対応する印刷システムネットワーク識別子を生成する。
【0030】
例えば、サーバ104は、ネットワーク識別子「print.com」で利用可能なクラウド印刷サービスをホストし得る。印刷システム108-1がサーバ104によってホストされるクラウド印刷サービスに登録されると、サーバ104は、印刷システム108-1にマッピングされた印刷システムネットワーク識別子「print.com/printer108-1」を生成し得る。同様に、印刷システム108-2がサーバ104によってホストされるクラウド印刷サービスに登録されると、サーバ104は、印刷システム108-2にマッピングされた別の印刷システムネットワーク識別子「print.com/printer108-2」を生成し得る。幾つかの実施例では、ネットワーク識別子は、所与の印刷システム(すなわち、本実施例では「printer108-1」または「printer108-2」)にマッピングするためのトークンを含み得る。これは、十分に長く、すなわち、十分な多数バイトを有するため、ネットワーク識別子にランダムにアクセスすることは、計算上困難である。従って、印刷システムネットワーク識別子は、本明細書で更に説明されるように、適切な印刷システムを識別するように機能し得る。印刷システムネットワーク識別子は、以下で更に説明されるように、印刷ジョブの印刷パラメータを識別するためにも構成される。次いで、サーバ104は、印刷システムネットワーク識別子、印刷システム、及び、当該印刷システムとインタフェースするための印刷構成規則、の間の関連付けを記憶し得る。
【0031】
幾つかの実施例では、ブロック305で、サーバ104は更に、クライアントデバイス112に印刷システムネットワーク識別子を提供し得る。例えば、印刷システムネットワーク識別子は、クライアントデバイス112によるルックアップのために中央ウェブページ(例えば、「print.com/printer-list」)で提供され得る。従って、クライアントデバイス112-2を操作するユーザがウェブブラウザアプリケーションを使用して「print.com/printer-list」にアクセスする時、サーバ104は、選択用の印刷システム108を列挙(リスト)する対応するウェブページを提供し得る。幾つかの実施例では、ユーザは、選択可能な印刷システム108のリストを閲覧する前に、認証またはログインすることが要求され得る。印刷システム108は更に、エンドユーザが印刷システム108-1及び108-2を区別することを許容するニックネーム及び/または説明に、関連付けられ得る。例えば、印刷システム108-1は「白黒プリンタ」という説明に関連付けられ、印刷システム108-2は「カラープリンタ」という説明に関連付けられ得る。リストは、更に、印刷システム108の各々についての、ステータスインジケータ及び他の印刷システムステータス情報を含み得る。例えば、コンピューティングデバイス110-1がオフラインである場合、印刷システム108-1は利用できないことがあり得る。他の印刷システムステータス情報は、例えば、印刷待ち文書の現在のキューの長さを含み得る。
【0032】
次いで、ユーザは、クライアントデバイス112-2において印刷システム108を選択し得て、これがネットワーク識別子要求を生成する。当該ネットワーク識別子要求に応答して、サーバ104は、選択された印刷システム108についての記憶された印刷システムネットワーク識別子を検索して提供し得て、それをウェブページ上に提示し得る。
【0033】
他の実施例では、各ネットワーク識別子要求に応答して、選択された印刷システム108の記憶された印刷システムネットワーク識別子を検索して提供するのではなく、サーバ104は、後続のネットワーク識別子要求ごとに、印刷システムにマッピングされた新しい印刷システムネットワーク識別子を生成し得る。従って、例えば、印刷システム108-1のための新しい印刷システムネットワーク識別子は、「print.com/printer108-1/req2」、「print.com/printer108-1/req3」、等を含み得る。新しい印刷システムネットワーク識別子は、同様に、対応する印刷システム108を識別し、且つ、印刷ジョブの印刷パラメータを識別するように構成される。新しい印刷システムネットワーク識別子は、更に、サーバ104での認証を迂回(バイパス)するように構成される。従って、サーバ104は、各印刷システム108に多くの印刷システム識別子をマッピングし得る。
【0034】
新しい印刷システムネットワーク識別子を生成するための他の基準も考えられる。例えば、サーバ104は、区別可能な(別個の)ユーザ識別子、インターネットプロトコル(IP)アドレス、または、他の適切な基準に基づいて、新しい印刷システムネットワーク識別子を生成し得る。例えば、ユーザは、システム100にログインし得て、あるいは認証され得て、従ってサーバ104は、ユニークな印刷システムネットワーク識別子を各ユーザ識別子に割り当て得る。更なる実施例では、選択された印刷システム108の記憶された印刷システムネットワーク識別子を検索して提供するのではなく、印刷システム108を列挙(リスト)するウェブページが、列挙(リスト)された印刷システム108に対応する印刷システムネットワーク識別子を直接的に提示し得る。
【0035】
ブロック310で、サーバ104は、例えばクライアントデバイス112から印刷要求を受信する。具体的には、印刷要求は、印刷システムネットワーク識別子に基づいて生成され、印刷ジョブの1または複数の印刷パラメータを含む。例えば、印刷システムネットワーク識別子は、印刷ジョブの1または複数の印刷パラメータを受け取るように構成されたウェブページに対応し得る。特に、当該ウェブページでの当該印刷パラメータの提示(入力送信)が、サーバ104への印刷要求として機能し得る。他の実施例では、印刷要求は、印刷システムネットワーク識別子に添加される1または複数の印刷パラメータを含む印刷ジョブネットワーク識別子に対応し得る。
【0036】
例えば、
図4A及び
図4Bを参照して、印刷要求を受信する例示的な方法400と、方当該法400の概略図と、が示されている。特に、例示的な方法400では、印刷システムネットワーク識別子が、印刷ジョブの1または複数の印刷パラメータを受け取るように構成されたウェブページに対応している。
【0037】
ブロック405で、サーバ104は、印刷システムネットワーク識別子を解決する(resolve)ための要求408を受信する。特には、クライアントデバイス112-2のユーザが、ウェブブラウザアプリケーションを使用して、ネットワーク識別子「print.com/printer108-2」にアクセスし得る。これにより、クライアントデバイス112-2は、当該URLを解決するための要求408を生成する。標準通信プロトコルに従って、当該要求408は、ネットワーク識別子「print.com」をホストするサーバ104に送られ得て、解決され得る。
【0038】
ブロック410で、サーバ104は、要求408を解決し、ネットワーク識別子「print.com/printer108-2」に対応するウェブページ412をクライアントデバイス112-2に提供する。当該ウェブページ412は、印刷ジョブの印刷パラメータを受け取るように構成されている。例えば、当該ウェブページ412は、ユーザがドキュメントのコピー部数及び印刷ジョブの他のパラメータを指定することを許容するためのフォーム等であり得る。印刷されるドキュメントを識別するために、ウェブページ412は、アップロード、または、ドキュメントのパスを示す別のネットワーク識別子(例えば、URL)、を受け入れ得る。
【0039】
ブロック415で、サーバ104は、ウェブページ412での提出(送信)要求を介して、印刷ジョブのためにウェブページ412で入力される1または複数のパラメータを含む印刷要求418を受信する。例えば、ユーザがウェブページ412で印刷パラメータを入力する時、当該ユーザは、当該ウェブページ412上の「提出」ボタンを選択し得て、提出(送信)要求を開始し得る。従って、1または複数のパラメータを含む印刷要求418が、サーバ104に提出(送信)される。幾つかの実施例では、印刷要求418を正常に(成功裏に)受信した後、サーバ104は、ステータスインジケータ420をクライアントデバイス112-2に戻し得る。例えば、ステータスインジケータ420は、サーバ104への印刷要求418の送信の成功または失敗を単に示し得る。他の実施例では、ステータスインジケータ420は動的であり得て、印刷ジョブの進行に従って更新され得る(例えば、印刷ジョブがプリンタに送信中である、プリンタが印刷中である、印刷ジョブが完了している、等)。
【0040】
図5A及び
図5Bを参照して、印刷要求を受信する別の例示的な方法500と、当該方法500の概略図と、が示されている。特には、例示的な方法500では、印刷要求を形成する印刷ジョブネットワーク識別子を定義するために、印刷パラメータが印刷システムネットワーク識別子に添加(追加)される。
【0041】
ブロック505で、サーバ104は、印刷ジョブネットワーク識別子を解決する(resolve)ための要求508を受信する。特には、クライアントデバイス112-1は、印刷システムネットワーク識別子を取得して、印刷パラメータを変数として印刷システムネットワーク識別子に付加することによって、印刷ジョブネットワーク識別子を生成し得る。印刷パラメータは、例えば、ドキュメントのコピー部数(例えば「num=2」)及び印刷ジョブの他のパラメータを指定し得る。印刷されるドキュメントを識別するために、埋め込まれるネットワーク識別子が、ドキュメントのパスを示すべく含まれ得る(例えば「doc=docpath」)。従って、印刷システムネットワーク識別子及びパラメータが、印刷ジョブネットワーク識別子「print.com/printer108-2/?num=2&doc=docpath」を形成するべく、添加され得る。その後、クライアントデバイス112-1は、当該URLを解決するための要求508を生成し得る。標準通信プロトコルに従って、当該要求508は、ネットワーク識別子「print.com」をホストするサーバ104に送られ得て、解決され得る。
【0042】
ブロック510で、サーバ104は、要求508を解決し、印刷ジョブネットワーク識別子から印刷システムネットワーク識別子及び印刷パラメータ512を抽出する。従って、印刷ジョブネットワーク識別子を解決するための要求508は、印刷パラメータ512を有する印刷ジョブの印刷要求として機能する。幾つかの実施例では、要求508を正常に(成功裏に)解決して印刷ジョブの印刷パラメータ512を抽出した後、サーバ104は、ステータスインジケータ520をクライアントデバイス112-1に戻し得る。例えば、ステータスインジケータ520は、要求508の解決及び印刷パラメータ512の抽出の成功または失敗を示し得る。他の実施例では、ステータスインジケータ520は動的であり得て、印刷ジョブの進行に従って更新され得る(例えば、印刷ジョブがプリンタに送信中である、プリンタが印刷中である、印刷ジョブが完了している、等)。
【0043】
幾つかの実施例では、サーバ104は、方法400及び500の両方に対応し得て、印刷要求を受信し得る。例えば、モバイルコンピューティングデバイス112-2またはデスクトップコンピュータ112-3を操作するユーザが、方法400を使用し得る。なぜなら、それは、印刷パラメータを入力して印刷要求を生成するためのよりユーザフレンドリなインタフェースを提供するからである。従って、クライアントデバイス112-2または112-3においてローカルに保存されたドキュメントを印刷することを希望するユーザは、印刷システムネットワーク識別子「print.com/printerl08-2」に対応するウェブページにアクセスし得て、ドキュメントをアップロードし得て、当該ウェブページで印刷パラメータを入力して印刷要求を生成し得る。
【0044】
対照的に、クライアントデバイス112-1は、サーバ104と自動的にインタフェースし得て、従って、印刷パラメータを印刷システムネットワーク識別子に添加(追加)して印刷ジョブネットワーク識別子を形成して印刷要求を生成する方が、プログラム的により簡単であり得る。例えば、ユーザは、クライアントデバイス112-1でホストされる「stamps.com」から包装ラベルを印刷することを希望し得る。「stamps.com」から包装ラベルをダウンロードして「print.com/printer108-2」に対応するウェブページに当該包装ラベルをアップロードするのではなく、ユーザは、クライアントデバイス112-1に、印刷システムネットワーク識別子「print.com/printerl08-2」を提供し得る。幾つかの実施例では、ユーザは、更に、印刷ジョブの印刷パラメータをクライアントデバイス112-1に提供し得る。その後、クライアントデバイス112-1は、包装ラベルの印刷パラメータ及びネットワーク識別子を、印刷システムネットワーク識別子に添加(追加)されるべき適切な変数に変換し得て、印刷要求を生成するためのサーバ104への送信用の印刷ジョブネットワーク識別子「print.com/printer108-2/?num=2&doc=docpath」を形成し得る。
【0045】
ここで
図3に戻って、ブロック315で、サーバ104は、印刷命令を生成し、適切な印刷システム108に送信する。特には、サーバ104は、メモリ204に記憶された印刷構成規則に従って印刷命令を生成する。印刷命令は、ブロック310で印刷要求と共に受信される印刷パラメータに従って印刷ジョブを開始する。幾つかの実施例では、印刷システム108が印刷ジョブを実行している間または実行した後に、サーバ104は、印刷システム108からステータスインジケータを受信し得て、要求側クライアントデバイス112に当該ステータスインジケータを受け渡し得る。
【0046】
幾つかの実施例では、印刷命令を生成する前に、サーバ104は、印刷ジョブの閾値が超えられていないことを保証するべく、1または複数のチェックを実行し得る。例えば、
図6を参照して、印刷ジョブの閾値のチェックを含むクラウドベース印刷の例示的な方法600が説明される。当該方法600は、方法300と類似しており、同様のブロックには同様に番号が付されている。
【0047】
特には、ブロック605で、サーバ104は、印刷システムネットワーク識別子を生成する。ブロック610で、サーバ104は、例えば方法400または500によって、クライアントデバイス112から印刷要求を受信する。
【0048】
印刷命令を生成する前に、ブロック612で、サーバ104は、印刷ジョブの閾値が超えられたか否かをチェックする。例えば、サーバ104は、メモリ204内に、所定の時間間隔にわたって1つのIPアドレスによって要求された印刷ジョブのカウント(例えば、過去の10時間、24時間、7日間、等にわたって要求された印刷ジョブの数)を維持し得る。当該システムの誤用を低減するために、サーバ104は、当該IPアドレスによって要求された印刷ジョブのカウントを、当該所定の時間間隔用の印刷ジョブの閾値数と比較し得る。前記カウントが印刷ジョブの閾値数を超える時、ブロック612での決定は肯定的であり、サーバ104はブロック620に進む。前記カウントが印刷ジョブの閾値数を超えない時、ブロック612での決定は否定的であり、サーバ104はブロック615に進む。他の実施例では、サーバ104は、代替的または追加的に、印刷ジョブを管理するための他の基準を実装し得る。
【0049】
ブロック615で、サーバ104は、印刷構成規則及び印刷パラメータに基づいて印刷命令を生成し、送信する。
【0050】
ブロック620で、サーバ104は、当該IPアドレスからの印刷要求及び更なる任意の印刷ジョブを許可しない。サーバ104は、例えば、当該所定の時間間隔用の印刷ジョブの最大数が到達されたことを示す通知をクライアントデバイスに戻し得る。
【0051】
前述の明細書において、特定の実施形態が説明された。しかしながら、当業者は、以下の特許請求の範囲で示す本発明の範囲から逸脱することなく、種々の改変及び変更を行うことができることを認識する。従って、明細書及び図面は、限定的な意味ではなく例示的なものであるとみなされるべきであり、このような改変の全てが、本教示の範囲内に含まれることが意図されている。
【0052】
利益、利点、課題の解決法、並びに、何らかの利益、利点または解決法を生じさせ得るかより顕著にし得るあらゆる要素は、特許請求の範囲の請求項のいずれかまたは全てにおける、決定的な、要求される、または必須の、特徴または要素として解釈されるべきではない。本発明は、添付の特許請求の範囲によってのみ規定され、本出願の係属中になされるあらゆる補正と、発行時の特許請求の範囲の全ての均等物と、を含む。
【0053】
更に、当該文書において、第1及び第2、上及び下、等のような関連語は、1つの実体または動作を他の実体または動作から区別するためにのみ用いられている可能性があり、必ずしもそのような実体または動作間の実際のそのような関係または順序を要求したり含意したりしていない可能性がある。用語「備える(comprises)」、「備えている(comprising)」、「有する(has)」、「有している(having)」、「含む(include)」、「含んでいる(including)」、「含有する(contains)」、「含有している(containing)」、あるいは、それらの他のあらゆる変形語は、非排他的な包含をカバーすることが意図されている。要素の列挙(リスト)を、備える、有する、含む、または、含有する、というプロセス、方法、物品、または、装置は、それらの要素のみを含むのではなく、明示的に列挙されていない他の要素や、そのようなプロセス、方法、物品、または、装置に固有の他の要素を含み得る。「を備える(comprises...a)」、「を有する(has...)」、「を含む(includes...a)」、「を含有する(contains...a)」の後に続く要素は、更なる制約条件が無ければ、当該要素を、備える、有する、含む、または、含有する、というプロセス、方法、物品、または、装置、における付加的な同一要素の存在を排除しない。用語「a」及び「an」は、明示的に他の言及が無い限り、1または複数として定義される。用語「実質的に」、「本質的に」、「およそ」、「約」、あるいは、それらの他のあらゆる変形語は、当業者に理解されるように、近い状態であるものとして定義され、1つの非限定的な実施形態において、当該用語は、10%以内、別の実施形態においては5%以内、別の実施形態においては1%以内、及び、別の実施形態において0.5%以内、として定義される。本明細書で用いられる用語「結合された」は、接続されたものとして定義されるが、必ずしも直接的でなくてもよく、また、必ずしも機械的でなくてもよい。ある方式で「構成された」デバイスまたは構造は、少なくとも当該方式で構成されるが、挙げられていない方式で構成されてもよい。
【0054】
幾つかの実施形態は、マイクロプロセッサ、デジタル信号プロセッサ、カスタマイズドプロセッサ及びフィールドプログラマブルゲートアレイ(FPGA)のような、1または複数の専用プロセッサ(又は「処理デバイス」)と、当該1または複数のプロセッサを制御して、特定の非プロセッサ回路と共に、本明細書で説明される方法及び/または装置の機能の一部、大部分、または、全て、を実装する、特有の記憶されたプログラム命令(ソフトウェア及びファームウェアの両方を含む)と、で構成され得ることが認識されるであろう。あるいは、一部または全ての機能が、記憶されたプログラム命令を有しない状態機械によって実装され得るし、または、各機能もしくは特定の機能の幾つかの組合せがカスタム論理として実装された1または複数の特定用途向け集積回路(ASIC)において実装され得る。勿論、2つの手法の組合せが用いられてもよい。
【0055】
更に、実施形態は、本明細書で説明されて特許請求される方法を実行するようにコンピュータ(例えばプロセッサを含む)をプログラミングするための、記憶されたコンピュータ可読コードを有する、コンピュータ可読ストレージ媒体として実装され得る。このようなコンピュータ可読ストレージ媒体の例は、ハードディスク、CD-ROM、光学ストレージデバイス、磁気ストレージデバイス、ROM(読出し専用メモリ)、PROM(プログラマブル読出し専用メモリ)、EPROM(消去可能プログラマブル読出し専用メモリ)、EEPROM(電気的消去可能プログラマブル読出し専用メモリ)、及び、フラッシュメモリ、を含むがこれらに限定されない。更に、例えば、利用可能な時間、現在の技術水準、及び、経済的考慮事項、によって動機付けされる、可能性ある顕著な努力や多くの設計選択肢にもかかわらず、本明細書に開示される概念及び原理によって導かれる時、当業者は、このようなソフトウェア命令及びプログラム並びにICを最小限の実験で容易に生成可能になる、ということが期待される。
【0056】
本開示の要約は、読者が当該技術的開示の性質を素早く確認することを許容するために提供される。それは、特許請求の範囲の請求項の範囲または意味を解釈または制限するために用いられないという理解と共に提示される。また、前述の詳細な説明において、当該開示を円滑にする目的で、様々な実施形態において様々な特徴がまとめてグループ化されていることが認められ得る。この開示方法は、特許請求される実施形態が、各請求項で明示的に記載されている特徴よりも多くの特徴を必要とする、という意図を反映するものとして解釈されるべきでない。むしろ、以下の特許請求の範囲が反映するように、本発明の主題は、単一の開示された実施形態の全ての特徴よりも少なく存在する。以下の特許請求の範囲は、ここで詳細な説明に組み入れられ、各請求項は、別個に特許請求される主題として、それ自身独立している。