以下、図面を参照して、本発明に係る実施形態について説明する。
〔第1の実施形態〕
第1の実施形態では、携帯端末装置(例えば、携帯電話機)が、シナリオデータに従ってキーマクロ機能を実行可能であり、且つ、そのシナリオデータを、外部の編集装置(例えば、PC(Personal Computer))において編集可能である例について説明する。
先ず、携帯端末の構成を説明する。
図1は携帯端末装置の一例としての携帯電話機1の構成を示すブロック図である。
図1に示すように、携帯電話機1は、例えば、ユーザによる操作を受け付ける操作部2と、制御部3と、表示部4と、無線部5と、送話部6と、受話部7と、カメラ8と、TVチューナー部9と、発音部10と、記憶部11と、メモリカード或いはその他の着脱式記憶媒体13が取り付けられる着脱式記憶媒体取付部12と、を備えて構成されている。
操作部2は、所望の操作を行うことが出来るような態様のものであれば、如何なるものであっても良いが、例えば、十字キーとその中央に配置された決定キーとからなるポインティングデバイス、文字・記号・数字などの入力操作を行うための入力キー、通話を開始するための通話キー、通話を終了するための終話キー、電子メール機能を利用するためのメールキー、ウェブ機能を利用するためのウェブキー、カメラ機能を利用するためのカメラキー、TV機能を利用するためのTVキー、その他の特定操作を行うための特定キーなどを備えて構成されている。
制御部3は、制御動作を実行するCPU(Central Processing Unit)14と、このCPU14の動作用プログラムなどを記憶したROM(Read Only Memory)15と、CPU14の作業領域などとして機能するRAM16と、を備えて構成されている。
制御部3は、操作部2に対する操作やその他のトリガ(通話着信、メール着信、タイマを利用した各種機能における設定時刻の到来など)が発生した場合に、CPU14がROM15に記憶された動作用プログラムを実行することにより、各種の制御動作を行う。
ROM15に記憶された動作用プログラムとしては、キーマクロ用プログラム17が含まれている。
キーマクロ用プログラム17は、一連の操作手順を示すシナリオデータに従って、携帯電話機1を動作させたり、そのようなシナリオデータを携帯電話機1に記憶させたりするキーマクロ機能を実行するためのプログラムである。
表示部4は、制御部3の制御下で各種の表示動作を行う。
無線部5は、基地局との間で無線通信を行うことにより、電子メールの送受信や、ウェブ接続などを行う。
送話部6は、通話の際に相手方に送信される音声などを集音するマイクを備えている。
受話部7は、通話の際に相手方から送信される音声などを発音するマイクを備えている。
カメラ8は、制御部3の制御下で、撮像動作を行う。
TVチューナー部9は、テレビ放送の映像データ及び音声データを受信する。
記憶部11は、例えば、フラッシュメモリからなり、カメラ8により撮像した画像や動画のデータや、受信及び送信した電子メールのデータなどを記憶する。
着脱式記憶媒体取付部12は、例えば、着脱式記憶媒体13としてのメモリカードが挿入されるカードスロットである。
着脱式記憶媒体取付部12に着脱式記憶媒体13が取り付けられた(例えば挿入された)状態においては、該着脱式記憶媒体13に記憶されたデータを制御部3のCPU14により読み取ったり、CPU14が着脱式記憶媒体13にデータを記憶させたりすることが可能となる。
着脱式記憶媒体13には、シナリオデータなどのデータが記憶される。なお、シナリオデータは、それを読み出すための暗証番号(桁数は任意であるが、例えば、4桁程度)と対応付けて記憶されるようになっている。
次に、外部の編集装置の構成を説明する。
図2は、外部の編集装置の一例としてのPC21の構成を示すブロック図である。
図2に示すように、PC21は、例えば、ユーザ(編集者)による操作を受け付ける操作部22と、制御部23と、表示部24と、記憶部25と、メモリカード或いはその他の着脱式記憶媒体13が取り付けられる着脱式記憶媒体取付部26と、を備えて構成されている。
操作部22は、所望の操作を行うことが出来るような態様のものであれば、如何なるものであっても良いが、一般的には、例えば、マウスからなるポインティングデバイスと、文字・記号・数字などの入力操作を行うための入力キーと、を備えて構成されている。
制御部23は、CPU(Central Processing Unit)27と、このCPU27の動作用プログラムなどを記憶したROM(Read Only Memory)28と、CPU27の作業領域などとして機能するRAM29と、を備えて構成されている。
制御部3は、操作部2に対する操作などに応じて、そのCPU27がROM28に記憶された動作用プログラムを実行することにより、各種の制御動作を行う。
なお、ROM28に記憶された動作用プログラムとしては、シナリオデータ編集用プログラム30が含まれている。
シナリオデータ編集用プログラム30は、シナリオデータの編集を行うためのプログラムである。
制御部3のCPU27が行う制御には、編集者によるシナリオデータの編集作業を支援する編集画面を表示部24に表示させる制御と、操作部22に対する操作に応じてシナリオデータを編集する編集制御と、が含まれる。
表示部24は、制御部23の制御下で各種の表示動作を行う。
着脱式記憶媒体取付部26は、例えば、着脱式記憶媒体13としてのメモリカードが挿入されるカードスロットである。
着脱式記憶媒体取付部26に着脱式記憶媒体13が取り付けられた状態においては、該着脱式記憶媒体13に記憶されたデータを制御部23のCPU27により読み取ったり、CPU27が着脱式記憶媒体13にデータを記憶させたりすることが可能となる。
このため、例えば、着脱式記憶媒体13を携帯電話機1に取り付けた状態においてシナリオデータを着脱式記憶媒体13に記憶させた後、該着脱式記憶媒体13を携帯電話機1から取り外してPC21の着脱式記憶媒体取付部26に取り付けることにより、着脱式記憶媒体13に記憶されたシナリオデータをPC21のCPU27により読み出し、該シナリオデータを編集者の操作に従って編集することができるようになっている。
記憶部25は、例えばハードディスクドライブからなる。
次に、動作を説明する。
図3は携帯電話機1が予め記憶したシナリオデータに従った動作を実行するフローと、携帯電話機1が一連の操作手順をシナリオデータとして記憶する動作を実行するフローと、を示すフローチャートである。
なお、以下では、携帯電話機1がシナリオデータに従った動作を実行したり、一連の操作手順をシナリオデータとして記憶したりする機能を「キーマクロ機能」と称する。このキーマクロ機能は、携帯電話機1のCPU14がキーマクロ用プログラム17を実行することにより実現できるようになっている。
先ず、携帯電話機1に電源が投入された当初は、キーマクロ機能が停止中の状態(未だ起動されていない状態)であり(ステップS1)、CPU14は、キーマクロ機能の起動を指示する操作の有無を監視する。
ここで、キーマクロ機能の起動を指示する操作は、具体的には、例えば、操作部2に含まれる特定キーを長押しする操作であるものとする。
従って、CPU14は、特定キーが長押しされたか否かを監視する(ステップS2)。
特定キーの長押しを検出できない場合(ステップS2のNo)は、ステップS1に戻る。
特定キーの長押しを検出した場合(ステップS2のYes)は、CPU14は、キーマクロ用プログラム17を実行することにより、キーマクロ機能を起動する(ステップS3)。
ここで、キーマクロ機能の実行時において、キーマクロ機能と他の機能とが競合してしまうことを防ぐため、CPU14は、キーマクロ機能実行のために使用しない数字キー以外の操作キー(通常キー)に対する操作は無効とする(ステップS4)。
続いて、CPU14は、シナリオデータ呼び出し用の暗証番号の入力画面を表示部4に表示させ、暗証番号が入力されたか否かを判定する(ステップS5)。
ステップS5は、暗証番号が入力されるまで繰り返し行う。
暗証番号が入力されると(ステップS5のYes)、CPU14は、入力された暗証番号が、シナリオデータと対応付けて記憶されている暗証番号と一致するか否かを判定する(ステップS6)。
暗証番号が一致した場合(ステップS6のYes)、CPU14は、その暗証番号と対応するシナリオデータを読み出す(ステップS7)。ここで、シナリオデータは、暗証番号と対応付けて、例えば着脱式記憶媒体13に記憶されており、CPU14は、暗証番号と対応するシナリオデータを着脱式記憶媒体13内から読み出す。
続いて、CPU14は、読み出したシナリオデータに従った順序で動作を実行する(キーマクロを実行する)(ステップS9)。
ステップS9の後は、CPU14がキーマクロ機能を終了し、ステップS1からの繰り返しとなる。
また、上記のステップS6の判定の結果、シナリオデータと対応付けて記憶されている暗証番号と入力された暗証番号とが一致しなかった場合(ステップS6のNo)、シナリオデータの記憶モードに移行する。
すなわち、CPU14は、先ず、シナリオデータを記憶する処理の開始を指示する操作の有無を監視する。
ここで、シナリオデータを記憶する処理の開始を指示する操作は、具体的には、例えば、操作部2に含まれる通話キーを押下する操作であるものとする。
従って、CPU14は、通話キーが押下されたか否かを監視する(ステップS10)。
ステップS10の監視は、通話キーの押下を検出するまで繰り返し行う。
通話キーの押下を検出した場合(ステップS10のYes)、CPU14は、シナリオデータを記憶する処理を行う(ステップS11)。
すなわち、CPU14は、ステップS11の実行中にユーザにより行われる一連の操作を、シナリオデータとして一時的にRAM16に記憶する。
なお、ステップS11の実行中には、数字キー以外のキー操作も必要であるので、ステップS10のYesとなった後は、先のステップS4にて無効化されていた通常キーの操作を有効化する。
また、CPU14は、ステップS11と並行して、シナリオデータを記憶する処理の終了を指示する操作の有無を監視する。
ここで、シナリオデータを記憶する処理の終了を指示する操作は、具体的には、例えば、操作部2に含まれる終話キーを押下する操作であるものとする。
従って、CPU14は、終話キーが押下されたか否かを監視する(ステップS12)。
ステップS11の処理は、ステップS12にて終話キーの押下を検出するまで続ける。
終話キーの押下を検出した場合(ステップS12のYes)、CPU14は、先のステップS11にてRAM16に記憶したシナリオデータを着脱式記憶媒体13に記憶する/しないの選択操作をユーザに促す画面を表示部4に表示させ(ステップ13)、ユーザによる選択結果を判定する(ステップS14)。
画面表示に従って、ユーザが「記憶しない」旨の選択操作を行った場合(ステップS14のNo)、CPU14がキーマクロ機能を終了し、ステップS1からの繰り返しとなる。
画面表示に従って、ユーザが「記憶する」旨の選択操作を行った場合(ステップS14のYes)、CPU14は、先のステップS11にて記憶したシナリオデータの呼び出し用の暗証番号の入力画面を表示部4に表示させ、暗証番号が入力されたか否かを判定する(ステップS15)。
ステップS15は、暗証番号が入力されるまで繰り返し行う。
暗証番号が入力されると(ステップS15のYes)、CPU14は、入力された暗証番号が、既に着脱式記憶媒体13に記憶されている何れかのシナリオデータと対応する暗証番号と一致するか否かを判定する(ステップS16)。
記憶されている何れの暗証番号とも一致しなかった場合(ステップS16のNo)、CPU14は、先のステップS11にてRAM16に記憶したシナリオデータと、先のステップS15にて入力を確認した暗証番号と、を対応付けて着脱式記憶媒体13に記憶させる(ステップS19)。
記憶されている何れかの暗証番号と一致した場合(ステップS16のYes)、CPU14は、先のステップS11にてRAM16に記憶したシナリオデータを、先のステップS15にて入力を確認した暗証番号と対応付けて着脱式記憶媒体13に記憶されている古いシナリオデータに上書きする/しないの選択操作をユーザに促す画面を表示部4に表示させ(ステップ17)、ユーザによる選択結果を判定する(ステップS18)。
画面表示に従って、ユーザが「上書きしない」旨の選択操作を行った場合(ステップS18のNo)、CPU14がキーマクロ機能を終了し、ステップS1からの繰り返しとなる。
画面表示に従って、ユーザが「上書きする」旨の選択操作を行った場合(ステップS18のYes)、CPU14は、先のステップS11にてRAM16に記憶したシナリオデータを、先のステップS15にて入力を確認した暗証番号と対応付けて着脱式記憶媒体13に記憶されている古いシナリオデータに上書きする(ステップS19)。
ステップS19の後は、CPU14がキーマクロ機能を終了し、ステップS1からの繰り返しとなる。
ここで、シナリオデータは、携帯電話機1を操作して実行することができる任意の機能を自動的に実行するためのものとして作成することができる。
シナリオデータの利用の仕方としては、携帯電話機1のエンドユーザが利用するだけでなく、携帯電話機1の工場出荷前の試験(耐久試験など)を行うために利用することが挙げられる。
本実施形態の場合、前者の場合のシナリオデータを作成したり、そのシナリオデータを編集することも勿論できるが、後者の場合のシナリオデータを作成する例について、以下に説明する。
携帯電話機1の工場出荷前の試験の具体的な例としては、例えば、TV機能の起動/終了を何度も(例えば、数千回、或いは数万回など)繰り返すものが挙げられる。そのように、非常に多くの手順を含む操作を実際に行い、シナリオデータとして携帯電話機1に記憶させるのは、非常に多くの手間がかかるため実際的ではない。
そこで、本実施形態では、PC21においてシナリオデータを編集することにより、非常に多くの手順を含む操作を実行するためのシナリオデータについても容易に作成できるようにする。
例えば、最終的に必要なシナリオデータが、上記のようにTV機能の起動/終了を何度も繰り返す操作を自動的に行うためのシナリオデータであるとする。
この場合、図3のステップS11では、例えば、TV機能の起動/終了を1セット分だけ実行させるような一連の操作を実際に行ってRAM16に記憶させ、更に、この一連の操作をステップ19にてシナリオデータとして着脱式記憶媒体13に記憶させると良い。
ここで、携帯電話機1のCPU14は、操作部2に対するユーザの操作の種類及び順番をRAM16に記憶するに際し、各操作の結果として行われる処理に必要とされる時間に相当する十分な待機時間を設定する。すなわち、具体的には、TV機能の起動操作に対しては、実際に表示部4にTV映像が表示されるとともに携帯電話機1が次の操作を受け付け可能となるまでの十分な待機時間を設定する。同様に、TV機能の終了操作に対しては、表示部4からTV映像の表示が消えるとともに携帯電話機1が次の操作を受付可能となるまでの十分な待機時間を設定する。
その後、着脱式記憶媒体13を携帯電話機1の着脱式記憶媒体取付部12から取り外してからPC21の着脱式記憶媒体取付部26に取り付け、以下に説明するような手順でPC21にてシナリオデータを編集することにより、最終的に必要なシナリオデータを作成することができる。
図4はPC21におけるシナリオデータの編集動作の流れを示すフローチャートである。
なお、以下では、PC21が編集者の操作に応じてシナリオデータを編集する機能を「キーマクロ編集機能」と称する。このキーマクロ編集機能は、PC21のCPU27がキーマクロ編集用プログラム30を実行することにより実現できるようになっている。
先ず、PC21に電源が投入された当初は、キーマクロ編集機能が停止中の状態(未だ起動されていない状態)である(ステップS31)。
なお、PC21に電源投入されると、CPU27は、自動的にメニュー画面を表示部24に表示させるようになっており、そのメニューには、キーマクロ編集機能を起動するための「キーマクロ編集」という項目が含まれているものとする。
ステップS31に続いて、CPU27は、キーマクロ編集機能の起動を指示する操作の有無を監視する。すなわち、CPU27は、メニューの中から「キーマクロ編集」が選択されたか否かを判定する(ステップS32)。
「キーマクロ編集」が選択されていないとCPU27が判定する限りは、ステップS31からの繰り返しとなる。
「キーマクロ編集」が選択されたとCPU27が判定すると(ステップS32のYes)、CPU27は、キーマクロ編集用プログラム30を実行することによりキーマクロ編集機能を起動して、先ず、シナリオデータ読み出し用の暗証番号の入力画面を表示部24に表示させ、暗証番号が入力されたか否かを判定する(ステップS33)。
ステップS33の判定は、暗証番号が入力されるまで繰り返し行う。
暗証番号が入力されると(ステップS33のYes)、CPU27は、入力された暗証番号が、着脱式記憶媒体13に何れかのシナリオデータと対応付けて記憶されている暗証番号と一致するか否かを判定する(ステップS34)。
暗証番号が一致しない限りは、ステップS33からの繰り返しとなる。
暗証番号が一致した場合(ステップS34のYes)は、CPU27は、その暗証番号と対応するシナリオデータを着脱式記憶媒体13から読み出す(ステップS35)。
続いて、CPU27は、シナリオデータの編集作業を支援する画面、すなわちキーマクロ編集画面を表示部24に表示させる(ステップS36)。
続いて、CPU27は、編集者の操作に応じてシナリオデータの編集を行い、該編集後のシナリオデータを随時にRAM29に記憶させる(ステップS37)。
ここで、シナリオデータは、例えば、C言語或いはその他のプログラミング言語からなるデータであることが挙げられる。この場合、編集者は、そのようなプログラミング言語の知識を有していることが必要であるが、シナリオデータの文字列をコピー・アンド・ペーストするといった操作をPC21の操作部22に対して行うことにより、極めて簡単にシナリオデータを編集することができる。すなわち、具体的には、シナリオデータに含まれるTV機能の起動/終了の操作の数を必要なだけ増やすことができる。
また、CPU27は、ステップS37と並行して、シナリオデータの編集の終了を指示する操作の有無を監視する(ステップS38)。
ステップS37の処理は、ステップS38にてシナリオデータの編集の終了を指示する操作を検出するまで続ける。
シナリオデータの編集の終了を指示する操作を検出した場合(ステップS38のYes)、CPU27は、先のステップS36での編集によりRAM29に一時的に記憶しているシナリオデータを、着脱式記憶媒体13に上書きする/しないの選択操作をユーザに促す画面を表示部24に表示させ(ステップ39)、ユーザによる選択結果を判定する(ステップS40)。
画面表示に従って、ユーザが「上書きしない」旨の選択操作を行った場合(ステップS40のNo)、CPU27がキーマクロ編集機能を終了し、ステップS31からの繰り返しとなる。
画面表示に従って、ユーザが「上書きする」旨の選択操作を行った場合(ステップS40のYes)、CPU27は、先のステップS33にて入力を確認した暗証番号と対応付けて着脱式記憶媒体13に記憶されているシナリオデータを、先のステップS37での編集によりRAM29に一時的に記憶しているシナリオデータにより上書きする(ステップS41)。
なお、ステップS41の後は、CPU27がキーマクロ編集機能を終了し、ステップS31からの繰り返しとなる。
こうして、着脱式記憶媒体13には、古いシナリオデータの代わりに、編集後のシナリオデータが記憶された状態となる。
その後は、着脱式記憶媒体13をPC21の着脱式記憶媒体取付部26から取り外して、再び携帯電話機1の着脱式記憶媒体取付部12に取り付けた後、図3におけるステップS1〜ステップS9の動作を行うことにより、編集後のシナリオデータに従った動作を携帯電話機1に行わせることができる。すなわち、具体的には、例えば、TV機能の起動/終了を必要回数繰り返すような動作を自動的に行うことができる。
以上のような第1の実施形態によれば、編集装置としてのPC21は、表示動作を行う表示部24と、表示部24の表示制御を含む制御動作を行う制御部23と、シナリオデータの編集者による操作を受け付ける操作部22と、を備え、制御部23は、編集者によるシナリオデータの編集作業を支援する編集画面を表示部24に表示させる制御と、操作部22に対する操作に応じてシナリオデータを編集する編集制御と、を行うので、PC21においてシナリオデータを編集することができる。よって、シナリオデータとして記憶させたい一連の操作を携帯電話機1に対して実際には行わなくても、その一連の操作を行った場合と同じ動作を実行するためのシナリオデータを作成することができる。
よって、例えば、携帯端末装置1の工場出荷前の試験(耐久試験など)のように非常に多くの手順を含む操作を携帯電話機1に記憶させることも容易である。
なお、上記の第1の実施形態では、着脱式記憶媒体13としてメモリカードを例示したが、その他の着脱式記憶媒体(USBメモリなど)を用いても良い。
また、上記の第1の実施形態では、着脱式記憶媒体13を携帯電話機1及びPC21にそれぞれ着脱可能とすることにより、シナリオデータ及びその暗証番号を携帯電話機1及びPC21でそれぞれ読み出し可能にしたが、携帯電話機1とPC21とをデータ転送用の通信ケーブル(USBケーブルなど)を用いて接続した状態で、携帯電話機1とPC21との間でシナリオデータ及びその暗証番号を相互に転送できるようにしても良い。この場合、シナリオデータ及びその暗証番号は、携帯電話機1においては記憶部11に記憶するようにすれば良い。また、この場合、PC21においては、編集のためだけに用いることができれば良いので、例えばRAM16に記憶するようにすればよい。ただし、PC21におけるシナリオデータの編集中に、一旦PC21の電源を落とす場合など、必要に応じて、シナリオデータ及びその暗証番号を記憶部25に記憶するようにすれば良い。
〔第2の実施形態〕
上記の第1の実施形態では、外部の編集装置(例えばPC)においてシナリオデータを編集可能である例を説明したが、第2の実施形態では、携帯端末(例えば、携帯電話機)においてシナリオデータを編集可能である例を説明する。
本実施形態の場合、携帯電話機1は、シナリオデータの編集機能を有する点でのみ上記の第1の実施形態と相違し、その他の点では上記の第1の実施形態と同様である。すなわち、本実施形態の場合のキーマクロ用プログラム17は、は、上記の第1の実施形態で説明したキーマクロ機能に加えて、シナリオデータの編集機能をCPU14に実行させるものである。
上記の第1の実施形態では、携帯電話機1の工場出荷前の試験を行う場合などを想定したシナリオデータを編集により作成する例を説明したが、本実施形態では、携帯電話機1のエンドユーザが利用する機能を実現するシナリオデータを作成及び編集する例を説明する。
そのようなシナリオデータの例としては、例えば、電子メールの送信を行うための一連の操作を実現するものが挙げられる。
以下では、具体例として、電子メールの送信を行うための一連の操作をシナリオデータとして記憶する例を説明する。
図5乃至図15に示す一連の図は、図3のステップS11の動作の一例を説明するための図であり、電子メールの送信を行うための一連の操作手順を記憶する際に、表示部4において表示される一連の画面表示の例を示すものである。
携帯電話機1のCPU14は、図3のステップS10に続いては、例えば図5に示すようなメニュー選択画面を表示部4に表示させるようになっており、そのメニューには、例えば、メール機能を選択するための「メール」とう項目と、ウェブ接続機能を選択するための「ウェブ」という項目と、携帯アプリ(アプリケーションソフトの略)の実行機能を選択するための「アプリ」という項目と、カメラ機能を選択するための「カメラ」という項目が含まれている。
なお、図5に示すメニュー選択画面は、通常のメニュー選択画面(キーマクロ機能が起動していないときのメニュー選択画面)と比べて、「−キーマクロ記憶中−」との表示と、「※停止したいところで終話キーを押して下さい。」との表示が存在する点でのみ相違する。これらの相違点は、図6乃至図15においても同様である。
先ず、図5のようなメニュー選択画面において、ユーザが「メール」にカーソルを合わせることにより「メール」を選択し、更に確定する操作(例えば、決定キーの押下)を行う。
続いて、図6に示すように、例えば、「メール」におけるメニュー画面が表示部4に表示される。この画面には、例えば、メール送信を行うための「メール送信」という項目と、受信したメールを閲覧するための「受信ボックス」という項目と、送信済みのメールを閲覧するための「送信済みボックス」という項目が含まれている。
ここでは、ユーザは、「メール送信」にカーソルを合わせることにより「メール送信」を選択し、更に確定する操作を行う。
続いて、図7に示すように、例えば、メールの種類(例えば、比較的多い文字数でも送信できるロングメール又は比較的少ない文字数しか送信できないショートメールの何れか)の選択画面が表示部4に表示されるので、ユーザは、例えば、「ロングメール」にカーソルを合わせることにより「ロングメール」を選択し、更に確定する操作を行う。
続いて、図8に示すように、例えば、メールを構成する項目であって、それぞれ個別に入力が可能な項目(例えば、宛先、件名、本文、及び添付ファイル)を表示する画面が表示部4に表示されるので、ユーザは、例えば、先ず、「宛先」にカーソルを合わせることにより「宛先」を選択し、更に確定する操作を行う。
続いて、例えば図9に示すように、宛先の選択画面が表示部4に表示されるので、ユーザは、例えば、「あ」のセクションに含まれる宛先の候補から「秋田(さん)」にカーソルを合わせ、更に確定する操作を行うことにより、メールの宛先を「秋田(さん)」に決定する。
続いて、再び、メールの各構成項目の表示画面が表示部4に表示されるので、ユーザは、図10に示すように、例えば、「件名」にカーソルを合わせることにより「件名」を選択し、更に確定する操作を行う。
続いて、図11に示すように、件名の入力画面が表示部4に表示されるので、ユーザは、件名の入力欄に、例えば、「今日の帰り」などのように件名を入力した後で、例えば、その入力欄の下側に表示されている「決定」ボタンにカーソルを合わせて確定操作を行うことにより、件名を決定する。
続いて、再び、メールの各構成項目の表示画面が表示部4に表示されるので、ユーザは、図12に示すように、例えば、「本文」にカーソルを合わせることにより「本文」を選択し、更に確定する操作を行う。
続いて、図13に示すように、本文の入力画面が表示部4に表示されるので、ユーザは、本文の入力欄に、例えば、「今日も帰りが遅くなりますが、大丈夫ですか?」などのように本文を入力した後で、例えば、その入力欄の下側に表示されている「決定」ボタンにカーソルを合わせて確定操作を行うことにより、本文の内容を決定する。
続いて、再び、メールの各構成要素の表示画面が表示部4に表示されるので、ユーザは、図14に示すように、「送信」ボタンにカーソルを合わせて確定操作を行うことにより、作成した電子メールを送信する。
続いて、電子メールの送信が完了すると、例えば、図15に示すように、「送信完了しました。」とのメッセージが表示部4に表示されるので、ユーザは、終話キーを押下し、操作手順の記憶処理を終了させる。
こうして、CPU14は、図5乃至図15を用いて説明した一連の操作手順をRAM16に記憶する。
ここで、本実施形態の場合も、CPU14は、操作部2に対するユーザの操作の種類及び順番を記憶するに際し、それぞれの操作の後には、各操作の結果として行われる処理に必要とされる時間に相当する十分な待機時間を設定する。
すなわち、記憶したシナリオデータを実行する場合に、例えば、図14に示す電子メールの送信操作を行った後で、直ちにキーマクロ機能を終了したのでは、電子メールの送信が完了しない可能性があるため、電子メールの送信操作の後には、実際に電子メールを送信するのに必要であると想定される待機時間を設定する。
なお、このようにRAM16に一時的に記憶している一連の操作手順をシナリオデータとして着脱式記憶媒体13に記憶する処理については、上記の第1の実施形態で説明した通りであり、ここでは説明を省略する。
次に、本実施形態の場合に、着脱式記憶媒体13に記憶されているシナリオデータを編集する動作について説明する。
図16は携帯電話機1におけるシナリオデータの編集動作の流れを示すフローチャートである。
なお、以下では、携帯電話機1が編集者の操作に応じてシナリオデータを編集する機能を「キーマクロ編集機能」と称する。このキーマクロ編集機能は、携帯電話機1のCPU14がキーマクロ用プログラム17を実行することにより実現できるようになっている。
先ず、携帯電話機1に電源が投入された当初は、キーマクロ編集機能が停止中の状態(未だ起動されていない状態)である(ステップS51)。
なお、携帯電話機1に電源投入されると、CPU14は、自動的にメニュー画面を表示部4に表示するように構成されており、そのメニューには、キーマクロ編集機能を起動するための「キーマクロ編集」という項目が含まれているものとする。
ステップS51に続いて、CPU14は、キーマクロ編集機能の起動を指示する操作の有無を監視する。すなわち、CPU14は、メニューの中から「キーマクロ編集」が選択されたか否かを判定する(ステップS52)。
「キーマクロ編集」が選択されていないとCPU14が判定する限りは、ステップS51からの繰り返しとなる。
「キーマクロ編集」が選択されたとCPU14が判定すると(ステップS52のYes)、CPU14は、キーマクロ用プログラム17に含まれるキーマクロ編集用のプログラムを実行することによりキーマクロ編集機能を起動して、先ず、シナリオデータ読み出し用の暗証番号の入力画面を表示部4に表示させ、暗証番号が入力されたか否かを判定する(ステップS53)。
ステップS53の判定は、暗証番号が入力されるまで繰り返し行う。
暗証番号が入力されると(ステップS53のYes)、CPU14は、入力された暗証番号が、着脱式記憶媒体13に何れかのシナリオデータと対応付けて記憶されている暗証番号と一致するか否かを判定する(ステップS54)。
ステップS54での判定の結果、暗証番号が一致しない限りは、ステップS53からの繰り返しとなる。
暗証番号が一致した場合(ステップS54のYes)は、CPU14は、その暗証番号と対応するシナリオデータを着脱式記憶媒体13から読み出す(ステップS55)。
続いて、CPU14は、シナリオデータの編集を行うための画面、すなわちキーマクロ編集画面を表示部4に表示させる(ステップS56)。
続いて、CPU14は、携帯電話機1のユーザの操作に応じてシナリオデータの編集を行い、該編集後のシナリオデータを随時にRAM29に記憶させる(ステップS57)。
また、CPU14は、ステップS57と並行して、シナリオデータの編集の終了を指示する操作の有無を監視する(ステップS58)。
ステップS57の処理は、ステップS58にてシナリオデータの編集の終了を指示する操作を検出するまで続ける。
シナリオデータの編集の終了を指示する操作を検出した場合(ステップS58のYes)、CPU14は、先のステップS56での編集によりRAM16に一時的に記憶しているシナリオデータを、着脱式記憶媒体13に上書きする/しないの選択操作をユーザに促す画面を表示部4に表示させ(ステップ59)、ユーザによる選択結果を判定する(ステップS59)。
画面表示に従って、ユーザが「上書きしない」旨の選択操作を行った場合(ステップS60のNo)、CPU14がキーマクロ編集機能を終了し、ステップS51からの繰り返しとなる。
画面表示に従って、ユーザが「上書きする」旨の選択操作を行った場合(ステップS60のYes)、CPU14は、先のステップS53にて入力を確認した暗証番号と対応付けて着脱式記憶媒体13に記憶されているシナリオデータを、先のステップS57での編集によりRAM16に一時的に記憶しているシナリオデータにより上書きする(ステップS61)。
なお、ステップS61の後は、CPU14がキーマクロ編集機能を終了し、ステップS51からの繰り返しとなる。
こうして、着脱式記憶媒体13には、古いシナリオデータの代わりに、編集後のシナリオデータが記憶された状態となる。
次に、図16のステップS57での編集動作の一例について、詳細に説明する。
ここでは、編集動作の具体例として、図5乃至図15を用いて説明したような動作の結果として記憶されたシナリオデータ、すなわち、電子メールの送信を行うための一連の操作手順を示すシナリオデータを編集する例を説明する。
本実施形態の場合は、C言語などの専門知識を持たない携帯電話機1のエンドユーザによるシナリオデータの編集作業を想定しており、以下に説明するように、表示部4は、簡単な編集を支援するユーザインタフェースとして機能するようになっている。
図17乃至図21に示す一連の図は、図16のステップS57の動作の一例を説明するための図であり、電子メールの送信を行うための一連の操作手順のシナリオデータを編集する際に、ユーザによる編集作業を支援するために、表示部4において表示する一連の画面表示の例を示すものである。
CPU14は、先ず、図17に示すような編集画面を表示部4に表示させる。この編集画面には、記憶したシナリオデータに含まれる一連の手順が表示されている。すなわち、例えば、「メール種類選択」→「宛先選択」→「件名入力」→「本文入力」→「送信」という一連の手順が表示されている。
つまり、図17に示す編集画面は、シナリオデータと対応する一連の編集可能項目(「メール種類選択」、「宛先選択」、「件名入力」、「本文入力」、「送信」と、それらの間の「→(矢印ボタン)」)を表示する第1の編集画面である。
なお、図17に示す編集画面には、「−キーマクロNo.3編集中−」との表示と、「※編集箇所を選択して下さい。」との表示が存在する。「−キーマクロNo.3編集中−」との表示は、記憶されている複数のシナリオデータのうち、3番目(No.3)のシナリオデータの編集中である旨をユーザに伝えるものである。また、「※編集箇所を選択して下さい。」との表示は、編集画面に表示されている項目のうち編集したい項目を選択すればよい旨をユーザに伝えるものである。これらの表示は、図18乃至図21(並びに、図22乃至図27)においても同様である。
ここでは、ユーザは電子メールの本文を編集したいものとする。
そこで、ユーザは、先ず、図17の編集画面においてカーソルを移動することにより、図18に示すように「本文入力」を選択し、更に確定する操作(例えば、決定キーの押下)を行う。
すると、CPU14は、例えば図19に示すように、本文の編集画面を表示部4に表示させる。
このように、第1の編集画面(図18)における何れかの編集可能項目(例えば、「本文入力」)が操作部2に対する操作によって選択されると、該選択された編集可能項目の編集を支援する第2の編集画面(図19)を表示部34に表示させる。
図19の編集画面が表示されると、ユーザは、本文の入力欄の文字列を編集する。具体的には、例えば、元々は「今日も帰りが遅くなりますが、大丈夫ですか?」といった本文を、図20に示すように「今から帰りますが、何か買うものはありますか?」といった本文に変更した後で、例えば、その入力欄の下側に表示されている「決定」ボタンにカーソルを合わせて確定操作を行うことにより、本文の内容を決定する。
続いて、再び、CPU14は、図21に示すような編集画面を表示部4に表示させるので、ユーザは、その編集画面の下部に表示されている「終了」ボタンにカーソルを合わせて確定操作を行うことにより、編集操作を終了する。
なお、図21において「終了」ボタンにカーソルを合わせて確定操作を行う結果として、図16のステップS58の判定が「Yes」となる。
その後は、図16のステップS59〜ステップS61の処理を経ることにより、編集前の古いシナリオデータが編集後のシナリオデータにより上書きされる。
次に、シナリオデータの編集の他の例を説明する。
上記においては、元のシナリオデータに含まれている手順の一部(例えば、メールの本文)を変更する例を説明したが、以下では、元のシナリオデータには含まれていない新たな手順を追加する(例えば挿入する)例を説明する。
この場合、図22に示すように、先ず、ユーザは、編集画面において、例えば、「本文入力」と「送信」との間にある矢印ボタンB1を選択及び決定する操作を行う。
すると、CPU14は、例えば、図23に示すように、挿入可能な操作の選択候補の一覧を表示部4に表示させる。
このように、第1の編集画面(図22)における何れかの編集可能項目(例えば、「本文入力」と「送信」との間にある矢印ボタンB1)が操作部2に対する操作によって選択されると、該選択された編集可能項目の編集を支援する第2の編集画面(図23)を表示部4に表示させる。
この場合、例えば、画像ファイル(静止画ファイル)、動画ファイル、音楽ファイルのうちの何れか1つ又は複数をメールに添付する操作を挿入できるようになっている。
そこで、ユーザは、例えば、図23に示すように、画像ファイル添付の欄のチェックボックスC1を選択した後で、一覧の下側に表示されている「決定」ボタンを選択及び確定する操作を行う。
すると、CPU14が、例えば、図24に示すように、添付可能な画像ファイルの一覧を表示部4に表示させる。
このように、CPU14は、第2の編集画面(図23)において、選択された編集可能項目(例えば、「本文入力」と「送信」との間にある矢印ボタンB1)に対して実行可能な編集の候補の一覧(具体的には、例えば、画像ファイル添付、動画ファイル添付、音楽ファイル添付)を表示させ、第2の編集画面に表示させた候補の何れかが操作部2に対する操作によって選択されると、該選択された候補の編集を支援する第3の編集画面(図24)を表示部4に表示させる。
ユーザは、例えば、その一覧に含まれる「画像0003.JPG」というファイル名の画像ファイルのチェックボックスC2を選択した後で、一覧の下側に表示されている「決定」ボタンを選択及び確定する操作を行う。
すると、例えば、図25に示すように、再び、シナリオデータに含まれる一連の手順を表示した編集画面が表示部4に表示されるが、この段階では、「本文入力」と「送信」との間に「画像ファイル添付」という手順が追加(挿入)されている。
図25の編集画面において、その下部に表示されている「終了」を選択及び決定する操作をユーザが行うことにより、シナリオデータの編集を終了することが出来る(図16のステップS58のYes)。
次に、編集により、元のシナリオデータに含まれている手順の一部を削除する例を説明する。
例えば、元のシナリオデータが、図26に示すように、「メール種類選択」→「宛先選択」→「件名入力」→「本文入力」→「画像ファイル添付」→「送信」という一連の手順を含むものであり、このうち「画像ファイル添付」の手順を削除するものとする。
この場合、ユーザは、先ず、図26に示すように、一連の手順を示す編集画面において、「画像ファイル添付」を選択及び確定する操作を行う。
すると、図27に示すように、「画像ファイル添付」という手順に対して実行することが可能な編集内容の候補の一覧が表示部4に表示される。
図27の画面において、「ステップ削除」のチェックボックスC3を選択した上で「決定」ボタンを選択及び確定すれば、例えば、「画像ファイル添付」という手順をシナリオデータから削除することができる。
図27の次には、例えば、図22に示すような画面表示となる。
なお、図27の画面において、「挿入ステップ変更」のチェックボックスC4を選択した上で「決定」ボタンを選択及び確定した場合には、図23の編集画面に移行し、元々は「画像ファイル添付」という手順だったところを、動画ファイルの添付を行うための「動画ファイル添付」という手順、或いは音楽ファイルの添付を行うための「音楽ファイル添付」という手順に変更することができるようになっている。なお、図23において、「動画ファイル添付」或いは「音楽ファイル添付」をチェックした後で、「決定」ボタンを選択及び確定した場合には、図24に示す画像ファイルの選択画面と同様に、動画ファイルの選択画面、或いは音楽ファイルの選択画面が表示され、それぞれファイルを選択できるようになっている。
以上のような第2の実施形態によれば、携帯電話機1は、表示動作を行う表示部4と、表示部4の表示制御を含む制御動作を行う制御部3と、シナリオデータの編集者による操作を受け付ける操作部2と、シナリオデータを記憶する記憶手段としての着脱式記憶媒体13と、を備え、制御部3は、着脱式記憶媒体13に記憶されているシナリオデータの編集作業を支援する編集画面を表示部4に表示させる制御と、操作部2に対する操作に応じてシナリオデータを編集する編集制御と、を行うので、携帯電話機1においてシナリオデータを編集することができる。よって、シナリオデータとして記憶させたい一連の操作を携帯電話機1に対して実際には行わなくても、その一連の操作を行った場合と同じ動作を実行するためのシナリオデータを作成することができる。
なお、上記の第2の実施形態では、上記の第1の実施形態と同様に、シナリオデータ及びその暗証番号が、着脱式記憶媒体13に記憶されている例を説明したが、本実施形態の場合、シナリオデータ及びその暗証番号は、記憶部11に記憶するようにしても良く、この場合、ステップS54では、入力された暗証番号が、記憶部11に何れかのシナリオデータと対応付けて記憶されている暗証番号と一致するか否かの判定をCPU14が行う。
〔第3の実施形態〕
第3の実施形態では、携帯電話機1において、上記の第2の実施形態で説明したのとは別の態様で編集を行うことが可能な例を説明する。
上記の第2の実施形態では、例えば図22に示すように、シナリオデータに含まれる一連の手順を表示し、このうち編集したい手順をユーザに選択させて、編集を行わせる例を説明した。
これに対し、第3の実施形態では、携帯電話機1がシナリオデータを擬似的に再生(表示)している最中に、編集したい箇所でユーザが再生を停止し、その箇所の編集を行うようにする。
なお、「シナリオデータの擬似的な再生」とは、あたかもシナリオデータを実行しているかのような表示を表示部4において行うことであり、実際に電子メールを送信したりはしない。
図28乃至図37に示す一連の図は、図16のステップS57の動作の一例を説明するための図であり、電子メールの送信を行うための一連の操作手順のシナリオデータの編集用に、その操作手順を再生する際に、表示部4において表示される一連の画面表示の例を示すものである。
CPU14は、先ず、図28のようなメニュー選択画面を表示部4に表示させ、「メール」にカーソルを合わせる。
なお、図28に示すメニュー選択画面は、通常のメニュー選択画面(キーマクロ機能が起動していないときのメニュー選択画面)と比べて、「−キーマクロNo.3編集中−」との表示と、「※編集したいところで再生を止めて下さい。」との表示が存在する点でのみ相違する。これらの相違点は、図29乃至図37においても同様である。
続いて、CPU14は、例えば図29に示すように、「メール」におけるメニュー画面を表示部4に表示させ、「メール送信」にカーソルを合わせる。
続いて、CPU14は、例えば図30に示すように、メールの種類の選択画面を表示部4に表示させて「ロングメール」にカーソルを合わせる。
続いて、CPU14は、図31に示すように、例えば、メールの各構成項目(例えば、宛先、件名、本文、及び添付ファイル)の表示画面を表示部4に表示させ、「宛先」にカーソルを合わせる。
続いて、CPU14は、例えば図32に示すように、宛先の選択画面を表示部4に表示させ、「あ」のセクションに含まれる宛先の候補から「秋田(さん)」にカーソルを合わせる。
続いて、CPU14は、例えば図33に示すように、メールの各構成項目の表示画面を表示部4に表示させて、「件名」にカーソルを合わせる。
続いて、CPU14は、例えば図34に示すように、件名の入力画面を表示部4に表示させて、件名の入力欄に「今日の帰り」との件名を表示させた後で、入力欄の下側に表示されている「決定」ボタンにカーソルを合わせる。
続いて、CPU14は、例えば図35に示すように、メールの各構成項目の表示画面を表示部4に表示させて、「本文」にカーソルを合わせる。
続いて、CPU14は、例えば図36に示すように、本文の入力画面を表示部4に表示させて、本文の入力欄に「今日も帰りが遅くなりますが、大丈夫ですか?」との本文を表示させた後で、その入力欄の下側に表示されている「決定」ボタンにカーソルを合わせる。
続いて、CPU14は、例えば図37に示すように、メールの各構成項目の表示画面を表示部4に表示させて、その表示画面の下部の「送信」ボタンにカーソルを合わせる。
図28乃至図37に示すような一連の画面表示、すなわち、シナリオデータの擬似的な再生を行う過程で、ユーザによる所定の操作(例えば、特定キーの操作)を検出すると、CPU14は、その時点でシナリオデータの擬似的な再生を停止し、その時点で表示している項目の編集画面を表示部4に表示させる。
具体的には、例えば、図35又は図36の画面を表示しているときにユーザによる所定の操作(例えば、特定キーの操作)を検出すると、例えば図19に示すように、本文の編集画面を表示部4に表示させ、ユーザが本文の入力欄の文字列を編集することを可能とする。例えば、元々は図19に示すように「今日も帰りが遅くなりますが、大丈夫ですか?」といった本文を、図20に示すように「今から帰りますが、何か買うものはありますか?」といった本文に変更した後で、その入力欄の下側に表示されている「決定」ボタンにカーソルを合わせて確定操作を行うことにより、本文の内容を確定することができる。
なお、図20において「決定」ボタンにカーソルを合わせて確定操作を行う結果として、図16のステップS58の判定が「Yes」となる。
このように、本実施形態では、CPU14は、シナリオデータに従って一連の動作を実行する場合に表示部4に行わせるのと同様の表示再生(図28乃至図37のような一連の表示)を表示部4に行わせ、この表示再生中に再生停止を指示する操作(例えば、特定キーの操作)が操作部2に対して行われると、その操作のタイミングにおいて表示部4に表示されている内容と対応する編集可能項目(例えば、「本文入力」)の編集を支援する第1の編集画面(例えば図19)を表示部4に表示させる。
以上のような第3の実施形態によれば、第2の実施形態と同様の効果が得られる。
なお、上記の各実施形態では、携帯端末装置が携帯電話機1である例を説明したが、携帯端末装置はこの例に限らず、例えば、PDAやPHSなどであっても良い。
また、シナリオデータは、上述した例に限らない。具体的には、例えば、カメラ8(図1)による撮影を行うための一連の操作(画面サイズ設定、画質設定、夜間撮影に適したナイトモードのオン/オフ設定、特殊効果(セピア、モノクロ、ネガポジなど)の設定といった各種設定の操作を含む)を実現するためのシナリオデータが挙げられる。また、他には、例えば、ウェブアクセスのための一連の操作(パスワードやIDの入力操作などを含む)を実現するためのシナリオデータが挙げられる。この場合、シナリオデータは、ウェブアクセスのための認証キーとしての機能を果たすこととなる。また、他には、携帯電話機1の各種機能を実行するための操作のガイダンスを行うためのシナリオデータを作成及び記憶しておくことも好ましい。こうすれば、携帯電話機1の操作方法を暗記しなくても、必要なときに暗証番号を入力することにより、そのガイダンス用のシナリオデータに従って、操作方法のガイダンスを得ることができる。
また、シナリオデータは、予め凡例をウェブ上に記憶しておき、携帯電話機1からウェブアクセスし、そのシナリオデータをその暗証番号とともにダウンロードし、携帯電話機1において利用できるようにすることも好ましい。
また、上記においては暗証情報として、暗証番号を用いる例を説明したが、その他の文字や記号を含む暗証情報を用いても良い。