JP7718111B2 - 端末装置のためのコンピュータプログラム - Google Patents

端末装置のためのコンピュータプログラム

Info

Publication number
JP7718111B2
JP7718111B2 JP2021098957A JP2021098957A JP7718111B2 JP 7718111 B2 JP7718111 B2 JP 7718111B2 JP 2021098957 A JP2021098957 A JP 2021098957A JP 2021098957 A JP2021098957 A JP 2021098957A JP 7718111 B2 JP7718111 B2 JP 7718111B2
Authority
JP
Japan
Prior art keywords
communication path
function
communication
computer program
terminal device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021098957A
Other languages
English (en)
Other versions
JP2022190574A (ja
Inventor
智詞 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2021098957A priority Critical patent/JP7718111B2/ja
Priority to EP22178438.2A priority patent/EP4106295A1/en
Priority to US17/806,582 priority patent/US12141487B2/en
Publication of JP2022190574A publication Critical patent/JP2022190574A/ja
Application granted granted Critical
Publication of JP7718111B2 publication Critical patent/JP7718111B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1236Connection management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1203Improving or facilitating administration, e.g. print management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1231Device related settings, e.g. IP address, Name, Identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Facsimiles In General (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本明細書によって開示される技術は、端末装置を利用して機能実行装置に特定の機能を実行させる技術に関する。
特許文献1には、ローカルネットワークに接続されているクライアント装置と、当該ローカルネットワークに接続されていない画像処理装置と、を備える印刷システムが開示されている。画像処理装置は、VPN(Virtual Private Networkの略)接続を利用して、クライアント装置が所属するローカルネットワークに接続することによって、クライアント装置から受信される印刷ジョブに対応する印刷を実行することができる。
特開2020-154802号公報
上記の技術では、画像処理装置とクライアント装置との間に複数個の通信経路が存在する状況について何ら考慮されていない。本明細書では、端末装置の通信環境に応じた適切な通信経路を利用して、機能実行装置に特定の機能を実行させ得る技術を提供する。
本明細書は、端末装置のためのコンピュータプログラムを開示する。コンピュータプログラムは、前記端末装置のコンピュータを、以下の各部、即ち、機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、前記端末装置のメモリがVPN(Virtual Private Networkの略)を利用するためのVPN通信情報を記憶することを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、として機能させてもよい。
上記の構成によると、端末装置は、VPN通信情報を記憶することを含む所定条件が満たされる場合に、対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する。この結果、対象通信経路が第2の通信経路に切り替えられ得る。このために、端末装置は、VPNを利用する可能性があるという通信環境において、インターネットを介した第2の通信経路を利用して、機能実行装置に特定の機能を実行させ得る。
本明細書は、端末装置のための他のコンピュータプログラムも開示する。コンピュータプログラムは、前記端末装置のコンピュータを、以下の各部、即ち、機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、前記端末装置のメモリ内の1個以上のネットワークアダプタが、インターネットを介した通信を示す特定アダプタを含むことを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、前記インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、として機能させてもよい。
上記の構成によると、端末装置は、メモリ内の1個以上のネットワークアダプタがインターネットを介した通信を示す特定アダプタを含むことを含む所定条件が満たされる場合に、対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する。この結果、対象通信経路が第1の通信経路から第2の通信経路に切り替えられ得る。このように、端末装置は、インターネットを介した通信を実行する可能性があるという通信環境において、インターネットを介した第2の通信経路を利用して、機能実行装置に特定の機能を実行させ得る。
本明細書は、端末装置のための他のコンピュータプログラムも開示する。コンピュータプログラムは、前記端末装置のコンピュータを、以下の各部、即ち、機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、グローバルIPアドレスが前記端末装置のメモリ内のルーティングテーブルに追加されることを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルであり、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、として機能させてもよい。
上記の構成によると、端末装置は、グローバルIPアドレスがルーティングテーブルに追加されることを含む所定条件が満たされる場合に、対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する。この結果、対象通信経路が第1の通信経路から第2の通信経路に切り替えられ得る。このために、端末装置は、グローバルIPアドレスを利用した通信を実行する可能性があるという通信環境において、インターネットを介した第2の通信経路を利用して、機能実行装置に特定の機能を実行させ得る。
上記のコンピュータプログラムを格納するコンピュータ可読記録媒体も、新規で有用である。また、端末装置そのもの、及び、端末装置によって実行される方法も新規で有用である。また、端末装置と他の装置(例えば機能実行装置)とを備える通信システムも、新規で有用である。
通信システムの構成を示す。 通信システムのハード構成を示す。 第1実施例ケースAのシーケンス図を示す。 図3の続きのシーケンス図を示す。 図4の続きのシーケンス図を示す。 第1実施例ケースBのシーケンス図を示す。 第1実施例ケースCのシーケンス図を示す。 第2実施例のシーケンス図を示す。 第3実施例のケースD―1及びケースD2のシーケンス図を示す。
(第1実施例)
(通信システムの構成;図1)
図1に示されるように、通信システム2は、端末10と、ルータ50と、MFP(Multi-Function Peripheralの略)100と、オフィスサーバ200と、VPN(Virtual Private Networkの略)サーバ300と、サービス提供サーバ400と、を備える。以下では、サービス提供サーバ400のことを「SPサーバ400」と記載する。本明細書では、端末10のユーザが自宅でリモートワークを行っている状況において、VPNを利用して、オフィスに設置されているオフィスサーバ200にアクセスすることを想定している。
端末10、ルータ50、及びMFP100は、ユーザの自宅に設置されている。端末10、ルータ50、及びMFP100はLAN(Local Area Networkの略)4に接続されている。本実施例では、LAN4は有線LANである。変形例では、LAN4は無線LANであってもよい。LAN4はインターネット6に接続されている。従って、端末10、ルータ50、及びMFP100は、LAN4を介してインターネット6に接続されている。
端末10は、携帯電話(例えばスマートフォン)、PDA、タブレットPC等の可搬型の端末装置である。なお、変形例では、端末10は、据置型の端末装置であってもよい。ルータ50は、LAN4とインターネット6との間の通信を中継する装置である。MFP100は、印刷機能、スキャン機能、FAX機能等の多機能を実行可能な周辺装置(例えば端末10の周辺装置)である。
オフィスサーバ200は、オフィス内のイントラネットワーク(図示省略)に接続されている。イントラネットワークは、インターネット6に接続されている。
VPNサーバ300及びSPサーバ400は、インターネット6上に設置されている。VPNサーバ300は、例えば端末10がVPN接続を確立するために利用されるサーバである。SPサーバ400は、例えばMFP100に関するサービス(例えば遠隔印刷サービス、遠隔スキャンサービス等)を提供するためのサーバである。
通常、オフィスのイントラネットワークには外部からアクセスできないので、端末10のユーザは、自宅でリモートワークを行っている状況において、端末10を利用してオフィスサーバ200にアクセスすることができない。そこで、端末10は、VPNサーバ300を利用することによって、オフィスのイントラネットワークとのVPN接続を確立する。この結果、端末10がオフィスのイントラネットワークに所属している状態となる。このため、端末10がユーザの自宅に設置されている状況においても、端末10は、VPNを利用して、オフィスサーバ200にアクセスすることができる。
端末10は、VPNを利用していない状況では、LAN4を利用して印刷指示をMFP100に送信することによって、MFP100に印刷を実行させることができる。具体的には、端末10は、MFP100に対して印刷を指示するための印刷操作をユーザから受け付けると、MFP100のローカルIPアドレスを宛先として含む印刷指示を送信する。この結果、MFP100は、当該印刷指示に従って印刷を実行することができる。
ここで、端末10がVPNを利用している状態において、端末10がLAN4を利用して印刷指示をMFP100に送信する状況を考える。このような状況では、端末10がLAN4を利用してLAN4内の装置との通信を実行できない可能性がある。具体的には、端末10がVPNを利用すると、例えば、後述のルーティングテーブル46からMFP100のローカルIPアドレス「192.168.0.0」が削除される可能性がある。この場合、端末10は、MFP100に対して印刷を指示するための印刷操作を受け付けると、印刷指示をデフォルトゲートウェイ(例えばルータ50)に送信する。デフォルトゲートウェイがMFP100に印刷指示を転送しない可能性があるので、印刷指示がMFP100に送信されない。このように、端末10は、VPNを利用している状況では、LAN4を利用してMFP100に印刷を実行させることができない可能性がある。本実施例では、端末10がVPNを利用している状況でも、MFP100に機能を適切に実行させることができる技術を提供する。
(端末10の構成;図2)
端末10は、操作部12と表示部14とLANインターフェース20と制御部30とを備える。各部12~30は、バス線(符号省略)に接続されている。以下では、インターフェースのことを「I/F」と記載する。操作部12は、マウス、キーボード等である。ユーザは、操作部12を操作することによって、様々な指示を端末10に入力することができる。表示部14は、様々な情報を表示するためのディスプレイである。LANI/F20には、LANケーブルが接続されている。
制御部30は、CPU32とメモリ34とを備える。CPU32は、メモリ34に記憶されているOS(Operating Systemの略)プログラム40及びアプリケーション42に従って、様々な処理を実行する。以下では、OSプログラム40、アプリケーション42のことを、それぞれ、「OS40」、「アプリ42」と記載する。OS40は、端末10の基本的な動作を制御するためのプログラムである。アプリ42は、MFP(例えば100)に印刷、スキャン等の機能を実行させるためのプログラムである。メモリ34は、揮発性メモリ、不揮発性メモリ等によって構成される。
メモリ34は、さらに、アダプタ一覧44とルーティングテーブル46とを記憶する。アダプタ一覧44は、端末10が利用可能な通信環境を示すネットワークアダプタの一覧である。換言すると、端末10は、アダプタ一覧44に含まれる各ネットワークアダプタに対応する各通信を実行するための情報を記憶している。アダプタ一覧44に記憶されている各ネットワークアダプタは、当該ネットワークアダプタに対応する通信環境を利用していることを示す「有効」と、当該ネットワークアダプタに対応する通信環境を利用していないことを示す「無効」と、のいずれか一方を示す。
例えば、図2の例では、メモリ34は、有線LANアダプタとVPNアダプタとを記憶している。有線LANアダプタは有効を示し、VPNアダプタは無効を示す。無効を示すVPNアダプタは、グレーの背景を有する。即ち、図2の例では、端末10は、有線LAN4を利用した通信を実行するための情報と、VPNを利用した通信を実行するための情報と、の双方を記憶しており、かつ、有線LAN4を利用しており、かつ、VPNを利用していない。端末10がVPNを利用する状況になると、有線LANアダプタが有効である状態が維持されつつ、VPNアダプタが有効に変更される。
ルーティングテーブル46は、他の装置との通信を実行するための通信経路を決定する際にOS40によって利用される情報を記憶する。具体的には、ルーティングテーブル46は、IPアドレスと経路情報とを関連付けて記憶する。ルーティングテーブル46内の各IPアドレスは、端末10が通信可能な装置のIPアドレスを示す。各経路情報は、当該経路情報に関連付けられているIPアドレス宛の通信を実行するための通信経路を示す。本実施例では、各経路情報は、当該経路情報に関連付けられているIPアドレス宛の通信を実行するための通信経路上に存在する1個以上の中継装置(例えばルータ)のうち、端末10が最初に通信を実行すべき中継装置(即ちいわゆるネクストホップ)の宛先を示す。
例えば、図2の例では、IPアドレス「192.168.0.0」はMFP100のローカルIPアドレスである。MFP100が端末10と同じLAN4内の装置であるので、経路情報は、MFP100と直接的に通信可能であること(即ちインターネット6を介さずに通信可能であること)を意味する「リンク上」を示す。IPアドレス「10.250.0.0」は、LAN4外のVPNサーバ300のグローバルIPアドレスである。また、IPアドレス「153.246.0.0」は、LAN4外のSPサーバ400のグローバルIPアドレスである。VPNサーバ300及びSPサーバ400の双方はLAN4外の装置であるので、経路情報は、ネクストホップであるルータ50のIPアドレス「192.168.0.1」を示す。
(MFP100の構成)
MFP100は、操作部112と表示部114と印刷実行部116とスキャン実行部118とLANI/F120と制御部130とを備える。各部112~130は、バス線(符号省略)に接続されている。操作部112は、複数のキーを備える。ユーザは、操作部112を操作することによって、様々な指示をMFP100に入力することができる。表示部114は、様々な情報を表示するためのディスプレイである。印刷実行部116は、インクジェット方式、レーザ方式等の印刷機構を備える。スキャン実行部118は、CCD、CIS等のスキャン機構を備える。LANI/F120には、LANケーブルが接続されている。
制御部130は、CPU132とメモリ134とを備える。CPU132は、メモリ134に記憶されているプログラム140に従って、様々な処理を実行する。メモリ134は、揮発性メモリ、不揮発性メモリ等によって構成される。
(ケースA;図3~図5)
続いて、図3~図5を参照して、ケースAを説明する。図3の初期状態では、有線LAN4を介して端末10とMFP100との間で通信を実行可能である。また、VPNに関するVPN通信情報は記憶されていない。即ち、図3の初期状態では、アダプタ一覧44は、有効を示す有線LANアダプタのみを含む。また、ルーティングテーブル46は、MFP100のIPアドレス「192.168.0.0」と経路情報「リンク上」とを関連付けて記憶している。
以下では、各デバイス(例えば端末10、MFP100)のCPU(例えば32,132)が実行する処理について、理解の容易さの観点から、各CPUを主体として記載せずに、各デバイス(例えば端末10、MFP100)を主体として記載する。特に、端末10については、OS40がアプリ42を利用せずに実行する処理を説明する際にはOS40を主体として記載し、アプリ42が実行する処理を説明する際にはアプリ42を主体として記載することがある。また、端末10、MFP100によって実行される以下の全ての通信は、LANI/F20(又は120)を介して実行される。従って、以下では、通信に関する処理を説明する際に、「LANI/F20(又は120)を介して」という記載を省略する。
端末10のアプリ42は、図3のT100において、ユーザから印刷操作を受け付ける。T100の段階では、印刷指示のデフォルトの宛先(即ちデフォルトの印刷ポート)がMFP100に設定されている。ここで、「デフォルトの宛先」とは、ユーザによって宛先が変更されない場合に利用される宛先を意味する。T100において、ユーザは、印刷指示の宛先を変更しない。このため、アプリ42は、T102において、ルーティングテーブル46を参照して、MFP100のローカルIPアドレス「192.168.0.0」を宛先として含む印刷指示を送信する。特に、IPアドレス「192.168.0.0」には経路情報「リンク上」が関連付けられているので、アプリ42は、印刷指示を直接的(即ちルータ50もインターネット6も介さずに)にMFP100に送信する。印刷指示は、印刷対象の画像を表わす印刷データを含む。
MFP100は、T102において、端末10から印刷指示を受信すると、T104において、当該印刷指示に含まれる印刷データに従って画像の印刷を実行する。なお、図示省略しているが、MFP100は、印刷が完了すると、その旨を示す通知を端末10に送信する。
端末10のOS40は、T110において、ユーザからVPN情報の入力を受け付けると、T112において、VPN情報を記憶する。VPN情報は、端末10がVPNを利用するための情報(例えばユーザID、パスワード等)である。この結果、VPNアダプタがアダプタ一覧44に追加される。なお、現段階では、OS40がVPN接続を確立するための操作を受け付けていない(即ちVPNを現在利用していない)ので、VPNアダプタは無効を示す。
OS40は、T114において、ユーザからVPN接続を確立するための操作を受け付けると、T116において、記憶済みのVPN情報を利用して、VPNサーバ300とのVPN接続を確立する。この結果、端末10は、VPNサーバ300を介して、オフィスサーバ200との通信を実行することができる。また、OS40は、無効を示す状態から有効を示す状態にVPNアダプタを変更する。
アプリ42は、アダプタ一覧44の状態を監視している。そして、アプリ42は、T112において、VPNアダプタがアダプタ一覧44に追加されると、T120において、それを検出する。この場合、アプリ42は、T122において、ステータス要求をMFP100に送信する。ただし、本ケースでは、T116でVPN接続が確立されると、OS40は、ルーティングテーブル46からMFP100のローカルIPアドレス「192.168.0.0」を削除する。この場合、アプリ42は、デフォルトゲートウェイ(例えばルータ50)のIPアドレスを宛先として含むステータス要求を送信する。
ステータス要求がデフォルトゲートウェイに送信されても、ステータス要求がMFP100に転送されない。従って、端末10は、MFP100から、ステータス要求に対する応答であるステータス情報を受信しない。アプリ42は、ステータス要求を送信してから所定時間が経過しても、MFP100からステータス情報を受信しない場合に、LAN4を介してMFP100との通信を実行不可能であると判断する。詳しくは後述するが、この場合、アプリ42は、印刷指示のデフォルトの宛先を切り替えるための処理を実行する。端末10がLAN4を介してMFP100と通信不可能な状況では、MFP100との通信を実行するための通信経路が切り替えられる必要がある。従って、アプリ42は、印刷指示のデフォルトの宛先(即ち通信経路)を切り替えることによって、MFP100に適切に印刷を実行させることができる。
また、T122の段階では、端末10は、MFP100がSPサーバ400に登録されていることを示す情報を登録していない。即ち、端末10は、SPサーバ400を介して(即ちインターネット6を介して)印刷指示をMFP100に送信するための通信経路を記憶していない。この場合、アプリ42は、T130において、通知画面SC1を表示部14に表示する。通知画面SC1は、MFP100をSPサーバ400に登録すべきことをユーザに促すメッセージを含む。MFP100がSPサーバ400に登録されると、端末10は、SPサーバ400を介して印刷指示をMFP100に送信することができる。従って、通知画面SC1は、SPサーバ400を介して印刷指示をMFP100に送信するための情報をメモリ34に登録することをユーザに促す画面である。ユーザは、通知画面SC1を見ることによって、MFP100をSPサーバ400に登録するための作業を実行することができる。
(図3の続き;図4)
アプリ42は、図4のT132において、ユーザから登録操作を受け付けると、T134において、登録要求をSPサーバ400に送信する。登録操作は、ユーザID、パスワード、及び、MFP100を識別するデバイスID「AAA」の入力を含む。登録要求は、T132で入力済みの各種情報(即ち、ユーザID、パスワード、及びデバイスID「AAA」)を含む。
SPサーバ400は、T134において、端末10から登録要求を受信すると、T136において、受信済みの各種情報を関連付けて登録する。そして、SPサーバ400は、登録が完了すると、T138において、登録完了通知を端末10に送信する。登録完了通知は、登録済みの各種情報(即ち、ユーザID、パスワード、及びデバイスID「AAA」)を含む。
アプリ42は、T138において、SPサーバ400から登録完了通知を受信すると、T140において、登録完了通知に含まれる各種情報をメモリ34に登録する。この結果、アプリ42は、SPサーバ400を介して、MFP100に印刷指示等の信号を送信することができる状態となる。その後、アプリ42は、T142において、印刷指示のデフォルトの宛先(即ちデフォルトの印刷ポート)をMFP100からSPサーバ400に切り替える。
アプリ42は、T150において、ユーザから印刷操作を受け付ける。上記の通り、T150の段階では、印刷指示のデフォルトの宛先がSPサーバ400に設定されている。このために、アプリ42は、ユーザから印刷指示の宛先が変更されない場合に、T152において、印刷指示をSPサーバ400に送信する。具体的には、アプリ42は、ルーティングテーブル46を参照して、SPサーバ400のグローバルIPアドレス「153.246.0.0」を宛先として含む印刷指示を送信する。特に、IPアドレス「153.246.0.0」には経路情報「192.168.0.1」(即ちルータ50のIPアドレス)が関連付けられているので、アプリ42は、ルータ50を介して印刷指示をSPサーバ400に送信する。印刷指示は、T140で登録されたデバイスID「AAA」と、印刷対象の画像を表わす印刷データと、を含む。
SPサーバ400は、T152において、端末10から印刷指示を受信すると、T153において、受信済みの印刷指示に含まれるデバイスID「AAA」によって識別されるMFP100に印刷指示を送信する。
MFP100は、T153において、SPサーバ400から印刷指示を受信すると、T154において、当該印刷指示に含まれる印刷データに従って画像の印刷を実行する。
その後、OS40は、T160において、VPN接続を切断するための操作を受け付けると、T162において、確立済みのVPN接続(図3のT116参照)を切断する。この結果、端末10は、オフィスサーバ200との通信を実行できなくなる。また、OS40は、有効を示す状態から無効を示す状態にVPNアダプタを変更する。
アプリ42は、アダプタ一覧44の状態を監視している。アプリ42は、T162において、VPNアダプタが有効を示す状態から無効を示す状態に変更されると、T163において、それを検出する。この場合、アプリ42は、T164において、通知画面SC2を表示部14に表示し、T166において、印刷指示のデフォルトの宛先をSPサーバ400からMFP100に切り替える。通知画面SC2は、印刷指示のデフォルトの宛先がSPサーバ400からMFP100に切り替えられることを示すメッセージを含む。ユーザは、通知画面SC2を見ることによって、印刷指示のデフォルトの宛先が切り替えられることを知ることができる。その後、図3の100~T104と同様の処理が実行される。
(図4の続き;図5)
図5のT170及びT172の処理は、図3のT114及びT116の処理と同様である。アプリ42は、T172において、VPNアダプタが無効を示す状態から有効を示す状態に変更されると、T173において、それを検出する。この場合、アプリ42は、T174において、ステータス要求をMFP100に送信する。T174の処理は、図3のT122の処理と同様である。
T174の段階では、端末10は、MFP100がSPサーバ400に登録されていることを示す情報を登録している(図4のT140参照)。即ち、端末10は、SPサーバ400を介して(即ちインターネット6を介して)印刷指示をMFP100に送信するための通信経路を記憶している。この場合、アプリ42は、T176において、通知画面SC3を表示部14に表示し、T178において、印刷指示のデフォルトの宛先をMFP100からSPサーバ400に切り替える。通知画面SC3は、印刷指示のデフォルトの宛先がMFP100からSPサーバ400に切り替えられることを示すメッセージを含む。ユーザは、通知画面SC3を見ることによって、印刷指示のデフォルトの宛先が切り替えられることを知ることができる。T180~T184の処理は、図4のT150~T154の処理と同様である。
(ケースB;図6)
続いて、図6を参照して、ケースBを説明する。ケースBは、VPN接続が確立されてもデフォルトの宛先が切り替えられない点が、ケースAとは異なる。図6の初期状態は、図3の初期状態と同様である。図6のT200~T220の処理は、図3のT100~T120の処理と同様である。
アプリ42は、T222において、ステータス要求をMFP100に送信する。本ケースでは、T216でVPN接続が確立されても、OS40は、ルーティングテーブル46からMFP100のIPアドレス「192.168.0.0」を削除しない。従って、アプリ42は、当該IPアドレス「192.168.0.0」を宛先として含むステータス要求を送信する。特に、IPアドレス「192.168.0.0」には経路情報「リンク上」が関連付けられているので、アプリ42は、ステータス要求を直接的(即ちルータ50もインターネット6も介さずに)にMFP100に送信する。
MFP100は、T222において、端末10からステータス要求を受信すると、T224において、当該ステータス要求に対する応答であるステータス情報を端末10に送信する。当該ステータス情報は、MFP100の現在のステータス(例えば正常、エラー等)を含む。
アプリ42は、T224において、MFP100からステータスを受信すると、LAN4を介してMFP100との通信を実行可能であると判断する。この場合、アプリ42は、印刷指示のデフォルトの宛先を切り替えない(即ち、印刷指示のデフォルトの宛先をMFP100に維持する)。端末10がLAN4を介してMFP100と通信可能な状況では、MFP100との通信を実行するために、通信経路を切り替える必要がないからである。従って、アプリ42が不必要な処理を実行することを抑制できる。
(ケースC;図7)
続いて、図7を参照して、ケースCを説明する。ケースCは、MFP100に印刷を実行させることに代えてスキャンを実行させる点が、ケースAとは異なる。図7の初期状態は、図3の初期状態と同様である。
図7のT300において、MFP100のユーザは、スキャンすべき原稿をスキャン実行部118に載置する。
アプリ42は、T302において、ユーザからスキャン操作を受け付ける。T302の段階では、スキャン指示のデフォルトの宛先(即ちデフォルトのスキャンポート)がMFP100に設定されている。T302において、ユーザは、スキャン指示の宛先を変更しない。このため、アプリ42は、T304において、ルーティングテーブル46を参照して、MFP100のローカルIPアドレス「192.168.0.0」を宛先として含むスキャン指示を送信する。特に、IPアドレス「192.168.0.0」には経路情報「リンク上」が関連付けられているので、アプリ42は、スキャン指示を直接的(即ちルータ50もインターネット6も介さずに)MFP100に送信する。
MFP100は、T304において、端末10からスキャン指示を受信すると、T306において、スキャン実行部118に載置されている原稿(T300参照)のスキャンを実行して、スキャンデータを生成する。そして、MFP100は、T308において、生成済みのスキャンデータを端末10に送信する。このため、ユーザは、端末10を利用してスキャンデータを確認することができる。
その後、図3のT110~T130の処理、及び図4のT132~T142と同様の処理が実行される。この結果、スキャン指示のデフォルトの宛先がMFP100からSPサーバ400に切り替えられる。T310の処理は、T300の処理と同様である。
アプリ42は、T312において、ユーザからスキャン操作を受け付ける。上記の通り、T312の段階では、スキャン指示のデフォルトの宛先がSPサーバ400に設定されている。このために、アプリ42は、ユーザからスキャン指示の宛先が変更されない場合に、T314において、スキャン指示をSPサーバ400に送信する。具体的には、アプリ42は、ルーティングテーブル46を参照して、SPサーバ400のグローバルIPアドレス「153.246.0.0」を宛先として含むスキャン指示を送信する。特に、IPアドレス「153.246.0.0」には経路情報「192.168.0.1」(即ちルータ50のIPアドレス)が関連付けられているので、アプリ42は、ルータ50を介してスキャン指示をSPサーバ400に送信する。スキャン指示は、登録されたデバイスID「AAA」(図4のT140参照)を含む。
SPサーバ400は、T314において、端末10からスキャン指示を受信すると、T315において、受信済みのスキャン指示に含まれるデバイスID「AAA」によって識別されるMFP100にスキャン指示を送信する。
MFP100は、T315において、SPサーバ400からスキャン指示を受信すると、T316において、スキャン実行部118に載置されている原稿(T310参照)のスキャンを実行して、スキャンデータを生成する。そして、MFP100は、T317において、生成済みのスキャンデータをSPサーバ400に送信する。
SPサーバ400は、T317において、MFP100からスキャンデータを受信すると、T318において、当該スキャンデータを端末10に送信する。このため、ユーザは、端末10を利用してスキャンデータを確認することができる。
(第1実施例の効果)
以上によると、アプリ42は、VPNアダプタが追加されることが検出される場合(図3のT120)、又はVPNアダプタが無効を示す状態から有効を示す状態に変更される場合(図5のT173)に、通知画面SC1(又はSC3)を表示部14に表示する(図3のT130、図5のT176)。この結果、印刷指示のデフォルトの宛先がMFP100からSPサーバ400に切り替えられる(図4のT142、図5のT178)。このように、アプリ42は、VPNアダプタが追加されることの検出、又は、VPNアダプタが無効を示す状態から有効を示す状態に変更されることの検出に応じて、印刷指示のデフォルトの宛先を切り替えることができる。従って、アプリ42は、インターネット6を介した通信を実行する可能性があるという通信環境、特に、VPNを利用する可能性があるという通信環境において、インターネット6を介した(即ちSPサーバ400を介した)通信経路を利用して、MFP100に印刷を実行させることができる。
(対応関係)
端末10、MFP100が、それぞれ、「端末装置」、「機能実行装置」の一例である。印刷機能及びスキャン機能が、「特定の機能」の一例である。図3のT100の印刷操作、T102の印刷指示が、それぞれ、「機能実行操作」、「機能実行指示」の一例である。印刷指示(及びスキャン指示)をMFP100に送信するための通信経路が、「対象通信経路」の一例である。LAN4のみを介した通信経路、SPサーバ400を介した通信経路が、それぞれ、「第1の通信経路」、「第2の通信経路」の一例である。VPNアダプタが、「VPN通信情報」及び「特定アダプタ」の一例である。1つの観点では、VPNアダプタがアダプタ一覧44に追加されることが、「所定条件」が満たされることの一例である。別の観点では、VPNアダプタが無効を示す状態から有効を示す状態に変更されることが、「所定条件」が満たされることの一例である。通知画面SC2、通知画面SC1、通知画面SC3が、それぞれ、「第1の通知画面」、「第2の通知画面」、「第3の通知画面」の一例である。図3のT130の処理が、「特定処理」の一例である。図4のT140で登録される各種情報(即ちユーザID、パスワード、デバイスID「AAA」)が、「設定情報」の一例である。
図3のT102の処理が、「指示送信部」によって実行される処理の一例である。T122の処理が、「第1の判断部」によって実行される処理の一例である。T130の処理、図4のT132~T142の処理、図5のT176の処理、及びT178の処理が、「関連処理実行部」によって実行される処理の一例である。図4のT164の処理が、「表示制御部」によって実行される処理の一例である。
(第2実施例;図8)
続いて、図8を参照して、第2実施例を説明する。第2実施例では、ルーティングテーブル46にグローバルIPアドレスが追加されることを検出する点が、第1実施例とは異なる。第2実施例では、アダプタ一覧44は利用されない。図8の初期状態は、アダプタ一覧44が利用されない点を除いて、図3の初期状態と同様である。
図8のT400~T416の処理は、図3のT100~T116の処理と同様である。アプリ42は、ルーティングテーブル46の状態を監視している。本ケースでは、T416においてVPN接続が確立されると、OS40は、ルーティングテーブル46からMFP100のローカルIPアドレス「192.168.0.0」を削除するとともに、VPNサーバ300のグローバルIPアドレス「10.250.0.0」をルーティングテーブル46に追加する。アプリ42は、VPNサーバ300のグローバルIPアドレス「10.250.0.0」がルーティングテーブル46に追加されると、T420において、それを検出する。この場合、アプリ42は、T422において、ステータス要求をMFP100に送信する。T422の処理は、T122の処理と同様である。
T430の処理は、図3のT130の処理と同様である。その後、図4のT132~T142と同様の処理が実行される。この結果、印刷指示のデフォルトの宛先がMFP100からSPサーバ400に切り替えられる。T450~T454の処理は、T150~T154の処理と同様である。
(第2実施例の効果)
以上によると、アプリ42は、ルーティングテーブル46にグローバルIPアドレスが追加される場合(図8のT420)に、通知画面SC1を表示部14に表示する(図8のT430)。この結果、印刷指示のデフォルトの宛先がMFP100からSPサーバ400に切り替えられる(図8で引用する図4のT142)。このように、アプリ42は、グローバルIPアドレスが追加されることが検出されることに応じて、印刷指示のデフォルトの宛先を切り替えることができる。従って、アプリ42は、グローバルIPアドレスを利用した通信を実行する可能性があるという通信環境において、インターネット6を介した(即ちSPサーバ400を介した)通信経路を利用して、MFP100に印刷を実行させることができる。グローバルIPアドレスがルーティングテーブル46に追加されることが、「所定条件」が満たされることの一例である。VPNサーバ300のグローバルIPアドレス「10.250.0.0」が、「VPN通信情報」の一例である。
(第3実施例)
続いて、図9を参照して、第3実施例を説明する。第3実施例は、ルーティングテーブル46がさらに、IPアドレス及び経路情報に関連付けてメトリックを記憶する点が、第2実施例とは異なる。メトリックは、関連付けられるIPアドレスを通信先とした通信の優先度を示す情報である。本実施例では、メトリックの値が小さいほど優先度が高いことを示す。
(ケースD-1;図9)
まず、図9を参照して、印刷指示のデフォルトの宛先が切り替えられないケースD-1を説明する。ケースD-1の初期状態では、ルーティングテーブル46は、MFP100のローカルIPアドレス「192.168.0.0」と、SPサーバ400のグローバルIPアドレス「153.246.0.0」と、を記憶している。即ち、ケースD-1の初期状態では、端末10は、図4のT140の処理を実行済みである。
ケースD-1では、まず、図8のT400~T420と同様の処理が実行される。ただし、本ケースでは、VPN接続が確立されても、OS40は、ルーティングテーブル46からMFP100のローカルIPアドレス「192.168.0.0」を削除しない(図6の第1実施例ケースB参照)。この場合、アプリ42は、MFP100のローカルIPアドレス「192.168.0.0」に関連付けられているメトリックの値「100」と、SPサーバ400のグローバルIPアドレス「153.246.0.0」に関連付けられているメトリック「4000」と、を比較する。本ケースでは、アプリ42は、図9のT510において、前者の方が小さいと判断する。即ち、アプリ42は、LAN4のみを介した通信経路を利用したMFP100との通信の優先度が高いと判断する。この場合、アプリ42は、印刷指示のデフォルトの宛先を切り替えない。このような状況では、アプリ42は、MFP100との通信を実行するための通信経路が切り替えられる必要がない可能性が高いからである。従って、アプリ42が不必要である可能性が高い処理を実行することを抑制できる。
(ケースD-2;図9)
続いて、図9を参照して、デフォルトの宛先が切り替えられるケースD-2を説明する。ケースD-1の初期状態は、ケースD-2の初期状態と同様である。
ケースD-2でも、まず、図8のT400~T420と同様の処理が実行される。ただし、本ケースでは、VPN接続が確立されても、OS40は、ルーティングテーブル46からMFP100のローカルIPアドレス「192.168.0.0」を削除しない(図6の第1実施例ケースB参照)。この場合、アプリ42は、MFP100のローカルIPアドレス「192.168.0.0」に関連付けられているメトリックの値「4000」と、SPサーバ400のグローバルIPアドレス「153.246.0.0」に関連付けられているメトリック「100」と、を比較する。本ケースでは、アプリ42は、図9のT520において、後者の方が小さいと判断する。即ち、アプリ42は、SPサーバ400を介した(即ちインターネット6を介した)通信経路を利用したMFP100との通信の優先度が高いと判断する。
この場合、アプリ42は、T522において、通知画面SC3を表示し、T524において、デフォルトの宛先をMFP100からSPサーバ400に切り替える。このような状況では、アプリ42は、LAN4のみを介してMFP100との通信を実行不可能である可能性が高い。即ち、MFP100との通信を実行するための通信経路が切り替えられる必要がある可能性が高い。従って、アプリ42は、印刷指示のデフォルトの宛先を切り替えることによって、MFP100に適切に印刷を実行させることができる。メトリックが、「優先度情報」の一例である。T510の処理及びT520の処理が、「第2の判断部」によって実行される処理の一例である。
以上、本明細書が開示する技術の具体例を詳細に説明したが、これらは例示に過ぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)アプリ42は、印刷指示のデフォルトの宛先がMFP100である状況においてアプリ42が起動される場合に、アダプタ一覧44にVPNアダプタが記憶済みであるのか否かを判断してもよい。この場合、アプリ42は、VPNアダプタを記憶済みであると判断する場合に、記憶済みのVPNアダプタが有効状態であるのか無効状態であるのかに関わらず、印刷指示のデフォルトの宛先をSPサーバ400に切り替えてもよい(図4のT142参照)。本変形例では、VPNアダプタを記憶済みであることが、「所定条件」が満たされることの一例である。
(変形例2)アプリ42は、印刷指示のデフォルトの宛先がSPサーバ400である状況において、アダプタ一覧44からVPNアダプタが削除されることを検出する場合に、図4のT164及びT166の処理を実行してもよい。本変形例では、VPNアダプタが削除されることが、「特定アダプタが有効化されている状態から無効化されている状態に変更される」ことの一例である。また、別の変形例では、アプリ42は、デフォルトの宛先がSPサーバ400である状況において、VPNアダプタが有効を示す状態から無効を示す状態に変更されても(T163参照)、印刷指示のデフォルトの宛先を切り替えなくてもよい。本変形例では、T164及びT166の処理を省略可能である。本変形例では、「表示制御部」を省略可能である。
(変形例3)アプリ42は、図5のT176において、通知画面SC3に代えて、印刷指示のデフォルトの宛先を切り替えるのか否かをユーザに問い合わせるための問合画面を表示してもよい。この場合、アプリ42は、当該問合画面において、印刷指示のデフォルトの宛先を切り替えることを指示する操作がユーザから受け付けられる場合に、T178の処理を実行してもよい。一般的に言うと、「関連処理」は、対象通信経路が第1の通信経路から第2の通信経路に切り替えられることを示す第3の通知画面を端末装置の表示部に表示する処理を含まなくてもよい。
(変形例4)アプリ42は、図3のT120においてVPNアダプタの追加を検出する場合に、ステータス要求(T122参照)をMFF100に送信しなくてもよい。この場合、例えば、アプリ42は、VPNアダプタの追加が検出された後に、ユーザから印刷操作を受け付ける場合に、印刷指示をMFP100に送信し(T100、T102参照)、当該印刷指示を送信してから所定時間が経過しても印刷が完了したことを示す通知がMFP100から受信されない場合に、通知画面SC1を表示してもよい(T130参照)。本変形例では、印刷が完了したことを示す通知が受信されたのか否かを判断することが、「第1の判断部」によって実行される処理の一例である。一般的に言うと、「第1の判断部」が、第1の通信経路を利用して機能実行装置との通信を実行可能であるのか否かを判断する手法は、上記の実施例の形態に限定されない。
(変形例5)「特定の機能」は、上記の実施例の印刷機能及びスキャン機能に限定されず、例えばFAX機能等であってもよい。
(変形例6)上記の実施例では、図3~図9の処理がソフトウェア(例えばOS40、アプリ42等)によって実現されるが、これらの各処理の少なくとも1つが論理回路等のハードウェアによって実現されてもよい。
本明細書または図面に説明した技術要素は、単独で、あるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成し得るものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
以下の項目は、出願時の特許請求の範囲に記載の要素である。
(項目1)
端末装置のためのコンピュータプログラムであって、
前記端末装置のコンピュータを、以下の各部、即ち、
機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
前記端末装置のメモリがVPN(Virtual Private Networkの略)を利用するためのVPN通信情報を記憶することを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、
として機能させる、コンピュータプログラム。
(項目2)
前記メモリ内の1個以上のネットワークアダプタが前記VPNを示す特定アダプタを含む場合に、前記メモリが前記特定アダプタである前記VPN通信情報を記憶することを含む前記所定条件が満たされる、請求項1に記載のコンピュータプログラム。
(項目3)
VPNサーバのグローバルIPアドレスが前記メモリ内のルーティングテーブルに追加される場合に、前記メモリが前記グローバルIPアドレスである前記VPN通信情報を記憶することを含む前記所定条件が満たされ、
前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルである、請求項1又は2に記載のコンピュータプログラム。
(項目4)
端末装置のためのコンピュータプログラムであって、
前記端末装置のコンピュータを、以下の各部、即ち、
機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
前記端末装置のメモリ内の1個以上のネットワークアダプタが、インターネットを介した通信を示す特定アダプタを含むことを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、前記インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、
として機能させる、コンピュータプログラム。
(項目5)
前記コンピュータプログラムは、前記コンピュータを、さらに、
前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられた後に、前記特定アダプタが有効化されている状態から無効化されている状態に変更される場合に、前記対象通信経路が前記第2の通信経路から前記第1の通信経路に切り替えられることを示す第1の通知画面を前記端末装置の表示部に表示する表示制御部として機能させる、請求項2又は4に記載のコンピュータプログラム。
(項目6)
端末装置のためのコンピュータプログラムであって、
前記端末装置のコンピュータを、以下の各部、即ち、
機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
グローバルIPアドレスが前記端末装置のメモリ内のルーティングテーブルに追加されることを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルであり、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、
として機能させる、コンピュータプログラム。
(項目7)
前記関連処理は、前記第2の通信経路を利用して前記機能実行指示を送信するための設定情報を前記メモリに登録するための特定処理を含む、請求項1から6のいずれか一項に記載のコンピュータプログラム。
(項目8)
前記特定処理は、前記設定情報を前記メモリに登録することをユーザに促す第2の通知画面を前記端末装置の表示部に表示する処理を含む、請求項7に記載のコンピュータプログラム。
(項目9)
前記関連処理は、前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられることを示す第3の通知画面を前記端末装置の表示部に表示する処理を含む、請求項1から8のいずれか一項に記載のコンピュータプログラム。
(項目10)
前記コンピュータプログラムは、前記コンピュータを、さらに、
前記第1の通信経路を利用して前記機能実行装置との通信を実行可能であるのか否かを判断する第1の判断部として機能させ、
前記所定条件は、さらに、前記第1の通信経路を利用して前記機能実行装置との前記通信を実行不可能であると判断されることを含む、請求項1から9のいずれか一項に記載のコンピュータプログラム。
(項目11)
前記メモリは、IPアドレスと、当該IPアドレスを通信先とした通信の優先度を示す優先度情報と、を関連付けて記述するためのルーティングテーブルを記憶し、
前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルであり、
前記コンピュータプログラムは、前記コンピュータを、さらに、
前記ルーティングテーブルを利用して、前記第1の通信経路を利用した前記機能実行装置との通信と、前記第2の通信経路を利用した前記機能実行装置との通信と、のどちらの優先度が高いのかを判断する第2の判断部として機能させ、
前記所定条件は、さらに、前記第2の通信経路を利用した前記機能実行装置との通信の優先度が高いと判断されることを含む、請求項1から10のいずれか一項に記載のコンピュータプログラム。
(項目12)
前記機能実行装置は、印刷実行部及びスキャン実行部の少なくとも一方を備え、
前記特定の機能は、印刷機能及びスキャン機能の少なくとも一方である、請求項1から11のいずれか一項に記載のコンピュータプログラム。
2:通信システム、4:LAN、6:インターネット、10:端末、12,112:操作部、14,114:表示部、20,120:LANI/F、30,130:制御部、32,132:CPU、34,134:メモリ、40:OSプログラム、42:アプリケーション、44:アダプタ一覧、46:ルーティングテーブル、50:ルータ、116:印刷実行部、118:スキャン実行部、140:プログラム、200:オフィスサーバ、300:VPNサーバ,400:SPサーバ

Claims (9)

  1. 端末装置のためのコンピュータプログラムであって、
    前記端末装置のコンピュータを、以下の各部、即ち、
    機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
    前記端末装置のメモリがVPN(Virtual Private Networkの略)を利用するためのVPN通信情報を記憶することを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路であり、前記メモリ内の1個以上のネットワークアダプタが前記VPNを示す特定アダプタを含む場合に、前記メモリが前記特定アダプタである前記VPN通信情報を記憶することを含む前記所定条件が満たされる、前記関連処理実行部と、
    前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられた後に、前記特定アダプタが有効化されている状態から無効化されている状態に変更される場合に、前記対象通信経路が前記第2の通信経路から前記第1の通信経路に切り替えられることを示す第1の通知画面を前記端末装置の表示部に表示する表示制御部と、
    として機能させる、コンピュータプログラム。
  2. 端末装置のためのコンピュータプログラムであって、
    前記端末装置のコンピュータを、以下の各部、即ち、
    機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
    前記端末装置のメモリ内の1個以上のネットワークアダプタが、インターネットを介した通信を示す特定アダプタを含むことを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記第1の通信経路は、前記インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、
    前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられた後に、前記特定アダプタが有効化されている状態から無効化されている状態に変更される場合に、前記対象通信経路が前記第2の通信経路から前記第1の通信経路に切り替えられることを示す第1の通知画面を前記端末装置の表示部に表示する表示制御部と、
    として機能させる、コンピュータプログラム。
  3. 端末装置のためのコンピュータプログラムであって、
    前記端末装置のコンピュータを、以下の各部、即ち、
    機能実行装置に特定の機能を実行させるための機能実行操作が受け付けられる場合に、対象通信経路を利用して、前記機能実行装置に前記特定の機能を実行させるための機能実行指示を送信する指示送信部と、
    グローバルIPアドレスが前記端末装置のメモリ内のルーティングテーブルに追加されることを含む所定条件が満たされる場合に、前記対象通信経路を第1の通信経路から第2の通信経路に切り替えることに関連する関連処理を実行する関連処理実行部であって、前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルであり、前記第1の通信経路は、インターネットを介さずにローカルエリアネットワークを介して前記機能実行装置と通信するための通信経路であり、前記第2の通信経路は、前記インターネットを介して前記機能実行装置と通信するための通信経路である、前記関連処理実行部と、
    前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられた後に、前記グローバルIPアドレスが前記ルーティングテーブルから削除される場合に、前記対象通信経路が前記第2の通信経路から前記第1の通信経路に切り替えられることを示す第1の通知画面を前記端末装置の表示部に表示する表示制御部と、
    として機能させる、コンピュータプログラム。
  4. 前記関連処理は、前記第2の通信経路を利用して前記機能実行指示を送信するための設定情報を前記メモリに登録するための特定処理を含む、請求項1からのいずれか一項に記載のコンピュータプログラム。
  5. 前記特定処理は、前記設定情報を前記メモリに登録することをユーザに促す第2の通知画面を前記端末装置の表示部に表示する処理を含む、請求項に記載のコンピュータプログラム。
  6. 前記関連処理は、前記対象通信経路が前記第1の通信経路から前記第2の通信経路に切り替えられることを示す第3の通知画面を前記端末装置の表示部に表示する処理を含む、請求項1からのいずれか一項に記載のコンピュータプログラム。
  7. 前記コンピュータプログラムは、前記コンピュータを、さらに、
    前記第1の通信経路を利用して前記機能実行装置との通信を実行可能であるのか否かを判断する第1の判断部として機能させ、
    前記所定条件は、さらに、前記第1の通信経路を利用して前記機能実行装置との前記通信を実行不可能であると判断されることを含む、請求項1からのいずれか一項に記載のコンピュータプログラム。
  8. 前記メモリは、IPアドレスと、当該IPアドレスを通信先とした通信の優先度を示す優先度情報と、を関連付けて記述するためのルーティングテーブルを記憶し、
    前記ルーティングテーブルは、他の装置との通信を実行するための通信経路を決定する際にOS(Operating Systemの略)プログラムによって利用される情報を記憶するためのテーブルであり、
    前記コンピュータプログラムは、前記コンピュータを、さらに、
    前記ルーティングテーブルを利用して、前記第1の通信経路を利用した前記機能実行装置との通信と、前記第2の通信経路を利用した前記機能実行装置との通信と、のどちらの優先度が高いのかを判断する第2の判断部として機能させ、
    前記所定条件は、さらに、前記第2の通信経路を利用した前記機能実行装置との通信の優先度が高いと判断されることを含む、請求項1からのいずれか一項に記載のコンピュータプログラム。
  9. 前記機能実行装置は、印刷実行部及びスキャン実行部の少なくとも一方を備え、
    前記特定の機能は、印刷機能及びスキャン機能の少なくとも一方である、請求項1からのいずれか一項に記載のコンピュータプログラム。
JP2021098957A 2021-06-14 2021-06-14 端末装置のためのコンピュータプログラム Active JP7718111B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2021098957A JP7718111B2 (ja) 2021-06-14 2021-06-14 端末装置のためのコンピュータプログラム
EP22178438.2A EP4106295A1 (en) 2021-06-14 2022-06-10 Computer program for terminal device
US17/806,582 US12141487B2 (en) 2021-06-14 2022-06-13 Non-transitory computer-readable recording medium storing computer-readable instructions for terminal device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021098957A JP7718111B2 (ja) 2021-06-14 2021-06-14 端末装置のためのコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2022190574A JP2022190574A (ja) 2022-12-26
JP7718111B2 true JP7718111B2 (ja) 2025-08-05

Family

ID=82608161

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021098957A Active JP7718111B2 (ja) 2021-06-14 2021-06-14 端末装置のためのコンピュータプログラム

Country Status (3)

Country Link
US (1) US12141487B2 (ja)
EP (1) EP4106295A1 (ja)
JP (1) JP7718111B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024154232A1 (ja) * 2023-01-17 2024-07-25 三菱電機株式会社 通信装置、ネットワークシステム、通信方法及びプログラム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001308935A (ja) 2000-04-25 2001-11-02 Hitachi Ltd 通信システム、通信方法及び通信装置
JP2004129024A (ja) 2002-10-04 2004-04-22 Fujitsu Ltd 通信制御プログラム、通信制御方法、及び通信装置
JP2006238415A (ja) 2004-12-16 2006-09-07 Fr Telecom IPsecトンネルによってリモートプライベートネットワークに接続されているローカルコンピュータネットワークの操作方法、ソフトウェアモジュール、およびIPsecゲートウェイ
US20090286531A1 (en) 2008-05-19 2009-11-19 Motorola, Inc. Mobile device and method for intelligently communicating data generated thereby over short-range, unlicensed wireless networks and wide area wireless networks
JP2011077675A (ja) 2009-09-29 2011-04-14 Nec Personal Products Co Ltd 通信システム
JP2011082600A (ja) 2009-10-02 2011-04-21 Murata Machinery Ltd 中継サーバおよび中継通信システム

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8042166B2 (en) * 2005-10-26 2011-10-18 Hewlett-Packard Development Company, L.P. Printing via user equipment
JP4791850B2 (ja) * 2006-02-23 2011-10-12 株式会社日立製作所 情報処理システムおよび仮想オフィスシステム
US9881264B2 (en) * 2006-03-17 2018-01-30 Mobile Title Agency Of Michigan, Llc Mobile system and method for processing secure remote in person transactions
US8384927B2 (en) * 2006-03-31 2013-02-26 Konica Minolta Laboratory U.S.A., Inc. Print job management method and apparatus with grouping function to group print jobs and submit groups of print jobs to printing devices
US8533780B2 (en) * 2009-12-22 2013-09-10 Cisco Technology, Inc. Dynamic content-based routing
US9817622B2 (en) * 2010-01-20 2017-11-14 Hewlett-Packard Development Company, L.P. Cloud printer with a common user print experience
US20120218594A1 (en) * 2011-02-28 2012-08-30 Konica Minolta Laboratory U.S.A., Inc. Method and system for fulfilling a customer's print job needs by selecting and assigning the print job to one or more qualified printers from a group of participating printers
US8724151B2 (en) * 2012-03-05 2014-05-13 Ricoh Company, Ltd. Enterprise cloud printing
US9377971B2 (en) * 2014-04-16 2016-06-28 Canon Kabushiki Kaisha Systems and methods for improving device discovery
US11474767B1 (en) * 2014-05-28 2022-10-18 Amazon Technologies, Inc. Print from web services platform to local printer
JP6265167B2 (ja) * 2015-04-28 2018-01-24 京セラドキュメントソリューションズ株式会社 印刷制御システム、サーバー、及び印刷制御方法
US10133525B2 (en) * 2015-08-06 2018-11-20 Citrix Systems, Inc. Autonomous secure printing
US10230691B2 (en) * 2016-02-03 2019-03-12 Verisign, Inc. Systems, devices, and methods for improved domain name system firewall protection
US10484266B2 (en) * 2018-04-12 2019-11-19 Citrix Systems, Inc. Leveraging multi-stream transport protocol capabilities for routing
JP7230617B2 (ja) 2019-03-20 2023-03-01 株式会社リコー 印刷システム、情報処理装置及びプログラム
US11425098B2 (en) * 2020-02-28 2022-08-23 Cisco Technology, Inc. Streamlined authentication and authorization for virtual private network tunnel establishment
US11457008B2 (en) * 2020-10-13 2022-09-27 Cisco Technology, Inc. Steering traffic on a flow-by-flow basis by a single sign-on service
JP7642405B2 (ja) * 2021-03-10 2025-03-10 富士フイルム株式会社 画像処理装置、画像処理方法、プログラムおよび記録媒体
US11347449B1 (en) * 2021-03-12 2022-05-31 Xerox Corporation Methods and systems for handling one or more requests received in a remote working environment
JP7661736B2 (ja) * 2021-03-22 2025-04-15 富士フイルムビジネスイノベーション株式会社 情報処理システム、画像形成装置及びプログラム
JP7655029B2 (ja) * 2021-03-22 2025-04-02 富士フイルムビジネスイノベーション株式会社 情報処理システム、情報処理装置及びプログラム
JP7673454B2 (ja) * 2021-03-25 2025-05-09 富士フイルムビジネスイノベーション株式会社 情報処理システム、サーバ及びプログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001308935A (ja) 2000-04-25 2001-11-02 Hitachi Ltd 通信システム、通信方法及び通信装置
JP2004129024A (ja) 2002-10-04 2004-04-22 Fujitsu Ltd 通信制御プログラム、通信制御方法、及び通信装置
JP2006238415A (ja) 2004-12-16 2006-09-07 Fr Telecom IPsecトンネルによってリモートプライベートネットワークに接続されているローカルコンピュータネットワークの操作方法、ソフトウェアモジュール、およびIPsecゲートウェイ
US20090286531A1 (en) 2008-05-19 2009-11-19 Motorola, Inc. Mobile device and method for intelligently communicating data generated thereby over short-range, unlicensed wireless networks and wide area wireless networks
JP2011077675A (ja) 2009-09-29 2011-04-14 Nec Personal Products Co Ltd 通信システム
JP2011082600A (ja) 2009-10-02 2011-04-21 Murata Machinery Ltd 中継サーバおよび中継通信システム

Also Published As

Publication number Publication date
JP2022190574A (ja) 2022-12-26
EP4106295A1 (en) 2022-12-21
US20220398051A1 (en) 2022-12-15
US12141487B2 (en) 2024-11-12

Similar Documents

Publication Publication Date Title
JP7484340B2 (ja) 端末装置のためのコンピュータプログラムと端末装置と通信装置
JP7608730B2 (ja) 第1の通信装置、第2の通信装置、及び、第1の通信装置のためのコンピュータプログラム
JP7718092B2 (ja) 通信装置及び通信装置のためのコンピュータプログラム
JP7718111B2 (ja) 端末装置のためのコンピュータプログラム
JP6819418B2 (ja) 端末装置のためのコンピュータプログラム、及び、通信装置
US9128645B2 (en) System including image forming apparatus and information processing apparatus, method performed under the system, image forming apparatus and information processing apparatus directed to the system, and non-transitory storage medium encoded with program directed to the apparatuses
JP2019033370A (ja) 通信制御システム、画像処理ユニット、ルーター、通信中継装置及びプログラム
JP2026042837A (ja) 通信装置と通信装置のためのコンピュータプログラム
JP6380138B2 (ja) 通信装置
JP7552352B2 (ja) 画像処理装置及び画像処理装置のためのコンピュータプログラム
JP7180097B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7056725B2 (ja) 端末装置のためのコンピュータプログラム、及び、通信装置
JP2008236150A (ja) 無線情報処理装置
JP7494683B2 (ja) 通信装置と通信装置のためのコンピュータプログラム
JP2019145961A (ja) 通信装置
JP7070094B2 (ja) 通信装置のためのコンピュータプログラムと通信装置
CN115051942A (zh) 链路检测方法、装置、网络设备、存储介质及芯片
JP6662482B2 (ja) 機能実行装置
JP6520643B2 (ja) 機能実行装置
JP2023036421A (ja) 情報処理装置及びプログラム
JP7354811B2 (ja) 通信装置及び端末装置のためのコンピュータプログラム
JP7848638B2 (ja) 端末装置のためのコンピュータプログラム、端末装置、及び、端末装置によって実行される方法
US12470516B2 (en) Communication device and non-transitory computer-readable recording medium storing computer-readable instructions for communication device
JP2023111145A (ja) 通信装置と通信装置のためのコンピュータプログラム
JP7563133B2 (ja) 端末装置のためのアプリケーションプログラム、端末装置、及び、端末装置によって実行される方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240524

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20250121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20250204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20250401

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20250624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250707

R150 Certificate of patent or registration of utility model

Ref document number: 7718111

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150