通信端末、通信方法、および通信プログラム
【課題】コンテンツを使用する権利を有していない端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止できる通信端末を提供する。
【解決手段】通信端末100Aは、ディスプレイ107と、操作命令を受け付ける入力デバイス119と、他の通信端末100Bとデータを送受信する通信部101と、第1の情報を第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部108と、操作命令に基づいて第1の情報を含むコンテンツを生成する生成手段1061と、他の通信端末へ第1の情報と対応する第1の権限情報とを送信し、他の通信端末から第2の情報と対応する第2の権限情報とを受信する通信制御部1062と、第2の権限情報に基づいて第2の情報を含むコンテンツを表示させる表示制御手段1063とを備える。
【解決手段】通信端末100Aは、ディスプレイ107と、操作命令を受け付ける入力デバイス119と、他の通信端末100Bとデータを送受信する通信部101と、第1の情報を第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部108と、操作命令に基づいて第1の情報を含むコンテンツを生成する生成手段1061と、他の通信端末へ第1の情報と対応する第1の権限情報とを送信し、他の通信端末から第2の情報と対応する第2の権限情報とを受信する通信制御部1062と、第2の権限情報に基づいて第2の情報を含むコンテンツを表示させる表示制御手段1063とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ネットワークを介して他の通信端末と接続可能な通信端末、通信方法、および通信プログラムに関し、特に、リアルタイムで他の通信端末とコンテンツをやり取りする通信端末、通信方法、および通信プログラムに関する。
【背景技術】
【0002】
近年、携帯電話のユーザは、出先や移動先においても、電話機能を用いて他の携帯電話のユーザとコミュニケーションすることが可能となった。
【0003】
しかしながら、電話機能によるコミュニケーションは、携帯電話のユーザが電車・バス・映画館・図書館などの公共施設を利用している時には許されない。そこで、ユーザは、メールやチャット等の機能を用いることによって、他の携帯電話のユーザと文字によるコミュニケーションを行っていた。文字によるコミュニケーションでは、肉声によるコミュニケーションと比較して、感情や状況などを表わす情報が伝わりにくい。また、文字によるコミュニケーションは、伝えたいメッセージを入力するために時間がかかるため、リアルタイムな応答ができない。
【0004】
たとえば、特開2001−111708号公報(特許文献1)には、携帯型情報通信装置が開示されている。特開2001−111708号公報(特許文献1)によると、携帯型情報通信装置は、液晶ディスプレイ一体型タブレット等の入力手段を用いてユーザが入力した手書きデータの座標情報を、逐次連続して接続先の携帯型情報通信装置に送信するとともに、入力された手書きデータの筆跡を液晶ディスプレイ等表示手段に表示し、同時に、接続先の携帯型情報通信装置から送られてきた手書きデータの座標情報をもとに、受信した手書きデータの筆跡を表示手段に表示できるように構成したことを特徴とするものである。この構成により、携帯型の端末装置を用いて、手書き入力データをリアルタイムで送受信することができ、場所を選ばずいつでも筆談のような会話型のコミュニケーションを実現することができる。
【0005】
また、特開2003−234842号公報(特許文献2)には、リアルタイム手書き通信システムが開示されている。特開2003−234842号公報(特許文献2)によると、リアルタイム手書き通信システムは、タッチパネル、タッチペン、データ入力装置、コントローラ装置、データ出力装置および表示装置を有する。手書きデータをタッチペンで入力し、出力データに変換できる。データ入力装置は、別のリアルタイム手書き通信システムから送信された入力データを受信し入力する。コントローラ装置は、タッチパネルおよびデータ入力装置と接続されており、入力データおよび出力データをリアルタイムに処理し、送信する。データ出力装置は、コントローラ装置に接続され、他のリアルタイム手書き通信システムに出力データを送信する。表示装置は入力データおよび出力データを表示する。
【0006】
また、特開2001−333204号公報(特許文献3)には、携帯端末装置が開示されている。特開2001−333204号公報(特許文献3)によると、携帯端末装置は、カラー表示可能な手書きデータ表示手段と、手書きデータ表示手段表面に設けた手書き入力手段と、手書き入力手段により入力された手書きデータを含む複数の手書きデータを保持する手書きデータ保持手段と、手書きデータ保持手段に保持されている複数の手書きデータを色分けして合成し同一画面に表示するデータ表示管理手段と、手書き入力手段により入力された手書きデータと相手側端末の手書きデータを保持する手書きデータ保持手段と、手書きデータ保持手段に保持されている自身の手書きデータを相手側端末にリアルタイムに送信し逆に相手側端末から手書きデータを受信し手書きデータ保持手段に書き込むデータ通信手段で構成した。
【0007】
また、特開2004−234594号公報(特許文献4)には、フォトコミュニケーションシステムが開示されている。特開2004−234594号公報(特許文献5)によると、デジタルカメラのメモリカードなどから画像データを受け取る画像入力手段、画像データなどを記録するデータ記録手段、ユーザからの指示入力を行う入力手段、記録した画像などの表示を行う画像表示手段、記録した画像などのデータを他の端末とやり取りするためのデータ通信手段、端末の実行制御を行う制御手段を備える1対の情報通信端末であって、いずれの情報通信端末においても画像表示手段に表示された画像を見ながら画像表示手段に重畳された入力手段により手書きのグラフィック要素の書き込みを行えば、画像を含めた落書きの結果がリアルタイムに他方の情報通信端末に表示されるように構成する。
【0008】
また、特開2005−294918号公報(特許文献5)には、有料コンテンツの配信方法が開示されている。特開2005−294918号公報(特許文献5)によると、第1の無線端末が保有する有料コンテンツを第2の無線端末に転送するにあたり、先ず、キャリアに第2の無線端末への転送の認可を受けてから転送し、転送終了後キャリアに転送完了を報告する。
【0009】
また、特開2004−295880号公報(特許文献6)には、デジタルメディアクリアリングプラットフォームが開示されている。特開2004−295880号公報(特許文献6)によると、ピア・ツー・ピア配布が、デジタルメディアクリアリングハウスプラットフォーム(DMCHP)によって提供される。その際、コンテンツは一方のピアから他方のピアへの支払いの代償として転送される。受領者が支払いを行うときには、その支払いの一部が、DMCHPによって施行された合意に従って、そのコンテンツに係る権利の所有者に渡される。よって、ピア・ツー・ピアシステムにおいてコンテンツを配布するピアは、そのピアがコンテンツの配布に関して果たした役割に対して補償され、コンテンツ所有者は、コンテンツのライセンス方法および配布に関するコントロールを保持する。DMCHPは、コンテンツメタデータレポジトリ、オンライン取引処理エンジン、及び、購入側ユーザインターフェースを用いて実現される。
【0010】
そして、たとえば、手書きチャットソフトの代表的な編集機能として、スタンプ機能が知られている。ユーザは、予め用意されている「スタンプデータ」と呼ばれる複数のイメージデータ群の中から、1つのイメージデータを選択する。通信端末は、イメージデータを他の通信端末へと送信する。他の通信端末は、受信したイメージデータを描画(編集)エリア上の指定された場所に表示する。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2001−111708号公報
【特許文献2】特開2003−234842号公報
【特許文献3】特開2001−333204号公報
【特許文献4】特開2004−234594号公報
【特許文献5】特開2005−294918号公報
【特許文献6】特開2004−295880号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、複数人が自身の通信端末を利用することによって互いに手書きチャットを行う場面において、複数人が共通のコンテンツを閲覧できるようにするためには、通信端末(端末A)がコンテンツを他の通信端末(端末B)に送信するとともに、端末Bが受信したコンテンツを表示する必要がある。ここで、通常、端末Aの利用者は、コンテンツの著作権者から、有償あるいは無償で、当該コンテンツを使用する権利を正規に取得しているが、端末Bの利用者は当該コンテンツを使用する権利を有していない場合がある。すなわち、著作権法上の観点から、当該コンテンツを使用する権利を有していない端末Bのユーザが、当該コンテンツを自由に編集したり、さらに他の通信端末へ送信したりできることは好ましくない。
【0013】
本発明は、かかる問題を解決するためになされたものであり、その目的は、コンテンツを使用する権利を有していない端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止できる通信端末、通信方法、および通信プログラムを提供することである。
【課題を解決するための手段】
【0014】
この発明のある局面に従うと、通信端末が提供される。通信端末は、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部と、操作命令に基づいて第1の情報を含むコンテンツを生成する生成手段と、通信部を用いて他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信し、通信部を用いて他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信する通信制御手段と、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させる表示制御手段とを備える。
【0015】
好ましくは、通信端末は、第2の情報を一時的に記憶する第2の記憶部をさらに備える。通信制御手段は、第2の権限情報に基づいて第2の情報を第1の記憶部あるいは第2の記憶部に記憶させる。
【0016】
好ましくは、通信制御手段は、通信部を介して第1の情報を特定する識別情報を他の通信端末へと送信し、識別情報の送信に応答して他の通信端末から送信された第1の情報の送信要求に応じて、通信部を介して第1の情報を他の通信端末へと送信する。
【0017】
さらに、好ましくは、識別情報を送信する際に、第1の権限情報をも他の通信端末へと送信する。
【0018】
この発明の別の局面に従うと、演算処理部と、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末における通信方法が提供される。通信方法は、演算処理部が、操作命令に基づいて第1の情報を含むコンテンツを生成するステップと、演算処理部が、通信部を用いて、他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信するステップと、演算処理部が、通信部を用いて、他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信するステップと、演算処理部が、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させるステップとを備える。
【0019】
この発明の別の局面に従うと、演算処理部と、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末に通信させるための通信プログラムが提供される。通信プログラムは、演算処理部に、操作命令に基づいて第1の情報を含むコンテンツを生成するステップと、通信部を用いて、他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信するステップと、通信部を用いて、他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信するステップと、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させるステップとを実行させる。
【発明の効果】
【0020】
以上のように、本発明によって、コンテンツを使用する権利を有していない通信端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止できる通信端末、通信方法、および通信プログラムが提供される。
【図面の簡単な説明】
【0021】
【図1】本実施の形態に係るネットワークシステムを示す概略図である。
【図2】ネットワークシステムにおける動作概要を示すシーケンス図である。
【図3】本施の形態に係る携帯電話の概観を示すイメージ図である。
【図4】携帯電話のハードウェア構成を示すブロック図である。
【図5】スタンプ管理テーブルのデータ構造を示すイメージ図である。
【図6】通信端末が他の通信端末に送信する送信データのデータ構造を示すイメージ図である。
【図7】本実施の形態に係る携帯電話およびネットワークシステムの機能構成を示すブロック図である。
【図8】本実施の形態に係る携帯電話におけるP2P通信のメイン処理の処理手順を示すフローチャートである。
【図9】本実施の形態に係る携帯電話におけるコンテンツの編集機能を示すイメージ図である。
【図10】本実施の形態に係る携帯電話におけるスタンプ情報交換処理の処理手順を示すフローチャートである。
【図11】本実施の形態に係る携帯電話におけるスタンプ送信処理の処理手順を示すフローチャートである。
【図12】本実施の形態に係る携帯電話におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図13】携帯電話が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図14】携帯電話が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図15】携帯電話が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図16】本実施の形態に係る携帯電話におけるスタンプ表示処理の処理手順を示すフローチャートである。
【図17】本実施の形態に係る携帯電話における一時記憶スタンプデータ削除処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0023】
また、以下では、携帯電話100を「通信端末」の代表例として説明を行う。ただし、通信端末は、パーソナルコンピュータや、カーナビゲーション装置(Satellite navigation system)や、PND(Personal Navigation Device)や、PDA(Personal Digital Assistance)などのような、他の情報通信機器であってもよい。
【0024】
そして、以下では、「コンテンツ」とは、スタンプや写真や手書き画像やそれらを組み合わせて成る静止画像および動画像を含む概念である。「コンテンツデータ」とは、スタンプデータや写真データや手書き画像データやそれらを組み合わせて成る静止画像データおよび動画像データを含む概念である。
【0025】
<ネットワークシステム1の全体構成>
まず、本実施の形態に係るネットワークシステム1について説明する。図1は、本実施の形態に係るネットワークシステム1を示す概略図である。図1に示すように、ネットワークシステム1は、携帯電話100A,100Bと、マッチングサーバ400と、インターネット網(第1のネットワーク)500と、コンテンツサーバ600と、キャリア網(第2のネットワーク)700とを含む。また、本実施の形態に係るネットワークシステム1は、車両250に搭載されるカーナビゲーション装置200と、パーソナルコンピュータ(PC;Personal Computer)300とを含む。
【0026】
なお、説明の容易化のために、本実施の形態に係るネットワークシステム1が、第1の携帯電話100Aと、第2の携帯電話100Bとを含む場合について説明する。また、携帯電話100A,100Bの各々に共通の構成や機能を説明する際には、それらを「携帯電話100」とも総称する。そして、携帯電話100A,100B、カーナビゲーション装置200、パーソナルコンピュータ300の各々に共通の構成や機能を説明する際には、それらを「通信端末」とも総称する。
【0027】
携帯電話100は、キャリア網700に接続可能に構成されている。カーナビゲーション装置200は、インターネット網500に接続可能に構成されている。パーソナルコンピュータ300は、LAN(Local Area Network)350やWAN(Wide Area Network)を介してインターネット網500に接続可能に構成されている。マッチングサーバ400は、インターネット網500に接続可能に構成されている。
【0028】
より詳細には、第1の携帯電話100Aと、第2の携帯電話100Bと、カーナビゲーション装置200と、パーソナルコンピュータ300とは、キャリア網700やインターネット網500を介して互いに接続可能であって、互いにデータの送受信が可能である。また、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300には、自端末を特定するための識別情報(たとえば、メールアドレスやIP(Internet Protocol)アドレスなど)が割り当てられる。すなわち、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、内部の記録媒体に他の通信端末の識別情報を記憶することができ、当該識別情報に基づいてキャリア網700やインターネット網500などを介して当該他の通信端末とデータ送受信を行うことができる。
【0029】
なお、本実施の形態に係る携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、各通信端末に割り当てられるIPアドレスを利用して、図示しないメールサーバを介さずに他の通信端末とデータ送受信を行うものである。ここでは、各通信端末がマッチングサーバ400にアクセスする際には、すなわち各通信端末がインターネットにアクセスした際に、マッチングサーバ400あるいは他の図示しないサーバ装置などによってIPアドレスが割り当てられるものとする。IPアドレスの割り当て処理の詳細は公知であるので、ここでは説明を繰り返さない。
【0030】
特に、本実施の形態に係る携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、自身に割り当てられたIPアドレスを利用することにより、直接的に相互にネットワークを介してデータ送受信を行うことが可能である。すなわち、本実施の形態に係るネットワークシステム1に含まれる携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、いわゆるP2P(Pear to Pear)型のネットワークを構成することが可能である。
【0031】
コンテンツサーバ600は、インターネット網500に接続される。コンテンツサーバ600は、スタンプデータやゲームソフトなどのコンテンツを記憶する。コンテンツサーバ600は、インターネット網500を介して、携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300からの要求を受け付ける。コンテンツサーバ600は、当該要求に応じて、各種のコンテンツを携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300に配信する。たとえば、コンテンツサーバ600は、携帯電話100のユーザが所望するスタンプデータを、有償で当該携帯電話100に配信する。
【0032】
<ネットワークシステム1の動作概要>
次に、本実施の形態に係るネットワークシステム1の動作概要について説明する。図2は、ネットワークシステム1における動作概要を示すシーケンス図である。図1および図2に示すように、本実施の形態に係る各通信端末は、P2P型のデータ送受信を行うために、はじめに互いのIPアドレスを交換(取得)する必要がある。そして、各通信端末は、IPアドレスを取得したのちに、P2P型のデータ送受信によってメッセージや添付ファイルなどを他の通信端末に送信する。
【0033】
ただし、以下では、通信端末のそれぞれが、マッチングサーバ400に生成されたチャットルームを介してメッセージおよびIPアドレスを送受信し、その後互いのIPアドレスに基づいてP2P通信を行う場合について説明する。
【0034】
まず、第1の携帯電話100A(図2において端末A)が、ユーザ操作に応じて、インターネット網500を介してコンテンツサーバ600にコンテンツを要求する(ステップS002)。ここでは、コンテンツは、アニメのキャラクターなどのスタンプとする。ただし、コンテンツは、写真であってもよいし、動画であってもよいし、ゲームソフトなどであってもよい。コンテンツサーバ600は、当該要求に応じて、第1の携帯電話100Aにスタンプを表示するためのスタンプデータ(第1の情報)を配信する(ステップS004)。
【0035】
第1の携帯電話100Aは、ユーザ操作に応じて、マッチングサーバ400にチャットルームを生成するように要求する(ステップS006)。すなわち、第1の携帯電話100Aは、マッチングサーバ400にIP登録(ログイン)を要求する。第1の携帯電話100Aは、これと同時にマッチングサーバ400からIPアドレスを取得してもよいし、予め他のサーバ装置などからIPアドレスを取得していてもよい。より詳細には、第1の携帯電話100Aは、キャリア網700、インターネット網500を介して、マッチングサーバ400に第1の携帯電話100AのIPアドレスと新たなチャットルームの生成を要求するメッセージとを送信する。
【0036】
第1の携帯電話100Aのユーザは、第1の携帯電話100Aなどを用いて、第2の携帯電話100B(図2において端末B)のユーザをチャットに勧誘する(ステップS008)。第2の携帯電話100Bは、ユーザの命令に応じてチャットルームに入室する(ステップS010)。すなわち、第2の携帯電話100Bは、第2の携帯電話100BのIPアドレスをマッチングサーバ400に登録することによって、チャットルームに入室する。
【0037】
第2の携帯電話100Bは、チャットルームに入室した旨を第1の携帯電話100Aに伝える(ステップS012)。すなわち、第2の携帯電話100Bは、自身に割り当たられたIPアドレスを第1の携帯電話100Aに送信する。第1の携帯電話100Aと第2の携帯電話100Bとは、キャリア網700、インターネット網500を介して互いに接続する。すなわち、第1の携帯電話100Aと第2の携帯電話100Bとは、P2P通信を開始する。
【0038】
第1の携帯電話100Aは、インターネット網500を介して、自身が所有しているスタンプを特定する識別情報(スタンプごとに固有に割り当てられた番号やファイル名など)を含む概要データを第2の携帯電話100Bに送信する(ステップS014)。このとき、第1の携帯電話100Aは、スタンプの概要データとともに、対応するスタンプの使用権限を示す権限情報を第2の携帯電話100Bに送信してもよい。
【0039】
第2の携帯電話100Bは、ユーザからの選択命令を受け付けて、第1の携帯電話100Aにスタンプを表示するためのスタンプデータを要求する(ステップS016)。あるいは、第2の携帯電話100Bは、第1の携帯電話100Aに対して第1の携帯電話100Aが所有する全てのスタンプデータを要求する。第1の携帯電話100Aは、当該要求に応じて、第2の携帯電話100Bにスタンプデータを送信する(ステップS018)。第1の携帯電話100Aは、このときに、対応するスタンプの権限情報を第2の携帯電話100Bに送信してもよい。
【0040】
第2の携帯電話100Bは、スタンプデータを受信して、権限情報に基づいてスタンプデータを記憶する(ステップS020)。このとき、第2の携帯電話100Bは、権限情報に、基づいて受信したスタンプをリスト表示してもよい。
【0041】
同様に、第2の携帯電話100Bは、インターネット網500を介して、自身が所有しているスタンプを特定する識別情報(スタンプごとに固有に割り当てられた番号やファイル名など)を含む概要データを第1の携帯電話100Aに送信する(ステップS022)。第1の携帯電話100Aは、ユーザからの選択命令を受け付けて、第2の携帯電話100Bにスタンプを示すスタンプデータを要求する(ステップS024)。あるいは、第1の携帯電話100Aは、第2の携帯電話100Bに対して第2の携帯電話100Bが所有する全てのスタンプデータを要求する。第2の携帯電話100Bは、当該要求に応じて、第1の携帯電話100Aにスタンプデータを送信する(ステップS026)。
【0042】
第1の携帯電話100Aは、スタンプデータを受信して、権限情報に基づいてスタンプデータを記憶する(ステップS028)。第1の携帯電話100Aは、権限情報に基づいて、受信したスタンプをリスト表示してもよい。
【0043】
第1の携帯電話100Aは、ユーザからの編集命令に応じて、自身が使用可能なスタンプを押した画像を表示するための画像データ(第1のコンテンツデータ)などを生成する。すなわち、第1の携帯電話100Aは、スタンプを用いて画像を編集する。このとき、第1の携帯電話100Aは、スタンプの権限情報に基づいて編集対象である画像自身に関する権限情報を更新(生成)してもよい。
【0044】
第1の携帯電話100Aは、スタンプの押下を示す操作情報、あるいはスタンプが押された画像を表示するための画像データを第2の携帯電話100Bへ送信する(ステップS030)。このとき、第1の携帯電話100Aは、スタンプが押された画像を表示する(ステップS032)。
【0045】
第2の携帯電話100Bは、スタンプの押下を示す操作情報を受信して、権限情報に基いてスタンプが押された画像を表示する(ステップS034)。あるいは、第2の携帯電話100Bは、画像データを受信して、画像データに対応する権限情報に基づいて画像データを記憶するとともに、権限情報に基づいて画像を表示する。
【0046】
第2の携帯電話100Bは、ユーザからの編集命令に応じて、自身が使用可能なスタンプデータ(第2の情報)を用いて受信した画像データをさらに編集する。このとき、第2の携帯電話100Bは、使用したスタンプに対応する権限情報に基づいて編集後の画像データ(第2のコンテンツデータ)自身の権限情報を更新してもよい。
【0047】
第2の携帯電話100Bは、スタンプの押下を示す操作情報、あるいは編集後の画像データを第1の携帯電話100Aへ送信する(ステップS036)。このとき、第2の携帯電話100Bは、編集された画像を表示する(ステップS038)。
【0048】
第1の携帯電話100Bは、スタンプの押下を示す操作情報を受信して、権限情報に基づいて編集後の画像データを記憶するとともに、権限情報に基づいて画像を表示する(ステップS040)。このようにして、第1の携帯電話100Aと第2の携帯電話100Bとは、ステップS030からステップS040までの処理を繰り返すことによって画像を編集していく。すなわち、第1の携帯電話100Aのユーザと第2の携帯電話100Bのユーザは、所望するスタンプを利用しながら手書きチャットを楽しむことができる。
【0049】
第1の携帯電話100Aは、ユーザからP2P通信の終了操作を受け付けると、終了通知を第2の携帯電話100Bに送信する(ステップS042)。このとき、第1の携帯電話100Aは、一時的に記憶していたスタンプデータや画像データを削除する(ステップS044)。第2の携帯電話100Bは、終了通知を受信して、記憶していたスタンプデータや画像データを削除する(ステップS046)。これによって、P2P通信を終了する。
【0050】
ここで、第1の携帯電話100Aのユーザは、予め、有償/無償で、第1の携帯電話100Aが記憶するスタンプデータを使用する権利を取得しているものとする。しかし、第2の携帯電話100Bのユーザは、スタンプデータを使用する権利を有していない場合がある。
【0051】
本実施の形態に係る通信端末は、権限情報とともにスタンプデータや画像データを他の通信端末に送信する。そのため、他の通信端末は、スタンプデータを使用する権利を有していない場合には、所定の表示形態にて当該スタンプを表示したり、当該スタンプを他の画像に貼り付けられなくしたり、当該スタンプデータを他の通信端末へと送信できなくなる。本実施の形態に係る通信端末および当該通信端末を含むネットワークシステムは、このような機能を利用することによって、コンテンツを使用する権利を有していない通信端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止する。
【0052】
以下、このような機能を実現するための通信端末や当該通信端末を含むネットワークシステムの構成について詳述する。
【0053】
<携帯電話100のハードウェア構成>
本実施の形態に係る携帯電話100のハードウェア構成について説明する。図3は、本施の形態に係る携帯電話100の概観を示すイメージ図である。図4は、携帯電話100のハードウェア構成を示すブロック図である。
【0054】
図3および図4に示すように、本実施の形態に係る携帯電話100は、外部のネットワークとの間でデータを送受信する通信デバイス101と、プログラムや各種データベースを一時的に記憶する揮発性メモリ103と、入力部104と、時刻(時間)を計測する計時部105と、制御部106と、ディスプレイ107と、プログラムや各種データベースを記憶する不揮発性メモリ108と、タブレット119とを含む。
【0055】
通信デバイス101は、制御部106からの通信データを通信信号に変換し、その通信信号を図示しないアンテナを介して発信する。通信デバイス101は、アンテナを介して受信した通信信号を通信データに変換し、その通信データを制御部106に入力する。
【0056】
入力部104は、キー入力操作などによってユーザから情報を受け付ける。たとえば、入力部104は、テンキーや決定キーなどを含む。入力部104は、入力した命令を確定するための決定命令や、相手先アドレスを選択するための選択命令や、メールを他の通信端末へ送信するための送信命令などを受け付ける。
【0057】
制御部106は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現され、携帯電話100の各部を制御する。たとえば、制御部106は、入力部104やタブレット119を介してユーザから各種の命令を受け付ける。制御部106は、通信デバイス101を利用することによってネットワークを介して外部の通信端末とデータの送受信を行う。本実施の形態においては、制御部106は、タブレット119を介してユーザからの編集命令を受け付けて、手書き画像などのコンテンツを編集する。
【0058】
具体的には、制御部106は、不揮発性メモリ108から制御プログラムを読み出して揮発性メモリ103に格納し、揮発性メモリ103から制御プログラムを順次読み出しながら当該制御プログラムを実行する。制御部106は、不揮発性メモリ108あるいは揮発性メモリ103からスタンプデータや画像データなどを読み出して、スタンプやスタンプが押された画像をディスプレイ107に表示させる。制御部106は、編集後の画像データを揮発性メモリ103あるいは不揮発性メモリ108に格納する。
【0059】
本実施の形態に係るディスプレイ107は、有機EL(electroluminescence)や液晶パネルやCRT(Cathode Ray Tube)から構成される。ディスプレイ107は、制御部106からの信号に基づいてスタンプやスタンプが押された画像を表示する。
【0060】
そして、本実施の形態に係る携帯電話100においては、ディスプレイ107の下側(裏側)にタブレット119が敷設されている。これによって、ユーザは、たとえばスタイラスペン99や指などを用いることによって、タブレット119を介して図形情報などを制御部106に手書き入力することができる。
【0061】
本実施の形態に係るディスプレイ107とタブレット119とは、いわゆるタッチパネル150を構成する。なお、ディスプレイ107やタブレット119とは、各種方式のタッチパネルによって実現されてもよいし、光センサ液晶によって実現されてもよい。
【0062】
揮発性メモリ103は、たとえば、作業用メモリとして機能する揮発性のS−RAM(Static-Random Access Memory)やV−RAM(Video Random Access Memory)などによって実現される。揮発性メモリ103は、アプリケーションプログラムや、スタンプデータや、画像データや、再生コードや、各種の変数を揮発的に(一時的に)記憶する。
【0063】
より詳細には、前述したように、制御部106は、受信した画像データやスタンプデータを一時的に揮発性メモリ103に格納する。制御部106は、揮発性メモリ103から画像データを読み出して、ディスプレイ107に画像を表示させる。制御部106は、揮発性メモリ103からスタンプデータを読み出して、ディスプレイ107にスタンプを表示させる。また、制御部106は、編集した画像データを一時的に揮発性メモリ103に格納する。
【0064】
不揮発性メモリ108は、たとえば、制御プログラムなどを記憶するROM(Read Only Memory)や、NV−RAM(Non-Volatile Random Access Memory)や、静止画像データや動画像データなどを記憶するHDD(Hard Disk Drive)などによって実現される。不揮発性メモリ108は、編集することが許可されているスタンプや画像を不揮発的に記憶する。本実施の形態に係る不揮発性メモリ108は、後述するスタンプ管理テーブル108Aや使用可能なスタンプデータ108Bや画像データを記憶する。
【0065】
より詳細には、制御部106は、不揮発性メモリ108が記憶している画像データやスタンプデータを読み出して、揮発性メモリ103に一時的に格納する。制御部106は、受信したスタンプデータや画像データを、それらの対応する権限情報に基づいて、揮発性メモリ103あるいは不揮発性メモリ108に格納する。具体的には、制御部106は、表示することや編集することや他の通信端末へ送信することが許可されているスタンプデータや画像データを不揮発性メモリ108に格納する。
【0066】
図5は、スタンプ管理テーブル108Aのデータ構造を示すイメージ図である。なお、本実施の形態に係るスタンプ管理テーブル108Aは、不揮発性メモリ108に記憶される。以下では、説明のために、スタンプや、当該スタンプが貼られた画像を総称して「コンテンツ」ともいう。また、スタンプデータや、画像データを総称して「コンテンツデータ」ともいう。
【0067】
図5を参照して、不揮発性メモリ108は、コンテンツ毎に当該画像を管理するための管理データを記憶している。すなわち、スタンプ管理テーブル108Aは、コンテンツ毎の管理データを含む。各管理データは、contID、ownerF、transF、transTP、contPATH[]、decodeADR、contMETAを含む。
【0068】
contIDは、各コンテンツを識別するためのデータ(識別情報)である。すなわち、管理データには、コンテンツ毎に識別情報が設定される。
【0069】
ownerFは、所有権の有無を示すデータである。より詳細には、制御部106は、ownerFの値が「0」の場合(所有権フラグが立っている場合)、自身が対象となるコンテンツデータを所有していないと判断する。制御部106は、ownerFの値が「1」の場合(所有権フラグが立っていない場合)、自身が対象となるコンテンツデータを所有していると判断する。
【0070】
transFは、所有権の譲渡の可否を示す。より詳細には、制御部106は、transFの値が「1」の場合、対象となるコンテンツデータを他の通信端末に譲渡できないと判断する。制御部106は、transFの値が「0」の場合、対象となるコンテンツデータを自由に他の通信端末に譲渡できると判断する。
【0071】
transTPは、使用権の譲渡タイプを示す。transTPは、対象となるコンテンツデータが、所有権譲渡タイプか、無変換タイプか、粗データ送信タイプか、再生コード送信タイプかを示す。以下では、transTP、transF、ownerFなどを総称して権限情報ともいう。
【0072】
より詳細には、制御部106は、transTPの値が「0」の場合、対象となるコンテンツデータが所有権譲渡タイプであると判断する。制御部106は、transTPの値が「1」の場合、対象となるコンテンツデータが無変換タイプであると判断する。制御部106は、transTPの値が「2」の場合、対象となるコンテンツデータが粗データ送信タイプであると判断する。制御部106は、transTPの値が「3」の場合、対象となるコンテンツデータが再生コード送信タイプであると判断する。
【0073】
contPATH[]は、対象となるコンテンツデータの格納場所のアドレスを示す。ここで、コンテンツデータは、コンテンツを表示するための表示データと、再生コードを用いてコンテンツを表示するための表示データと、粗い画像を表示するための転送データとを含む概念である。
【0074】
decodeADRは、対象となるコンテンツデータの表示データを解読するための再生コードの格納場所のアドレスを示す。
【0075】
contMETAは、コンテンツ付加情報を示す。contMETAは、URL[]と、COPYRIGHT[]とを含む。URL[]は、コンテンツを提供したサイトのアドレスを示す。COPYRIGHT[]はコンテンツの著作権情報を示す。
【0076】
図6は、通信端末が他の通信端末に送信する送信データのデータ構造を示すイメージ図である。図6を参照して、通信端末が他の通信端末に送信する送信データ(あるいは他の通信端末から受信する受信データ)は、コンテンツID、使用権限情報、表示データ、転送データ、再生コードを含む。制御部106は、通信デバイス101を介して送信データを送信し、通信デバイス101を介して受信データを受信する。
【0077】
コンテンツIDは、各コンテンツデータを識別するための情報である。使用権限情報は、表示の可否や、編集の可否や、送信の可否を示すための情報である。表示データは、スタンプが押された手書き画像や写真画像などを表示するためのいわゆる画像データである。転送データは、手書き画像や写真画像などの粗い画像を表示するためのいわゆる画像データである。たとえば、転送データは、表示データの解像度を低くすることによって生成される。あるいは、転送データは、表示データのサムネイル画像を表わす。再生コードは、表示データを解読するための鍵であって、制御部106は再生コードを利用することによって、表示データに基づいてディスプレイ107に画像を表示する。
【0078】
<携帯電話100の機能構成>
図7は、本実施の形態に係る携帯電話100(通信端末)およびネットワークシステムの機能構成を示すブロック図である。図7を参照して、本実施の形態に係るネットワークシステムは、インターネット網500などを介して互いに接続可能な第1の携帯電話100Aと第2の携帯電話100Bとを含む。以下では、主に、第1の携帯電話100Aが有する機能について説明する。
【0079】
携帯電話100は、生成部1061と、通信制御部1062と、表示制御部1063とを含む。また、前述したように、携帯電話100は、ディスプレイ107と、タブレット119と、揮発性メモリ103と、不揮発性メモリ108と、通信デバイス101とを含む。
【0080】
前述したように、タブレット119は、ユーザから手書き入力やソフトウェアキー入力などを受け付けて、入力動作に対応する入力情報を揮発性メモリ103に格納する。タブレット119は、ユーザからの各種入力を受け付ける受付部を実現する。より詳細には、タブレット119は、ユーザの指が接触した位置を制御部106に入力する。あるいは、タブレット119は、ユーザがタッチパネル150に接触した軌跡を手書き入力として受け付けて、手書き入力に対応する手書き情報を制御部106に受け渡す。制御部106は、手書き情報を揮発性メモリ103に記憶する。
【0081】
ディスプレイ107は、制御部106からのデータに基づいて、画像やテキストを表示する。具体的には、ディスプレイ107は、制御部106からのデータに基づいて、スタンプが押されたコンテンツを表示する。あるいは、ディスプレイ107は、自身のタブレット119にて受け付けた手書き入力に対応する手書き画像と、通信デバイス101にて受信した手書き情報に対応する手書き画像とを重ねて表示する。
【0082】
通信デバイス101は、図示しない通信アンテナや信号処理部によって実現される。通信デバイス101は、タブレット119が受け付けた手書き入力に対応する手書き情報や選択されたスタンプや写真などのコンテンツデータと、当該コンテンツデータに対応する権限情報とを他の通信端末へと送信する。通信デバイス101は、他の通信端末からコンテンツデータと権限情報とを受信して、コンテンツデータを制御部106に入力する。制御部106は、権限情報に基づいて受信したコンテンツデータを揮発性メモリ103あるいは不揮発性メモリ108に記憶する。
【0083】
揮発性メモリ103は、たとえば、各種変数やコンテンツデータなどを一時的に(揮発的に)記憶するワークメモリ(S−RAMなど)と、ディスプレイ107が表示するコンテンツなどを記憶する表示メモリ(VRAMなど)とを含む。不揮発性メモリ108は、たとえば、スタンプ管理テーブル108Aやスタンプデータ108Bやコンテンツデータなどを不揮発的に記憶するNV−RAMやHDDなどを含む。
【0084】
生成部1061と、通信制御部1062と、表示制御部1063とは、制御部106などによって実現される機能である。より詳細には、制御部106が有する各機能は、制御部106が揮発性メモリ103などに記憶される制御プログラムを実行して、図4に示される各ハードウェアを制御することによって実現される機能である。たとえば、制御部106は、不揮発性メモリ108に予め格納されたプログラムを、揮発性メモリ103のワークメモリに読み出す。そして、制御部106は、揮発性メモリ103のプログラムを順次実行することによって、上記の機能ブロックを実現する。
【0085】
生成部1061は、タブレット119を介して入力される編集命令に応じてコンテンツを編集(生成)する。より詳細には、生成部1061は、ユーザによる編集命令に応じて、揮発性メモリ103に記憶されているコンテンツデータを更新する。ここで、編集命令は、ユーザによる、スタンプを選択する旨の命令やスタンプの押下する旨の命令や手書き入力命令などを含む。
【0086】
たとえば、生成部1061は、手書き入力に応じて写真画像上に手書き文字を書き込んだり、スタンプの選択命令に応じて画像上にスタンプを押したりする。生成部1061は、編集後のコンテンツデータを揮発性メモリ103の表示メモリに格納する。つまり、生成部1061は、コンテンツデータとして、スタンプが押された画像のデータを生成する。また、生成部1061は、第2の携帯電話100Bから受信した編集内容に基づいてコンテンツデータを編集する。そして、生成部1061は、編集後のコンテンツデータや対応する権限情報を通信制御部1062や表示制御部1063に受け渡す。
【0087】
通信制御部1062は、通信デバイス101を用いて、他の通信端末とP2P通信を行う。より詳細には、通信制御部1062は、通信デバイス101を用いて他のサーバ装置などから自身のIPアドレスと他の通信端末のIPアドレスとを取得することにより、他の通信端末との間で当該IPアドレスを利用して直接データを送受信し始める。
【0088】
本実施の形態に係る通信制御部1062は、通信デバイス101を用いて、編集内容を示すデータをインターネット網500などを介して他の携帯電話100(第2の携帯電話100B)に送信する。たとえば、通信制御部1062は、選択されたスタンプを示すスタンプデータ(第1の情報)とスタンプが押された座標とを送信したり、手書き入力の軌跡を示すデータを送信したりする。
【0089】
あるいは、通信制御部1062は、編集後のコンテンツデータをインターネット網500などを介して他の携帯電話100(第2の携帯電話100B)に送信する。このとき、通信制御部1062は、編集後のコンテンツデータとともに、当該コンテンツデータに対応する権限情報を送信する。
【0090】
また、通信制御部1062は、通信デバイス101を用いて、他の携帯電話100(第2の携帯電話100B)から編集内容を示すデータを受信したり、他の携帯電話100にて編集されたコンテンツデータを受信したりする。このとき、通信制御部1062は、編集内容としてのスタンプデータとともに、スタンプデータの権限情報を受信する。あるいは、通信制御部1062は、編集されたコンテンツデータとともに、当該コンテンツデータに対応するスタンプの権限情報などを受信する。
【0091】
そして、通信制御部1062は、他の携帯電話100から受信したスタンプデータと権限情報とを、生成部1061や表示制御部1063に受け渡す。また、通信制御部1062は、他の携帯電話100から受信したスタンプデータと権限情報とを、揮発性メモリ103あるいは不揮発性メモリ108に格納する。
【0092】
より詳細には、通信制御部1062は、コンテンツに含まれるスタンプ(コンテンツの1種)に対応する使用権タイプに基づいて、スタンプデータを揮発性メモリ103あるいは不揮発性メモリ108に記憶する。すなわち、通信制御部1062は、自身が所有していないコンテンツに関する使用権タイプが所有権譲渡タイプや粗データ送信タイプや再生コード送信タイプである場合、当該コンテンツデータを不揮発性メモリ108に格納する。通信制御部1062は、自身が所有していないコンテンツに関する使用権タイプが無変換タイプである場合、当該コンテンツデータを揮発性メモリ103に格納する。
【0093】
本実施の形態に係る通信制御部1062は、通信デバイス101を介して他の通信端末からの第1の送信要求を受信する。通信制御部1062は、通信デバイス101を介してスタンプデータの概要を示すスタンプ情報と当該スタンプ情報に対応する権限情報とを他の通信端末へと送信する。そして、通信制御部1062は、通信デバイス101を介して他の通信端末からの第2の送信要求を受信する。通信制御部1062は、通信デバイス101を介してスタンプデータと当該スタンプデータに対応する権限情報とを他の通信端末へと送信する。
【0094】
表示制御部1063は、ユーザからの編集命令に基づいて生成部1061が編集したコンテンツデータに基づいて、ディスプレイ107にコンテンツを表示させる。また、表示制御部1063は、第2の携帯電話100Bから受信した編集内容に基づいて生成部1061が編集したコンテンツデータに基づき、ディスプレイ107に編集後のコンテンツを表示させる。あるいは、表示制御部1063は、通信制御部1062が他の携帯電話100から編集されたコンテンツデータを受信した際に、当該コンテンツデータに基づいてディスプレイ107にコンテンツを表示させる。
【0095】
より詳細には、表示制御部1063は、コンテンツデータと当該コンテンツデータに含まれるスタンプの使用権タイプとに基づいてコンテンツを表示する。すなわち、表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが所有権譲渡タイプ、無変換タイプである場合、当該コンテンツデータの表示データに基づいてコンテンツを表示する。表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが粗データ送信タイプである場合、当該コンテンツデータの転送データに基づいて粗い画像を表示する。表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが再生コード送信タイプである場合、当該コンテンツデータの再生コードと表示データとに基づいてコンテンツを表示する。
【0096】
なお、第2の携帯電話100Bが有する機能は、第1の携帯電話100Aのそれと同様であるため、ここでは説明を繰り返さない。
【0097】
<P2P通信のメイン処理>
次に、本実施の形態に係る携帯電話100におけるP2P通信のメイン処理について説明する。図8は、本実施の形態に係る携帯電話100におけるP2P通信のメイン処理の処理手順を示すフローチャートである。
【0098】
図8を参照して、制御部106は、ディスプレイ107に複数のスタンプを選択可能にリスト表示する(ステップS102)。すなわち、制御部106は、STMPTBLに記憶されている、ownerF=1であるスタンプのcontID、contPATHによって特定されるスタンプの縮小画像を、ディスプレイ107にリスト表示させる。制御部106は、タブレット119を介して、ユーザからスタンプの選択命令を受け付ける。制御部106は、揮発性メモリ103の変数MySTMPに選択されたスタンプの格納場所を格納する(ステップS104)。すなわち、制御部106は、スタンプ管理テーブル108Aを参照して選択されたスタンプのアドレスを取得する。
【0099】
そして、制御部106は、スタンプ情報の交換処理(ステップS200)を実行する。スタンプ情報の交換処理(ステップS200)については、後述する。
【0100】
制御部106は、ユーザからタブレット119を介して、通常の描画を行うための操作命令(編集命令)を受け付けたか否かを判断する(ステップS106)。制御部106は、通常の描画を行うための操作命令を受け付けた場合(ステップS106にてYESである場合)、ディスプレイ107を介して描画内容を表示する(ステップS108)。制御部106は、通信デバイス101を介して通常の描画を行うための操作命令を他の通信端末に送信する(ステップS110)。ただし、制御部106は、通信デバイス101を介して、編集後のコンテンツデータを送信する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0101】
制御部106は、通常の描画を行うための操作命令を受け付けない場合(ステップS106にてNOである場合)、通信デバイス101を介して他の通信端末から通常の描画を行うための操作命令を受信したか否かを判断する(ステップS112)。制御部106は、通常の描画を行うための操作命令を受信した場合(ステップS112にてYESである場合)、受信した操作命令に基づいてディスプレイ107に描画内容を表示する(ステップS114)。その後、制御部106は、ステップS106からの処理を繰り返す。
【0102】
制御部106は、通常の描画を行うための操作命令を受け付けない場合(ステップS112にてNOである場合)、ユーザからタブレット119を介して、スタンプを押下する旨の操作命令を受け付けたか否かを判断する(ステップS116)。制御部106は、スタンプを押下する旨の操作命令を受け付けた場合(ステップS116にてYESである場合)、揮発性メモリ103のDSPSTMPにMySTMPの値を格納する(ステップS118)。制御部106は、スタンプ表示処理(ステップS300)を実行する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0103】
制御部106は、スタンプを押下する旨の操作命令を受け付けない場合(ステップS116にてNOである場合)、通信デバイス101を介して他の通信端末からスタンプを押下する旨の操作命令を受信したか否かを判断する(ステップS120)。制御部106は、他の通信端末からスタンプを押下する旨の操作命令を受信した場合(ステップS120にてYESである場合)、揮発性メモリ103のDSPSTMPにHisSTMPの値を格納する(ステップS122)。制御部106は、スタンプ表示処理(ステップS300)を実行する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0104】
制御部106は、他の通信端末からスタンプを押下する旨の操作命令を受信しない場合(ステップS120にてNOである場合)、入力部104あるいはタブレット119を介してユーザからアプリケーションを終了する旨の操作命令を受け付けたか否かを判断する(ステップS124)。制御部106は、アプリケーションを終了する旨の操作命令を受け付けた場合(ステップS124にてYESである場合)、通信デバイス101を介してアプリケーションを終了する旨のメッセージを他の通信端末に送信する(ステップS128)。その後、制御部106は、ステップS130からの処理を繰り返す。
【0105】
制御部106は、アプリケーションを終了する旨の操作命令を受け付けない場合(ステップS124にてNOである場合)、通信デバイス101を介して他の通信端末からアプリケーションを終了する旨のメッセージを受信したか否かを判断する(ステップS126)。制御部106は、アプリケーションを終了する旨のメッセージを受信しない場合(ステップS126にてNOである場合)、ステップS106からの処理を繰り返す。
【0106】
制御部106は、他の通信端末からアプリケーションを終了する旨のメッセージを受信した場合(ステップS126にYESである場合)、共同生成データ(編集後の表示データを不揮発性メモリ108に格納する(ステップS130)。その後、制御部106は、一時記憶スタンプ情報の削除処理(ステップS400)を実行する。制御部は、P2P通信のメイン処理を終了する。
【0107】
<画像編集機能の概要>
ここで、本実施の形態に係る携帯電話100における画像の編集機能について説明する。図9は、本実施の形態に係る携帯電話100におけるコンテンツの編集機能を示すイメージ図である。より詳細には、図9(A)は、スタンプが選択された状態を示すイメージ図である。図9(B)は、スタンプを押下する位置を指定する状態を示すイメージ図である。図9(C)は、スタンプを押下する命令が入力された状態を示すイメージ図である。図9(D)は、スタンプが押下された後の画像(出来上がり画像)を示すイメージ図である。
【0108】
図3および図9(A)を参照して、ユーザは、スタイラスペン99などを用いて、タブレット119を介して携帯電話100に対して手書き入力を行う。そして、ユーザは、スタイラスペン99を用いて、選択可能にリスト表示されているスタンプの中から所望のスタンプを選択する。ここでは、ユーザが、スタイラスペン99を用いて、所望のスタンプを押下することによってスタンプの選択を行う。
【0109】
図9(B)を参照して、ユーザは、スタイラスペン99を介して所望するスタンプにタッチした後、当該スタイラスペン99をスタンプを押下したい位置へと移動させる。図9(C)を参照して、ユーザは、タブレット119上のスタンプを押下したい位置にスタイラスペン99を接触させることによって、スタンプを押す位置を決定する。これによって、制御部106は、タブレット119を介してスタンプを押下すべき位置を受け付ける。制御部106は、当該位置に基づいて、手書き画像などの画像上にスタンプを表示する。図9(D)を参照して、最終的に、制御部106は、ユーザが所望するスタンプが押された画像をディスプレイ107に表示させる。
【0110】
<スタンプ情報交換処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ情報交換処理について説明する。図10は、本実施の形態に係る携帯電話におけるスタンプ情報交換処理の処理手順を示すフローチャートである。図10を参照して、制御部106は、通信デバイス101を介して他の通信端末からスタンプ情報を受信したか否かを判断する(ステップS202)。制御部106は、他の通信端末からスタンプ情報を受信しない場合(ステップS202にてNOである場合)、スタンプ送信処理(ステップS500)を実行する。そして制御部106は、スタンプ受信処理(ステップS600)を実行する。スタンプ送信処理(ステップS500)およびスタンプ受信処理(ステップS600)については、後述する。
【0111】
制御部106は、他の通信端末からスタンプ情報を受信した場合(ステップS202にてYESである場合)、スタンプ受信処理(ステップS600)を実行する。そして、制御部106は、スタンプ送信処理(ステップS500)を実行する。
【0112】
<スタンプ送信処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ送信処理について説明する。図11は、本実施の形態に係る携帯電話100におけるスタンプ送信処理の処理手順を示すフローチャートである。
【0113】
図11を参照して、制御部106は、不揮発性メモリ108を参照して、自己が所有するスタンプデータに関するスタンプ情報を通信デバイス101を用いて他の通信端末へと送信する(ステップS502)。以下では、揮発性メモリ103のSTMPTBL[MySTMP].contIDをper1とする。揮発性メモリ103のSTMPTBL[MySTMP].transFをper2とする。揮発性メモリ103のSTMPTBL[MySTMP].transTPをper3とする。揮発性メモリ103のSTMPTBL[MySTMP].contMETAをper4とする。
【0114】
制御部106は、通信デバイス101を介して他の通信端末から非要求メッセージを受信したか否かを判断する(ステップS504)。制御部106は、他の通信端末から非要求メッセージを受信した場合(ステップS504にてYESである場合)、スタンプ送信処理(ステップS500)を終了する。
【0115】
制御部106は、他の通信端末から非要求メッセージを受信しない場合(ステップS504にてNOである場合)、通信デバイス101を介して他の通信端末から再生コードを送信する旨の要求を受け付けたか否かを判断する(ステップS506)。制御部106は、他の通信端末から再生コードを送信する旨の要求を受け付けた場合(ステップS506にてYESである場合)、対象となるスタンプの再生コードを通信デバイス101を介して当該他の通信端末に送信する(ステップS508)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0116】
制御部106は、他の通信端末から再生コードを送信する旨の要求を受信しない場合(ステップS506にてNOである場合)、通信デバイス101を介して他の通信端末からスタンプデータを送信する旨の要求を受け付けたか否かを判断する(ステップS510)。制御部106は、他の通信端末からスタンプデータを送信する旨の要求を受け付けない場合(ステップS510にてNOである場合)、ステップS504からの処理を繰り返す。
【0117】
制御部106は、他の通信端末からスタンプデータを送信する旨の要求を受け付けた場合(ステップS510にてYESである場合)、揮発性メモリ103を参照して、per3に0が格納されているか否かを判断する(ステップS512)。制御部106は、per3に0が格納されている場合(ステップS512にてYESである場合)、すなわち対象となるスタンプが所有権譲渡タイプである場合、対象となるスタンプに関する全データ(表示データ)を通信デバイス101を用いて当該他の通信端末へと送信する(ステップS514)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0118】
制御部106は、揮発性メモリ103を参照して、per3に0が代入されていない場合(ステップS512にてNOである場合)、揮発性メモリ103を参照して、per3に1が代入されているか否かを判断する(ステップS516)。制御部106は、per3に1が代入されている場合(ステップS516にてYESである場合)、すなわち対象となるスタンプが無変換タイプである場合、対象となるスタンプの表示データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS518)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0119】
制御部106は、per3に1が代入されていない場合(ステップS516にてNOである場合)、揮発性メモリ103を参照して、per3に2が代入されているか否かを判断する(ステップS520)。制御部106は、per3に2が代入されている場合(ステップS520にてYESである場合)、すなわち対象となるスタンプが粗データ送信タイプである場合、対象となるスタンプの転送データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS522)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0120】
制御部106は、per3に2が格納されていない場合(ステップS520にてNOである場合)、すなわち対象となるスタンプが再生コード送信タイプである場合、対象となるスタンプの表示データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS524)。制御部106は、スタンプ送信処理(ステップS500)を終了する。
【0121】
<スタンプ受信処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ受信処理について説明する。図12は、本実施の形態に係る携帯電話100におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0122】
図12を参照して、制御部106は、通信デバイス101を介して他の通信端末からスタンプ情報を受信する(ステップS602)。制御部106は、スタンプ情報がスタンプ管理テーブル108Aが管理しているスタンプに関するものであるか否かを判断する(ステップS604)。制御部106は、受信したスタンプ情報がスタンプ管理テーブル108Aが管理しているスタンプに関するものである場合(ステップS604にてYESである場合)、揮発性メモリ103の変数HisSTMPに、受信したスタンプ情報に対応するスタンプデータが格納されたアドレスを格納する(ステップS606)。
【0123】
制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものであるか否かを判断する(ステップS608)。制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものである場合(ステップS608にてYESである場合)、通信デバイス101を介して他の通信端末へスタンプの非要求メッセージを送信する(ステップS610)。制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0124】
制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものでない場合(ステップS608にてNOである場合)、揮発性メモリ103のper3に2が格納されているか否かを判断する(ステップS612)。制御部106は、揮発性メモリ103のper3に2が格納されている場合(ステップS612にてYESである場合)、ステップS610からの処理を実行する。
【0125】
制御部106は、揮発性メモリ103のper3に2が格納されていない場合(ステップS612にてNOである場合)、揮発性メモリ103のper3に3が格納されているか否かを判断する(ステップS614)。制御部106は、揮発性メモリ103のper3に3が格納されている場合(ステップS614にてYESである場合)、後述するステップS688からの処理を実行する。
【0126】
制御部106は、揮発性メモリ103のper3に3が格納されていない場合(ステップS614にてNOである場合)、後述するステップS662からの処理を実行する。
【0127】
制御部106は、受信したスタンプ情報に対応するスタンプがスタンプ管理テーブル108Aが管理しているものでない場合(ステップS604にてNOである場合)、揮発性メモリ103のownerFに0を代入する(ステップS622)。制御部106は、揮発性メモリ103のper2に0が格納されているか否かを判断する(ステップS624)。
【0128】
制御部106は、揮発性メモリ103のper2に0が格納されている場合(ステップS624にてYESである場合)、揮発性メモリ103のownerFに1を格納する(ステップS626)。制御部106は、スタンプ管理テーブル108Aの値を更新する(ステップS628)。より詳細には、制御部106は、揮発性メモリ103のSTMPTBL[ccnt].contIDにper1の値を格納する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].ownerFにownerFの値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].transFにper2の値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].transTPにper3の値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].contMETAにper4の値を代入する。制御部106は、揮発性メモリ103のHisSTMPにccntの値を代入する。制御部106は、揮発性メモリ103のccntをインクリメントする。
【0129】
制御部106は、揮発性メモリ103のper2に0が格納されていない場合には(ステップS624にてNOである場合)、ステップS626を実行せずに、ステップS628からの処理を実行する。
【0130】
制御部106は、ステップS628を実行後、揮発性メモリ103のper3に0あるいは2が格納されているか否かを判断する(ステップS630)。制御部106は、揮発性メモリ103のper3に0あるいは2が格納されている場合(ステップS630にてYESである場合)、後述するステップS652からの処理を実行する。
【0131】
制御部106は、揮発性メモリ103のper3に0も2も格納されていない場合(ステップS630にてNOである場合)、揮発性メモリ103のper3に1が格納されているか否かを判断する(ステップS632)。制御部106は、揮発性メモリ103のper3に1が格納されている場合(ステップS632にてYESである場合)、後述するステップS662からの処理を実行する。
【0132】
制御部106は、揮発性メモリ103のper3に1が格納されていない場合(ステップS632にてNOである場合)、後述するステップS682からの処理を実行する。
【0133】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理について説明する。図13は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0134】
図13を参照して、制御部106は、他の通信端末から受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合、通信デバイス101を介して当該他の通信端末にスタンプデータの送信を要求するメッセージを送信する(ステップS652)。制御部106は、受信したスタンプデータを不揮発性メモリ108のスタンプデータ記憶領域に記憶する(ステップS654)。制御部106は、スタンプデータ108Bの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS656)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS658)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0135】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理について説明する。図14は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0136】
図14を参照して、制御部106は、受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合、通信デバイス101を介して他の通信端末へスタンプデータの送信を要求するメッセージを送信する(ステップS662)。制御部106は、他の通信端末から受信したスタンプデータを揮発性メモリ103の一時記憶領域に記憶する(ステップS664)。制御部106は、スタンプデータの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS668)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS670)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0137】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理について説明する。図15は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0138】
図15を参照して、制御部106は、受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合、通信デバイス101を介して他の通信端末へスタンプデータの送信を要求するメッセージを送信する(ステップS682)。制御部106は、受信したスタンプデータを不揮発性メモリ108のスタンプデータ記憶領域に記憶する(ステップS684)。制御部106は、スタンプデータ108Bの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS686)。
【0139】
制御部106は、通信デバイス101を介して他の通信端末に再生コードの送信を要求するメッセージを送信する(ステップS688)。制御部106は、受信した再生コードを揮発性メモリ103の一時記憶領域に記憶する(ステップS690)。制御部106は、再生コードの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS692)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS694)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0140】
<スタンプ表示処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ表示処理について説明する。図16は、本実施の形態に係る携帯電話におけるスタンプ表示処理の処理手順を示すフローチャートである。
【0141】
図16を参照して、制御部106は、揮発性メモリ103の各種ローカル変数を設定する(ステップS302)。より詳細には、制御部106は、揮発性メモリ103のtransFにSTMPTBL[DSPSTMP].transFの値を代入する。制御部106は、揮発性メモリ103のtransTPにSTMPTBL[DSPSTMP].transTPの値を代入する。制御部106は、揮発性メモリ103のcontPATHにSTMPTBL[DSPSTMP].contPATHの値を代入する。制御部106は、揮発性メモリ103のdecodeADRにSTMPTBL[DSPSTMP].decodeADRの値を代入する。
【0142】
制御部106は、揮発性メモリ103のtransFに0が格納されているか否かを判断する(ステップS304)。制御部106は、揮発性メモリ103のtransFに0が格納されている場合(ステップS304にてYESである場合)、すなわちスタンプデータが所有権譲渡タイプである場合、スタンプ管理テーブル108Aのスタンプデータの格納アドレスを参照して、不揮発性メモリ108のスタンプデータ108Bの表示データを読出す(ステップS306)。制御部106は、読出したスタンプデータ108Bの表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる(ステップS306)。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0143】
制御部106は、揮発性メモリ103のtransFに0が格納されていない場合(ステップS364にてNOである場合)、揮発性メモリ103のtransTPに1が格納されているか否かを判断する(ステップS308)。制御部106は、揮発性メモリ103のtransTPに1が格納されている場合(ステップS308にてYESである場合)、すなわちスタンプデータが無変換タイプである場合、揮発性メモリ103のcontPATHを参照して、揮発性メモリ103の一時記憶領域に格納されているスタンプデータの表示データを読み出す(ステップS310)。制御部106は、表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0144】
制御部106は、揮発性メモリ103のtransTPに1が格納されていない場合(ステップS308にてNOである場合)、揮発性メモリ103のtransTPに2が格納されているか否かを判断する(ステップS312)。制御部106は、揮発性メモリ103のtransTPに2が格納されている場合(ステップS312にてYESである場合)、すなわちスタンプデータが粗データ送信タイプである場合、揮発性メモリ103のcontPATHを参照して、不揮発性メモリ108のスタンプデータ記憶領域に格納されているスタンプデータの転送データを読み出す(ステップS314)。制御部106は、転送データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0145】
制御部106は、揮発性メモリ103のtransTPに2が格納されていない場合(ステップS312にてNOである場合)、揮発性メモリ103のcontPATHを参照して、不揮発性メモリ108のスタンプデータ記憶領域に格納されているスタンプデータ108Bを揮発性メモリ103の一時記憶領域に格納されている再生コードを用いて表示データに変換する(ステップS316)。制御部106は、変換した表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0146】
<一時記憶スタンプデータ削除処理>
次に、本実施の形態に係る携帯電話100における一時記憶スタンプデータ削除処理について説明する。図17は、本実施の形態に係る携帯電話における一時記憶スタンプデータ削除処理の処理手順を示すフローチャートである。
【0147】
図17を参照して、制御部106は、揮発性メモリ103の各種ローカル変数を設定する(ステップS402)。より詳細には、制御部106は、揮発性メモリ103のownerFにSTMPTBL[HisSTMP].ownerFの値を代入する。制御部106は、揮発性メモリ103のtransTPにSTMPTBL[HisSTMP].transTPの値を代入する。制御部106は、揮発性メモリ103のcontPATHにSTMPTBL[HisSTMP].contPATHの値を代入する。制御部106は、揮発性メモリ103のdecodeADRにSTMPTBL[HisSTMP].decodeADRの値を代入する。
【0148】
制御部106は、揮発性メモリ103のownerFに0が格納されているか否かを判断する(ステップS404)。制御部106は、揮発性メモリ103のownerFに0が格納されている場合(ステップS404にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0149】
制御部106は、揮発性メモリ103のownerFに0が格納されていない場合(ステップS404にてNOである場合)、揮発性メモリ103のtransTPに0が格納されているか否かを判断する(ステップS406)。制御部106は、揮発性メモリ103のtransTPに0が格納されている場合(ステップS406にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0150】
揮発性メモリ103のtransTPに0が格納されていない場合(ステップS406にてNOである場合)、揮発性メモリ103のtransTPに1が格納されているか否かを判断する(ステップS408)。制御部106は、揮発性メモリ103のtransTPに1が格納されている場合(ステップS408にてYESである場合)、揮発性メモリ103の一時記憶領域に格納されているスタンプデータを削除する(ステップS410)。制御部106は、揮発性メモリ103のSTMPTBL[HisSTMP].contPATHの値を初期化する(ステップS412)。制御部106は、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0151】
制御部106は、揮発性メモリ103のtransTPに1が格納されていない場合(ステップS408にてNOである場合)、揮発性メモリ103のtransTPに2が格納されているか否かを判断する(ステップS414)。制御部106は、揮発性メモリ103のtransTPに2が格納されている場合(ステップS414にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0152】
制御部106は、揮発性メモリ103のtransTPに2が格納されていない場合(ステップS414にてNOである場合)、揮発性メモリ103の一時記憶領域のdecodeADRに格納されている再生コードを削除する(ステップS416)。制御部106は、揮発性メモリ103のSTMPTBL[HisSTMP].decodeADRの値を初期化する(ステップS418)。制御部106は、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0153】
<その他の実施の形態>
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
【0154】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0155】
プログラムコードを供給するための記憶媒体としては、例えば、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード(ICメモリカード)、ROM(マスクROM、フラッシュEEPROMなど)などを用いることができる。
【0156】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0157】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0158】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0159】
1 ネットワークシステム、99 スタイラスペン、100,100A,100B 携帯電話、101 通信デバイス、103 揮発性メモリ、104 入力部、105 計時部、106 制御部、1061 生成部、1062 通信制御部、1063 表示制御部、107 ディスプレイ、108 不揮発性メモリ、108A スタンプ管理テーブル、108B スタンプデータ、119 タブレット、200 カーナビゲーション装置、300 パーソナルコンピュータ、400 マッチングサーバ、500 インターネット網、600 コンテンツサーバ、700 キャリア網。
【技術分野】
【0001】
本発明は、ネットワークを介して他の通信端末と接続可能な通信端末、通信方法、および通信プログラムに関し、特に、リアルタイムで他の通信端末とコンテンツをやり取りする通信端末、通信方法、および通信プログラムに関する。
【背景技術】
【0002】
近年、携帯電話のユーザは、出先や移動先においても、電話機能を用いて他の携帯電話のユーザとコミュニケーションすることが可能となった。
【0003】
しかしながら、電話機能によるコミュニケーションは、携帯電話のユーザが電車・バス・映画館・図書館などの公共施設を利用している時には許されない。そこで、ユーザは、メールやチャット等の機能を用いることによって、他の携帯電話のユーザと文字によるコミュニケーションを行っていた。文字によるコミュニケーションでは、肉声によるコミュニケーションと比較して、感情や状況などを表わす情報が伝わりにくい。また、文字によるコミュニケーションは、伝えたいメッセージを入力するために時間がかかるため、リアルタイムな応答ができない。
【0004】
たとえば、特開2001−111708号公報(特許文献1)には、携帯型情報通信装置が開示されている。特開2001−111708号公報(特許文献1)によると、携帯型情報通信装置は、液晶ディスプレイ一体型タブレット等の入力手段を用いてユーザが入力した手書きデータの座標情報を、逐次連続して接続先の携帯型情報通信装置に送信するとともに、入力された手書きデータの筆跡を液晶ディスプレイ等表示手段に表示し、同時に、接続先の携帯型情報通信装置から送られてきた手書きデータの座標情報をもとに、受信した手書きデータの筆跡を表示手段に表示できるように構成したことを特徴とするものである。この構成により、携帯型の端末装置を用いて、手書き入力データをリアルタイムで送受信することができ、場所を選ばずいつでも筆談のような会話型のコミュニケーションを実現することができる。
【0005】
また、特開2003−234842号公報(特許文献2)には、リアルタイム手書き通信システムが開示されている。特開2003−234842号公報(特許文献2)によると、リアルタイム手書き通信システムは、タッチパネル、タッチペン、データ入力装置、コントローラ装置、データ出力装置および表示装置を有する。手書きデータをタッチペンで入力し、出力データに変換できる。データ入力装置は、別のリアルタイム手書き通信システムから送信された入力データを受信し入力する。コントローラ装置は、タッチパネルおよびデータ入力装置と接続されており、入力データおよび出力データをリアルタイムに処理し、送信する。データ出力装置は、コントローラ装置に接続され、他のリアルタイム手書き通信システムに出力データを送信する。表示装置は入力データおよび出力データを表示する。
【0006】
また、特開2001−333204号公報(特許文献3)には、携帯端末装置が開示されている。特開2001−333204号公報(特許文献3)によると、携帯端末装置は、カラー表示可能な手書きデータ表示手段と、手書きデータ表示手段表面に設けた手書き入力手段と、手書き入力手段により入力された手書きデータを含む複数の手書きデータを保持する手書きデータ保持手段と、手書きデータ保持手段に保持されている複数の手書きデータを色分けして合成し同一画面に表示するデータ表示管理手段と、手書き入力手段により入力された手書きデータと相手側端末の手書きデータを保持する手書きデータ保持手段と、手書きデータ保持手段に保持されている自身の手書きデータを相手側端末にリアルタイムに送信し逆に相手側端末から手書きデータを受信し手書きデータ保持手段に書き込むデータ通信手段で構成した。
【0007】
また、特開2004−234594号公報(特許文献4)には、フォトコミュニケーションシステムが開示されている。特開2004−234594号公報(特許文献5)によると、デジタルカメラのメモリカードなどから画像データを受け取る画像入力手段、画像データなどを記録するデータ記録手段、ユーザからの指示入力を行う入力手段、記録した画像などの表示を行う画像表示手段、記録した画像などのデータを他の端末とやり取りするためのデータ通信手段、端末の実行制御を行う制御手段を備える1対の情報通信端末であって、いずれの情報通信端末においても画像表示手段に表示された画像を見ながら画像表示手段に重畳された入力手段により手書きのグラフィック要素の書き込みを行えば、画像を含めた落書きの結果がリアルタイムに他方の情報通信端末に表示されるように構成する。
【0008】
また、特開2005−294918号公報(特許文献5)には、有料コンテンツの配信方法が開示されている。特開2005−294918号公報(特許文献5)によると、第1の無線端末が保有する有料コンテンツを第2の無線端末に転送するにあたり、先ず、キャリアに第2の無線端末への転送の認可を受けてから転送し、転送終了後キャリアに転送完了を報告する。
【0009】
また、特開2004−295880号公報(特許文献6)には、デジタルメディアクリアリングプラットフォームが開示されている。特開2004−295880号公報(特許文献6)によると、ピア・ツー・ピア配布が、デジタルメディアクリアリングハウスプラットフォーム(DMCHP)によって提供される。その際、コンテンツは一方のピアから他方のピアへの支払いの代償として転送される。受領者が支払いを行うときには、その支払いの一部が、DMCHPによって施行された合意に従って、そのコンテンツに係る権利の所有者に渡される。よって、ピア・ツー・ピアシステムにおいてコンテンツを配布するピアは、そのピアがコンテンツの配布に関して果たした役割に対して補償され、コンテンツ所有者は、コンテンツのライセンス方法および配布に関するコントロールを保持する。DMCHPは、コンテンツメタデータレポジトリ、オンライン取引処理エンジン、及び、購入側ユーザインターフェースを用いて実現される。
【0010】
そして、たとえば、手書きチャットソフトの代表的な編集機能として、スタンプ機能が知られている。ユーザは、予め用意されている「スタンプデータ」と呼ばれる複数のイメージデータ群の中から、1つのイメージデータを選択する。通信端末は、イメージデータを他の通信端末へと送信する。他の通信端末は、受信したイメージデータを描画(編集)エリア上の指定された場所に表示する。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特開2001−111708号公報
【特許文献2】特開2003−234842号公報
【特許文献3】特開2001−333204号公報
【特許文献4】特開2004−234594号公報
【特許文献5】特開2005−294918号公報
【特許文献6】特開2004−295880号公報
【発明の概要】
【発明が解決しようとする課題】
【0012】
しかしながら、複数人が自身の通信端末を利用することによって互いに手書きチャットを行う場面において、複数人が共通のコンテンツを閲覧できるようにするためには、通信端末(端末A)がコンテンツを他の通信端末(端末B)に送信するとともに、端末Bが受信したコンテンツを表示する必要がある。ここで、通常、端末Aの利用者は、コンテンツの著作権者から、有償あるいは無償で、当該コンテンツを使用する権利を正規に取得しているが、端末Bの利用者は当該コンテンツを使用する権利を有していない場合がある。すなわち、著作権法上の観点から、当該コンテンツを使用する権利を有していない端末Bのユーザが、当該コンテンツを自由に編集したり、さらに他の通信端末へ送信したりできることは好ましくない。
【0013】
本発明は、かかる問題を解決するためになされたものであり、その目的は、コンテンツを使用する権利を有していない端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止できる通信端末、通信方法、および通信プログラムを提供することである。
【課題を解決するための手段】
【0014】
この発明のある局面に従うと、通信端末が提供される。通信端末は、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部と、操作命令に基づいて第1の情報を含むコンテンツを生成する生成手段と、通信部を用いて他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信し、通信部を用いて他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信する通信制御手段と、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させる表示制御手段とを備える。
【0015】
好ましくは、通信端末は、第2の情報を一時的に記憶する第2の記憶部をさらに備える。通信制御手段は、第2の権限情報に基づいて第2の情報を第1の記憶部あるいは第2の記憶部に記憶させる。
【0016】
好ましくは、通信制御手段は、通信部を介して第1の情報を特定する識別情報を他の通信端末へと送信し、識別情報の送信に応答して他の通信端末から送信された第1の情報の送信要求に応じて、通信部を介して第1の情報を他の通信端末へと送信する。
【0017】
さらに、好ましくは、識別情報を送信する際に、第1の権限情報をも他の通信端末へと送信する。
【0018】
この発明の別の局面に従うと、演算処理部と、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末における通信方法が提供される。通信方法は、演算処理部が、操作命令に基づいて第1の情報を含むコンテンツを生成するステップと、演算処理部が、通信部を用いて、他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信するステップと、演算処理部が、通信部を用いて、他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信するステップと、演算処理部が、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させるステップとを備える。
【0019】
この発明の別の局面に従うと、演算処理部と、ディスプレイと、操作命令を受け付ける入力デバイスと、ネットワークを介して他の通信端末とデータを送受信する通信部と、第1の情報を、第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末に通信させるための通信プログラムが提供される。通信プログラムは、演算処理部に、操作命令に基づいて第1の情報を含むコンテンツを生成するステップと、通信部を用いて、他の通信端末へコンテンツに含まれる第1の情報と第1の情報に対応する第1の権限情報とを送信するステップと、通信部を用いて、他の通信端末から第2の情報と第2の情報に対応する第2の権限情報とを受信するステップと、第2の権限情報に基づいて第2の情報を含むコンテンツをディスプレイに表示させるステップとを実行させる。
【発明の効果】
【0020】
以上のように、本発明によって、コンテンツを使用する権利を有していない通信端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止できる通信端末、通信方法、および通信プログラムが提供される。
【図面の簡単な説明】
【0021】
【図1】本実施の形態に係るネットワークシステムを示す概略図である。
【図2】ネットワークシステムにおける動作概要を示すシーケンス図である。
【図3】本施の形態に係る携帯電話の概観を示すイメージ図である。
【図4】携帯電話のハードウェア構成を示すブロック図である。
【図5】スタンプ管理テーブルのデータ構造を示すイメージ図である。
【図6】通信端末が他の通信端末に送信する送信データのデータ構造を示すイメージ図である。
【図7】本実施の形態に係る携帯電話およびネットワークシステムの機能構成を示すブロック図である。
【図8】本実施の形態に係る携帯電話におけるP2P通信のメイン処理の処理手順を示すフローチャートである。
【図9】本実施の形態に係る携帯電話におけるコンテンツの編集機能を示すイメージ図である。
【図10】本実施の形態に係る携帯電話におけるスタンプ情報交換処理の処理手順を示すフローチャートである。
【図11】本実施の形態に係る携帯電話におけるスタンプ送信処理の処理手順を示すフローチャートである。
【図12】本実施の形態に係る携帯電話におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図13】携帯電話が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図14】携帯電話が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図15】携帯電話が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【図16】本実施の形態に係る携帯電話におけるスタンプ表示処理の処理手順を示すフローチャートである。
【図17】本実施の形態に係る携帯電話における一時記憶スタンプデータ削除処理の処理手順を示すフローチャートである。
【発明を実施するための形態】
【0022】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
【0023】
また、以下では、携帯電話100を「通信端末」の代表例として説明を行う。ただし、通信端末は、パーソナルコンピュータや、カーナビゲーション装置(Satellite navigation system)や、PND(Personal Navigation Device)や、PDA(Personal Digital Assistance)などのような、他の情報通信機器であってもよい。
【0024】
そして、以下では、「コンテンツ」とは、スタンプや写真や手書き画像やそれらを組み合わせて成る静止画像および動画像を含む概念である。「コンテンツデータ」とは、スタンプデータや写真データや手書き画像データやそれらを組み合わせて成る静止画像データおよび動画像データを含む概念である。
【0025】
<ネットワークシステム1の全体構成>
まず、本実施の形態に係るネットワークシステム1について説明する。図1は、本実施の形態に係るネットワークシステム1を示す概略図である。図1に示すように、ネットワークシステム1は、携帯電話100A,100Bと、マッチングサーバ400と、インターネット網(第1のネットワーク)500と、コンテンツサーバ600と、キャリア網(第2のネットワーク)700とを含む。また、本実施の形態に係るネットワークシステム1は、車両250に搭載されるカーナビゲーション装置200と、パーソナルコンピュータ(PC;Personal Computer)300とを含む。
【0026】
なお、説明の容易化のために、本実施の形態に係るネットワークシステム1が、第1の携帯電話100Aと、第2の携帯電話100Bとを含む場合について説明する。また、携帯電話100A,100Bの各々に共通の構成や機能を説明する際には、それらを「携帯電話100」とも総称する。そして、携帯電話100A,100B、カーナビゲーション装置200、パーソナルコンピュータ300の各々に共通の構成や機能を説明する際には、それらを「通信端末」とも総称する。
【0027】
携帯電話100は、キャリア網700に接続可能に構成されている。カーナビゲーション装置200は、インターネット網500に接続可能に構成されている。パーソナルコンピュータ300は、LAN(Local Area Network)350やWAN(Wide Area Network)を介してインターネット網500に接続可能に構成されている。マッチングサーバ400は、インターネット網500に接続可能に構成されている。
【0028】
より詳細には、第1の携帯電話100Aと、第2の携帯電話100Bと、カーナビゲーション装置200と、パーソナルコンピュータ300とは、キャリア網700やインターネット網500を介して互いに接続可能であって、互いにデータの送受信が可能である。また、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300には、自端末を特定するための識別情報(たとえば、メールアドレスやIP(Internet Protocol)アドレスなど)が割り当てられる。すなわち、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、内部の記録媒体に他の通信端末の識別情報を記憶することができ、当該識別情報に基づいてキャリア網700やインターネット網500などを介して当該他の通信端末とデータ送受信を行うことができる。
【0029】
なお、本実施の形態に係る携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、各通信端末に割り当てられるIPアドレスを利用して、図示しないメールサーバを介さずに他の通信端末とデータ送受信を行うものである。ここでは、各通信端末がマッチングサーバ400にアクセスする際には、すなわち各通信端末がインターネットにアクセスした際に、マッチングサーバ400あるいは他の図示しないサーバ装置などによってIPアドレスが割り当てられるものとする。IPアドレスの割り当て処理の詳細は公知であるので、ここでは説明を繰り返さない。
【0030】
特に、本実施の形態に係る携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、自身に割り当てられたIPアドレスを利用することにより、直接的に相互にネットワークを介してデータ送受信を行うことが可能である。すなわち、本実施の形態に係るネットワークシステム1に含まれる携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、いわゆるP2P(Pear to Pear)型のネットワークを構成することが可能である。
【0031】
コンテンツサーバ600は、インターネット網500に接続される。コンテンツサーバ600は、スタンプデータやゲームソフトなどのコンテンツを記憶する。コンテンツサーバ600は、インターネット網500を介して、携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300からの要求を受け付ける。コンテンツサーバ600は、当該要求に応じて、各種のコンテンツを携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300に配信する。たとえば、コンテンツサーバ600は、携帯電話100のユーザが所望するスタンプデータを、有償で当該携帯電話100に配信する。
【0032】
<ネットワークシステム1の動作概要>
次に、本実施の形態に係るネットワークシステム1の動作概要について説明する。図2は、ネットワークシステム1における動作概要を示すシーケンス図である。図1および図2に示すように、本実施の形態に係る各通信端末は、P2P型のデータ送受信を行うために、はじめに互いのIPアドレスを交換(取得)する必要がある。そして、各通信端末は、IPアドレスを取得したのちに、P2P型のデータ送受信によってメッセージや添付ファイルなどを他の通信端末に送信する。
【0033】
ただし、以下では、通信端末のそれぞれが、マッチングサーバ400に生成されたチャットルームを介してメッセージおよびIPアドレスを送受信し、その後互いのIPアドレスに基づいてP2P通信を行う場合について説明する。
【0034】
まず、第1の携帯電話100A(図2において端末A)が、ユーザ操作に応じて、インターネット網500を介してコンテンツサーバ600にコンテンツを要求する(ステップS002)。ここでは、コンテンツは、アニメのキャラクターなどのスタンプとする。ただし、コンテンツは、写真であってもよいし、動画であってもよいし、ゲームソフトなどであってもよい。コンテンツサーバ600は、当該要求に応じて、第1の携帯電話100Aにスタンプを表示するためのスタンプデータ(第1の情報)を配信する(ステップS004)。
【0035】
第1の携帯電話100Aは、ユーザ操作に応じて、マッチングサーバ400にチャットルームを生成するように要求する(ステップS006)。すなわち、第1の携帯電話100Aは、マッチングサーバ400にIP登録(ログイン)を要求する。第1の携帯電話100Aは、これと同時にマッチングサーバ400からIPアドレスを取得してもよいし、予め他のサーバ装置などからIPアドレスを取得していてもよい。より詳細には、第1の携帯電話100Aは、キャリア網700、インターネット網500を介して、マッチングサーバ400に第1の携帯電話100AのIPアドレスと新たなチャットルームの生成を要求するメッセージとを送信する。
【0036】
第1の携帯電話100Aのユーザは、第1の携帯電話100Aなどを用いて、第2の携帯電話100B(図2において端末B)のユーザをチャットに勧誘する(ステップS008)。第2の携帯電話100Bは、ユーザの命令に応じてチャットルームに入室する(ステップS010)。すなわち、第2の携帯電話100Bは、第2の携帯電話100BのIPアドレスをマッチングサーバ400に登録することによって、チャットルームに入室する。
【0037】
第2の携帯電話100Bは、チャットルームに入室した旨を第1の携帯電話100Aに伝える(ステップS012)。すなわち、第2の携帯電話100Bは、自身に割り当たられたIPアドレスを第1の携帯電話100Aに送信する。第1の携帯電話100Aと第2の携帯電話100Bとは、キャリア網700、インターネット網500を介して互いに接続する。すなわち、第1の携帯電話100Aと第2の携帯電話100Bとは、P2P通信を開始する。
【0038】
第1の携帯電話100Aは、インターネット網500を介して、自身が所有しているスタンプを特定する識別情報(スタンプごとに固有に割り当てられた番号やファイル名など)を含む概要データを第2の携帯電話100Bに送信する(ステップS014)。このとき、第1の携帯電話100Aは、スタンプの概要データとともに、対応するスタンプの使用権限を示す権限情報を第2の携帯電話100Bに送信してもよい。
【0039】
第2の携帯電話100Bは、ユーザからの選択命令を受け付けて、第1の携帯電話100Aにスタンプを表示するためのスタンプデータを要求する(ステップS016)。あるいは、第2の携帯電話100Bは、第1の携帯電話100Aに対して第1の携帯電話100Aが所有する全てのスタンプデータを要求する。第1の携帯電話100Aは、当該要求に応じて、第2の携帯電話100Bにスタンプデータを送信する(ステップS018)。第1の携帯電話100Aは、このときに、対応するスタンプの権限情報を第2の携帯電話100Bに送信してもよい。
【0040】
第2の携帯電話100Bは、スタンプデータを受信して、権限情報に基づいてスタンプデータを記憶する(ステップS020)。このとき、第2の携帯電話100Bは、権限情報に、基づいて受信したスタンプをリスト表示してもよい。
【0041】
同様に、第2の携帯電話100Bは、インターネット網500を介して、自身が所有しているスタンプを特定する識別情報(スタンプごとに固有に割り当てられた番号やファイル名など)を含む概要データを第1の携帯電話100Aに送信する(ステップS022)。第1の携帯電話100Aは、ユーザからの選択命令を受け付けて、第2の携帯電話100Bにスタンプを示すスタンプデータを要求する(ステップS024)。あるいは、第1の携帯電話100Aは、第2の携帯電話100Bに対して第2の携帯電話100Bが所有する全てのスタンプデータを要求する。第2の携帯電話100Bは、当該要求に応じて、第1の携帯電話100Aにスタンプデータを送信する(ステップS026)。
【0042】
第1の携帯電話100Aは、スタンプデータを受信して、権限情報に基づいてスタンプデータを記憶する(ステップS028)。第1の携帯電話100Aは、権限情報に基づいて、受信したスタンプをリスト表示してもよい。
【0043】
第1の携帯電話100Aは、ユーザからの編集命令に応じて、自身が使用可能なスタンプを押した画像を表示するための画像データ(第1のコンテンツデータ)などを生成する。すなわち、第1の携帯電話100Aは、スタンプを用いて画像を編集する。このとき、第1の携帯電話100Aは、スタンプの権限情報に基づいて編集対象である画像自身に関する権限情報を更新(生成)してもよい。
【0044】
第1の携帯電話100Aは、スタンプの押下を示す操作情報、あるいはスタンプが押された画像を表示するための画像データを第2の携帯電話100Bへ送信する(ステップS030)。このとき、第1の携帯電話100Aは、スタンプが押された画像を表示する(ステップS032)。
【0045】
第2の携帯電話100Bは、スタンプの押下を示す操作情報を受信して、権限情報に基いてスタンプが押された画像を表示する(ステップS034)。あるいは、第2の携帯電話100Bは、画像データを受信して、画像データに対応する権限情報に基づいて画像データを記憶するとともに、権限情報に基づいて画像を表示する。
【0046】
第2の携帯電話100Bは、ユーザからの編集命令に応じて、自身が使用可能なスタンプデータ(第2の情報)を用いて受信した画像データをさらに編集する。このとき、第2の携帯電話100Bは、使用したスタンプに対応する権限情報に基づいて編集後の画像データ(第2のコンテンツデータ)自身の権限情報を更新してもよい。
【0047】
第2の携帯電話100Bは、スタンプの押下を示す操作情報、あるいは編集後の画像データを第1の携帯電話100Aへ送信する(ステップS036)。このとき、第2の携帯電話100Bは、編集された画像を表示する(ステップS038)。
【0048】
第1の携帯電話100Bは、スタンプの押下を示す操作情報を受信して、権限情報に基づいて編集後の画像データを記憶するとともに、権限情報に基づいて画像を表示する(ステップS040)。このようにして、第1の携帯電話100Aと第2の携帯電話100Bとは、ステップS030からステップS040までの処理を繰り返すことによって画像を編集していく。すなわち、第1の携帯電話100Aのユーザと第2の携帯電話100Bのユーザは、所望するスタンプを利用しながら手書きチャットを楽しむことができる。
【0049】
第1の携帯電話100Aは、ユーザからP2P通信の終了操作を受け付けると、終了通知を第2の携帯電話100Bに送信する(ステップS042)。このとき、第1の携帯電話100Aは、一時的に記憶していたスタンプデータや画像データを削除する(ステップS044)。第2の携帯電話100Bは、終了通知を受信して、記憶していたスタンプデータや画像データを削除する(ステップS046)。これによって、P2P通信を終了する。
【0050】
ここで、第1の携帯電話100Aのユーザは、予め、有償/無償で、第1の携帯電話100Aが記憶するスタンプデータを使用する権利を取得しているものとする。しかし、第2の携帯電話100Bのユーザは、スタンプデータを使用する権利を有していない場合がある。
【0051】
本実施の形態に係る通信端末は、権限情報とともにスタンプデータや画像データを他の通信端末に送信する。そのため、他の通信端末は、スタンプデータを使用する権利を有していない場合には、所定の表示形態にて当該スタンプを表示したり、当該スタンプを他の画像に貼り付けられなくしたり、当該スタンプデータを他の通信端末へと送信できなくなる。本実施の形態に係る通信端末および当該通信端末を含むネットワークシステムは、このような機能を利用することによって、コンテンツを使用する権利を有していない通信端末のユーザが、他の端末から受信したコンテンツを自由に編集したり送信したりすることを防止する。
【0052】
以下、このような機能を実現するための通信端末や当該通信端末を含むネットワークシステムの構成について詳述する。
【0053】
<携帯電話100のハードウェア構成>
本実施の形態に係る携帯電話100のハードウェア構成について説明する。図3は、本施の形態に係る携帯電話100の概観を示すイメージ図である。図4は、携帯電話100のハードウェア構成を示すブロック図である。
【0054】
図3および図4に示すように、本実施の形態に係る携帯電話100は、外部のネットワークとの間でデータを送受信する通信デバイス101と、プログラムや各種データベースを一時的に記憶する揮発性メモリ103と、入力部104と、時刻(時間)を計測する計時部105と、制御部106と、ディスプレイ107と、プログラムや各種データベースを記憶する不揮発性メモリ108と、タブレット119とを含む。
【0055】
通信デバイス101は、制御部106からの通信データを通信信号に変換し、その通信信号を図示しないアンテナを介して発信する。通信デバイス101は、アンテナを介して受信した通信信号を通信データに変換し、その通信データを制御部106に入力する。
【0056】
入力部104は、キー入力操作などによってユーザから情報を受け付ける。たとえば、入力部104は、テンキーや決定キーなどを含む。入力部104は、入力した命令を確定するための決定命令や、相手先アドレスを選択するための選択命令や、メールを他の通信端末へ送信するための送信命令などを受け付ける。
【0057】
制御部106は、CPU(Central Processing Unit)やMPU(Micro Processing Unit)などによって実現され、携帯電話100の各部を制御する。たとえば、制御部106は、入力部104やタブレット119を介してユーザから各種の命令を受け付ける。制御部106は、通信デバイス101を利用することによってネットワークを介して外部の通信端末とデータの送受信を行う。本実施の形態においては、制御部106は、タブレット119を介してユーザからの編集命令を受け付けて、手書き画像などのコンテンツを編集する。
【0058】
具体的には、制御部106は、不揮発性メモリ108から制御プログラムを読み出して揮発性メモリ103に格納し、揮発性メモリ103から制御プログラムを順次読み出しながら当該制御プログラムを実行する。制御部106は、不揮発性メモリ108あるいは揮発性メモリ103からスタンプデータや画像データなどを読み出して、スタンプやスタンプが押された画像をディスプレイ107に表示させる。制御部106は、編集後の画像データを揮発性メモリ103あるいは不揮発性メモリ108に格納する。
【0059】
本実施の形態に係るディスプレイ107は、有機EL(electroluminescence)や液晶パネルやCRT(Cathode Ray Tube)から構成される。ディスプレイ107は、制御部106からの信号に基づいてスタンプやスタンプが押された画像を表示する。
【0060】
そして、本実施の形態に係る携帯電話100においては、ディスプレイ107の下側(裏側)にタブレット119が敷設されている。これによって、ユーザは、たとえばスタイラスペン99や指などを用いることによって、タブレット119を介して図形情報などを制御部106に手書き入力することができる。
【0061】
本実施の形態に係るディスプレイ107とタブレット119とは、いわゆるタッチパネル150を構成する。なお、ディスプレイ107やタブレット119とは、各種方式のタッチパネルによって実現されてもよいし、光センサ液晶によって実現されてもよい。
【0062】
揮発性メモリ103は、たとえば、作業用メモリとして機能する揮発性のS−RAM(Static-Random Access Memory)やV−RAM(Video Random Access Memory)などによって実現される。揮発性メモリ103は、アプリケーションプログラムや、スタンプデータや、画像データや、再生コードや、各種の変数を揮発的に(一時的に)記憶する。
【0063】
より詳細には、前述したように、制御部106は、受信した画像データやスタンプデータを一時的に揮発性メモリ103に格納する。制御部106は、揮発性メモリ103から画像データを読み出して、ディスプレイ107に画像を表示させる。制御部106は、揮発性メモリ103からスタンプデータを読み出して、ディスプレイ107にスタンプを表示させる。また、制御部106は、編集した画像データを一時的に揮発性メモリ103に格納する。
【0064】
不揮発性メモリ108は、たとえば、制御プログラムなどを記憶するROM(Read Only Memory)や、NV−RAM(Non-Volatile Random Access Memory)や、静止画像データや動画像データなどを記憶するHDD(Hard Disk Drive)などによって実現される。不揮発性メモリ108は、編集することが許可されているスタンプや画像を不揮発的に記憶する。本実施の形態に係る不揮発性メモリ108は、後述するスタンプ管理テーブル108Aや使用可能なスタンプデータ108Bや画像データを記憶する。
【0065】
より詳細には、制御部106は、不揮発性メモリ108が記憶している画像データやスタンプデータを読み出して、揮発性メモリ103に一時的に格納する。制御部106は、受信したスタンプデータや画像データを、それらの対応する権限情報に基づいて、揮発性メモリ103あるいは不揮発性メモリ108に格納する。具体的には、制御部106は、表示することや編集することや他の通信端末へ送信することが許可されているスタンプデータや画像データを不揮発性メモリ108に格納する。
【0066】
図5は、スタンプ管理テーブル108Aのデータ構造を示すイメージ図である。なお、本実施の形態に係るスタンプ管理テーブル108Aは、不揮発性メモリ108に記憶される。以下では、説明のために、スタンプや、当該スタンプが貼られた画像を総称して「コンテンツ」ともいう。また、スタンプデータや、画像データを総称して「コンテンツデータ」ともいう。
【0067】
図5を参照して、不揮発性メモリ108は、コンテンツ毎に当該画像を管理するための管理データを記憶している。すなわち、スタンプ管理テーブル108Aは、コンテンツ毎の管理データを含む。各管理データは、contID、ownerF、transF、transTP、contPATH[]、decodeADR、contMETAを含む。
【0068】
contIDは、各コンテンツを識別するためのデータ(識別情報)である。すなわち、管理データには、コンテンツ毎に識別情報が設定される。
【0069】
ownerFは、所有権の有無を示すデータである。より詳細には、制御部106は、ownerFの値が「0」の場合(所有権フラグが立っている場合)、自身が対象となるコンテンツデータを所有していないと判断する。制御部106は、ownerFの値が「1」の場合(所有権フラグが立っていない場合)、自身が対象となるコンテンツデータを所有していると判断する。
【0070】
transFは、所有権の譲渡の可否を示す。より詳細には、制御部106は、transFの値が「1」の場合、対象となるコンテンツデータを他の通信端末に譲渡できないと判断する。制御部106は、transFの値が「0」の場合、対象となるコンテンツデータを自由に他の通信端末に譲渡できると判断する。
【0071】
transTPは、使用権の譲渡タイプを示す。transTPは、対象となるコンテンツデータが、所有権譲渡タイプか、無変換タイプか、粗データ送信タイプか、再生コード送信タイプかを示す。以下では、transTP、transF、ownerFなどを総称して権限情報ともいう。
【0072】
より詳細には、制御部106は、transTPの値が「0」の場合、対象となるコンテンツデータが所有権譲渡タイプであると判断する。制御部106は、transTPの値が「1」の場合、対象となるコンテンツデータが無変換タイプであると判断する。制御部106は、transTPの値が「2」の場合、対象となるコンテンツデータが粗データ送信タイプであると判断する。制御部106は、transTPの値が「3」の場合、対象となるコンテンツデータが再生コード送信タイプであると判断する。
【0073】
contPATH[]は、対象となるコンテンツデータの格納場所のアドレスを示す。ここで、コンテンツデータは、コンテンツを表示するための表示データと、再生コードを用いてコンテンツを表示するための表示データと、粗い画像を表示するための転送データとを含む概念である。
【0074】
decodeADRは、対象となるコンテンツデータの表示データを解読するための再生コードの格納場所のアドレスを示す。
【0075】
contMETAは、コンテンツ付加情報を示す。contMETAは、URL[]と、COPYRIGHT[]とを含む。URL[]は、コンテンツを提供したサイトのアドレスを示す。COPYRIGHT[]はコンテンツの著作権情報を示す。
【0076】
図6は、通信端末が他の通信端末に送信する送信データのデータ構造を示すイメージ図である。図6を参照して、通信端末が他の通信端末に送信する送信データ(あるいは他の通信端末から受信する受信データ)は、コンテンツID、使用権限情報、表示データ、転送データ、再生コードを含む。制御部106は、通信デバイス101を介して送信データを送信し、通信デバイス101を介して受信データを受信する。
【0077】
コンテンツIDは、各コンテンツデータを識別するための情報である。使用権限情報は、表示の可否や、編集の可否や、送信の可否を示すための情報である。表示データは、スタンプが押された手書き画像や写真画像などを表示するためのいわゆる画像データである。転送データは、手書き画像や写真画像などの粗い画像を表示するためのいわゆる画像データである。たとえば、転送データは、表示データの解像度を低くすることによって生成される。あるいは、転送データは、表示データのサムネイル画像を表わす。再生コードは、表示データを解読するための鍵であって、制御部106は再生コードを利用することによって、表示データに基づいてディスプレイ107に画像を表示する。
【0078】
<携帯電話100の機能構成>
図7は、本実施の形態に係る携帯電話100(通信端末)およびネットワークシステムの機能構成を示すブロック図である。図7を参照して、本実施の形態に係るネットワークシステムは、インターネット網500などを介して互いに接続可能な第1の携帯電話100Aと第2の携帯電話100Bとを含む。以下では、主に、第1の携帯電話100Aが有する機能について説明する。
【0079】
携帯電話100は、生成部1061と、通信制御部1062と、表示制御部1063とを含む。また、前述したように、携帯電話100は、ディスプレイ107と、タブレット119と、揮発性メモリ103と、不揮発性メモリ108と、通信デバイス101とを含む。
【0080】
前述したように、タブレット119は、ユーザから手書き入力やソフトウェアキー入力などを受け付けて、入力動作に対応する入力情報を揮発性メモリ103に格納する。タブレット119は、ユーザからの各種入力を受け付ける受付部を実現する。より詳細には、タブレット119は、ユーザの指が接触した位置を制御部106に入力する。あるいは、タブレット119は、ユーザがタッチパネル150に接触した軌跡を手書き入力として受け付けて、手書き入力に対応する手書き情報を制御部106に受け渡す。制御部106は、手書き情報を揮発性メモリ103に記憶する。
【0081】
ディスプレイ107は、制御部106からのデータに基づいて、画像やテキストを表示する。具体的には、ディスプレイ107は、制御部106からのデータに基づいて、スタンプが押されたコンテンツを表示する。あるいは、ディスプレイ107は、自身のタブレット119にて受け付けた手書き入力に対応する手書き画像と、通信デバイス101にて受信した手書き情報に対応する手書き画像とを重ねて表示する。
【0082】
通信デバイス101は、図示しない通信アンテナや信号処理部によって実現される。通信デバイス101は、タブレット119が受け付けた手書き入力に対応する手書き情報や選択されたスタンプや写真などのコンテンツデータと、当該コンテンツデータに対応する権限情報とを他の通信端末へと送信する。通信デバイス101は、他の通信端末からコンテンツデータと権限情報とを受信して、コンテンツデータを制御部106に入力する。制御部106は、権限情報に基づいて受信したコンテンツデータを揮発性メモリ103あるいは不揮発性メモリ108に記憶する。
【0083】
揮発性メモリ103は、たとえば、各種変数やコンテンツデータなどを一時的に(揮発的に)記憶するワークメモリ(S−RAMなど)と、ディスプレイ107が表示するコンテンツなどを記憶する表示メモリ(VRAMなど)とを含む。不揮発性メモリ108は、たとえば、スタンプ管理テーブル108Aやスタンプデータ108Bやコンテンツデータなどを不揮発的に記憶するNV−RAMやHDDなどを含む。
【0084】
生成部1061と、通信制御部1062と、表示制御部1063とは、制御部106などによって実現される機能である。より詳細には、制御部106が有する各機能は、制御部106が揮発性メモリ103などに記憶される制御プログラムを実行して、図4に示される各ハードウェアを制御することによって実現される機能である。たとえば、制御部106は、不揮発性メモリ108に予め格納されたプログラムを、揮発性メモリ103のワークメモリに読み出す。そして、制御部106は、揮発性メモリ103のプログラムを順次実行することによって、上記の機能ブロックを実現する。
【0085】
生成部1061は、タブレット119を介して入力される編集命令に応じてコンテンツを編集(生成)する。より詳細には、生成部1061は、ユーザによる編集命令に応じて、揮発性メモリ103に記憶されているコンテンツデータを更新する。ここで、編集命令は、ユーザによる、スタンプを選択する旨の命令やスタンプの押下する旨の命令や手書き入力命令などを含む。
【0086】
たとえば、生成部1061は、手書き入力に応じて写真画像上に手書き文字を書き込んだり、スタンプの選択命令に応じて画像上にスタンプを押したりする。生成部1061は、編集後のコンテンツデータを揮発性メモリ103の表示メモリに格納する。つまり、生成部1061は、コンテンツデータとして、スタンプが押された画像のデータを生成する。また、生成部1061は、第2の携帯電話100Bから受信した編集内容に基づいてコンテンツデータを編集する。そして、生成部1061は、編集後のコンテンツデータや対応する権限情報を通信制御部1062や表示制御部1063に受け渡す。
【0087】
通信制御部1062は、通信デバイス101を用いて、他の通信端末とP2P通信を行う。より詳細には、通信制御部1062は、通信デバイス101を用いて他のサーバ装置などから自身のIPアドレスと他の通信端末のIPアドレスとを取得することにより、他の通信端末との間で当該IPアドレスを利用して直接データを送受信し始める。
【0088】
本実施の形態に係る通信制御部1062は、通信デバイス101を用いて、編集内容を示すデータをインターネット網500などを介して他の携帯電話100(第2の携帯電話100B)に送信する。たとえば、通信制御部1062は、選択されたスタンプを示すスタンプデータ(第1の情報)とスタンプが押された座標とを送信したり、手書き入力の軌跡を示すデータを送信したりする。
【0089】
あるいは、通信制御部1062は、編集後のコンテンツデータをインターネット網500などを介して他の携帯電話100(第2の携帯電話100B)に送信する。このとき、通信制御部1062は、編集後のコンテンツデータとともに、当該コンテンツデータに対応する権限情報を送信する。
【0090】
また、通信制御部1062は、通信デバイス101を用いて、他の携帯電話100(第2の携帯電話100B)から編集内容を示すデータを受信したり、他の携帯電話100にて編集されたコンテンツデータを受信したりする。このとき、通信制御部1062は、編集内容としてのスタンプデータとともに、スタンプデータの権限情報を受信する。あるいは、通信制御部1062は、編集されたコンテンツデータとともに、当該コンテンツデータに対応するスタンプの権限情報などを受信する。
【0091】
そして、通信制御部1062は、他の携帯電話100から受信したスタンプデータと権限情報とを、生成部1061や表示制御部1063に受け渡す。また、通信制御部1062は、他の携帯電話100から受信したスタンプデータと権限情報とを、揮発性メモリ103あるいは不揮発性メモリ108に格納する。
【0092】
より詳細には、通信制御部1062は、コンテンツに含まれるスタンプ(コンテンツの1種)に対応する使用権タイプに基づいて、スタンプデータを揮発性メモリ103あるいは不揮発性メモリ108に記憶する。すなわち、通信制御部1062は、自身が所有していないコンテンツに関する使用権タイプが所有権譲渡タイプや粗データ送信タイプや再生コード送信タイプである場合、当該コンテンツデータを不揮発性メモリ108に格納する。通信制御部1062は、自身が所有していないコンテンツに関する使用権タイプが無変換タイプである場合、当該コンテンツデータを揮発性メモリ103に格納する。
【0093】
本実施の形態に係る通信制御部1062は、通信デバイス101を介して他の通信端末からの第1の送信要求を受信する。通信制御部1062は、通信デバイス101を介してスタンプデータの概要を示すスタンプ情報と当該スタンプ情報に対応する権限情報とを他の通信端末へと送信する。そして、通信制御部1062は、通信デバイス101を介して他の通信端末からの第2の送信要求を受信する。通信制御部1062は、通信デバイス101を介してスタンプデータと当該スタンプデータに対応する権限情報とを他の通信端末へと送信する。
【0094】
表示制御部1063は、ユーザからの編集命令に基づいて生成部1061が編集したコンテンツデータに基づいて、ディスプレイ107にコンテンツを表示させる。また、表示制御部1063は、第2の携帯電話100Bから受信した編集内容に基づいて生成部1061が編集したコンテンツデータに基づき、ディスプレイ107に編集後のコンテンツを表示させる。あるいは、表示制御部1063は、通信制御部1062が他の携帯電話100から編集されたコンテンツデータを受信した際に、当該コンテンツデータに基づいてディスプレイ107にコンテンツを表示させる。
【0095】
より詳細には、表示制御部1063は、コンテンツデータと当該コンテンツデータに含まれるスタンプの使用権タイプとに基づいてコンテンツを表示する。すなわち、表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが所有権譲渡タイプ、無変換タイプである場合、当該コンテンツデータの表示データに基づいてコンテンツを表示する。表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが粗データ送信タイプである場合、当該コンテンツデータの転送データに基づいて粗い画像を表示する。表示制御部1063は、自身が所有していないコンテンツに関する使用権タイプが再生コード送信タイプである場合、当該コンテンツデータの再生コードと表示データとに基づいてコンテンツを表示する。
【0096】
なお、第2の携帯電話100Bが有する機能は、第1の携帯電話100Aのそれと同様であるため、ここでは説明を繰り返さない。
【0097】
<P2P通信のメイン処理>
次に、本実施の形態に係る携帯電話100におけるP2P通信のメイン処理について説明する。図8は、本実施の形態に係る携帯電話100におけるP2P通信のメイン処理の処理手順を示すフローチャートである。
【0098】
図8を参照して、制御部106は、ディスプレイ107に複数のスタンプを選択可能にリスト表示する(ステップS102)。すなわち、制御部106は、STMPTBLに記憶されている、ownerF=1であるスタンプのcontID、contPATHによって特定されるスタンプの縮小画像を、ディスプレイ107にリスト表示させる。制御部106は、タブレット119を介して、ユーザからスタンプの選択命令を受け付ける。制御部106は、揮発性メモリ103の変数MySTMPに選択されたスタンプの格納場所を格納する(ステップS104)。すなわち、制御部106は、スタンプ管理テーブル108Aを参照して選択されたスタンプのアドレスを取得する。
【0099】
そして、制御部106は、スタンプ情報の交換処理(ステップS200)を実行する。スタンプ情報の交換処理(ステップS200)については、後述する。
【0100】
制御部106は、ユーザからタブレット119を介して、通常の描画を行うための操作命令(編集命令)を受け付けたか否かを判断する(ステップS106)。制御部106は、通常の描画を行うための操作命令を受け付けた場合(ステップS106にてYESである場合)、ディスプレイ107を介して描画内容を表示する(ステップS108)。制御部106は、通信デバイス101を介して通常の描画を行うための操作命令を他の通信端末に送信する(ステップS110)。ただし、制御部106は、通信デバイス101を介して、編集後のコンテンツデータを送信する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0101】
制御部106は、通常の描画を行うための操作命令を受け付けない場合(ステップS106にてNOである場合)、通信デバイス101を介して他の通信端末から通常の描画を行うための操作命令を受信したか否かを判断する(ステップS112)。制御部106は、通常の描画を行うための操作命令を受信した場合(ステップS112にてYESである場合)、受信した操作命令に基づいてディスプレイ107に描画内容を表示する(ステップS114)。その後、制御部106は、ステップS106からの処理を繰り返す。
【0102】
制御部106は、通常の描画を行うための操作命令を受け付けない場合(ステップS112にてNOである場合)、ユーザからタブレット119を介して、スタンプを押下する旨の操作命令を受け付けたか否かを判断する(ステップS116)。制御部106は、スタンプを押下する旨の操作命令を受け付けた場合(ステップS116にてYESである場合)、揮発性メモリ103のDSPSTMPにMySTMPの値を格納する(ステップS118)。制御部106は、スタンプ表示処理(ステップS300)を実行する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0103】
制御部106は、スタンプを押下する旨の操作命令を受け付けない場合(ステップS116にてNOである場合)、通信デバイス101を介して他の通信端末からスタンプを押下する旨の操作命令を受信したか否かを判断する(ステップS120)。制御部106は、他の通信端末からスタンプを押下する旨の操作命令を受信した場合(ステップS120にてYESである場合)、揮発性メモリ103のDSPSTMPにHisSTMPの値を格納する(ステップS122)。制御部106は、スタンプ表示処理(ステップS300)を実行する。その後、制御部106は、ステップS106からの処理を繰り返す。
【0104】
制御部106は、他の通信端末からスタンプを押下する旨の操作命令を受信しない場合(ステップS120にてNOである場合)、入力部104あるいはタブレット119を介してユーザからアプリケーションを終了する旨の操作命令を受け付けたか否かを判断する(ステップS124)。制御部106は、アプリケーションを終了する旨の操作命令を受け付けた場合(ステップS124にてYESである場合)、通信デバイス101を介してアプリケーションを終了する旨のメッセージを他の通信端末に送信する(ステップS128)。その後、制御部106は、ステップS130からの処理を繰り返す。
【0105】
制御部106は、アプリケーションを終了する旨の操作命令を受け付けない場合(ステップS124にてNOである場合)、通信デバイス101を介して他の通信端末からアプリケーションを終了する旨のメッセージを受信したか否かを判断する(ステップS126)。制御部106は、アプリケーションを終了する旨のメッセージを受信しない場合(ステップS126にてNOである場合)、ステップS106からの処理を繰り返す。
【0106】
制御部106は、他の通信端末からアプリケーションを終了する旨のメッセージを受信した場合(ステップS126にYESである場合)、共同生成データ(編集後の表示データを不揮発性メモリ108に格納する(ステップS130)。その後、制御部106は、一時記憶スタンプ情報の削除処理(ステップS400)を実行する。制御部は、P2P通信のメイン処理を終了する。
【0107】
<画像編集機能の概要>
ここで、本実施の形態に係る携帯電話100における画像の編集機能について説明する。図9は、本実施の形態に係る携帯電話100におけるコンテンツの編集機能を示すイメージ図である。より詳細には、図9(A)は、スタンプが選択された状態を示すイメージ図である。図9(B)は、スタンプを押下する位置を指定する状態を示すイメージ図である。図9(C)は、スタンプを押下する命令が入力された状態を示すイメージ図である。図9(D)は、スタンプが押下された後の画像(出来上がり画像)を示すイメージ図である。
【0108】
図3および図9(A)を参照して、ユーザは、スタイラスペン99などを用いて、タブレット119を介して携帯電話100に対して手書き入力を行う。そして、ユーザは、スタイラスペン99を用いて、選択可能にリスト表示されているスタンプの中から所望のスタンプを選択する。ここでは、ユーザが、スタイラスペン99を用いて、所望のスタンプを押下することによってスタンプの選択を行う。
【0109】
図9(B)を参照して、ユーザは、スタイラスペン99を介して所望するスタンプにタッチした後、当該スタイラスペン99をスタンプを押下したい位置へと移動させる。図9(C)を参照して、ユーザは、タブレット119上のスタンプを押下したい位置にスタイラスペン99を接触させることによって、スタンプを押す位置を決定する。これによって、制御部106は、タブレット119を介してスタンプを押下すべき位置を受け付ける。制御部106は、当該位置に基づいて、手書き画像などの画像上にスタンプを表示する。図9(D)を参照して、最終的に、制御部106は、ユーザが所望するスタンプが押された画像をディスプレイ107に表示させる。
【0110】
<スタンプ情報交換処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ情報交換処理について説明する。図10は、本実施の形態に係る携帯電話におけるスタンプ情報交換処理の処理手順を示すフローチャートである。図10を参照して、制御部106は、通信デバイス101を介して他の通信端末からスタンプ情報を受信したか否かを判断する(ステップS202)。制御部106は、他の通信端末からスタンプ情報を受信しない場合(ステップS202にてNOである場合)、スタンプ送信処理(ステップS500)を実行する。そして制御部106は、スタンプ受信処理(ステップS600)を実行する。スタンプ送信処理(ステップS500)およびスタンプ受信処理(ステップS600)については、後述する。
【0111】
制御部106は、他の通信端末からスタンプ情報を受信した場合(ステップS202にてYESである場合)、スタンプ受信処理(ステップS600)を実行する。そして、制御部106は、スタンプ送信処理(ステップS500)を実行する。
【0112】
<スタンプ送信処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ送信処理について説明する。図11は、本実施の形態に係る携帯電話100におけるスタンプ送信処理の処理手順を示すフローチャートである。
【0113】
図11を参照して、制御部106は、不揮発性メモリ108を参照して、自己が所有するスタンプデータに関するスタンプ情報を通信デバイス101を用いて他の通信端末へと送信する(ステップS502)。以下では、揮発性メモリ103のSTMPTBL[MySTMP].contIDをper1とする。揮発性メモリ103のSTMPTBL[MySTMP].transFをper2とする。揮発性メモリ103のSTMPTBL[MySTMP].transTPをper3とする。揮発性メモリ103のSTMPTBL[MySTMP].contMETAをper4とする。
【0114】
制御部106は、通信デバイス101を介して他の通信端末から非要求メッセージを受信したか否かを判断する(ステップS504)。制御部106は、他の通信端末から非要求メッセージを受信した場合(ステップS504にてYESである場合)、スタンプ送信処理(ステップS500)を終了する。
【0115】
制御部106は、他の通信端末から非要求メッセージを受信しない場合(ステップS504にてNOである場合)、通信デバイス101を介して他の通信端末から再生コードを送信する旨の要求を受け付けたか否かを判断する(ステップS506)。制御部106は、他の通信端末から再生コードを送信する旨の要求を受け付けた場合(ステップS506にてYESである場合)、対象となるスタンプの再生コードを通信デバイス101を介して当該他の通信端末に送信する(ステップS508)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0116】
制御部106は、他の通信端末から再生コードを送信する旨の要求を受信しない場合(ステップS506にてNOである場合)、通信デバイス101を介して他の通信端末からスタンプデータを送信する旨の要求を受け付けたか否かを判断する(ステップS510)。制御部106は、他の通信端末からスタンプデータを送信する旨の要求を受け付けない場合(ステップS510にてNOである場合)、ステップS504からの処理を繰り返す。
【0117】
制御部106は、他の通信端末からスタンプデータを送信する旨の要求を受け付けた場合(ステップS510にてYESである場合)、揮発性メモリ103を参照して、per3に0が格納されているか否かを判断する(ステップS512)。制御部106は、per3に0が格納されている場合(ステップS512にてYESである場合)、すなわち対象となるスタンプが所有権譲渡タイプである場合、対象となるスタンプに関する全データ(表示データ)を通信デバイス101を用いて当該他の通信端末へと送信する(ステップS514)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0118】
制御部106は、揮発性メモリ103を参照して、per3に0が代入されていない場合(ステップS512にてNOである場合)、揮発性メモリ103を参照して、per3に1が代入されているか否かを判断する(ステップS516)。制御部106は、per3に1が代入されている場合(ステップS516にてYESである場合)、すなわち対象となるスタンプが無変換タイプである場合、対象となるスタンプの表示データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS518)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0119】
制御部106は、per3に1が代入されていない場合(ステップS516にてNOである場合)、揮発性メモリ103を参照して、per3に2が代入されているか否かを判断する(ステップS520)。制御部106は、per3に2が代入されている場合(ステップS520にてYESである場合)、すなわち対象となるスタンプが粗データ送信タイプである場合、対象となるスタンプの転送データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS522)。その後、制御部106は、ステップS504からの処理を繰り返す。
【0120】
制御部106は、per3に2が格納されていない場合(ステップS520にてNOである場合)、すなわち対象となるスタンプが再生コード送信タイプである場合、対象となるスタンプの表示データを通信デバイス101を介して当該他の通信端末へと送信する(ステップS524)。制御部106は、スタンプ送信処理(ステップS500)を終了する。
【0121】
<スタンプ受信処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ受信処理について説明する。図12は、本実施の形態に係る携帯電話100におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0122】
図12を参照して、制御部106は、通信デバイス101を介して他の通信端末からスタンプ情報を受信する(ステップS602)。制御部106は、スタンプ情報がスタンプ管理テーブル108Aが管理しているスタンプに関するものであるか否かを判断する(ステップS604)。制御部106は、受信したスタンプ情報がスタンプ管理テーブル108Aが管理しているスタンプに関するものである場合(ステップS604にてYESである場合)、揮発性メモリ103の変数HisSTMPに、受信したスタンプ情報に対応するスタンプデータが格納されたアドレスを格納する(ステップS606)。
【0123】
制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものであるか否かを判断する(ステップS608)。制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものである場合(ステップS608にてYESである場合)、通信デバイス101を介して他の通信端末へスタンプの非要求メッセージを送信する(ステップS610)。制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0124】
制御部106は、受信したスタンプ情報に対応するスタンプデータが予め自己が所有するものでない場合(ステップS608にてNOである場合)、揮発性メモリ103のper3に2が格納されているか否かを判断する(ステップS612)。制御部106は、揮発性メモリ103のper3に2が格納されている場合(ステップS612にてYESである場合)、ステップS610からの処理を実行する。
【0125】
制御部106は、揮発性メモリ103のper3に2が格納されていない場合(ステップS612にてNOである場合)、揮発性メモリ103のper3に3が格納されているか否かを判断する(ステップS614)。制御部106は、揮発性メモリ103のper3に3が格納されている場合(ステップS614にてYESである場合)、後述するステップS688からの処理を実行する。
【0126】
制御部106は、揮発性メモリ103のper3に3が格納されていない場合(ステップS614にてNOである場合)、後述するステップS662からの処理を実行する。
【0127】
制御部106は、受信したスタンプ情報に対応するスタンプがスタンプ管理テーブル108Aが管理しているものでない場合(ステップS604にてNOである場合)、揮発性メモリ103のownerFに0を代入する(ステップS622)。制御部106は、揮発性メモリ103のper2に0が格納されているか否かを判断する(ステップS624)。
【0128】
制御部106は、揮発性メモリ103のper2に0が格納されている場合(ステップS624にてYESである場合)、揮発性メモリ103のownerFに1を格納する(ステップS626)。制御部106は、スタンプ管理テーブル108Aの値を更新する(ステップS628)。より詳細には、制御部106は、揮発性メモリ103のSTMPTBL[ccnt].contIDにper1の値を格納する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].ownerFにownerFの値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].transFにper2の値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].transTPにper3の値を代入する。制御部106は、揮発性メモリ103のSTMPTBL[ccnt].contMETAにper4の値を代入する。制御部106は、揮発性メモリ103のHisSTMPにccntの値を代入する。制御部106は、揮発性メモリ103のccntをインクリメントする。
【0129】
制御部106は、揮発性メモリ103のper2に0が格納されていない場合には(ステップS624にてNOである場合)、ステップS626を実行せずに、ステップS628からの処理を実行する。
【0130】
制御部106は、ステップS628を実行後、揮発性メモリ103のper3に0あるいは2が格納されているか否かを判断する(ステップS630)。制御部106は、揮発性メモリ103のper3に0あるいは2が格納されている場合(ステップS630にてYESである場合)、後述するステップS652からの処理を実行する。
【0131】
制御部106は、揮発性メモリ103のper3に0も2も格納されていない場合(ステップS630にてNOである場合)、揮発性メモリ103のper3に1が格納されているか否かを判断する(ステップS632)。制御部106は、揮発性メモリ103のper3に1が格納されている場合(ステップS632にてYESである場合)、後述するステップS662からの処理を実行する。
【0132】
制御部106は、揮発性メモリ103のper3に1が格納されていない場合(ステップS632にてNOである場合)、後述するステップS682からの処理を実行する。
【0133】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理について説明する。図13は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0134】
図13を参照して、制御部106は、他の通信端末から受信したスタンプ情報に対応するスタンプデータが所有権譲渡タイプあるいは粗データ送信タイプである場合、通信デバイス101を介して当該他の通信端末にスタンプデータの送信を要求するメッセージを送信する(ステップS652)。制御部106は、受信したスタンプデータを不揮発性メモリ108のスタンプデータ記憶領域に記憶する(ステップS654)。制御部106は、スタンプデータ108Bの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS656)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS658)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0135】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理について説明する。図14は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0136】
図14を参照して、制御部106は、受信したスタンプ情報に対応するスタンプデータが無変換タイプである場合、通信デバイス101を介して他の通信端末へスタンプデータの送信を要求するメッセージを送信する(ステップS662)。制御部106は、他の通信端末から受信したスタンプデータを揮発性メモリ103の一時記憶領域に記憶する(ステップS664)。制御部106は、スタンプデータの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS668)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS670)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0137】
次に、携帯電話100が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理について説明する。図15は、携帯電話100が受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合におけるスタンプ受信処理の処理手順を示すフローチャートである。
【0138】
図15を参照して、制御部106は、受信したスタンプ情報に対応するスタンプデータが再生コード送信タイプである場合、通信デバイス101を介して他の通信端末へスタンプデータの送信を要求するメッセージを送信する(ステップS682)。制御部106は、受信したスタンプデータを不揮発性メモリ108のスタンプデータ記憶領域に記憶する(ステップS684)。制御部106は、スタンプデータ108Bの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS686)。
【0139】
制御部106は、通信デバイス101を介して他の通信端末に再生コードの送信を要求するメッセージを送信する(ステップS688)。制御部106は、受信した再生コードを揮発性メモリ103の一時記憶領域に記憶する(ステップS690)。制御部106は、再生コードの格納アドレスをスタンプ管理テーブル108Aに登録する(ステップS692)。制御部106は、通信デバイス101を介して他の通信端末へ非要求メッセージを送信する(ステップS694)。そして、制御部106は、スタンプ受信処理(ステップS600)を終了する。
【0140】
<スタンプ表示処理>
次に、本実施の形態に係る携帯電話100におけるスタンプ表示処理について説明する。図16は、本実施の形態に係る携帯電話におけるスタンプ表示処理の処理手順を示すフローチャートである。
【0141】
図16を参照して、制御部106は、揮発性メモリ103の各種ローカル変数を設定する(ステップS302)。より詳細には、制御部106は、揮発性メモリ103のtransFにSTMPTBL[DSPSTMP].transFの値を代入する。制御部106は、揮発性メモリ103のtransTPにSTMPTBL[DSPSTMP].transTPの値を代入する。制御部106は、揮発性メモリ103のcontPATHにSTMPTBL[DSPSTMP].contPATHの値を代入する。制御部106は、揮発性メモリ103のdecodeADRにSTMPTBL[DSPSTMP].decodeADRの値を代入する。
【0142】
制御部106は、揮発性メモリ103のtransFに0が格納されているか否かを判断する(ステップS304)。制御部106は、揮発性メモリ103のtransFに0が格納されている場合(ステップS304にてYESである場合)、すなわちスタンプデータが所有権譲渡タイプである場合、スタンプ管理テーブル108Aのスタンプデータの格納アドレスを参照して、不揮発性メモリ108のスタンプデータ108Bの表示データを読出す(ステップS306)。制御部106は、読出したスタンプデータ108Bの表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる(ステップS306)。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0143】
制御部106は、揮発性メモリ103のtransFに0が格納されていない場合(ステップS364にてNOである場合)、揮発性メモリ103のtransTPに1が格納されているか否かを判断する(ステップS308)。制御部106は、揮発性メモリ103のtransTPに1が格納されている場合(ステップS308にてYESである場合)、すなわちスタンプデータが無変換タイプである場合、揮発性メモリ103のcontPATHを参照して、揮発性メモリ103の一時記憶領域に格納されているスタンプデータの表示データを読み出す(ステップS310)。制御部106は、表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0144】
制御部106は、揮発性メモリ103のtransTPに1が格納されていない場合(ステップS308にてNOである場合)、揮発性メモリ103のtransTPに2が格納されているか否かを判断する(ステップS312)。制御部106は、揮発性メモリ103のtransTPに2が格納されている場合(ステップS312にてYESである場合)、すなわちスタンプデータが粗データ送信タイプである場合、揮発性メモリ103のcontPATHを参照して、不揮発性メモリ108のスタンプデータ記憶領域に格納されているスタンプデータの転送データを読み出す(ステップS314)。制御部106は、転送データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0145】
制御部106は、揮発性メモリ103のtransTPに2が格納されていない場合(ステップS312にてNOである場合)、揮発性メモリ103のcontPATHを参照して、不揮発性メモリ108のスタンプデータ記憶領域に格納されているスタンプデータ108Bを揮発性メモリ103の一時記憶領域に格納されている再生コードを用いて表示データに変換する(ステップS316)。制御部106は、変換した表示データに基づいて、ディスプレイ107に、タブレット119を介して受け付けたスタンプ押下位置にスタンプを表示させる。制御部106は、スタンプ表示処理(ステップS300)を終了する。
【0146】
<一時記憶スタンプデータ削除処理>
次に、本実施の形態に係る携帯電話100における一時記憶スタンプデータ削除処理について説明する。図17は、本実施の形態に係る携帯電話における一時記憶スタンプデータ削除処理の処理手順を示すフローチャートである。
【0147】
図17を参照して、制御部106は、揮発性メモリ103の各種ローカル変数を設定する(ステップS402)。より詳細には、制御部106は、揮発性メモリ103のownerFにSTMPTBL[HisSTMP].ownerFの値を代入する。制御部106は、揮発性メモリ103のtransTPにSTMPTBL[HisSTMP].transTPの値を代入する。制御部106は、揮発性メモリ103のcontPATHにSTMPTBL[HisSTMP].contPATHの値を代入する。制御部106は、揮発性メモリ103のdecodeADRにSTMPTBL[HisSTMP].decodeADRの値を代入する。
【0148】
制御部106は、揮発性メモリ103のownerFに0が格納されているか否かを判断する(ステップS404)。制御部106は、揮発性メモリ103のownerFに0が格納されている場合(ステップS404にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0149】
制御部106は、揮発性メモリ103のownerFに0が格納されていない場合(ステップS404にてNOである場合)、揮発性メモリ103のtransTPに0が格納されているか否かを判断する(ステップS406)。制御部106は、揮発性メモリ103のtransTPに0が格納されている場合(ステップS406にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0150】
揮発性メモリ103のtransTPに0が格納されていない場合(ステップS406にてNOである場合)、揮発性メモリ103のtransTPに1が格納されているか否かを判断する(ステップS408)。制御部106は、揮発性メモリ103のtransTPに1が格納されている場合(ステップS408にてYESである場合)、揮発性メモリ103の一時記憶領域に格納されているスタンプデータを削除する(ステップS410)。制御部106は、揮発性メモリ103のSTMPTBL[HisSTMP].contPATHの値を初期化する(ステップS412)。制御部106は、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0151】
制御部106は、揮発性メモリ103のtransTPに1が格納されていない場合(ステップS408にてNOである場合)、揮発性メモリ103のtransTPに2が格納されているか否かを判断する(ステップS414)。制御部106は、揮発性メモリ103のtransTPに2が格納されている場合(ステップS414にてYESである場合)、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0152】
制御部106は、揮発性メモリ103のtransTPに2が格納されていない場合(ステップS414にてNOである場合)、揮発性メモリ103の一時記憶領域のdecodeADRに格納されている再生コードを削除する(ステップS416)。制御部106は、揮発性メモリ103のSTMPTBL[HisSTMP].decodeADRの値を初期化する(ステップS418)。制御部106は、一時記憶スタンプデータ削除処理(ステップS400)を終了する。
【0153】
<その他の実施の形態>
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
【0154】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0155】
プログラムコードを供給するための記憶媒体としては、例えば、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード(ICメモリカード)、ROM(マスクROM、フラッシュEEPROMなど)などを用いることができる。
【0156】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0157】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
【0158】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0159】
1 ネットワークシステム、99 スタイラスペン、100,100A,100B 携帯電話、101 通信デバイス、103 揮発性メモリ、104 入力部、105 計時部、106 制御部、1061 生成部、1062 通信制御部、1063 表示制御部、107 ディスプレイ、108 不揮発性メモリ、108A スタンプ管理テーブル、108B スタンプデータ、119 タブレット、200 カーナビゲーション装置、300 パーソナルコンピュータ、400 マッチングサーバ、500 インターネット網、600 コンテンツサーバ、700 キャリア網。
【特許請求の範囲】
【請求項1】
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部と、
前記操作命令に基づいて前記第1の情報を含むコンテンツを生成する生成手段と、
前記通信部を用いて前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信し、前記通信部を用いて前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信する通信制御手段と、
前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させる表示制御手段とを備える、通信端末。
【請求項2】
前記第2の情報を一時的に記憶する第2の記憶部をさらに備え、
前記通信制御手段は、前記第2の権限情報に基づいて前記第2の情報を前記第1の記憶部あるいは前記第2の記憶部に記憶させる、請求項1に記載の通信端末。
【請求項3】
前記通信制御手段は、
前記通信部を介して前記第1の情報を特定する識別情報を前記他の通信端末へと送信し、
前記識別情報の送信に応答して前記他の通信端末から送信された前記第1の情報の送信要求に応じて、前記通信部を介して前記第1の情報を前記他の通信端末へと送信する、請求項1または2に記載の通信端末。
【請求項4】
前記通信制御手段は、前記識別情報を送信する際に、前記第1の権限情報をも前記他の通信端末へと送信する、請求項3に記載の通信端末。
【請求項5】
演算処理部と、
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末における通信方法であって、
前記演算処理部が、前記操作命令に基づいて前記第1の情報を含むコンテンツを生成するステップと、
前記演算処理部が、前記通信部を用いて、前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信するステップと、
前記演算処理部が、前記通信部を用いて、前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信するステップと、
前記演算処理部が、前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させるステップとを備える、通信方法。
【請求項6】
演算処理部と、
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末に通信させるための通信プログラムであって、
前記通信プログラムは、前記演算処理部に、
前記操作命令に基づいて前記第1の情報を含むコンテンツを生成するステップと、
前記通信部を用いて、前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信するステップと、
前記通信部を用いて、前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信するステップと、
前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させるステップとを実行させる、通信プログラム。
【請求項1】
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部と、
前記操作命令に基づいて前記第1の情報を含むコンテンツを生成する生成手段と、
前記通信部を用いて前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信し、前記通信部を用いて前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信する通信制御手段と、
前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させる表示制御手段とを備える、通信端末。
【請求項2】
前記第2の情報を一時的に記憶する第2の記憶部をさらに備え、
前記通信制御手段は、前記第2の権限情報に基づいて前記第2の情報を前記第1の記憶部あるいは前記第2の記憶部に記憶させる、請求項1に記載の通信端末。
【請求項3】
前記通信制御手段は、
前記通信部を介して前記第1の情報を特定する識別情報を前記他の通信端末へと送信し、
前記識別情報の送信に応答して前記他の通信端末から送信された前記第1の情報の送信要求に応じて、前記通信部を介して前記第1の情報を前記他の通信端末へと送信する、請求項1または2に記載の通信端末。
【請求項4】
前記通信制御手段は、前記識別情報を送信する際に、前記第1の権限情報をも前記他の通信端末へと送信する、請求項3に記載の通信端末。
【請求項5】
演算処理部と、
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末における通信方法であって、
前記演算処理部が、前記操作命令に基づいて前記第1の情報を含むコンテンツを生成するステップと、
前記演算処理部が、前記通信部を用いて、前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信するステップと、
前記演算処理部が、前記通信部を用いて、前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信するステップと、
前記演算処理部が、前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させるステップとを備える、通信方法。
【請求項6】
演算処理部と、
ディスプレイと、
操作命令を受け付ける入力デバイスと、
ネットワークを介して他の通信端末とデータを送受信する通信部と、
第1の情報を、前記第1の情報の使用権限を示す第1の権限情報に対応付けて記憶する第1の記憶部とを備える通信端末に通信させるための通信プログラムであって、
前記通信プログラムは、前記演算処理部に、
前記操作命令に基づいて前記第1の情報を含むコンテンツを生成するステップと、
前記通信部を用いて、前記他の通信端末へ前記コンテンツに含まれる前記第1の情報と前記第1の情報に対応する前記第1の権限情報とを送信するステップと、
前記通信部を用いて、前記他の通信端末から第2の情報と前記第2の情報に対応する第2の権限情報とを受信するステップと、
前記第2の権限情報に基づいて前記第2の情報を含む前記コンテンツを前記ディスプレイに表示させるステップとを実行させる、通信プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【公開番号】特開2010−177920(P2010−177920A)
【公開日】平成22年8月12日(2010.8.12)
【国際特許分類】
【出願番号】特願2009−17073(P2009−17073)
【出願日】平成21年1月28日(2009.1.28)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
【公開日】平成22年8月12日(2010.8.12)
【国際特許分類】
【出願日】平成21年1月28日(2009.1.28)
【出願人】(000005049)シャープ株式会社 (33,933)
【Fターム(参考)】
[ Back to top ]