以下、図面を参照して、本発明の実施形態を詳細に説明する。
図1は、本発明のテレワーク管理システム100のシステム構成の一例を示す図である。
テレワーク管理システム100は、1または複数の管理サーバ101、1または複数のテレワーカ用PC111、1または複数の管理者用PC121がインターネット130を介して接続される構成となっている。
管理サーバ101は、テレワーカの在席・離席状況に関する情報や第三者による覗き込み、なりすまし等の情報(テレワーク情報(証跡情報))を一元管理するサーバであり、サービス環境ネットワーク104上に構築されている。
管理サーバ101へは、テレワーカ用PC111と管理者用PC121が、アカウントID(ユーザID)とパスワードを用いた認証処理により接続し、管理サーバ101は、テレワーカ用PC111からテレワーク情報を受信した場合は、管理サーバ101のデータベースに格納する。また、管理サーバ101は、管理者用PC121からテレワーク情報の取得要求があった場合は、管理サーバ101のデータベースから必要なテレワーク情報を取得して管理者用PC121に送信して表示する。
テレワーカ用PC111は、テレワーカから勤務中か勤務外かの申請(申告)を受け付け、またテレワーカ用PC111に接続されたカメラ113(撮像装置)により撮影された映像(画像)から端末の前方の状態(端末前方状態(テレワーカが在席・離席しているのか、覗き込みやなりすましが発生しているか))を検知する端末である。テレワーカ用PC111は、遠隔地の自宅ネットワーク110(自宅ネットワークではなく、例えば、カフェ等のネットワークでもよい)上に存在し、端末前方状態は、ルータ112、インターネット130、及びルータ103を介して管理サーバ101へ送信される。カメラ113(撮像装置)は、テレワーカ用PC111の前方を撮影するカメラである。
テレワーカ用PC111は、本発明の情報処理装置の適用例であり、テレワークを行うユーザが用いる端末であり、カメラ113等の撮像手段を備えている。
管理者用PC121は、テレワーク情報を確認するための端末であり、社内ネットワーク120上に存在し、テレワーク情報の確認には、ウェブ管理コンソール(ウェブブラウザ上で動作)を使用し、ルータ122、インターネット130、及びルータ103を介して管理サーバ101に接続する。
なお、本実施例においては、テレワーカ用PC111が端末前方状態を検知し、管理サーバ101へ情報を送信する構成として説明するが、テレワーカ用PC111から映像(画像)のみを管理サーバ101に送信し、管理サーバ101において当該映像(画像)から端末前方状態を検知するよう構成しても良い。
図2は、本発明の実施形態における管理サーバ101、テレワーカ用PC111、管理者用PC121に適用可能な情報処理装置のハードウェア構成の一例を示すブロック図である。各装置ともに、同様な構成を備えるため、同一の符号を用いて説明する。
図2に示すように、情報処理装置は、システムバス200を介してCPU(Central Processing Unit)201、ROM(Read Only Memory)202、RAM(Random Access Memory)203、記憶装置204、入力コントローラ205、音声入力コントローラ206、ビデオコントローラ207、メモリコントローラ208、よび通信I/Fコントローラ209が接続される。
CPU201は、システムバス200に接続される各デバイスやコントローラを統括的に制御する。
ROM202あるいは記憶装置204は、CPU201が実行する制御プログラムであるBIOS(Basic Input/Output System)やOS(Operating System)や、本情報処理方法を実現するためのコンピュータ読み取り実行可能なプログラムおよび必要な各種データ(データテーブルを含む)を保持している。
RAM203は、CPU201の主メモリ、ワークエリア等として機能する。CPU201は、処理の実行に際して必要なプログラム等をROM202あるいは記憶装置204からRAM203にロードし、ロードしたプログラムを実行することで各種動作を実現する。
入力コントローラ205は、入力装置210からの入力を制御する。入力装置210としては、キーボード、タッチパネル、マウス等のポインティングデバイス、カメラ113等の撮像装置等が挙げられる。
カメラ113等の撮像装置は、端末の前方を撮像するカメラであり、テレワーカ用PC111は、当該撮影された画像により、端末の前方の状態(端末前方状態(テレワーカが在席・離席しているのか、覗き込みやなりすましが発生しているか))を特定することができる。
なお、入力装置210がタッチパネルの場合、ユーザがタッチパネルに表示されたアイコンやカーソルやボタンに合わせて押下(指等でタッチ)することにより、各種の指示を行うことができることとする。
また、タッチパネルは、マルチタッチスクリーンなどの、複数の指でタッチされた位置を検出することが可能なタッチパネルであってもよい。
音声入力コントローラ206は、マイク/スピーカ211がマイク機能として動作する場合、マイク/スピーカ211からの音声入力を制御し、マイク/スピーカ211から入力された音声を認識することが可能となっている。また、音声入力コントローラ206は、マイク/スピーカ211がスピーカ機能として動作する場合、マイク/スピーカ211への音声出力を制御し、マイク/スピーカ211に対し音声を出力することが可能となっている。
ビデオコントローラ207は、ディスプレイ212などの外部出力装置への表示を制御する。ディスプレイは本体と一体になったノート型パソコンのディスプレイも含まれるものとする。なお、外部出力装置はディスプレイに限ったものははく、例えばプロジェクタであってもよい。また、前述のタッチ操作により受け付け可能な装置については、入力装置210を提供する。
なおビデオコントローラ207は、表示制御を行うためのビデオメモリ(VRAM)を制御することが可能で、ビデオメモリ領域としてRAM203の一部を利用することもできるし、別途専用のビデオメモリを設けることも可能である。
本発明では、ユーザが情報処理装置を通常使用する場合の表示に用いられる第1のビデオメモリ領域と、所定の画面が表示される場合に、第1のビデオメモリ領域の表示内容に重ねての表示に用いられる第2のビデオメモリ領域を有している。ビデオメモリ領域は2つに限ったものではなく、情報処理装置の資源が許す限り複数有することが可能なものとする。
メモリコントローラ208は、外部メモリ213へのアクセスを制御する。外部メモリとしては、ブートプログラム、各種アプリケーション、フォントデータ、ユーザファイル、編集ファイル、および各種データ等を記憶する外部記憶装置(ハードディスク)、フレキシブルディスク(FD)、或いはPCMCIAカードスロットにアダプタを介して接続されるコンパクトフラッシュ(登録商標)メモリ等を利用可能である。
通信I/Fコントローラ209は、ネットワーク214(104、110、120)を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、TCP/IPを用いた通信やISDNなどの電話回線、および携帯電話の3G回線を用いた通信が可能である。
なお、記憶装置204は、情報を永続的に記憶するための媒体であって、その形態をハードディスク等の記憶装置に限定するものではない。例えば、SSD(Solid State Drive)などの媒体であってもよい。
また本実施形態における通信端末で行われる各種処理時の一時的なメモリエリアとしても利用可能である。
尚、CPU201は、例えばRAM203内の表示情報用領域へアウトラインフォントの展開(ラスタライズ)処理を実行することにより、ディスプレイ212上での表示を可能としている。また、CPU201は、ディスプレイ212上の不図示のマウスカーソル等でのユーザ指示を可能とする。
図3は、テレワーカが使用するテレワーカ用PC111が実行する制御処理の一例を示すフローチャートである。
図3に示す各ステップに示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
図7は、監視プログラム702を含むテレワークプログラム701と、監視プログラム703の動作を説明するための概念図の一例を示す図である。
すなわち、テレワークプログラム701(取得手段、送信手段)は、監視プログラム702(第2監視手段)を備えている。
図7(A)は、後述するテレワークプログラム701と、テレワークプログラム701の処理が終了していないかを監視する監視プログラム703とが、互いに監視していることを示す概念図の一例を示す図である。
図7(A)に示すとおり、テレワーカ用PC111は、テレワークプログラム701(エージェント)、監視プログラム702、監視プログラム703を記憶している。
また、テレワークプログラム701(エージェント)は、監視プログラム702を含んでいる。
監視プログラム702は、監視プログラム703のプロセス(処理)が終了しているか否かを監視するプログラムである。
監視プログラム702は、本発明の第2監視手段の適用例であり、監視プログラム703(第1監視手段)による監視処理を実行するプロセスを監視する。
また、監視プログラム703は、テレワークプログラム701のプロセス(処理)が終了しているか否かを監視するプログラムである。
監視プログラム703は、本発明の第1監視手段の適用例であり、取得手段による取得処理(テレワークプログラム701の処理)を実行するプロセスを監視する。
まず、テレワーカ用PC111は、テレワークプログラム701を読み出して起動する(S301)。テレワークプログラム701は、監視プログラム702も含むため、ここで、監視プログラム702も起動することなる。
そして、テレワーカ用PC111は、テレワークプログラム701が監視プログラム703を読み出して起動する(S302)。
次に、テレワーカ用PC111は、ステップS413で証跡情報を送信できるようにするために、管理サーバ101との通信を確立する。
具体的には、テレワークプログラム701が、管理サーバ101にログインするためのログイン画面を表示する。ここで表示されるログイン画面には、アカウントID(ユーザID)、パスワードの入力を受け付ける入力欄が含まれている。
テレワークプログラム701は、当該ログイン画面を介して、ユーザによる、アカウントID(ユーザID)、パスワードの入力を受け付けると、当該入力を受け付けたユーザID、パスワードを管理サーバ101に送信する。
ここで、テレワークプログラム701は、当該ログイン画面を介して、ユーザによる、アカウントID(ユーザID)、パスワードの入力を受け付ける手段は、本発明の受付手段の適用例であり、ユーザの操作により認証情報の入力を受け付ける。
また、ここで、入力を受け付けたユーザID、パスワードを管理サーバ101に送信する手段は、本発明の認証要求手段の適用例であり、受付手段により入力を受け付けた認証情報を、認証手段を備える管理サーバ101に送信することにより、ユーザの認証要求を行う。
管理サーバ101は、テレワークプログラム701から送信された当該ユーザID、パスワード(ユーザID、パスワードの組を認証情報と言う)を受信すると、当該認証情報(ユーザID、パスワード)と、管理サーバ101に予め登録している認証情報(アカウントID(ユーザID)、パスワード)が一致しているか否かを判定することにより、ユーザの認証処理を実行する。そして、ユーザの認証処理で、管理サーバ101との通信、及び後述のサービスの利用を許可するか否かを判定する。ここでのユーザの認証処理は、本発明の認証手段の適用例であり、受付手段によりユーザの操作により入力を受け付けた認証情報に従って当該ユーザの認証を行う。
そして、管理サーバ101は、当該認証情報が一致していると判定され、ユーザの認証が成功した(認証された)と判定された(管理サーバ101との通信、及び後述のサービスの利用を許可すると判定された)場合には、テレワークプログラム701に対して、ユーザが認証された旨の通知を送信する。
テレワークプログラム701は、管理サーバ101から、ユーザが認証された旨の通知を受信すると、当該入力された認証情報(ユーザID、パスワード)を所定の格納先に格納して、監視プログラム703に対して、当該認証情報を設定登録する(S303)。
ここで、テレワークプログラム701が、管理サーバ101から、ユーザが認証された旨の通知を受信する手段は、本発明の認証結果取得手段の適用例であり、認証要求手段による認証要求に応答して、管理サーバから認証手段によるユーザの認証結果を取得する。
そして、テレワークプログラム701は、テレワーク監視・管理処理(S304)、及び監視プログラム703の監視処理(S305)を並行処理で実行する。
テレワーク監視・管理処理(S304)の詳細処理については、図4、5を用いて説明する。
また、監視プログラム703の監視処理(S305)の詳細処理については、図6のS601〜605を用いて説明する。
また、S302で起動された監視プログラム703の詳細処理については、図6のS606〜S609を用いて説明する。
そして、テレワークプログラム701(エージェント)は、後述するエージェント継続処理モードではない状態で、終了指示をユーザにより押下されたと判定すると、S304、及びS305の処理の実行(プロセス)を終了して、処理を終了する。
また、テレワークプログラム701(エージェント)、及び監視プログラムの各プロセスは、例えば、タスクマネージャなどで表示された各プロセスとして表示され、ユーザの終了指示(killコマンドなど)を受け付けることにより、各プロセスの処理を強制終了させることができる。
次に、図4を用いて、S304のテレワーク監視・管理処理の詳細処理について説明する。
図4は、S304のテレワーク監視・管理処理の詳細処理のフローチャートの一例を示す図である。
図4に示す各ステップに示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
まず、テレワークプログラム701は、接続されたカメラ113により撮影された画像(カメラ画像)を取得する(S401)。ここで取得した画像は、RAM203に記憶しておく。
S401は、本発明の画像取得手段の適用例であり、カメラ113等の撮像手段がテレワーカ用PC111(情報処理装置)の前方を撮影することで得られる画像を取得する。
すなわち、S401は、本発明の取得手段の適用例であり、撮像手段(カメラ113)が情報処理装置(テレワーカ用PC111)の前方を撮影することで得られる画像を取得する。
次に、テレワークプログラム701は、ステップS401で取得した画像を解析することにより、当該画像に含まれるユーザの顔を検出する(S402)。顔の検出には、例えば、公知技術を用いるものとする。検出結果はRAM203に記憶しておく。
そして、テレワークプログラム701は、S402で検出された顔の数を判定する。具体的には、S402で検出された顔の数が、1個であるか、2個以上であるか、0個であるか(顔を検出できなかったか(顔が未検出か))を判定する(S403)。
そして、テレワークプログラム701は、S403で、S402で検出された顔の数が、0個である(顔を検出できなかった(顔が未検出))であると判定された場合には、処理をS416に移行して、端末前方状態(テレワーカの勤務状態)を「離席」として判定し設定する(S416)。すなわち、テレワーカが離席していると判定する。
また、テレワークプログラム701は、S403で、S402で検出された顔の数が、2個以上であるであると判定された場合には、処理をS415に移行して、端末前方状態(テレワーカの勤務状態)を「覗き見」(覗き込み)として判定し設定する。すなわち、認証されていない他の第三者から表示部を覗き見されていると判定する(S415)。S415でS404の顔認証処理を行い、テレワーカ本人がいるかを判定するようにしてもよい。
また、テレワークプログラム701は、S403で、S402で検出された顔の数が、1個であるであると判定された場合には、処理をS404に移行して、当該検出された顔が、テレワーカ本人の顔であるか否かを確認するための顔認証処理を行う(S404)。具体的には、テレワークプログラム701は、S402でカメラ113により撮影された画像から検出された顔の顔画像と、テレワーカ用PC111に予め登録されたテレワーカ本人の顔画像との類似度を算出する。
そして、テレワークプログラム701は、ステップS404で算出された類似度と、予め設定された、類似度に関する閾値とを比較し、S402で画像から検出された顔がテレワーカ本人の顔であるかを判定する。具体的には、S404で算出された類似度が、所定の閾値を満たす場合にはテレワーカ本人と判定し、所定の閾値を満たさない場合には、テレワーカ本人以外の第三者(他人)と判定する。
S404は、本発明の顔認証手段の適用例であり、S401の取得手段により取得された画像を用いて顔認証を行う。
すなわち、テレワークプログラム701は、S404で算出された類似度が、所定の閾値を満たす場合には、S402で画像から検出された顔のユーザは、S303で認証されたユーザ(テレワーカ本人)と判定され、一方、S404で算出された類似度が、所定の閾値を満たさない場合には、S402で画像から検出された顔のユーザは、S303で認証されたユーザ(テレワーカ本人)以外の第三者(他人)であると判定する。そして、テレワークプログラム701は、その判定結果を取得する(S405)。
S405は、本発明の判定結果取得手段の適用例であり、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定結果を取得する。
S405の判定処理は、例えば、管理サーバ101で行い、テレワーカ用PC111がその判定結果をS405で管理サーバ101から取得するようにしてもよい。その場合には、S401の画像取得手段により取得された画像をテレワーカ用PC111が管理サーバ101に送信して、管理サーバ101が、当該画像から検出された顔の顔画像と、管理サーバ101に予め登録されたテレワーカ本人の顔画像との類似度を算出する。管理サーバ101が、当該類似度が、所定の閾値を満たすか否かを判定することにより、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行う。
すなわち、S405の判定結果取得手段は、画像取得手段により取得された画像に、受付手段によりユーザの操作により入力を受け付けた認証情報に従って当該ユーザの認証を行う認証手段により認証されたユーザ本人以外の第三者の顔が含まれているか否かの判定結果を取得する。
すなわち、類似度の算出を行う処理では、認証手段により認証されたユーザの予め登録された顔画像と、S401の画像取得手段により取得された画像(顔画像)との類似度の算出を行う。
判定結果取得手段は、画像取得手段により取得された画像に、ユーザ本人以外の第三者1人のみの顔が含まれている場合には、ユーザ本人のなりすましであるとの判定結果を取得する。
そして、テレワークプログラム701は、S405で、S402で画像から検出された顔のユーザは、S303で認証されたユーザ(テレワーカ本人)と判定された場合には、処理をステップS406に移行して、端末前方状態(テレワーカの勤務状態)を「在席」に設定する。すなわち、テレワーカ本人が在席していると判定する(S406)。
また、テレワークプログラム701は、S405で、S402で画像から検出された顔のユーザは、S303で認証されたユーザ(テレワーカ本人)以外の第三者(他人)であると判定された場合には、処理をステップS407に移行して、端末前方状態(テレワーカの勤務状態)を「なりすまし」に設定する。すなわち、テレワーカ本人ではない第三者(他人)が本人になりすまして在席していると判定する(S407)。
図8は、S407で「なりすまし」として判定されるテレワーカ用PC111のカメラ113が撮影したカメラ画像の一例を示す図である。
また、図9は、S415で「覗き見」として判定されるテレワーカ用PC111のカメラ113が撮影したカメラ画像の一例を示す図である。
図9に示すように、テレワーカ本人の顔だけではなく、覗き見をしている第三者の顔が検出されているため、S415で「覗き見」として判定される。
また、図8に示すように、明らかに、テレワーカ本人の顔ではない第三者の顔が検出されているため、S407で「なりすまし」として判定される。
S407の処理を実行すると、処理をステップS408に移行する。
また、S406、S415、S416の処理を実行すると、処理をステップS409に移行する。
テレワークプログラム701は、S408において、エージェント継続処理モードに動作モードを移行する処理を行う(S408)。エージェント継続処理モードとは、ユーザから、テレワークプログラム701であるエージェントの処理(プロセス)の終了指示を受け付け、エージェントの処理(プロセス)が終了したとしても、新たなテレワークプログラム701であるエージェントの処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させない処理モードのことである。
テレワークプログラム701は、S408で、動作モードをエージェント継続処理モードに移行すると、処理をS411に移行する。
制御手段は、S405、S407の判定結果取得手段により取得した判定結果が、ユーザ本人のなりすましであることを示し、かつ、S607の判定手段により、S401の画像取得手段による処理、及び/又はS413の送信手段による処理を実行するプロセスがユーザの操作で終了したと判定された場合に、当該終了したと判定されたプロセスを起動して(S609)、S401の画像取得手段による処理(すなわち、取得手段の取得処理)、及びS413の送信手段による処理を実行するように制御する。
テレワークプログラム701は、S409において、現在の動作モードが、エージェント継続処理モードであるか否かを判定し(S409)、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S409:YES)、エージェント継続処理モードの解除を行い、エージェント継続処理モードに移行する前の動作モードに移行する(S410)。一方、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S409:NO)、処理をS411に移行する。
テレワークプログラム701は、S411において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であるか否かを判定する(S411)。
そして、テレワークプログラム701は、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であると判定された場合には(S411:YES)、現在、テレワーカ用PC111の表示部(ディスプレイ等)に表示されている画面のスクリーンショットをスクリーン画面として取得する(S412)。ここで取得されるスクリーンショットとは、スクリーンキャプチャや画面キャプチャも含む。
また、テレワークプログラム701は、S411において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」ではなく、「在席」、又は「離席」であると判定された場合は(S411:NO)、処理をステップS413に移行する。
テレワークプログラム701は、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する(S413)。ここで、テレワークプログラム701は、S412でスクリーン画像を取得していない場合には、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、及びS401で取得したカメラ画像を、管理サーバ101に証跡情報として送信する。
S413は、本発明の送信手段の適用例であり、S401の画像取得手段で撮影された画像(取得手段により取得された画像(撮影データ))を含む証跡データを管理者端末(管理者用PC121)で閲覧すべく管理サーバ101に送信する。
すなわち、S413の送信手段は、S401の画像取得手段で撮影された画像(取得手段により取得された画像(撮影データ))、及び、S412で取得したスクリーン画像(情報処理装置の表示部に表示された表示画像)を含むデータ(証跡データ)を、管理者に閲覧させるべく送信する。
そして、テレワークプログラム701は、S413の処理を実行すると、処理をS401に戻して、繰り返し、図4の処理を実行する。この繰り返しの処理が、数ミリ秒単位で繰り返し行われるため、現在、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人なのか、テレワーカ本人以外の第三者なのか、又は覗き見をしているのか、あるいは、テレワーカ本人が離席しているのかを管理サーバ101で管理することができるようになる。
また、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人以外の第三者や、第三者が覗き見をしている場合には、テレワークプログラム701は、S413で、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信するので、そのユーザが、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認すること可能となる。
また、テレワークプログラム701は、S407で、テレワーカ本人ではない第三者(他人)が本人になりすまして在席していると判定された場合には、S408において、エージェント継続処理モードに動作モードを移行する処理を行うため、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人以外のなりすましをしている第三者から、テレワークプログラム701であるエージェントの処理(プロセス)の終了指示を受け付け、エージェントの処理(プロセス)が終了したとしても、新たなテレワークプログラム701であるエージェントの処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させずに、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信することができるようになり、第三者がエージェントの処理(プロセス)の終了指示を行ったとしても、その第三者(ユーザ)が、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認・監視すること可能となる。
次に、図5を用いて、S304のテレワーク監視・管理処理の詳細処理について説明する。
図5は、S304のテレワーク監視・管理処理の詳細処理のフローチャートの一例を示す図である。
図5に示す各ステップに示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
図5は、図4で説明したテレワーク監視・管理処理の変形例であり、図4で説明した処理と同じ処理については、同一の符号を付している。そのため、同一符号の処理については、ここでは、説明を省略する。
具体的には、図4では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合にのみ、エージェント継続処理モードに動作モードを移行していたが(S408)、図5では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合に、エージェント継続処理モードに動作モードを移行するようにしている点が異なる。
そのため、図4では、端末前方状態(テレワーカの勤務状態)が、在席、覗き見、離席のいずれかであると判定され、現在、エージェント継続処理モードであると判定された場合に(S409:YES)、エージェント継続処理モードの解除を行った(S410)が、図5では、端末前方状態(テレワーカの勤務状態)が、在席、離席のいずれかであると判定され(S501:NO)、現在、エージェント継続処理モードであると判定された場合に(S503:YES)、エージェント継続処理モードの解除を行う(S504)点が異なる。
図5に示す通り、テレワークプログラム701は、S407、S406、S415、S416の処理を実行すると、処理をS501に移行する。
テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であるか否かを判定する。そして、その判定結果を取得する(S501)。
S403、S405、S501は、本発明の判定結果取得手段の適用例であり、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定結果を取得する。
S403の判定処理は、例えば、管理サーバ101で行い、テレワーカ用PC111がその判定結果をS403で管理サーバ101から取得するようにしてもよい。その場合には、S401の画像取得手段により取得された画像をテレワーカ用PC111が管理サーバ101に送信して、管理サーバ101が、当該画像から顔を検出し、当該検出された顔の数が1個であるか、2以上であるか、0個であるかを判定し、2以上であると判定されると、当該画像に、ユーザ本人以外の第三者の顔が含まれていると判定する。また、検出された顔の数が1個であると判定された場合には、管理サーバ101が、当該画像から検出された1つの顔の顔画像と、管理サーバ101に予め登録されたテレワーカ本人の顔画像との類似度を算出し、当該類似度が、所定の閾値を満たすか否かを判定することにより、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行う。
このようにして、管理サーバ101が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行い、当該判定の結果をテレワーカ用PC111に送信して、テレワーカ用PC111が当該判定の結果を取得する。そして、テレワーカ用PC111は、S501において、当該判定の結果が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれている(すなわち、「覗き見」、又は「なりすまし」である)ことを示す場合には(S501:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。
テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であると判定された場合には(S501:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。一方、テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「在席」、又は「離席」であると判定された場合には(S501:NO)、現在の動作モードが、エージェント継続処理モードであるか否かを判定し(S503)、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S503:YES)、エージェント継続処理モードの解除を行い、エージェント継続処理モードに移行する前の動作モードに移行する(S504)。また、テレワークプログラム701は、S503において、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S503:NO)、処理をS413に移行する。
テレワークプログラム701は、S504の処理を実行すると、処理をS413に移行する。
テレワークプログラム701は、S502の処理を実行すると、処理をS412に移行して、現在、テレワーカ用PC111の表示部(ディスプレイ等)に表示されている画面のスクリーンショットをスクリーン画面として取得する(S412)。ここで取得されるスクリーンショットとは、スクリーンキャプチャや画面キャプチャも含む。
そして、テレワークプログラム701は、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する(S413)。ここで、テレワークプログラム701は、S412でスクリーン画像を取得していない場合には、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、及びS401で取得したカメラ画像を、管理サーバ101に証跡情報として送信する。
このように、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合に(S501:YES)、エージェント継続処理モードに動作モードを移行し、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する。したがって、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人以外の第三者から、テレワークプログラム701であるエージェントの処理(プロセス)の終了指示を受け付け、エージェントの処理(プロセス)が終了したとしても、新たなテレワークプログラム701であるエージェントの処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させずに、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信することができるので、第三者がエージェントの処理(プロセス)の終了指示を行ったとしても、その第三者(ユーザ)が、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認・監視すること可能となる。
次に、図6を用いて、S305の監視プログラム703の監視処理の詳細処理について説明する。
図6は、S305の監視プログラム703の監視処理の詳細処理のフローチャートの一例を示す図である。
図6に示すS601〜S605に示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
また、図6に示すS606〜S609に示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納された監視プログラム703をRAM203にロードして実行することにより実現される。
まず、テレワークプログラム701の処理について、説明する。
テレワークプログラム701は、現在の動作モードが、エージェント継続処理モードであるか否かを判定する(S601)。
そして、テレワークプログラム701は、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S601:YES)、現在、監視プログラム703が起動しているか否かを判定して、現在、監視プログラム703が起動していないと判定された場合には、監視プログラム703を起動する(S602)。ここで、現在、監視プログラム703が起動していると判定された場合には、監視プログラム703を新たに起動することは行わない。
次に、テレワークプログラム701に含まれる監視プログラム702が、現在、監視プログラム703の処理(プロセス)が実行されているか否かを監視する(S603)。
また、監視プログラム703も、S606において、テレワークプログラム701の処理(プロセス)が実行されているか否かを監視している。このように、テレワークプログラム701に含まれる監視プログラム702と、監視プログラム703とが、相互に処理(プロセス)が実行されているか否かを監視している。
次に、テレワークプログラム701は、S603の監視の結果、監視プログラム703の処理(プロセス)が実行されているか、それとも、監視プログラム703の処理(プロセス)が終了しているかを判定する(S604)。
そして、テレワークプログラム701は、監視プログラム703の処理(プロセス)が終了している(終了した)と判定された場合には(S604:YES)、監視プログラム703を起動して、監視プログラム703の処理(プロセス)を実行する(S605)。
すなわち、監視制御手段(S605)は、監視プログラム702(第2監視手段)により、監視プログラム703の処理を実行するプロセスが終了したことを検知した場合に(S604:YES)、当該プロセスを起動するように制御する。
そして、テレワークプログラム701は、処理をS601に戻す。
また、テレワークプログラム701は、S603の監視の結果、監視プログラム703の処理(プロセス)が実行されていると判定された場合には、処理をS603に戻して、監視プログラム702が、現在、監視プログラム703の処理(プロセス)が実行されているか否かを監視する。
また、テレワークプログラム701は、S601において、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S601:NO)、再度、S601に処理を戻して、現在の動作モードが、エージェント継続処理モードであるか否かを判定する。
テレワークプログラム701は、いつでも、ユーザから、例えば、killコマンドなどで、テレワークプログラム701の処理(プロセス)の終了指示を受け付けると、テレワークプログラム701の処理(プロセス)を終了する。
図7(C)は、テレワークプログラム701の監視プログラム702が、監視プログラム703A(703)の処理が終了したことを検知したことをトリガーに、監視プログラム703B(703)の処理を起動することを示す図である。
図7(C)に示すように、エージェント継続処理モードにおいて、テレワークプログラム701に含まれる監視プログラム702が、現在、監視プログラム703Aの処理(プロセス)が実行されているか否かを監視し(S603)、監視プログラム703Aの処理(プロセス)が終了していると判定すると(S604:YES)、監視プログラム703Bを起動して、監視プログラム703Bの処理(プロセス)の処理(プロセス)を実行する(S605)。
次に、監視プログラム703の処理について、説明する。
監視プログラム703は、現在、テレワークプログラム701の処理(プロセス)が実行されているか否かを監視する(S606)。
そして、監視プログラム703(第1監視手段)は、S606の監視の結果、現在、テレワークプログラム701の処理(プロセス)が実行されているか、それとも、テレワークプログラム701の処理(プロセス)が終了しているかを判定する(S607)。
S607は、本発明の判定手段の適用例であり、S401の画像取得手段による処理、及び/又はS413の送信手段による処理を実行するプロセス(テレワークプログラム701のプロセス)が終了したか否かを判定する。
監視プログラム703は、テレワークプログラム701の処理(プロセス)が終了している(終了した)と判定された場合には(S607:YES)、処理をS608に移行し、一方、現在、テレワークプログラム701の処理(プロセス)が実行されていると判定された場合には(S607:NO)、処理をS606に戻して、現在、テレワークプログラム701の処理(プロセス)が実行されているか否かを監視する。
監視プログラム703は、テレワークプログラム701の処理(プロセス)が終了している(終了した)と判定された場合には(S607:YES)、現在の動作モードが、エージェント継続処理モードであるか否かを判定する(S608)。
そして、監視プログラム703は、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S608:YES)、処理をS609に移行し、一方、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S608:NO)、監視プログラム703の処理を終了する。
監視プログラム703は、S609において、エージェント継続処理モードとしてテレワークプログラム701を起動して、エージェント継続処理モードでテレワークプログラム701の処理(プロセス)を実行する。
このように、制御手段は、監視プログラム703(第1監視手段)が、テレワークプログラム701の処理を実行するプロセスが終了したことを検知した場合に(S607:YES)、当該プロセスを起動するように制御する(S609)。
また、監視プログラム703は、エージェント継続処理モードとしてテレワークプログラム701を起動すると、監視プログラム703が、S303で設定登録された認証情報を所定の格納先から取得して、当該起動されたテレワークプログラム701に、当該認証情報を管理サーバ101に送信させる(ユーザの認証要求を行わせる)(S609)。または、監視プログラム703は、エージェント継続処理モードとしてテレワークプログラム701を起動すると(S609)、当該起動されたテレワークプログラム701が、S303で設定登録された認証情報を所定の格納先から取得して、当該認証情報を管理サーバ101に送信してユーザの認証要求を行う。このように、S609の制御手段により、終了したと判定されたテレワークプログラム701のプロセスを起動した場合に、当該起動したテレワークプログラム701の認証要求手段は、S303の受付手段で新たにユーザの操作で認証情報の入力を受け付けることなく、S303の受付手段で前回入力された認証情報を管理サーバに送信して当該ユーザの認証要求を行う(認証要求手段)。
そして、管理サーバ101は、当該認証要求を受信すると、テレワークプログラム701から送信された認証情報(ユーザID、パスワード)と、管理サーバ101に予め登録している認証情報とが一致しているか否かを判定することにより、ユーザの認証処理を実行する。そして、ユーザの認証処理で、管理サーバ101との通信、及び後述のサービスの利用を許可するか否かを判定する。
そして、管理サーバ101は、認証要求手段による認証要求に応答して、認証手段によるユーザの認証処理を行った結果としてユーザの認証結果をテレワーカ用PC111に送信して、テレワーカ用PC111は、管理サーバ101から当該認証結果を受信(取得)する(認証結果取得手段)。
管理サーバ101は、当該認証情報が一致していると判定され、ユーザの認証が成功した(認証された)と判定された(管理サーバ101との通信、及び後述のサービスの利用を許可すると判定された)場合には、テレワークプログラム701に対して、ユーザが認証された旨の通知を送信する。
そして、テレワークプログラム701は、管理サーバ101からユーザが認証された旨の通知を受信すると、認証されたと判定し、S304、及びS305の処理を実行する。
そのため、テレワークプログラム701の判定結果取得手段は、S401の画像取得手段により取得された画像に、認証結果取得手段により取得した認証結果が認証されたことを示すユーザ本人以外の第三者の顔が含まれているか否かの判定結果を取得する(S405、S501)
監視プログラム703は、S609の処理を実行すると、処理をS606に戻して、起動されたテレワークプログラム701の処理(プロセス)が実行されているか否かを監視する(S606)。
監視プログラム703は、いつでも、ユーザから、例えば、killコマンドなどで、監視プログラム703の処理(プロセス)の終了指示を受け付けると、監視プログラム703の処理(プロセス)を終了する。
図7(B)は、監視プログラム702A(702)を含むテレワークプログラム701A(701)の処理が終了したことを監視プログラム703が検知したことをトリガーに、監視プログラム702B(702)を含むテレワークプログラム701B(701)の処理を起動することを示す図である。
図7(B)に示すように、監視プログラム703が、現在、テレワークプログラム701Aの処理(プロセス)が実行されているか否かを監視し(S606)、テレワークプログラム701Aの処理(プロセス)が終了していかと判定された場合(S607:YES)で、かつ、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S608:YES)、監視プログラム703は、監視プログラム702B(702)を含むテレワークプログラム701B(701)の処理を起動する(S609)。
このように、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人以外の第三者から、テレワークプログラム701、あるいは監視プログラム703の処理(プロセス)の終了指示を受け付け、テレワークプログラム701、あるいは監視プログラム703の処理(プロセス)が終了したとしても、新たなテレワークプログラム701、あるいは監視プログラム703の処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させずに、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信することができるので、第三者がテレワークプログラム701、あるいは監視プログラム703の処理(プロセス)の終了指示を行ったとしても、その第三者(ユーザ)が、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認・監視すること可能となる。
S609は、本発明の制御手段の適用例であり、S405、S501の判定結果取得手段により取得した判定結果が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれていると判定されたことを示し、かつ、S607の判定手段により、画像取得手段による処理、及び/又は送信手段による処理を実行するプロセスがユーザの操作で終了したと判定された場合に(S607:YES、S608:YES)、当該終了したと判定されたプロセス(テレワークプログラム701)を起動して、S401の画像取得手段による処理、及びS413の送信手段による処理を実行するように制御する。
具体的には、S609は、本発明の制御手段の適用例であり、S405、S501の判定結果取得手段により取得した判定結果が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれていると判定されたことを示し、かつ、S405、S501の判定結果取得手段で当該判定結果を取得してから、次に、S401の画像取得手段により取得される画像に、ユーザ本人以外の第三者の顔が含まれていないと判定されたことを示す判定結果をS405、S501の判定結果取得手段で取得するまでに、S607の判定手段により、画像取得手段による処理、及び/又は送信手段による処理を実行するプロセスがユーザの操作で終了したと判定された場合に(S607:YES、S608:YES)、当該終了したと判定されたプロセス(テレワークプログラム701)を起動して、S401の画像取得手段による処理、及びS413の送信手段による処理を実行するように制御する。
次に、図5を用いて、S304のテレワーク監視・管理処理の詳細処理について説明する。
図5は、S304のテレワーク監視・管理処理の詳細処理のフローチャートの一例を示す図である。
図5に示す各ステップに示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
図5は、図4で説明したテレワーク監視・管理処理の変形例であり、図4で説明した処理と同じ処理については、同一の符号を付している。そのため、同一符号の処理については、ここでは、説明を省略する。
具体的には、図4では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合にのみ、エージェント継続処理モードに動作モードを移行していたが(S408)、図5では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合に、エージェント継続処理モードに動作モードを移行するようにしている点が異なる。
そのため、図4では、端末前方状態(テレワーカの勤務状態)が、在席、覗き見、離席のいずれかであると判定され、現在、エージェント継続処理モードであると判定された場合に(S409:YES)、エージェント継続処理モードの解除を行った(S410)が、図5では、端末前方状態(テレワーカの勤務状態)が、在席、離席のいずれかであると判定され(S501:NO)、現在、エージェント継続処理モードであると判定された場合に(S503:YES)、エージェント継続処理モードの解除を行う(S504)点が異なる。
図5に示す通り、テレワークプログラム701は、S407、S406、S415、S416の処理を実行すると、処理をS501に移行する。
テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であるか否かを判定する。そして、その判定結果を取得する(S501)。
S403、S405、S501は、本発明の判定結果取得手段の適用例であり、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定結果を取得する。
S403の判定処理は、例えば、管理サーバ101で行い、テレワーカ用PC111がその判定結果をS403で管理サーバ101から取得するようにしてもよい。その場合には、S401の画像取得手段により取得された画像をテレワーカ用PC111が管理サーバ101に送信して、管理サーバ101が、当該画像から顔を検出し、当該検出された顔の数が1個であるか、2以上であるか、0個であるかを判定し、2以上であると判定されると、当該画像に、ユーザ本人以外の第三者の顔が含まれていると判定する。また、検出された顔の数が1個であると判定された場合には、管理サーバ101が、当該画像から検出された1つの顔の顔画像と、管理サーバ101に予め登録されたテレワーカ本人の顔画像との類似度を算出し、当該類似度が、所定の閾値を満たすか否かを判定することにより、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行う。
このようにして、管理サーバ101が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行い、当該判定の結果をテレワーカ用PC111に送信して、テレワーカ用PC111が当該判定の結果を取得する。そして、テレワーカ用PC111は、S501において、当該判定の結果が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれている(すなわち、「覗き見」、又は「なりすまし」である)ことを示す場合には(S501:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。
テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「覗き見」、又は「なりすまし」であると判定された場合には(S501:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。一方、テレワークプログラム701は、S501において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「在席」、又は「離席」であると判定された場合には(S501:NO)、現在の動作モードが、エージェント継続処理モードであるか否かを判定し(S503)、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S503:YES)、エージェント継続処理モードの解除を行い、エージェント継続処理モードに移行する前の動作モードに移行する(S504)。また、テレワークプログラム701は、S503において、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S503:NO)、処理をS413に移行する。
テレワークプログラム701は、S504の処理を実行すると、処理をS413に移行する。
テレワークプログラム701は、S502の処理を実行すると、処理をS412に移行して、現在、テレワーカ用PC111の表示部(ディスプレイ等)に表示されている画面のスクリーンショットをスクリーン画面として取得する(S412)。ここで取得されるスクリーンショットとは、スクリーンキャプチャや画面キャプチャも含む。
そして、テレワークプログラム701は、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する(S413)。ここで、テレワークプログラム701は、S412でスクリーン画像を取得していない場合には、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、及びS401で取得したカメラ画像を、管理サーバ101に証跡情報として送信する。
このように、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合に(S501:YES)、エージェント継続処理モードに動作モードを移行し、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する。したがって、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人以外の第三者から、テレワークプログラム701であるエージェントの処理(プロセス)の終了指示を受け付け、エージェントの処理(プロセス)が終了したとしても、新たなテレワークプログラム701であるエージェントの処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させずに、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信することができるので、第三者がエージェントの処理(プロセス)の終了指示を行ったとしても、その第三者(ユーザ)が、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認・監視すること可能となる。
次に、図10を用いて、S304のテレワーク監視・管理処理の詳細処理について説明する。
図10は、S304のテレワーク監視・管理処理の詳細処理のフローチャートの一例を示す図である。
図10に示す各ステップに示す処理は、テレワーカ用PC111のCPU201が、外部メモリ213等の記憶手段に格納されたテレワークプログラム701(単に、エージェントとも言う)をRAM203にロードして実行することにより実現される。
図10は、図4、図5で説明したテレワーク監視・管理処理の変形例であり、図4、図5で説明した処理と同じ処理については、同一の符号を付している。そのため、同一符号の処理については、ここでは、説明を省略する。
具体的には、図5では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合に(S501:YES)、エージェント継続処理モードに動作モードを移行するようにし、S406で在席と判定された場合、又はS416で離席と判定された場合であって(S501:NO)、現在エージェント継続処理モードで動作中である場合に(S503:YES)、エージェント継続処理モードを解除していた(S504)が、図10では、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合、又はS416で離席と判定された場合に(在席ではないと判定された場合に)(S1001:YES)、エージェント継続処理モードに動作モードを移行するようにし、S406で在席と判定された場合であって(S1001:NO)、現在エージェント継続処理モードで動作中である場合に(S503:YES)、エージェント継続処理モードを解除する点が異なる。
図10に示す通り、テレワークプログラム701は、S407、S406、S415、S416の処理を実行すると、処理をS1001に移行する。
テレワークプログラム701は、S1001において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、本人が「在席」ではないか(「離席」、「覗き見」、又は「なりすまし」であるか)を判定する。そして、その判定結果を取得する(S1001)。
S403、S405、S1001は、本発明の判定結果取得手段の適用例であり、S401の画像取得手段により取得された画像に、正しいユーザ本人以外の第三者の顔が含まれているか否か、誰の顔も含まれていないか否かの判定結果を取得する。
S403の判定処理は、例えば、管理サーバ101で行い、テレワーカ用PC111がその判定結果をS403で管理サーバ101から取得するようにしてもよい。その場合には、S401の画像取得手段により取得された画像をテレワーカ用PC111が管理サーバ101に送信して、管理サーバ101が、当該画像から顔を検出し、当該検出された顔の数が1個であるか、2以上であるか、0個であるか(誰の顔も含まれていないか)を判定し、2以上であると判定されると、当該画像に、ユーザ本人以外の第三者の顔が含まれていると判定する。また、検出された顔の数が1個であると判定された場合には、管理サーバ101が、当該画像から検出された1つの顔の顔画像と、管理サーバ101に予め登録されたテレワーカ本人の顔画像との類似度を算出し、当該類似度が、所定の閾値を満たすか否かを判定することにより、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否かの判定を行う。
このようにして、管理サーバ101が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれているか否か、誰の顔も含まれていないか否かの判定を行い、当該判定の結果をテレワーカ用PC111に送信して、テレワーカ用PC111が当該判定の結果を取得する。そして、テレワーカ用PC111は、S1001において、当該判定の結果が、S401の画像取得手段により取得された画像に、ユーザ本人以外の第三者の顔が含まれている(すなわち、「覗き見」、又は「なりすまし」である)ことを示す場合、又は、誰の顔も含まれていない(「離席」である)ことを示す場合には(S1001:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。
テレワークプログラム701は、S1001において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「在席」ではない(「離席」、「覗き見」、又は「なりすまし」である)と判定された場合には(S1001:YES)、エージェント継続処理モードに動作モードを移行する処理を行う(S502)。一方、テレワークプログラム701は、S1001において、現在、直近で設定された端末前方状態(テレワーカの勤務状態)が、「在席」であると判定された場合には(S1001:NO)、現在の動作モードが、エージェント継続処理モードであるか否かを判定し(S503)、現在の動作モードが、エージェント継続処理モードであると判定された場合には(S503:YES)、エージェント継続処理モードの解除を行い、エージェント継続処理モードに移行する前の動作モードに移行する(S504)。また、テレワークプログラム701は、S503において、現在の動作モードが、エージェント継続処理モードではないと判定された場合には(S503:NO)、処理をS413に移行する。
テレワークプログラム701は、S504の処理を実行すると、処理をS413に移行する。
テレワークプログラム701は、S502の処理を実行すると、処理をS412に移行して、現在、テレワーカ用PC111の表示部(ディスプレイ等)に表示されている画面のスクリーンショットをスクリーン画面として取得する(S412)。ここで取得されるスクリーンショットとは、スクリーンキャプチャや画面キャプチャも含む。
そして、テレワークプログラム701は、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する(S413)。ここで、テレワークプログラム701は、S412でスクリーン画像を取得していない場合には、S413において、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、及びS401で取得したカメラ画像を、管理サーバ101に証跡情報として送信する。
このように、S407で、端末前方状態(テレワーカの勤務状態)がなりすましと判定された場合、又はS415で覗き見と判定された場合、又はS416で離席と判定された場合に(本人のみが「在席」していないと判定された場合)(S1001:YES)、エージェント継続処理モードに動作モードを移行し、直近で設定された端末前方状態(テレワーカの勤務状態)、その日時、S401で取得したカメラ画像、及びS412で取得したスクリーン画像を、管理サーバ101に証跡情報として送信する。
したがって、テレワーカ用PC111の前方にいるユーザが、テレワーカ本人のみが撮影されていない状態で、テレワーカ本人以外の第三者から、テレワークプログラム701であるエージェントの処理(プロセス)の終了指示を受け付け、エージェントの処理(プロセス)が終了したとしても、新たなテレワークプログラム701であるエージェントの処理(プロセス)が立ち上がり、エージェントの処理(プロセス)を終了させずに、S401で取得したカメラ画像、及びS412でスクリーン画像を管理サーバ101に証跡情報として送信することができるので、例えば、正規のテレワーカ本人以外の第三者が、カメラに映らないような姿勢で、エージェントの処理(プロセス)の終了指示を行った場合であっても、すぐに、エージェントの処理(プロセス)が立ち上がり、管理者は、正常ではない端末前方状態と、スクリーン画像を確認することができるようになる。また、正規のテレワーカ本人ではない第三者がエージェントの処理(プロセス)の終了指示を行ったとしても、その第三者(ユーザ)が、テレワーカ用PC111の表示部に表示されているどのような情報を閲覧したのか、また、そのユーザの顔はどのような顔なのかを、管理者は確認・監視すること可能となる。
上記の通り、テレワーカ用PC111の制御手段は、認証結果取得手段により、認証成功したことを示す認証結果を取得した後に、顔認証手段により認証可能なユーザ(認証成功したユーザ)の顔が撮像手段で撮影されていない状態(ユーザの認証を行う認証手段により認証されたユーザの顔が前記撮像手段で撮影されていない状態)(S407、S415、S416の状態)、又は当該ユーザではない顔が前記撮像手段により撮影された状態(S407、S415の状態)で、取得手段による取得処理を実行するプロセス(送信手段による送信処理を実行するプロセス)(701のプロセス)がユーザの操作により終了した場合に(S607:YES)、ユーザの操作を受け付けることなく(受付手段により、ユーザによる認証情報の入力を再度受け付けることなく、)当該プロセスを起動し、取得手段による取得処理、及び送信手段による送信処理を実行するように制御する(S609)。
以上、本発明によれば、正規のユーザではない第三者が、情報処理装置の前方を撮影した画像の取得又は送信を行うプロセスを終了させたとしても、情報処理装置の前方を撮影した画像の取得又は送信を行うことを可能にすることができるようになる。
また、本発明によれば、テレワーカ本人以外の第三者が、証跡データを取得するプログラムの終了指示を行ったとしても、当該第三者の証跡データを取得できるようになる。
本実施例においては、図に示した各フローチャートに示す各ステップの処理をテレワーカ用PC111で実行するものとして説明したが、そのいずれかの処理(一部の処理)を管理サーバ101において実行するよう構成してもよい。この場合、例えば、テレワーカ用PC111から管理サーバに対して、撮影された画像を送信し、管理サーバが、S402〜S407、S415、S416などの処理を、テレワーカ用PC111の代わりに実行する。
本発明は、例えば、システム、装置、方法、プログラムもしくは記録媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、本発明におけるプログラムは、図3〜6、図10に示すフローチャートの処理方法をコンピュータが実行可能なプログラムであり、本発明の記憶媒体は図3〜6、図10の処理方法をコンピュータが実行可能なプログラムが記憶されている。なお、本発明におけるプログラムは図3〜6、図10の各装置の処理方法ごとのプログラムであってもよい。
以上のように、前述した実施形態の機能を実現するプログラムを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムを読み出し、実行することによっても本発明の目的が達成されることは言うまでもない。
この場合、記録媒体から読み出されたプログラム自体が本発明の新規な機能を実現することになり、そのプログラムを記録した記録媒体は本発明を構成することになる。
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、DVD−ROM、磁気テープ、不揮発性のメモリカード、ROM、EEPROM、シリコンディスク等を用いることが出来る。
また、コンピュータが読み出したプログラムを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
また、本発明は、複数の機器から構成されるシステムに適用しても、ひとつの機器から成る装置に適用しても良い。また、本発明は、システムあるいは装置にプログラムを供給することによって達成される場合にも適応できることは言うまでもない。この場合、本発明を達成するためのプログラムを格納した記録媒体を該システムあるいは装置に読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。
さらに、本発明を達成するためのプログラムをネットワーク上のサーバ、データベース等から通信プログラムによりダウンロードして読み出すことによって、そのシステムあるいは装置が、本発明の効果を享受することが可能となる。なお、上述した各実施形態およびその変形例を組み合わせた構成も全て本発明に含まれるものである。