(57)【特許請求の範囲】
【請求項１】
ネットワークを介したコンテンツ提供システムであって、該システムは、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、前記識別子の有無を判断する手段と、
前記識別子の有無により異なったセッション管理を実行させる手段とを含み、
前記異なったセッション管理を実行させる手段は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、コンテンツ提供システム。
【請求項２】
前記接続要求を受信する手段は、ユーザー情報が登録されたデータベースを含み、該データベースは、前記ユーザ情報として前記識別子と前記ステータス情報とを含む、請求項１に記載のコンテンツ提供システム。
【請求項３】
前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記セルラ電話からの接続要求が通信される第２のネットワークとを含む、請求項１または２に記載のコンテンツ提供システム。
【請求項４】
前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加するための手段を含む、請求項３に記載のコンテンツ提供システム。
【請求項５】
ネットワークを介してサーバによりコンテンツを提供させるコンテンツ提供方法であって、該方法はサーバに対して、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応した識別子が付された接続要求を受信する段階と、
前記識別子の有無を判断する段階と、
ユーザ情報を記憶したデータベースに前記識別子および該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報を記憶させる段階と、
前記識別子の有無の判断により異なったセッション管理を実行させる段階とを実行させ、
前記異なったセッション管理を実行させる段階は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、識別子と前記ステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、コンテンツ提供方法。
【請求項６】
前記ネットワークは、前記コンピュータと通信を行うための第１のネットワークと、前記セルラ電話との通信を行うための第２のネットワークとを含み、前記セルラ電話から第２のネットワークを通して接続要求を受信する段階を含む、請求項５に記載のコンテンツ提供方法。
【請求項７】
前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加する段階を含む、請求項６に記載のコンテンツ提供方法。
【請求項８】
請求項５〜７のいずれか１項に記載されたネットワークを介したコンテンツ提供方法をサーバに実行させるためのプログラムが記録されたコンピュータ可読な記録媒体。
【請求項９】
ネットワークを介したコンテンツ提供システムであって、該システムは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、
前記識別子の有無を判断する手段と、
前記セルラ電話の属するキャリアを判断するための手段と、
前記キャリアの判断結果により異なったセッション管理を実行させる手段とを含み、
前記キャリアを判断するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定して前記識別子の有無を判断させ前記アダプタが前記接続要求を処理可能か否かを判断して前記キャリアを特定するアダプタ・マネージャとを含み、
前記異なったセッション管理を実行させる手段は、前記キャリアを判断するための手段が前記アダプタが前記接続要求を処理できないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記キャリアを判断するための手段が前記接続要求を処理できると判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、コンテンツ提供システム。
【請求項１０】
前記接続要求を受信する手段は、ユーザー情報が登録されたデータベースを含み、該データベースは、前記ユーザ情報として前記識別子と前記ステータス情報とを含む、請求項９に記載のコンテンツ提供システム。
【請求項１１】
前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記異なるキャリアに属するセルラ電話からの接続要求が通信される複数の第２のネットワークとを含む、請求項９または１０に記載のコンテンツ提供システム。
【請求項１２】
前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加するための手段を含む、請求項１１に記載のコンテンツ提供システム。
【請求項１３】
ネットワークを介してサーバによりコンテンツを提供させるコンテンツ提供方法であって、該方法はサーバに対して、コンピュータから送信される接続要求、および異なったキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応した識別子が付された接続要求を受信する段階と、
前記識別子を含む場合には、ユーザ情報を記憶したデータベースに前記識別子および該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報を記憶させる段階と、
前記セルラ電話の属するキャリアを判断する段階と、
前記キャリアの判断結果により異なったセッション管理を実行させる段階とを含み、
前記セルラ電話の属するキャリアを判断する段階は、前記キャリアにぞれぞれ対応するアダプタが前記識別子の有無を判断する段階と、前記アダプタを、アダプタ・マネージャにより指定する段階と、
前記アダプタが接続要求を処理可能か否かを判断する段階とを実行させ、
前記異なったセッション管理を実行させる段階は、前記キャリアを判断するための手段が前記アダプタが前記接続要求を処理できないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記キャリアを判断するための手段が前記アダプタが前記接続要求を処理できると判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、
コンテンツ提供方法。
【請求項１４】
前記ネットワークは、前記コンピュータと通信を行うための第１のネットワークと、前記異なったキャリアに属するセルラ電話との通信を行うための複数の第２のネットワークとを含み、前記セルラ電話からの異なる第２のネットワークを通した接続要求を受信する段階を含む、請求項１３に記載のコンテンツ提供方法。
【請求項１５】
前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加する段階を含む、請求項１４に記載のコンテンツ提供方法。
【請求項１６】
請求項１３〜１５のいずれか１項に記載されたネットワークを介したコンテンツ提供方法をサーバに実行させるためのプログラムが記録されたコンピュータ可読な記録媒体。
【請求項１７】
ネットワークを介したコンテンツ提供システムであって、該システムは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、
前記識別子の有無を判断する手段と
前記セルラ電話の属するキャリアを判断し前記セルラ電話に固有の識別情報を生成するための手段と、
前記固有の識別情報の生成の有無により異なったセッション管理を実行させる手段と、
前記セルラ電話の機種に適合した形式のコンテンツを送信する手段とを含み、
前記キャリアを判断し前記固有の識別情報を生成するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定して前記接続要求に含まれる前記識別子および機種識別情報の有無を判断させ前記アダプタが前記接続要求を処理可能か否かを判断して前記キャリアを特定するアダプタ・マネージャとを含み、前記特定されたキャリアと前記機種識別情報を使用して前記固有の識別情報を生成し、
前記コンテンツを送信する手段は、前記セルラ電話の機種に適合した形式のコンテンツを前記判断されたキャリアを通して前記セルラ電話に送信する手段を含み、
前記異なったセッション管理を実行させる手段は、前記固有の識別情報が生成されないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記固有の識別情報が生成されたと判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させ、前記固有の識別情報に対応する前記保管場所に保管された前記コンテンツを、前記コンテンツを送信する手段に送信させる、
コンテンツ提供システム。
【請求項１８】
前記接続要求を受信する手段は、第１のデータベースと、第２のデータベースと、第３のデータベースとを含み、
前記第１のデータベースは、前記識別子と前記ステータス情報とを含み、
前記第２のデータベースは、前記セルラ電話の機種情報を含み、
前記第３のデータベースは、前記セルラ電話の前記キャリアと前記機種とに関連する保管場所情報、または該保管場所情報およびコンテンツを保管している、
請求項１７に記載のコンテンツ提供システム。
【請求項１９】
前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記異なるキャリアに属するセルラ電話からの接続要求が通信される複数の第２のネットワークとを含む、請求項１８に記載のコンテンツ提供システム。
【請求項２０】
ネットワークを介してサーバによりコンテンツを提供させるコンテンツ提供方法であって、該方法はサーバに対して、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する段階と、
前記セルラ電話の属するキャリアを判断し前記セルラ電話に固有の識別情報を生成する段階と、
前記固有の識別情報の生成の有無により異なったセッション管理を実行させる段階と、
前記セルラ電話の機種に適合した形式のコンテンツを前記キャリアを通して前記セルラ電話に送信する段階とを実行させ、
前記キャリアを判断し前記セルラ電話に固有の識別情報を生成する段階は、
前記接続要求に含まれる前記識別子および機種識別情報の有無を判断して前記キャリアを特定する段階と、前記特定されたキャリアと前記機種識別情報を使用して前記固有の識別情報を生成する段階とを含み、
前記異なったセッション管理は、前記固有の識別情報が生成されないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記固有の識別情報が生成されたと判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させ、前記固有の識別情報に対応する前記保管場所に保管された前記コンテンツを、前記コンテンツを送信する手段に送信させる、
コンテンツ提供方法。
【請求項２１】
前記接続要求は、第１のデータベースと、第２のデータベースと、第３のデータベースとを含むサーバにより受信され、
前記第１のデータベースは、前記識別子と前記ステータス情報とを含み、
前記第２のデータベースは、前記セルラ電話の機種情報を含み、
前記第３のデータベースは、前記セルラ電話の前記キャリアと前記機種とに関連する保管場所情報、または該保管場所情報およびコンテンツを保管している、
請求項２０に記載のコンテンツ提供方法。
【請求項２２】
請求項２０に記載されたネットワークを介したコンテンツ提供方法をサーバに実行させるためのプログラムが記録されたコンピュータ可読な記録媒体。
【請求項２３】
ネットワークを介したコンテンツ提供システムに使用されるサーバであって、該サーバは、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、前記識別子の有無を判断する手段と、
前記識別子の有無により異なったセッション管理を実行させる手段とを含み、
前記異なったセッション管理を実行させる手段は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、サーバ。
【請求項２４】
ネットワークを介したコンテンツ提供システムに使用されるサーバであって、該サーバは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、
前記識別子の有無を判断する手段と、
前記セルラ電話の属するキャリアを判断するための手段と、
前記キャリアの判断結果により異なったセッション管理を実行させる手段とを含み、
前記キャリアを判断するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定して前記識別子の有無を判断させ前記アダプタが前記接続要求を処理可能か否かを判断して前記キャリアを特定するアダプタ・マネージャとを含み、
前記異なったセッション管理を実行させる手段は、前記キャリアを判断するための手段が前記アダプタが前記接続要求を処理できないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記キャリアを判断するための手段が前記接続要求を処理できると判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させる、サーバ。
【請求項２５】
ネットワークを介したコンテンツ提供システムに使用されるサーバであって、該サーバは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記識別子の有無を判断する手段と、
前記接続要求を受信する手段は、
前記セルラ電話の属するキャリアを判断し前記セルラ電話に固有の識別情報を生成するための手段と、
前記固有の識別情報の生成の有無により異なったセッション管理を実行させる手段と、
前記セルラ電話の機種に適合した形式のコンテンツを送信する手段とを含み、
前記キャリアを判断し前記固有の識別情報を生成するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定して前記接続要求に含まれる前記識別子および機種識別情報の有無を判断させ前記アダプタが前記接続要求を処理可能か否かを判断して前記キャリアを特定するアダプタ・マネージャとを含み、前記特定されたキャリアと前記機種識別情報を使用して前記固有の識別情報を生成し、
前記コンテンツを送信する手段は、前記セルラ電話の機種に適合した形式のコンテンツを前記判断されたキャリアを通して前記セルラ電話に送信する手段を含み、
前記異なったセッション管理を実行させる手段は、前記固有の識別情報が生成されないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記固有の識別情報が生成されたと判断した場合には、識別子と該識別子に対応するセッションがログインまたはログオフのいずれの状態にあるかを示すステータス情報とを対応させて登録したデータ構造を参照してセッションのステータスを判断し、前記ステータスがログインかログオフかに応答して異なる権限においてコマンドを実行させ、前記固有の識別情報に対応する前記保管場所に保管された前記コンテンツを、前記コンテンツを送信する手段に送信させる、サーバ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、コンテンツ提供システム、コンテンツ提供方法、コンテンツ提供方法を実行するためのプログラムが記録された記録媒体並びにサーバに関する。
【０００２】
【従来の技術】
現在では、ネットワークやコンピュータの進歩により、コンピュータからネットワークを介してコンテンツの要求を行い、コンテンツを管理しているものがネットワークを介して要求されたコンテンツを提供するというシステムが広く利用されている。また、このようなシステムは、単にコンテンツの要求および提供ばかりではなく、ネットワークを通して商品提供者へと注文を行い、消費者、すなわち商品購買システムのユーザが商品を受け取るという商品購買システムにおいても広く受け入れられるようになっている。
【０００３】
従来のコンテンツ提供システムや、商品購買システムにおいては、いわゆるインターネットといったネットワークに接続されたコンピュータからブラウザ・ソフトウエアを介してユーザがコンテンツ管理者や、商品提供者サイドに設置されたサーバへとアクセスして、コンテンツや商品のカタログを見たり、ユーザがそのカタログから商品を選択して商品購入を行う。
【０００４】
ユーザがコンピュータから商品を購入するために送信した信号を受信したサーバは、通常では、いわゆるCookieと呼ばれるサーバがユーザを識別・管理する仕組みを用いてネットワークを介したアクセスに対するセッション管理を行っている。図１には、ユーザ・サイトに設置されたコンピュータと、サーバの間において、従来のCookieを通信履歴として用いた場合のセッション管理の一例を示す。
【０００５】
図１では、ユーザ・サイトに配置されたコンピュータにおける履歴情報の状態を、ユーザ・サイトに設置されたコンピュータのサーバに対するアクセス段階に対応させて示している。図１（ａ）がサーバとユーザ・サイトに設置されたコンピュータとの間の履歴情報の通信状態を示した図であり、図１（ｂ）が、サーバとユーザ・サイトに設置されたコンピュータとの間のアクセス段階を示した図である。
【０００６】
図１（ｂ）に示されるように、サーバへのアクセスは、ユーザ・サイトに設置されたコンピュータがステップ１０１においてブラウザ・ソフトウエアを起動することにより開始される。この状態では、図１（ａ）に示されているようにユーザ・サイトに設置されたコンピュータには、履歴情報として用いられるCookieは記録されていない。続いてユーザ・サイトに設置されたコンピュータは、ステップ１０２においてサーバに対してログインを実行する。このステップ１０２においては、ユーザ・サイトに設置されたコンピュータは、図１（ａ）に示されるように、サーバに対してまず、予め付与されているユーザ識別のための信号であるユーザＩＤを、ログインのためのパスワードＰＷＤといった信号と共にサーバへと送信する。このユーザＩＤとパスワードＰＷＤとを受信したサーバは、最終ログイン時刻を記憶して、ユーザ・サイトに設置されたコンピュータへとCookieを送信する。図１（ａ）に示され、また図１（ｂ）のステップ１０２においてサーバから返信されるCookieは、例えばRTz+HDYHG5M...といった暗号化された情報とされている。この暗号は、ステップ１０３においてユーザ・サイトに設置されたコンピュータがサーバに対してアクセスする際に、ユーザ・サイトに設置されたコンピュータからサーバへと送信されて、サーバに含まれた適切な手段により「ｘｘｘさんは、ｙｙｙｙ−ＭＭ−ＤＤ  ＨＨ：ＭＭ：ＳＳにサーバにログインしました」という情報にデコードされ、サーバがログイン状態を判断することができるようにされている。ステップ１０３におけるCookieは、図１（ｂ）のステップ１０４に示されるようにユーザ・サイトに設置されたコンピュータがユーザの操作によりブラウザ・ソフトウエアを終了するまで、クライアント・コンピュータと、サーバとの間で保存され、かつ相互に通信が行われることにより、セッション管理が行われている。
【０００７】
ステップ１０４においてブラウザ・ソフトウエアを終了させたユーザ・サイトに設置されたコンピュータにおいては、図１（ａ）に示されているようにそれまでに用いられていたCookieが消去されて、Cookieといった履歴情報が存在しない状態となる。ユーザ・サイトに設置されたコンピュータが、再度ステップ１０５においてブラウザ・ソフトウエアを起動して、ステップ１０６においてユーザＩＤおよびパスワードＰＷＤをサーバへと送信することによりサーバにログインすると、サーバは最終ログイン時刻を更新させ、以前のログイン時に発行したCookieを無効とし、新たに発行されたCookie、例えば暗号化されたVaA4VcHDFsa...をユーザ・サイトに設置されたコンピュータへと返すことになる。この新たなCookieは、ステップ１０６において開始された新たなセッションが実行されている間保存されてセッション管理が実行されることになる。
【０００８】
図２は、図１に示したサーバとユーザ・サイトに設置されたコンピュータとの間のセッション管理を概略的にまとめたブロック図である。図１に示されたセッション管理は、図２のブロック図に示されるように、まずユーザ・サイトに配置されたコンピュータにおいてユーザがブラウザ・ソフトウエアを起動して、いわゆるインターネットを介してサーバに対しHttpReqを送信する。このHttpReqを受信したサーバは、コンテンツ要求コマンドまたは商品購買コマンドを実行し、その実行の結果である応答を、HttpResとしてユーザ・サイトに設置されたクライアント・コンピュータへと返す。この一連のセッションが、図２に示されたセッション管理を行うためのCookieといった履歴情報を発行するセッション管理プログラムにより管理されている。本発明において用いる用語、HttpReqおよびHttpResとは、サーバと、ブラウザ・ソフトウエアおよびセルラ電話との間のＨＴＴＰプロトコルに適合するオブジェクト化したプログラミングを用いて、セルラ電話またはコンピュータとサーバとの間で送受信される接続要求およびこの接続要求に対応するレスポンスを意味する。
【０００９】
図３は、図２に示したブロック図において、サーバ・プロセスを商品購買コマンドを実行させる場合を例として示した図である。図３に示されたサーバ・プロセスでは、ステップ３０１においてユーザ・サイトに設置されたコンピュータが発行したHttpReqを受信する。このHttpReqは、例えば、https://hostname/cgi-bin/ncommerce3/login?name=isel&password=iselとすることができる。このHttpReqを受信したサーバは、ステップ３０２においてServer.exeを実行させてネットワークを介しての商品購買の実際のプロセスを開始させる。ついで、図３に示したサーバ・プロセスにおいては、ステップ３０３のTRANS_INIT (Cookie)においてユーザ・サイトに設置されたコンピュータのアクセスに対して権限を設定し、実行するコマンドが誰の権限で実行されるのかを判断する。この際に、実行権限のないコマンドの実行が行われないようにされていて、不正アクセスを防止するようにされている。サーバと、ユーザ・サイトに設置されたコンピュータとの間においては、Cookieが相互に通信されていて、アクセス状態が管理されている。
【００１０】
実行権限のあるユーザによるコマンドであることが判断された場合には、ステップ３０４において、要求されたコマンドを要求を行ったユーザの権限で実行させる。ついで、ステップ３０５のTRANS_ENDにおいてデータベースに対する変更をコマンドの実行結果に応じてコミットまたは後退復帰(ROLLBACK)させる。その後ステップ３０６においてサーバは、ユーザ・サイトに設置されたコンピュータに対してHttpResを返してHttpReqから開始するサーバ・プロセスのプロセスが繰り返し実行されることになる。
【００１１】
従来では、上述したようにCookieといった履歴情報を、サーバとユーザ・サイトに設置されたコンピュータへと与えることによりセッション管理が行われ、ネットワークを通したコンテンツ提供および商品購買が可能とされている。
【００１２】
一方、最近ではセルラ電話においてもインターネットといったネットワークを介したサービスを受けることができるようになっており、近年ではこのようなインターネットにアクセスできるセルラ電話のユーザは約６００万人を超えるといわれている。したがって、インターネットといった従来コンピュータがアクセス可能であったネットワークに対してセルラ電話のユーザがアクセスし、商品購入を行うことがきわめて有効である。
【００１３】
【発明が解決しようとする課題】
インターネットに対してアクセスすることができるセルラ電話による商品購買システムは上述したように巨大なマーケットとして注目されているものの、セルラ電話に用いられているセルラ用ブラウザは、Cookieといった履歴情報を記憶する機能を有していないため、新規に参入するネットワークを通した電子的なコンテンツ提供サイトや、商品購買サイト（以下ＥＣサイトという）を提供する者、またはすでにコンピュータのユーザ向けのＥＣサイトを有する者は、既存のコンピュータによるＷｅｂベースのＥＣサイトとは別にセルラ電話用のＥＣサイトを設ける必要が生じる。この結果、従来ではセルラ電話に対しては、コンピュータに対して適用される既存のＷｅｂベースのコンテンツ提供システム、または商品購買システムとは別のセルラ電話のための商品購買システムやコンテンツ提供システムを作り込むことが必要とされ、セルラ電話用の商品購買システム、コンテンツ提供システムとして既存のコンピュータからの商品購買、コンテンツ提供を行うシステムおよびコンテンツ提供方法、商品購買方法とは異なったシステムおよび方法を用いる必要が生じていた。
【００１４】
また従来では、セルラ電話のために用いられるブラウザと、Ｗｅｂサーバとの間において履歴情報に基づいたセッション管理ができないため、商品が購入できないなどの制約ができてしまうこと、従来のＷｅｂサーバには、同じＵＲＬのリクエストに対して端末の種類に応じて適切なサイズのコンテンツを選択して送信する機能がないため、適切なフォーマットのコンテンツが入手できないといった不都合が生じてしまうこと、また既存のコンピュータ用のブラウザを用いるコンテンツ提供システムや、商品購買システムとは別にセルラ電話用のコンテンツ提供システムおよび商品購買システムを構築することが必要とされるため、互いのシステムの間においてデータベースを共有することができず、セルラ電話およびコンピュータのユーザが相互に同じコンテンツ提供システム、商品購買システムにおいてコンテンツの入手や、商品購買ができないという不都合も生じていた。
【００１５】
また、セルラ電話は、セルラ電話用のネットワークを提供するキャリアを介して通信が行われており、コンテンツ提供要求や、商品購買要求を受信するサーバは、異なったキャリアを経由して送信されたコンテンツ要求や、商品購買要求を処理して、コンテンツ要求および商品購買要求を行ったセルラ電話へとキャリアを特定して要求されたコンテンツや、商品情報を送信する必要がある。
【００１６】
また、セルラ電話は携帯性に優れ、情報表示機能にも優れているものの、液晶ディスプレイの大きさ、カラーまたは白黒の種別、または機種ごとの内蔵メモリ上の制限に伴うコンテンツ・データの大きさなどにつき、機種ごとの制約があるのが現状である。このため、コンテンツの提供を要求したユーザがコンテンツを受信した段階では、当該ユーザのセルラ電話の液晶ディスプレイでは充分な表示が行えない、といった場合も発生する場合がある。
【００１７】
本発明は、上記課題に鑑みてなされたものであり、本発明は、インターネットといったネットワークを介して、コンピュータのユーザと、セルラ電話のユーザとが同一のシステムおよび方法を利用することを可能とするコンテンツ提供システムおよびコンテンツ提供方法を提供するものである。また、本発明は、上述した新規なコンテンツ提供方法を実行するためのプログラムが記憶されたコンピュータ可読な記録媒体、並びにサーバを提供することを目的とする。
【００１８】
【課題を解決するための手段】
すなわち、本発明のコンテンツ提供システムは、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、前記接続要求を受信する手段は、前記識別子の有無を判断する手段と、前記識別子の有無により異なったセッション管理を実行させる手段とを含む。
【００１９】
本発明のコンテンツ提供システムにおいては、前記接続要求を受信する手段は、ユーザ情報として前記ユーザ情報として前記識別子とCookieといった履歴情報とは別に用いられる該識別子に関連するステータス情報とを含むデータベースを含んでおり、Cookieを用いることのないセッション管理を行うことを可能とする。本発明のコンテンツ提供システムにおいては、前記異なったセッション管理を実行させる手段は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子にユーザのステータス情報を使用したセッション管理を実行させる。
【００２０】
本発明のコンテンツ提供システムにおいては、前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記セルラ電話からの接続要求が通信される第２のネットワークとを含む。このセルラ電話からの接続要求には、前記第１のネットワークと前記第２のネットワークとの間に接続された手段により、前記識別コードに対応した識別子が付加される。
【００２１】
本発明のコンテンツ提供方法は、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応した識別子が付された接続要求を受信する段階と、前記識別子の有無を判断する段階と、前記識別子を前記接続要求を受信する手段に記憶されたデータベースに前記識別子および該識別子に関連するユーザのステータス情報を記憶させる段階と、前記識別子の有無の判断により異なったセッション管理を実行させる段階とを含む。 上述したデータベースには、ユーザ情報として前記ユーザ情報として前記識別子とCookieといった履歴情報とは別に用いられる該識別子に関連するステータス情報とが含まれ、Cookieを用いることのないセッション管理を行うことを可能としている。
【００２２】
本発明のコンテンツ提供方法においては、前記異なったセッション管理を実行させる段階は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連したユーザのステータス情報を使用してセッション管理を実行させる。本発明の商品購買方法においては、前記ネットワークは、前記コンピュータと通信を行うための第１のネットワークと、前記セルラ電話との通信を行うための第２のネットワークとを含み、前記セルラ電話から第２のネットワークを通して接続要求を送信する段階を含む。
【００２３】
本発明のコンテンツ提供方法においては、前記第１のネットワークと前記第２のネットワークとの間に接続され、前記電話番号に対応した識別子を前記セルラ電話から送信された接続要求に付加する段階を含む。 このセルラ電話からの接続要求には、前記第１のネットワークと前記第２のネットワークとの間に接続された手段により、前記識別コードに対応した識別子が付加される。
【００２４】
本発明の記録媒体は、ネットワークを通した商品購買方法を実行するためのプログラムが記録されたコンピュータ可読な記録媒体であって、該方法は、コンピュータから送信される接続要求およびセルラ電話から送信され、該セルラ電話の識別コードに対応した識別子が付された接続要求を受信し、前記識別子の有無を判断し、前記識別子を前記接続要求を受信する手段に記憶されたデータベースに前記識別子および該識別子に関連するユーザのステータス情報を記憶させ、前記識別子の有無の判断により異なったセッション管理を実行させる。
【００２５】
本発明の記録媒体においては、前記異なったセッション管理を実行させる段階は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用してセッション管理を実行させる。本発明の記録媒体においては、前記ネットワークは、前記コンピュータと通信を行うための第１のネットワークと、前記セルラ電話との通信を行うための第２のネットワークとを含んでおり、前記セルラ電話から第２のネットワークを通して接続要求を送信する。このセルラ電話からの接続要求には、前記第１のネットワークと前記第２のネットワークとの間に接続された手段により、前記識別コードに対応した識別子が付加される。
さらに、本発明によれば、ネットワークを介したコンテンツ提供システムであって、該システムは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段と、
前記識別子の有無を判断する手段と、
前記セルラ電話の属するキャリアを判断するための手段と、
前記識別子の有無により異なったセッション管理を実行させる手段とを含む。上述した構成を採用することにより、異なったキャリアを通して送信されるセルラ電話からの接続要求またはコンテンツ要求を同一のサーバにより処理することが可能となる。
【００２６】
本発明のコンテンツ提供システムにおいては、前記キャリアを判断するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定するためのアダプタ・マネージャとを含んでいてもよい。本発明においては、前記接続要求を受信する手段は、ユーザ情報が登録されたデータベースを含み、該データベースは、前記ユーザ情報として前記識別子と該識別子に関連するユーザのステータス情報とを含む。本発明においては、前記異なったセッション管理を実行させる手段は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用したセッション管理を実行させる。
【００２７】
本発明においては、前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記異なるキャリアに属するセルラ電話からの接続要求が通信される複数の第２のネットワークとを含む。本発明においては、前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加するための手段を含む。
【００２８】
また、本発明によれば、ネットワークを介したコンテンツ提供方法であって、コンピュータから送信される接続要求、および異なったキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応した識別子が付された接続要求を受信する段階と、
前記識別子の有無を判断する段階と、
前記識別子を含む場合には、ユーザ情報を記憶したデータベースに前記識別子および該識別子に関連するユーザのステータス情報を記憶させる段階と、
前記セルラ電話の属するキャリアを判断する段階と、
前記識別子の有無の判断により異なったセッション管理を実行させる段階とを含み、
前記異なったセッション管理を実行させる段階は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用してセッション管理を実行させる、コンテンツ提供方法が提供される。
【００２９】
本発明においては、前記セルラ電話の属するキャリアを判断する段階は、前記キャリアにぞれぞれ対応するアダプタを、アダプタ・マネージャにより指定する段階と、
前記アダプタが接続要求を処理可能か否かを判断する段階とを含む。また、本発明においては、前記ネットワークは、前記コンピュータと通信を行うための第１のネットワークと、前記異なったキャリアに属するセルラ電話との通信を行うための複数の第２のネットワークとを含み、前記セルラ電話からの異なる第２のネットワークを通した接続要求を受信する段階を含む。さらに、本発明においては、前記第１のネットワークと前記第２のネットワークとの間に接続され、前記識別コードに対応した識別子を前記セルラ電話から送信された接続要求に付加する段階を含む。
【００３０】
本発明の記録媒体は、ネットワークを介したコンテンツ提供方法を実行させるためのプログラムが記憶されたコンピュータ可読な記録媒体であって、該記録媒体は、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信し、
前記識別子の有無を判断し、
前記識別子が含まれる場合には、ユーザ情報が登録されたデータベースに、前記ユーザ情報として前記識別子と該識別子に関連するユーザのステータス情報とを記憶させ、
前記セルラ電話の属するキャリアを判断し、
前記セルラ電話の機種を判断し、
前記識別子の有無により異なったセッション管理を実行させ、前記キャリアの判断を、前記セルラ電話からの接続要求に含まれるキャリア識別情報を使用して行い、前記セルラ電話の機種の判断を、前記セルラ電話からの接続要求に含まれる機種識別情報を使用することを可能とする。
【００３１】
また、本発明においては、前記異なったセッション管理は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行し、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用したセッション管理を実行する。本発明においては、前記セルラ電話の属するキャリアの判断は、前記キャリアにぞれぞれ対応するアダプタを、アダプタ・マネージャにより指定する段階と、
前記アダプタが接続要求を処理可能か否かを判断する段階とを含む。
【００３２】
さらに、本発明によれば、ネットワークを介したコンテンツ提供システムであって、該システムは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段と、
前記識別子の有無を判断する手段と、
前記セルラ電話の属するキャリアを判断するための手段と、
前記セルラ電話の機種を判断するための手段と、
前記識別子の有無により異なったセッション管理を実行させる手段と、
前記セルラ電話の機種に適合した形式のコンテンツを送信する手段とを含み、前記キャリアを判断するための手段は、前記セルラ電話ごとに対応するアダプタと、前記アダプタを指定するためのアダプタ・マネージャとを含み、前記セルラ電話の機種を判断するための手段は、前記セルラ電話からの接続要求に含まれる機種識別情報を判断する手段を含み、
前記コンテンツを送信する手段は、前記セルラ電話の機種に適合した形式のコンテンツを前記判断されたキャリアを通して前記セルラ電話に送信する、コンテンツ提供システムが提供される。本発明の上述の構成によれば、キャリアと、機種識別情報とから本発明のコンテンツ提供システムが共有して使用できる固有の識別情報を生成させることが可能となり、セルラ電話のキャリアや、機種にかかわらず、常にセルラ電話に良好なコンテンツを提供することを可能とする。
【００３３】
本発明においては、前記接続要求を受信する手段は、第１のデータベースと、第２のデータベースと、第３のデータベースとを含み、
前記第１のデータベースは、前記識別子と該識別子に関連するユーザのステータス情報とを含み、
前記第２のデータベースは、前記セルラ電話の機種情報を含み、
前記第３のデータベースは、前記セルラ電話の前記キャリアと、前記機種とに関連する保管場所情報または該保管場所情報およびコンテンツを保管しており、前記異なったセッション管理を実行させる手段は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用したセッション管理を実行し、前記セルラ電話のキャリアおよび前記機種に関連する前記保管場所に保管された前記コンテンツを前記セルラ電話へと送信する。
【００３４】
本発明においては、前記ネットワークは、前記コンピュータからの接続要求が通信される第１のネットワークと、前記異なるキャリアに属するセルラ電話からの接続要求が通信される複数の第２のネットワークとを含む。
【００３５】
また本発明によれば、ネットワークを介したコンテンツ提供方法であって、該方法は、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する段階と、
前記識別子の有無を判断する段階と、
前記セルラ電話の属するキャリアを判断する段階と、
前記セルラ電話の機種を判断する段階と、
前記識別子の有無により異なったセッション管理を実行させる段階と、
前記セルラ電話の機種に適合した形式のコンテンツを送信する段階とを含み、前記キャリアを判断する段階は、前記セルラ電話からの接続要求に含まれるキャリア識別情報を判断する段階を含み、前記セルラ電話の機種を判断するための段階は、前記セルラ電話からの接続要求に含まれる機種識別情報を判断する段階を含み、
前記セルラ電話の機種に適合した形式のコンテンツを前記キャリアを通して前記セルラ電話に送信する段階を含む、コンテンツ提供方法が提供できる。
【００３６】
本発明においては、前記接続要求は、第１のデータベースと、第２のデータベースと、第３のデータベースとを含むサーバにより受信され、
前記第１のデータベースは、前記識別子と該識別子に関連するユーザのステータス情報とを含み、
前記第２のデータベースは、前記セルラ電話の機種情報を含み、
前記第３のデータベースは、前記セルラ電話の前記キャリアと前記機種とに関連する保管場所情報、または該保管場所情報およびコンテンツを保管しており、前記異なったセッション管理は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用したセッション管理を実行し、
前記セルラ電話のキャリアおよび前記機種に関連する前記保管場所に保管された前記コンテンツを前記セルラ電話へと送信する段階を含む。
【００３７】
さらに、本発明の記録媒体は、ネットワークを介したコンテンツ提供方法を実行させるためのプログラムが記録されたコンピュータ可読な記録媒体であって、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信し、
前記識別子の有無を判断し、
前記セルラ電話の属するキャリアを判断し、
前記セルラ電話の機種を判断し、
前記識別子の有無により異なったセッション管理を実行させ、
前記セルラ電話の機種に適合した形式のコンテンツを送信し、
前記キャリアの判断は、前記セルラ電話からの接続要求に含まれるキャリア識別情報を使用し、前記セルラ電話の機種の判断を、前記セルラ電話からの接続要求に含まれる機種識別情報を使用して行い、
前記セルラ電話の機種に適合した形式のコンテンツを前記キャリアを通して前記セルラ電話に送信させることを可能とする。
【００３８】
また本発明によれば、前記接続要求は、第１のデータベースと、第２のデータベースと、第３のデータベースとを含むサーバにより受信され、
前記第１のデータベースは、前記識別子と該識別子に関連するユーザのステータス情報とを含み、
前記第２のデータベースは、前記セルラ電話の機種情報を含み、
前記第３のデータベースは、前記セルラ電話の前記キャリアと前記機種とに関連する保管場所情報、または該保管場所情報およびコンテンツを保管しており、
前記異なったセッション管理は、前記識別子が含まれていないと判断した場合には、前記コンピュータとの間で通信される履歴情報によりセッション管理を実行させ、前記識別子が含まれていると判断した場合には、前記識別子および該識別子に関連するユーザのステータス情報を使用したセッション管理を実行し、
前記セルラ電話のキャリアおよび前記機種に関連する前記保管場所に保管された前記コンテンツを前記セルラ電話へと送信する、記録媒体が提供される。
【００３９】
さらに、本発明によれば、ネットワークを介したコンテンツ提供システムに使用されるサーバであって、該サーバは、コンピュータから送信される接続要求、およびセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段を含み、
前記接続要求を受信する手段は、前記識別子の有無を判断する手段と、
前記識別子の有無により異なったセッション管理を実行させる手段とを含む、サーバが提供される。
【００４０】
本発明によれば、前記接続要求を受信する手段は、ユーザ情報が登録されたデータベースを含み、該データベースは、前記ユーザ情報として前記識別子と該識別子に関連するユーザのステータス情報とを含む。
【００４１】
また、本発明によれば、ネットワークを介したコンテンツ提供システムに使用されるサーバであって、該サーバは、コンピュータから送信される接続要求、および異なるキャリアに属するセルラ電話から送信され該セルラ電話の識別コードに対応する識別子が付された接続要求を受信する手段と、
前記識別子の有無を判断する手段と、
前記セルラ電話の属するキャリアを判断するための手段と、
前記識別子の有無により異なったセッション管理を実行させる手段とを含む、サーバが提供される。
【００４２】
本発明においては、前記キャリアを判断するための手段は、各キャリアに対応するアダプタと、前記アダプタを指定するためのアダプタ・マネージャとを含み、前記アダプタ・マネージャは、前記アダプタを順次指定して前記接続要求を処理できる前記アダプタを特定する。また、本発明においては、さらに前記接続要求に含まれるセルラ電話の機種を取得するための手段を含む。
【００４３】
【発明の実施の形態】
以下、本発明を図面に示した実施の形態をもって説明するが、本発明は後述する実施の形態に限定されるものではない。
【００４４】
（第１の実施の形態）
図４は、本発明の第１の実施の形態のコンテンツ提供システムを、商品購買システムに適用する場合を例として概略を示したブロック図である。本発明の第１の実施の形態として説明する商品購買システムは、図４に示されるように、セルラ電話１のユーザと、コンピュータ７のユーザとがインターネットといったネットワーク４を介して共通のＥＣサーバ６にアクセスすることを可能とするセッション管理を使用する。セルラ電話１のユーザは、セルラ電話１用のネットワーク２からまず、ゲートウエイ５へとアクセスする。このゲートウエイ５は、セルラ電話１の識別コード、例えば電話番号に一対一対応の関係で付与されている識別子をセルラ電話１からのHttpReqに与える。HttpReqとは、本発明においては、コンテンツをサーバに対して要求するための接続要求、すなわちコンテンツ要求をいう。コンテンツ要求は、本発明においては、セルラ電話１の電話番号以外にも、セルラ電話１といった端末と一対一対応するように付された識別コードであれば、いかなるものでも用いることができる。この識別子が与えられたHttpReqは、インターネットといったネットワーク４を介してＥＣサイトに設置されたＥＣサーバ６に送信される。本発明においては、コンテンツとしては、（１）静的コンテンツ、（２）NetDataや、JSPといったサーバ・サイドで処理されるテンプレートから固有の識別情報（Devicespec、またはspec)を参照することによって実現される動的コンテンツ、および（３）上述した固有の識別情報を利用してプログラムによりコンテンツを作成し、データベースの変更を伴うビジネス・ロジックの実行結果などのコンテンツを含む。また、商品購買のためのカタログを表示させるディジタルデータも、本発明においては含まれる。
【００４５】
また、パーソナル・コンピュータといったコンピュータ７のユーザは、従来のように、インターネットといったネットワーク４を介して、ネットワーク４に接続されたＥＣサーバ６へとアクセスすることができるようにされている。ＥＣサーバ６は、識別子の有無を判断して、HttpReqが識別子を含まない場合には、従来のCookieを用いるセッション管理を実行させ、HttpReqが識別子を含む場合にはHttpReqがセルラ電話のユーザから送信されたものと判断して識別子を用いたセッション管理を実行させるための手段を含んでいる。
【００４６】
上述したＥＣサーバ６、またはコンピュータ７としては、これまで知られているいかなるものでも用いることができ、具体的には例えばＰＥＮＴＩＵＭ（商標：インテル社）といったＣＰＵ又はこれと互換性のあるＣＰＵを搭載することが可能で、ＷＩＮＤＯＷＳ（商標：マイクロソフト・コーポレイション）、ＷＩＮＤＯＷＳ  ＮＴ（商標：マイクロソフト・コーポレイション）、ＯＳ／２（商標：インターナショナル・ビジネス・マシーンズ・コーポレーション）、ＡＩＸ（商標：インターナショナル・ビジネス・マシーンズ・コーポレーション）、ユニックス、リナックスといったオペレーティング・システムを動作させることが可能なパーソナルコンピュータ、ワークステーション、または汎用大型コンピュータを挙げることができるが、これらのものに限定されるわけではない。
【００４７】
本発明において用いられるネットワークとしては、いわゆるインターネットといったネットワークを挙げることができるが、これ以外にも、適切な通信プロトコル、例えばＴＣＰ／ＩＰを用いたＬＡＮ／ＷＡＮ、および光通信によるネットワークを挙げることができる。また、本発明においてセルラ電話１からの信号が送信されるネットワークとしては、無線といったセルラ電話用の公衆電話回線を挙げることができる。
【００４８】
上述したセルラ電話１およびセルラ電話システムとしては、セルラ電話用のネットワークを介してHttpReqを送信することができ、この送信されたHttpReqを、インターネットといったネットワークへとアクセスさせることができるシステムであれば、例えばｉモード（商標）対応のセルラ電話システムなど、いかなるものでも用いることができる。
【００４９】
図５は、本発明の商品購買システムの構成をより詳細に示したブロック図である。本発明の商品購買システムは、セルラ電話１とセルラ電話１の信号が通信されるセルラ電話用ネットワーク２と、セルラ電話からのHttpReqを処理するためのサーバ３と、セルラ電話１からのHttpReqをインターネットといったネットワーク４に接続させるためのゲートウエイ５を含んで構成されている。いわゆるインターネットといったネットワーク４には、商品購買のために用いられるＥＣサーバ６と、パーソナル・コンピュータといったユーザ・サイトに設置されるコンピュータ７とが接続されていて、セルラ電話１からのHttpReqと、コンピュータ７からのHttpReqとを、共通のデータベースを用いて処理することができるようにされている。図５においては、サーバ３と、ゲートウエイ５とが別に与えられているのが示されているが、本発明においては、サーバ３と、ゲートウエイ５とが一体とされたワークステーションまたはコンピュータとされていてもよい。
【００５０】
セルラ電話１からのHttpReq、例えば、“http://host/cgi-bin/some_cgi/?Did=NULLGWXXXXX”を受信すると、NULLGWXXXXXを、端末ごとに定められた一意な識別子、例えば00aaBBccDDeeへと置き換えることにより、セルラ電話１からのHttpReqに対して識別子を付与する。上述した識別子は特に上述した構成とされている必要はなく、必要に応じていかなる数字、キャラクタ、またはこれらを組み合わせて用いることも可能である。また、本発明において可能である場合には、上述した識別子で置き換えることなく、識別子を単に付加することにより、セルラ電話１からのHttpReqへと識別子を付加することもできる。本発明においては、一例としてＧＥＴ形式のリクエストの例を示したが、ＰＯＳＴ形式においても識別子を使用することができる。ＥＣサーバ６は、上述したいずれの形式にでも対応することが可能である。
【００５１】
図６には、セルラ電話１が、ゲートウエイ５と、このゲートウエイ５からインターネットといったネットワーク４を介してＥＣサーバ６へとアクセスしているのが示されている。
【００５２】
図７は、ＥＣサーバ６に記憶されたデータベースに構成されるユーザ情報を示した図である。ＥＣサーバ６に含まれたデータベースには、ユーザ情報がユーザＩＤ、パスワードＰＷＤ、住所といった情報に加えて、そのユーザがセルラ電話のユーザである場合には、セルラ電話１に付与されている識別子、およびこの識別子に関連するユーザのステータス状態を保存しておくフィールドが設けられている。ここにユーザのステータス情報とは、ユーザがログ・インまたはログ・オフのいずれの状態にあるかを示す情報をいう。図７においては、ユーザＡ〜Ｃがセルラ電話１のユーザであり、ユーザＤがパーソナル・コンピュータのユーザとされているのが一例として示されている。
【００５３】
ＥＣサーバ６がセルラ電話１からのHttpReqを受信すると、ＥＣサーバ６は、図５において説明したようにHttpReq中に識別子が付与されているか否かを判断してユーザがコンピュータ７からアクセスしているか、またはセルラ電話１からアクセスしているかを判断し、コンピュータ７からアクセスしているユーザにはCookieと言った履歴情報を用いたサービスを提供し、セルラ電話１からアクセスするユーザに対しては、識別子と、この識別子のステータス状態とを使用して、異なったセッション管理を実行することにより、セルラ電話１のユーザおよびパーソナル・コンピュータといったコンピュータ７のユーザに対して同様の商品購買サービスを提供することが可能となる。
【００５４】
図８は、本発明のＥＣサーバ６が実行するセッション管理プロセスのフローチャートを示した図である。本発明のＥＣサーバ６において実行されるセッション管理プロセスにおいては、ステップ８０１においてＥＣサーバ６が、ユーザからのHttpReqを受信する。本発明の商品購買システムにおいては、ユーザからのHttpReqとして、セルラ電話１から送信される識別子が付加されたセルラ電話１からのHttpReqと、パーソナル・コンピュータといったコンピュータ７からのHttpReqとが送信されることになる。ＥＣサーバ６が、このようなHttpReqを受信すると、ステップ８０２において例えば、Server.exeとされる商品購買のためのプログラムにより商品購買のサービスをそれぞれのユーザに対して開始する。このようなプログラムの一例として、アイ・ビー・エム・コーポレーションからNet.Commerceという商品名で提供されている商品取引のためのサーバ用プログラムを採用することができる。
【００５５】
ついで、ＥＣサーバ６は、ステップ８０３においてHttpReqに識別子が含まれているか否かを判断する。ステップ８０３において、識別子が含まれていないと判断された場合には、コンピュータ７からのHttpReqであると判断して、ステップ８０４において、Cookieといった履歴情報を用いたセッション管理を行うための初期化TRANS_INIT (Cookie)を実行させる。また、識別子が含まれていると判断した場合には、ステップ８０５においてセルラ電話１からのHttpReqであると判断して、Cookieを用いないでセッション管理を行うための初期化TRANS_INIT（識別子）を実行させる。
【００５６】
その後、ＥＣサーバ６は、ステップ８０６において、ユーザの要求したコマンドをそのユーザの権限で実行させ、ステップ８０７において、ユーザからのコマンドに応じた実行結果をユーザの権限に応じてデータベースに対してコミットさせるか、または後退復帰させる。この後、ＥＣサーバ６は、ユーザに対してHttpReqに対応した応答HttpResを返すことによりユーザに対応したセッション管理を提供しつつ、セルラ電話１のユーザおよびコンピュータ７のユーザに対して同一の商品購買システムの利用を可能とする。
【００５７】
図９には、図８に示したステップ８０２からステップ８０６までのプロセスを実行させるために用いることができる擬似コードの一例を示す。ユーザからのHttpReqを受信したＥＣサーバ６は、“bool TransInit_StaticID (HttpRequest req)”で、StaticID、すなわち、HttpReq信号における識別子のデータ型を定義し、“String * static_ID = req.getStaticID(name_of_static_ID)”において識別子を取得する。識別子を含まないHttpReqを送信するユーザ、すなわちコンピュータ７のユーザからのHttpReqである場合には、“If (static_id==NULL)”の判断がtrueとなるので、Cookieを用いる従来の処理である“TransInit_Cookie(req)”を実行させる。
【００５８】
“If (static_id==NULL)”の判断がfalseとなる場合には、ユーザがセルラ電話１からHttpReqを送信しているので、“if (!isValidGateway adress(req))”においてゲートウエイ・アドレスの検証を行い、ゲートウエイ・アドレスが正規なものでなければ、falseとして不正アクセスを防止するための無効なアドレスからの要求を受け付けつけない。また、“if (!isValidGateway adress(req))”の判断において正規なゲートウエイ・アドレスからの要求であると判断した場合には、“if (!verifySessionInfo() )”においてその他のセキュリティー情報の検証、ユーザＩＤのフォーマット検査などを実行させ、セルラ電話１のユーザからのHttpReqか否かをさらに検証する。
【００５９】
この検証により、セルラ電話１のユーザからのHttpReqであることが認証されると、“User* user = Usertable. LookupByStaticID(StaticID)”において、ルックアップテーブルとして登録されているユーザ情報から、その時点でセルラ電話１からHttpReqを送信しているユーザの情報に対応する情報を検索する。この検索において、その時点でＥＣサーバ６にアクセスし、識別子が付与されていると判断されたユーザのユーザ情報がなければ、本発明の商品購買システムに対して登録されていないセルラ電話１のユーザからのアクセスであるので、“user* temporary_user = User::CreateGestUser(static_id)”において一時的なゲスト用アカウントを作成する。ついで“Server.processRequestsAs GestUser(Req, temporary_user)”においてサーバ・プロセスのコマンドをゲスト権限で実行させる。このゲスト用アカウントは、登録された正規ユーザに比較して制限されたコマンドしか実行できないようにされている。また、このゲスト用アカウントにおいて新規ユーザが登録を行うこともできる。
【００６０】
“User* user = Usertable. LookupByStaticID(StaticID)”において、ルックアップテーブルにすでにその時点でアクセスしているユーザに対応するユーザ情報があれば、“if ( user. isLoginIn() )”においてユーザがログインしているかどうかを判断し、ログインしている場合には“Server.processRequestFrom RegistedUser (req, user)”として、要求されたコマンドを現在アクセスしているユーザの権限において実行させ、商品購買といったサービスを提供する。また、そのユーザがすでに登録されていたとしても、ログインしていない場合には、“Server.processRequestFrom GuestUser(req, user)”を実行させて、ゲスト権限において、サーバ・プロセスを実行させる。
【００６１】
図１０は、図８および図９において詳細に説明を行った本発明の商品購買方法がセルラ電話１と、ＥＣサーバ６との間において実行されているところを示した図である。図１０（ａ）に示すように、セルラ電話１には、例えば電話番号といった識別コードに対応して識別子00aaBBccDDeeが予め定められており、このセルラ電話１から送信されたHttpReqには、図示しないゲートウエイ５により、識別コードに対応した識別子が付与されている。図１０（ａ）においては、この識別子が、00aaBBccDDeeとして示されている。この識別子が与えられたHttpReqを受信したＥＣサーバ６は、HttpReqに識別子が含まれていることを判断した後、データベースにおいてこのユーザの検索を行う。図１０（ａ）に示す場合には、このセルラ電話１のユーザは、本発明の商品購買システムに対してユーザ登録を行っていないため、初回登録のために、ＥＣサーバ６に対してゲストとしてアクセスしている。ユーザ登録においては、従来の登録処理に加えて例えば下記表１に示される各情報を、ＥＣサーバ６内の記憶手段に記録されたデータベースに登録する。
【００６２】
【表１】
0003851080.tif 000002
本発明においては、表１に示された以外の情報であっても、必要に応じてデータベースへと登録することができる。
【００６３】
この登録の後ユーザは、図１０（ｂ）に示すように、必要に応じてＥＣサーバ６へとアクセスを行ない、商品の購入などを行う。ログイン後にされるアクセスにおけるセッション管理においては、ＥＣサーバ６は、Static_IDが00aBBccDDeeのユーザを検索し、現在アクセス中のセルラ電話１のユーザは、ユーザＩＤがＡＡＡＡ、Static_ID（識別子）が00aaBBccDDee、としてログイン中であることを認識することができる。
【００６４】
さらに図１０（ｃ）には、本発明の商品購買システムに対してセルラ電話１から、ログアウト要求がされた場合のプロセスを示している。セルラ電話１のユーザは、ログアウトを行うための適切な信号をＥＣサーバ６へと送信する。この信号を受信したＥＣサーバ６は、データベースを参照して、Static_ID（識別子）が00aaBBccDDeeのユーザのステータス（Status）を、LoginからLogoutとする。このようにして一連のアクセスに対するセッション管理を、Cookieといった履歴情報をコンピュータ７との間において送受信するプロセスを経ずとも実行させることが可能となる。
【００６５】
図１１は、本発明において用いることができるセルラ電話１の一例を示した図である。このセルラ電話１には、液晶ディスプレイ８と、各操作を実行させるためのプッシュボタン９およびスクロールボタン１０とが配置されており、セルラ電話１のユーザは、液晶ディスプレイ８の画面を参照しながら商品購買システムを構成するＥＣサーバ６へとアクセスすることができるようにされている。
【００６６】
図１２は、本発明の商品購買システムにおいて、セルラ電話１の液晶ディスプレイ８に表示される表示画面を示した図である。図１２に示した表示画面においては、トップメニューとして商品購買システムが提供できるサービスがリストされている。また、図１２に示されるように予め携帯電話の電話番号などにより検索されたユーザの氏名などを検索して表示するようにされていてもよい。ユーザは、プッシュボタン９またはスクロールボタン１０の操作により所望するサービスを選択することができるようになっている。この場合、ユーザがまだ本発明の商品購買システムに対して登録を行っていない場合には、このユーザには、図１０において説明したゲスト権限でのアクセスが認められている。
【００６７】
図１３は、図１２に示したトップメニューにおいて、セルラ電話１のユーザが表示画面をスクロールなどした場合に示される画面表示を示した図である（ＩＢＭは、日本アイ・ビー・エム株式会社の商標である）。図１３に示した画面表示においては、本発明の商品購買システムにおける提供可能なサービスが提示されていて、ユーザに対して、情報に基づいた操作を促すようにされている。ユーザは、所望により画面をさらにスクロールして図１４に示すような登録画面を表示させることができる。このセルラ電話１のユーザが登録していないのであれば登録手続を行うことによりＥＣサーバ６における商品購買サービスが完全に提供されることになる。
【００６８】
図１５（ａ）は、正規にログオンした登録ユーザが、商品購買システムの商品カタログを液晶ディスプレイ８に表示させたところを示した図である。この商品カタログは、例えばスクロールボタン１０により表示画面をスクロールして行くと、本発明の商品購買システムにより提供できる商品の一覧を表示する。この商品一覧を表示させたところを示したのが図１５（ｂ）である。図１５（ｂ）には、清涼飲料水についての商品カタログが示されているが、この他の商品についても同様に表示させることができる。例えば、ユーザが商品bbbbbbbを購入したいと希望した場合には、スクロールボタン１０といった適切な方法により、商品bbbbbbbへとカーソルをスクロールさせ、スクロールボタン１０を押すことにより、購入する商品の決定を行うようにすることができる。
【００６９】
図１６（ａ）、（ｂ）、（ｃ）は、本発明の商品購買システムにより与えられるオーダーリストの画面表示を示した図である。このオーダ−リストにより、ユーザはすでに注文した商品と、合計金額とを知ることができるようにされている。また、図１６（ｃ）に示されるように、ユーザは一旦購入を希望した商品の削除を行うことも可能である。この一連の手順により購入する商品が確定した後、図１６（ｃ）に示されたオーダーの送信を行って、ＥＣサーバ６への注文を行う。
【００７０】
図１７は、上述のようにして注文を行った後に、表示される表示画面を示した図である。図１７に示されるように、オーダ支払い情報の確認をユーザが行うように促した後、画面をスクロールするといった方法により図１８に示されるように合計金額といった情報と、配送料金、配送方法といった項目を選択して入力することができるようにされている。この操作が終了してさらに画面をスクロールすると、図１９に示されるような支払い方法を入力するための画面が表示される。ユーザは適切な支払い方法を選択して、カード番号といった必要な情報をプッシュボタン９などの操作により入力した後、送信を行うことにより、本発明の商品購買システムの手順が終了する。この後、ユーザは必要に応じて、本発明の商品購買システムによりさらに別の商品の購入、またはログアウトすることができる。
【００７１】
（第２の実施の形態）
図２０に、本発明のコンテンツ提供システムの第２の実施の形態を示す。図２０に示される本発明のコンテンツ提供システムにおける第２の実施の形態では、セルラ電話２０が、本発明における第２のネットワークとして使用されセルラ電話専用の第１のキャリアの提供する、セルラ電話用ネットワーク２１ａを介してインターネットといったネットワーク２２へとアクセスし、ＥＣサーバ２３へとコンテンツ要求を行う。また、本発明のコンテンツ提供システムでは、セルラ電話２４が、第１のキャリアとは異なる第２のキャリアが提供するセルラ電話用ネットワーク２１ｂを通して、インターネットといったネットワーク２２へとアクセスしている。セルラ電話２０、およびセルラ電話２４からの要求を受信したＥＣサーバ２３は、セルラ電話２０およびセルラ電話２４からのコンテンツ要求をそれぞれ受信して処理し、商品購買用の情報といったコンテンツの提供を行なう。また、ネットワーク２２には、コンピュータ２５からもアクセスが行われる。ＥＣサーバ２３は、コンピュータ２５から送信されたコンテンツ要求を受信して、処理しコンテンツの提供を行うことも可能とされている。
【００７２】
本発明においてセルラ電話２０およびセルラ電話２４を提供するキャリアとしては、セルラ電話からインターネットへとアクセスを可能とするゲートウエイを管理するキャリアであればいかなるものでも可能であり、具体的には、ｉモード（商標）のネットワークを使用してインターネットへのアクセスを行うセルラ電話、スカイメール（商標）のネットワークを使用してインターネットへのアクセスを行うセルラ電話、およびＥＺｗｅｂ（商標）のネットワークを利用してインターネットへのアクセスを行うセルラ電話などを挙げることができる。また、コンピュータ２５としては、上述した本発明の第１の実施の形態において説明したパーソナル・コンピュータまたはワークステーションを用いることができる。
【００７３】
上述した本発明の第２の実施の形態においては、セルラ電話２０およびセルラ電話２４をそれぞれ提供するキャリアにより、接続要求、すなわちコンテンツ提供要求(HttpReq)における本発明の実施の形態１において説明した識別子の記述されている位置または部分が異なる場合がある。このため、本発明の第１の実施の形態において説明したセッション管理を行うべく、ＥＣサーバ２３は、異なるキャリアから送信されるコンテンツ提供要求を一括して処理することが可能とされている。
【００７４】
図２１は、本発明の第２の実施の形態において使用されるＥＣサーバ２３の機能を示したブロック図である。本発明の第２の実施の形態において使用するＥＣサーバ２３は、上述したように異なったキャリアを経由して送信されるセルラ電話２０、２４から送信されるコンテンツ要求、およびコンピュータ２５からのコンテンツ要求を一括して処理することができるように、セッション管理ブロック２７が設けられている。セッション管理ブロック２７は、図２１に示されるように、複数のキャリアから送信されるコンテンツ要求を一括して処理するべく、複数のアダプタ（ｉ）が登録されたアダプタ・リスト２８と、これらのアダプタ（ｉ）を管理するアダプタ・マネージャ２９と、を含んで構成されている。このアダプタ・マネージャ２９は、順次アダプタ・リスト２８に含まれるアダプタ（ｉ）を指定して、コンテンツ要求を処理できるか否かを判断することができるようにソフトウエアから構成されている。
【００７５】
アダプタ（ｉ）は、コンテンツ要求がセルラ電話２０、２４から送信されたものである場合には、コンテンツ要求に含まれる識別子、またはコンテンツ要求のフォーマットを使用して、キャリアの特定を行う。また、アダプタ・マネージャ２９は、本発明の第１の実施の形態において説明したStatic_IDを用いたセッション管理プログラムを呼出して、Static_IDを使用したセッション管理を実行させる。図２１には、アダプタ（ｉ）は、アダプタ（１）、アダプタ（２）の２つだけが示されているが、本発明においてはキャリアの種類に応じていくつでも用いることができる。
【００７６】
また、ＥＣサーバ２３に送信されたコンテンツ要求に該当するアダプタが見出されなかった場合には、アダプタ・マネージャ２９は、コンテンツ要求が、コンピュータ２５から送信されたものであると判断する。この場合には、セッション管理ブロック２７は、ユーザ情報を記録したデータベース２６を参照してCookieによるセッション管理を行うべく、従来のCookieによる管理を行うセッション管理プログラムを呼出して実行を行なう。また、本発明の第２の実施の形態においては、コンピュータ２５から送信されるコンテンツ要求のフォーマットを判断するため、コンピュータ用のアダプタ（ｉ）をアダプタ（３）として用いることもできる。また、セッション管理ブロック２７により、セッション管理が行われた後、コンテンツ要求は図２１に示されるコンテンツ提供ブロックへと承継され、コンテンツ保管場所情報を含むデータベース３０からコンテンツの保管場所情報が提供され、ファイル・システムに記憶されたコンテンツが提供される。また、本発明においては、データベース３０に保管場所情報と共にコンテンツを保管しておき、データベース３０からコンテンツを提供する構成とされていても良い。
【００７７】
上述したようにして、コンテンツ要求が異なったキャリアに属するセルラ電話およびコンピュータから送信される場合であっても識別子、またはコンテンツ要求のフォーマットを使用してキャリアの種別を判断することにより単一のＥＣサーバ２３でコンテンツ要求を処理することが可能となる。
【００７８】
以下、本発明の第２の実施の形態において用いられるアダプタ・リスト２８と、これらのアダプタを管理するアダプタ・マネージャ２９と、について詳細に説明する。
【００７９】
図２２は、異なったキャリアを経由してセルラ電話から送信されるコンテンツ要求(HttpReq)を詳細に示した図である。セルラ電話からのコンテンツ要求は、例えば、キャリア１からは、例えば
/cgi-bin/ncommerce3/Logon?Did=NULLGWXXXXXX&name=a&password=aとして送信される。セルラ電話が属するキャリアが管理するゲートウエイにより端末固有の識別子Did“aaBBccDDee”へと変換されて、ＥＣサーバ２３には、下記のフォーマット、
/cgi-bin/ncommerce3/Logon?Did=00aaBBccDDee&name=a&password=a HTTP/1.0
として送信される。ＥＣサーバ２３に送信されるコンテンツ要求は、セルラ電話およびキャリア１の固有の識別子を含む、図２２に示したフォーマットで送信されることになる。図２２に示した実施の形態においては、セルラ電話２０に固有の識別子は、Did=00aaBBccDDeeである。本発明においては、コンテンツ要求としては図２２（ａ）に示されるようなＧＥＴ形式の要求でも、また図２２（ｂ）に示されるようなＰＯＳＴ形式の要求でも処理することが可能である。さらに、図２２に示したコンテンツ要求においては、上述したＵＲＬへの要求の他、carrier1/1.0/K1といった機種識別情報も含まれるのが示されている。本発明においては、機種識別情報としては、機種名を用いることができるが、セルラ電話の機種に対応したいかなる機種識別情報でも用いることができる。
【００８０】
また、図２３には、図２２において説明したとは異なったキャリアを経由したセルラ電話２４から送信されるコンテンツ要求を示した図である。例えば、セルラ電話用のブラウザ・ソフトウエアが下記のＵＲＬ要求を送信するものとする。
/cgi-bin/ncommerce3/Logon?name=a&password=a
この要求は、セルラ電話２４が属するキャリアの管理するゲートウエイにおいて端末固有のＩＤが付与されて、例えば図２３（ａ）に示すように、ＧＥＴ形式においては、
GET / cgi-bin/ncommerce3/Logon?name=a&password=a HTTP/1.0
として送信されることになる。図２３（ａ）においては、セルラ電話に固有の識別子は、a-bb-cccc：部分に記載された05010123456789_carrier2.ne.jpである。図２２において説明したように、キャリアが異なった場合であっても機種識別情報はコンテンツ要求に含まれており、この機種識別情報は、図２３において説明する実施の形態においてはUser-tanmatu:の欄に記述されていて、HHIIで示されている。図２３（ｂ）に示すように、異なったキャリアから送信されるコンテンツ要求についてもＰＯＳＴ形式による要求とすることもできる。
【００８１】
本発明の第２の実施の形態において使用されるアダプタ・マネージャ２９およびアダプタ（ｉ）は、プログラムまたはファイルとしてとしてＥＣサーバ２３に保管されている。図２４は、ＥＣサーバ２３において、アダプタ（ｉ）およびアダプタ・マネージャ２９によるアダプタ（ｉ）の指定を示す。複数のアダプタ（ｉ）は、インデックスｉと共にアダプタ・リスト２８に記憶されている。アダプタ・マネージャ２９は、順次インデックスを指定して対応するインデックスを含むアダプタ（ｉ）を呼出すことができる構成とされている。また、アダプタ・リスト２８には、それまでに登録されていないセルラ電話からのコンテンツ要求に対応するため、アダプタ・ソフトウエアを追加するためのスペースが設けられていて、キャリアの増加に対して容易に対応ができる構成とされている。
【００８２】
図２５は、本発明の第２の実施の形態においてセッション管理ブロックがアダプタ・マネージャ２９を使用して実行する、アダプタ（ｉ）の管理に用いることができるプロセスのフローチャートである。図２５に示されるように、ステップ９０１においてＥＣサーバ２３が、コンテンツの提供を要求する接続要求を受信すると、アダプタ・マネージャ２９は、ステップ９０２においてアダプタ（ｉ）を、実行可能ファイルとして保管されているアダプタ・リスト２８を参照して指定し、ステップ９０３において選定されたアダプタ（ｉ）に対して順次、コンテンツ要求それぞれのアダプタ（ｉ）に適合する識別子を含んでいるか、または適切なフォーマットであるかを判断させる。
【００８３】
より具体的に説明すれば、アダプタ・マネージャ２９は、コンテンツ要求を処理するアダプタ（１）を指定してコンテンツ要求を判断させる。アダプタ（１）が、コンテンツ要求のフォーマットがアダプタ（１）適合したものであると判断した場合には、コンテンツ要求がセルラ電話から送信されたものであり、アダプタ（１）がコンテンツ要求を処理できることをアダプタ・マネージャ２９へと通知することにより、セルラ電話のキャリアを特定することが可能となる。
【００８４】
この通知を受け取ったアダプタ・マネージャ２９は、ステップ９０４においてコンテンツ要求に含まれ、セルラ電話２０またはセルラ電話２４に固有の識別子に対応した固有の識別情報を生成する。その後ステップ９０５において、static_IDを用いる本発明の第１の実施の形態において説明したセッション管理プログラムを呼出して、コンテンツの提供を実行させる。
【００８５】
ステップ９０３において例えばアダプタ（ｉ）がその時点で判断しているコンテンツ要求がアダプタ（ｉ）に適合するものではないと判断した場合には、該当しない通知をアダプタ・マネージャ２９に通知する。この通知を受けたアダプタ・マネージャ２９は、例えば、アダプタ（ｉ）を指定するインデックスをインクリメントさせて、ステップ９０６においてすべてのアダプタが指定されたか否かを判断し、すべてが指定されていない場合（ｎｏ）には、次のアダプタ（ｉ＋１）を呼出して、コンテンツ要求を再度判断させる。
【００８６】
ステップ９０６においてすべてのアダプタ（ｉ）を判断し、すべてのアダプタ（ｉ）の呼出しが行われた場合（ｙｅｓ）でも、コンテンツ要求のフォーマットに該当するアダプタがない場合には、本発明の第２の実施の形態においては、コンテンツ要求がコンピュータ２５から送信されたものと判断して、セッション管理ブロック２７は、ステップ９０８において、Cookieを使用したセッション管理プログラムを呼出してコンテンツの提供を実行させる。なお、本発明において、コンピュータ２５からのコンテンツ要求であることを判断するアダプタ（ｉ）が設けられている場合には、ステップ９０８の判断を、Cookieを含んだ情報であることを判断するステップに置き換えることもできる。
【００８７】
図２６は、図２５において説明したステップ９０３においてアダプタが、そのアダプタに適合するフォーマットであるかどうかを判断するために使用することができる擬似コードを示した図である。図２６に示されるアダプタの論理は、アダプタごとに含まれている必要がある。図２６に示された擬似コードにおいては、まずセッション・アダプタのクラスであることが、“public abstract Session Adapter” として宣言され、“public abstract boolean checkDeviceId(HttpRequest req)”においてアダプタがコンテンツ要求を処理できるかどうかの判断を行う。
【００８８】
ついで、“public absrtact String getDeviceId(HttpRequest req);”においてセルラ電話の識別子static_Idをコンテンツ要求から取出し、
“public abstract Stromg get DeviceModel(HttpRequest req);”において、機種識別情報として使用する機種名をコンテンツ要求から取出す。さらに“public abstract checkGateway Adress(HttpRequest req);”においてコンテンツ要求が正しいアドレスから送信されてきたものかを判断する。本発明において用いる図２６に示したアダプタにおいては、送信されたコンテンツ要求から、コンテンツ要求のフォーマットの他、識別子ＩＤ、セルラ電話の機種名といった情報を取出し、これらの情報にもとづいて固有の識別情報を作成する構成とされている。
【００８９】
図２７は、コンテンツ要求が送信された場合に、各アダプタ（ｉ）によりセルラ電話に固有の識別子およびその他の、コンテンツ要求に含まれる情報を読取って、それぞれセッション管理を行う場合に、セッション管理ブロック２７が、それぞれのアダプタ（ｉ）を呼出してコンテンツの提供を行う処理の流れを示したブロック図である。
【００９０】
図２７に示されるように、セッション管理ブロック（PvCTransInit)２７に含まれるアダプタ・マネージャ２９は、ＥＣサーバ２３がコンテンツ要求を受信すると起動され、アダプタ・リストを参照させてアダプタを順次呼出し、コンテンツ要求が処理できるか否かを判断させる（ブロック１）。アダプタ（１）、アダプタ（２）は、それぞれ対応するコンテンツ要求を処理して、コンテンツ要求に含まれる固有の識別子を読取る（ブロック２）。また、ブロック２では、該当するアダプタが見出されなかった場合にはコンピュータ２５から送信されたコンテンツ要求であると判断する構成とされている。さらに、ブロック２においては、アダプタ（ｉ）によりコンテンツ要求に含まれる機種がそれぞれ読取られる。図２７において示す処理は、ついでブロック３へと進んで、固有の識別子が存在するコンテンツ要求を送信したセルラ電話に対して、識別子static_IDを使用して、セッション管理プログラムを実行させる。同様に、該当するアダプタが見出されなかった場合には、ブロック３においては、Cookieを使用したセッション管理プログラムを呼出して、コンピュータ２５のための従来のセッション管理を行う構成とされている。
【００９１】
図２７においては、さらにセッション管理ブロック２７は、ブロック４において、識別子static_IDそれぞれに対して実行権限を設定し、コンテンツ提供ブロック５へと処理を承継させ、コンテンツ要求に対応するコンテンツの提供を実行させる。
【００９２】
図２８は、図２７に示したセッション管理ブロック２７を含むＥＣサーバ２３のサーバ・プロセスを実行させるための擬似コードを示した図である。図２８に示す擬似コードは、ブラウザ・ソフトウエアからのコンテンツ要求を受信すると起動され、実行が開始される構成とされている。図２８を使用してＥＣサーバ２３のサーバ・プロセスを説明すると、まず、ＥＣサーバ２３におけるプロセスであることが宣言され、コンテンツ要求を受信するとそれぞれのexecute ()ファイルが実行される。
【００９３】
ついで、“User user=null”においてコマンドを実行するユーザを初期化し、“DeviceSpec spec=null”においてコマンドを実行するユーザのセルラ電話の性能・規格を初期化する。なお、セルラ電話の規格に応じたコンテンツ提供については、後述する本発明の第３の実施の形態においてより詳細に説明する。さらに、“if (!beginSession(req))return false”においてセッション管理を開始するか否かを判断し、“if( !executeCommand(req,user)) return false”においてコマンドを実行させるか否かを判断する。
【００９４】
“public boolean beginSession(HttpRequest req)”において、ユーザからのコンテンツ要求の内容を保管するクラスであるHttpRequest reqを使用してセッション管理を実行させるべく、アダプタ（ｉ）を呼出す。アダプタ（ｉ）の呼出は、“SessionAdapter[] adapters = get AdapterList()”により実行される。この場合に呼出されるアダプタ（ｉ）は、表２のようなリストとしてＥＣサーバ２３内の適切な記憶手段に記憶されている。
【００９５】
【表２】
0003851080.tif 000003
【００９６】
このようにして呼出が行われたアダプタ（ｉ）は、まず“SessionAdapter adapter Detected = null”において初期化された後、コンテンツ要求を処理できるアダプタが見出されるまで“if (int i=0; i<adapter.length;i++) {}”において、アダプタ（ｉ）の数“adapter.length”だけ、インデックスｉをインクリメントさせて、順次呼出が行われる。アダプタ（ｉ）がコンテンツ要求を処理できるか否は、
“if((adapter[i].checkDeviceId(req))&&( adapter[i],cjeckGatewayAdress(req) により行われ、ゲートウエイ・アドレスが適切であるか否かの判断も同時に行われる。この判断が、trueであれば、
0003851080.tif 000004
のコードが実行され、処理が可能なアダプタ（ｉ）のインデックスｉが特定される。
【００９７】
さらにアダプタが特定されたか否かを、if(adapter ! =null)において判断し、アダプタが特定された場合にはif(adapter !=null)の判断はtrueとなるので、セルラ電話の識別子を用いた本発明のセッション管理を実行させる。識別子Static_IDを用いたセッション管理においては、まず“String adapter Type = adapter.getAdapterType();”でアダプタの適合するキャリアのタイプを判断し、“String deviceId= adapter.getDeviceId()”においてそのアダプタから読取られた識別子の読出しが行われる。ついで、“String model = adapter.getDeviceModel();”においてセルラ電話の機種名を同一のアダプタから読取る。
【００９８】
図２９は、図２８で示したプロセスに続くプロセスを実行させる擬似コードを示した図である。図２９においては、キャリアごとの識別子と、セルラ電話の識別子との組み合わせによる識別情報を“User user = StaticIdSession.getUserByAdapter Type And DeviceId(adapter Type, deviceId)”で作成し、ＥＣサーバ２３に記憶されているユーザＩＤ、またはログオンＩＤとを使用して実行権限を“setUser(user)”において設定する。この際の実行権限の設定は、図９に示したプロセスにより実行することができる。その後、コンテンツの保管場所を参照して、
0003851080.tif 000005
において、Static_Idを使用した本発明におけるセッション管理が実行される。なお、本発明の第２の実施の形態では、コンテンツ要求を処理できるアダプタを特定し、その識別子を使用してセッション管理を行うことを可能とするものであり、必ずしも上述したようにセルラ電話の規格・性能の情報を読み取る必要はない。
【００９９】
また、図２９においては、図２８に示したif(adapter !=null)の判断がfalseである場合には、アダプタ・マネージャ２９は、コンピュータ２５からのコンテンツ要求であると判断して、“Use user = CookieSession.getUser(req)”として、Cookieによるセッション管理を実行させる。
【０１００】
その後、各セッション管理プログラムの下でセッション管理が行われ“public boolean executeCommand(HttpRequest req)”以下の擬似コードにおいて特定されたユーザの権限で処理が実行される。これらの処理においては、“Command command = ........;”においてコンテンツ要求からコマンドを読取り、それぞれのコマンドにしたがってコマンドが実行されて、コンテンツの提供が行われる。
【０１０１】
（第３の実施の形態）
本発明のコンテンツ提供システムにはさらに、セルラ電話からコンテンツ要求がなされた場合、キャリアの種別を判断してそのコンテンツ要求を行ったセルラ電話に対して最も良好にコンテンツを表示させる機能を付加することができる。
【０１０２】
図３０は、本発明の第３の実施の形態のコンテンツ提供システムに用いられるＥＣサーバ３１の機能ブロック図を示した図である。ＥＣサーバ３１には、コンピュータ３２、セルラ電話３３、セルラ電話３４からのコンテンツ要求がネットワーク２２を通して送信される。これらのコンテンツ要求を受信したＥＣサーバ３１は、本発明の第２の実施の形態において説明したように、コンピュータ３２およびセルラ電話３３，３４からのコンテンツ要求を、セッション管理ブロック３５のアダプタ・マネージャ３６を使用して処理する。また、ＥＣサーバ３１は、コンピュータ３２には、Cookieを使用したセッション管理プログラムを使用して従来の処理を実行させる。本発明の第３の実施の形態におけるコンテンツ提供システムにおいては、コンテンツ要求がセルラ電話３３、セルラ電話３４から送信されたものである場合には、セッション管理ブロック３５ではコンテンツ要求に適合するアダプタ（ｉ）からキャリア情報、および機種識別情報を読取り、固有の識別情報を生成し、データベース３７に含まれるユーザ情報、ステータス情報を用いるStatic_IDを使用するセッション管理を実行させる。
【０１０３】
固有の識別情報には、本発明の第３の実施の形態においてはキャリアの種類、液晶ディスプレイの大きさ、表示可能な色数、液晶がモノクロか否かといったセルラ電話の規格、およびその規格に適合するコンテンツの格納されるアドレス情報などが含まれている。また、上述したキャリア種別、モデル情報リストといったセルラ電話の固有の情報を含んだデータベース３９が示されている。
【０１０４】
また、図３０に示されるように、ＥＣサーバ３１は、本発明の第３の実施の形態においてはキャリアの種別、およびセルラ電話３３，３４の規格ごとにコンテンツを格納するデータベース３８を、上述した識別情報を使用して参照させ、セルラ電話３３，３４に適合する規格のコンテンツを、セルラ電話３３，３４およびコンピュータ３２など、コンテンツ要求を行ったユーザ端末の種類によらず提供することができる構成とされている。
【０１０５】
図３１（ａ）は、図３０において説明したデータベース３８の構成を示した図である。データベース３８は、コンテンツＣ１、コンテンツＣ２、コンテンツＣ３といった複数の種類のコンテンツを含んで構成されている。このデータベース３８に記憶された各コンテンツＣ１〜Ｃ３は、上述したコンピュータ３２およびセルラ電話３３、３４からのコンテンツ要求があった場合に、各ユーザ端末に対して適合するフォーマットで構築されている。例えば、本発明においてはコンテンツＣ１は、キャリア１のカラー表示対応の機種のためにフォーマットされたコンテンツとされており、コンテンツＣ２は、キャリア２のカラー表示対応の機種のためにフォーマットされたコンテンツとされており、コンテンツＣ３は、キャリア１のモノクロ機種のためにフォーマットされたコンテンツとされている。この他、本発明においてはコンピュータ用のフォーマットとされたコンテンツも含まれている。
【０１０６】
本発明において使用されるデータベース３８は、図３１に示した以外にも、キャリアの種類、セルラ電話３３、３４が要求するフォーマットの種類に応じて、いくつでも用いることができる。また、本発明においては、データベース３８は、キャリアおよびコンテンツのフォーマットごとに複数構築するのではなく、コンテンツのフォーマットごとに、構成することができる。
【０１０７】
図３１（ｂ）には、コンテンツのフォーマットごとにデータベース３８を構成した場合の実施の形態を示す。図３１に示したデータベース３８は、セルラ電話３３、３４およびコンピュータ３２のためのフォーマットＦ１、Ｆ２、Ｆ３．．．などに対応してそれぞれコンテンツＦ１、コンテンツＦ２、コンテンツＦ３として構成されている。図３１（ｂ）に示したデータベース３８の構成を用いることにより、キャリアが異なるだけで、提供しなければならないコンテンツのフォーマットは同一である場合に、キャリアが異なるだけで同一のフォーマットを有するコンテンツを記憶させる必要がなくなるので、記憶容量を削減でき、さらにはコンテンツの提供をより高速に実行させることが可能となる。
【０１０８】
再度図３０を参照して本発明の第３の実施の形態について説明すると、本発明のＥＣサーバ３１には、さらにセルラ電話の性能・規格が記憶されたデータベース３９が含まれて構成されていて、このデータベース３９は、モデル情報リスト３９ａ、機種・性能マップ３９ｂ、性能・規格マップ３９ｃを含んで構成されている。
【０１０９】
図３２には、本発明において使用されるモデル情報リスト３９ａ、機種・性能マップ３９ｂ、性能・規格マップ３９ｃのデータ構成を示す。図３２（ａ）が、モデル情報リストであり、図３２（ｂ）が機種・性能マップ３６ｂであり、図３２（ｃ）が性能・規格マップ３９ｃを示した図である。なお、図３２（ａ）において示されるモデル情報リストにおける「デフォルト」とは、そのキャリアが設定するデフォルトの機種識別情報を使用することを意味する。また、上述したモデル情報リストには、未知の機種からのアクセスがあった場合には、リストに追加できるように構成されている。なお、図３２（ｂ）において示されている「ストア・キー」とは、ＥＣサーバ３１が複数のストア、すなわち店舗が存在する場合に各ストアごとにモデルの性能・規格を設定することができるようにするために設けられている。本発明のＥＣサーバ３１が複数のストアを含んだ「モール」として構成されていない場合には、「ストア・キー」データ・フィールドは必要ではないし、図３２（ｂ）に示した以外のデータ・フィールドであっても必要に応じて追加して用いることができる。
【０１１０】
本発明の第３の実施の形態においては、ＥＣサーバ３１のセッション管理ブロック３５においてアダプタ（ｉ）がコンテンツ要求から読取ったキャリア情報および機種情報を使用して、セルラ電話に固有の識別情報を作成し、この識別情報を使用してデータベース３８を参照してユーザへと適切なコンテンツを提供する。以下、本発明の第３の実施の形態において、セッション管理ブロック３５が識別情報を作成するプロセスについて説明を行う。
【０１１１】
図３３は、セッション管理ブロック３５においてユーザが要求するコンテンツ要求に対応するためのメソッドを提供するまでのプロセスのフローチャートである。図３５では、ステップ１００１において、例えば機種名ＸＸＸ００１の端末がＵＲＬ
“http://hostname/command/FileView/store/index.htm”
にアクセスするためにコンテンツ要求を送信したものとして説明する。ステップ１００２においては、ネットワークを介してこのコンテンツ要求をＥＣサーバ３１が受信すると、セッション管理ブロック３５は、アダプタ・マネージャ２９を起動して、アダプタ（ｉ）を順次指定する。アダプタ（１）は、要求を行った機種名×××００１のセルラ電話のコンテンツ要求に適合するか否可を判断する。アダプタ（ｉ）が、コンテンツ要求を処理できる場合には、アダプタ（ｉ）は、コンテンツ要求を解析して、識別子Static_IDと、例えばコンテンツ要求のヘッダに記載された機種名×××００１を取得する。アダプタ（ｉ）が規定されると、それに対応したキャリアが特定される。図３３に示す実施の形態においてはこのアダプタ（ｉ）を例えばキャリア１に対するアダプタであるものとする。
【０１１２】
ついで、ステップ１００３において、決定されたモデル・データからセルラ電話の液晶ディスプレイの解像度、色数、表示可能な文書形式、コンテンツが保管されているディレクトリといった変数が必要に応じて読取られる。
【０１１３】
ステップ１００４においては、コンテンツ提供ブロックに含まれたファイル処理ソフトウエアFileViewのコマンドが起動されて、ファイル処理ソフトウエアにおけるＥＣサーバ３１のドキュメント・ルートを通して、セルラ電話のキャリア１のためのコンテンツが保管されたディレクトリである“carrier1/store/index.html”の場所にあるコンテンツを参照する。
【０１１４】
ステップ１００５では、選択されたコンテンツがセルラ電話に送信され、セルラ電話のブラウザ・ソフトウエアは、送信されたコンテンツを液晶ディスプレイに表示させる。この際、セルラ電話は、要求を行ったＨＴＴＰサーバのドキュメント・ルートから見て、“store/index.htm”の位置にあるファイルが送信されたものとして判断する。図３３に示したコンテンツ提供のプロセスは、キャリアごとに所定のフォーマットのコンテンツを保管するディレクトリを設ける図３１（ａ）に示した実施の形態についてのフローチャートである。しかしながら、本発明においては、図３１（ａ）に示したように、キャリアの種類ごとにコンテンツを保管するのではなく、フォーマットごとにコンテンツを保管して、キャリアにかかわらず、同一のファイル・フォーマットのコンテンツを供給できるようにしておくこともできる。
【０１１５】
図３４は、セッション管理ブロックにおいて固有の識別情報を作成するプロセスを示したフローチャートである。図３４に示したプロセスにおいては、ステップ１１０１において、例えば、model=(adapterType, K1)としてキャリア／機種情報データを作成する。この場合、コンテンツ要求を処理できたアダプタの変数と、所定の部分に記述された機種名を使用して機種識別情報データmodelが作成される。
【０１１６】
ついで、ステップ１１０２において上述したキャリア／機種情報データmodelを使用して、ＥＣサーバ３１に記憶されたデータベース３９に記憶されたセルラ電話のモデル情報リストを検索し、モデル・データmodel_clientを作成する。モデル・データmodel_clientは、作成されたキャリア／機種情報データmodelから図３２に示したモデル情報リスト３９ａを読取って以下のフォーマットとして作成される。
【０１１７】
0003851080.tif 000006
【０１１８】
ステップ１１０２においてモデル・データmodel_clientを生成した後、ステップ１００３において該当するセルラ電話の性能・規格に関する性能キーを変数“specRef”に読取る。セルラ電話の性能・規格に関する性能キーは、ＥＣサーバ３１のデータベース３９ｂにおいて、図３２（ｂ）に示されるフォーマットとして記憶されている。セルラ電話の性能・規格に関する性能キーの読取りは、図３２（ａ）に示したモデル情報リストの機種キーを参照して行なわれる。具体的には、セルラ電話の性能・規格に関する変数“specId”には、例えばキャリア１の機種Ｋ２から送信されたコンテンツ要求の場合には、“specId = 101”が読取られることになる。また、機種ごとのマップを用いることができない場合には、デフォルト機種の機種キー、すなわち、図３２（ｂ）における機種キー１を参照して変数“specId”へとデフォルト機種の情報が読取られるようにされている。
【０１１９】
ついで、ステップ１１０４においては、変数“specId”を使用して、図３２（ｃ）に示した性能・規格マップ３６ｃを参照し、セルラ電話の性能・規格を変数“spec”として特定する。
【０１２０】
図３５は、アダプタからモデル・データ作成した時点から固有の識別情報である変数“spec”を生成するまでの図３４に示した参照プロセスと、参照に対応して生成される各データとを対応させて示した図である。アダプタにより読取られた機種名は、キャリアに対応させられて、図３４および図３５に示されるような固有の識別情報とされる。
【０１２１】
例えば、“model = (carrier1, K1)”としてキャリア／機種情報データが作成された場合には、図３５に示されるように、モデル情報リスト３９ａからモデル・データmodel_clientが、“model_client = (2,‘carrier1’,‘K1’,‘FFFF’, ‘K1’)”として作成され、機種・性能データベース３９ｂにおいて性能キー「２」を参照して変数“specId = 101”が一義的に決定される。さらに“specId”を使用して性能・規格マップ３９ｃを参照して最終的にコンテンツ要求を送信したセルラ電話のキャリアおよび性能・規格とが、変数“spec”として特定される。この変数“spec”は、例えば“spec = (101, 100, 80, 4. 1, ...., /carrier1)”として生成され、セルラ電話に固有の識別情報として用いられる。また、性能・規格マップ３６ｃには、さらにコンテンツ要求を行ったセルラ電話の性能・規格に適合するフォーマットで作成されたコンテンツの保管された保管場所の情報が含まれていて、コンテンツを提供するためのコマンドに対して、変数“spec”を読取らせることによりセルラ電話に対して適合するコンテンツを確実に提供することが可能とされている。
【０１２２】
図３６は、図３３のステップ１００３における変数“spec”の読取りを行うための擬似コードを示した図である。図３６に示した擬似コードにおいては、変数“spec”を性能・規格マップ３９ｃから読込ませて生成する。性能・規格マップ３９ｃからは、セルラ電話の液晶ディスプレイの解像度(LCD_WIDTH, LCD_HEIGHT)、色数（LCD COLORS）、表示可能な文書形式(DOC_FORMAT)、コンテンツが保管されているディレクトリ名(CONTENT_DIR)といった変数が必要に応じて読取られて性能・規格が変数“DeviceSpec”としてセットされる。変数“DeviceSpec”が読込まれると、ＥＣサーバ３１は、要求されたコンテンツをセルラ電話の種類に応じて取得してユーザへと適切に表示が行われるコンテンツを送信する。その他、図３６では、ユーザが要求したメソッドに対応するためのコードが必要に応じて追加されている。
【０１２３】
図３７は、図３３のステップ１００４およびステップ１００５におけるファイル処理ソフトウエア、たとえばFileViewのコマンドにおいて、コンテンツの保管されたディレクトリを検索して要求されたコンテンツを特定し、セルラ電話のブラウザ・ソフトウエアへと送信するための擬似コードを示した図である。本発明においては、上述したようにコンテンツとしては、（１）静的コンテンツ、（２）NetDataや、JSPといったサーバ・サイドで処理されるテンプレートによって実現される動的コンテンツ、および（３）上述したDeviceSpecの情報を利用してプログラムによりコンテンツを作成し、データベースの変更を伴うビジネス・ロジックの実行結果などのコンテンツをセルラ電話に送信することなどが可能とされている。このうち、（３）のビジネス・ロジックの実行結果は、コンテンツの実行の結果作成される新たなコンテンツが静的または動的コンテンツとしてブラウザ・ソフトウエアに表示される。このため図３７においては、動的コンテンツおよび静的コンテンツをセルラ電話に提供するプロセスについての擬似コードの説明を行う。
【０１２４】
図３７においては、セルラ電話からのＵＲＬリクエストは、
“http://hostname/commerce/command.FileView/hml”
として指定されているものとし、静的コンテンツの提供を行うために用いられる。また、スーパークラスであるCommandクラスは、ユーザとの対話に必要な処理がすでに定義されているものとし、コマンドを切り換えて表示させる実行ファイルのみを擬似コードとして説明する。
【０１２５】
図３７に示されるように、静的コンテンツの提供を行うための擬似コードは、FileViewの拡張コマンドとして実行され、“public boolean execute(HttpRequest req)”において、まず“String path = req.getpathInfo()”により要求されたドキュメントのパスを取り出す。ついで、“DeviceSpec spec = Server.getDeviceSpec();”において、変数“spec”から端末の性能・規格を取得する。“if (spec !=null)”において変数“spec”がnullでない場合には、所定の規格に適合したコンテンツを提供できるように、“path = spec.getContentDirectry() +“/”path;”でパスを変換する。ついで“req.replacepathinfo(path);”においてコンテンツ要求に対応するようにパスを書き換える。“if (spec !=null)”がfalseの場合には、コンピュータ３２からのコンテンツ要求であるため、擬似コードにおいては何も処理を行わない。書き換えられたパスにより、適切なコンテンツを取得したＥＣサーバ３１は、“sendObject(req)”においてセルラ電話にコンテンツを送信する。コンテンツを受信したセルラ電話のブラウザ・ソフトウエアは、受信したコンテンツを良好な状態で表示させることが可能となる。
【０１２６】
図３８は、例えばテンプレートを用いた処理が行われる動的コンテンツを切換えて、セルラ電話に送信を行うための擬似コードを示した図である。図３８では、動的コンテンツの処理についてテンプレートをマクロファイルを用いて処理する場合を例として説明する。セルラ電話から、マクロを用いてテンプレートを処理するためには、マクロファイル処理ソフトウエア、例えばMacroViewといったソフトウエアを用いることができる。例えばMacroViewを用いて、“index.d2w”というテンプレートを処理する要求を行う場合の要求は、例えば、
“http://hostname/commerce/command/MacroView/sample/index.d2w”として記述することができる。この要求は、MacroViewの拡張コマンドとして実行され、まず、“public boolean execute(HttpRequest req)”のルーチンにおいて、“String path = req.getPathinfo();”において、コンテンツ要求に対するパスを取得する。上述したhttp要求の場合には、パスは、
“commerce/command/MacroView/sample/index.d2w”
となる。ついで、“DeviceSpec spec = Server.getDeviceSpec();”においてＥＣサーバ３１がセルラ電話の性能・規格を取得する。“if (spec !=null)”において、変数“spec”がnullでない場合には、セルラ電話からのコンテンツ要求なので、“macro_file = spec/getContentDirectry()“/” macro_file;”セルラ電話の性能・規格に適合するコンテンツが保管されているディレクトリへとパスを変換する。“if (spec !=null)”がfalseの場合には、要求がセルラ電話からではなく、コンピュータ３２からの要求なので、図３７において説明するプロセスにおいてはパスの変更を行わず、コンピュータ用のコンテンツが保管されているディレクトリへとパスを設定する。
【０１２７】
ついで、“HttpDoc document = null;”においてセルラ電話の性能・規格に関する情報を要求に取込ませ、テンプレートから“DeviceSpec”を参照できるようにする。このための擬似コードは、
0003851080.tif 000007
とすることができる。
【０１２８】
さらに、図３８に示された擬似コードにおいては、テンプレートを処理してドキュメントの作成を行う。図３８に示した擬似コードにおいては、要求されたファイルがNetData、またはJSP、またはそれ以外のマクロ言語による要求であるかの判断が行われ、ドキュメントがそれぞれ変更、または作成されることになる。その後、図３８に示した擬似コードは“sendDocument(doc)”においてドキュメントをセルラ電話へと送信して、処理を終了する。
【０１２９】
図３９は、本発明の第３の実施の形態においてセルラ電話、コンピュータ３２といった端末から、コンテンツの要求がなされた場合に、コンテンツの提供が行われるまでを示したフローチャートである。図３９に示したコンテンツ提供は、ステップ１２０１においてセルラ電話からのコンテンツ要求をＥＣサーバ３１が受信する。このコンテンツ要求を受信したＥＣサーバ３１は、ステップ１２０２に示すように、セッション管理ブロック（PvCTransiInit）において、アダプタ・マネージャ２０およびアダプタ（ｉ）などにより、コンテンツ要求からセルラ電話の属するキャリアおよび機種名を読取る。このようにして読取られたキャリア、機種名などから生成されて、固有の識別情報である“spec”、ステップ１２０３において、コンテンツ提供ブロック（PvCExecuteMacro）へと渡され、コンテンツ提供が実行される。セッション管理ブロックから、コンテンツ提供ブロックへと変数“spec”が渡されることになり、セルラ電話の性能・規格に適合したコンテンツの提供が可能となる。
【０１３０】
さらに、コンテンツ提供ブロックにおける処理をフローチャートにおいて説明すると、コンテンツ提供ブロックでは、ステップ１２０３において‘ＭａｃｒｏＰａｔｈ’＝‘ｓａｍｐｌｅ．ｄｗ２’というコンテンツが要求されていることをコンテンツ要求から読取る。ついで、ステップ１２０４において、変数“spec”が“null”か否かの判断を行い、変数“spec”が“null”である場合（ｙｅｓ）には、コンピュータからのコンテンツ要求のなのでステップ１２０６へと分岐して、コンピュータに対してコンテンツを提供するため、従来の方法に従ってMacroPathのパス名のマクロを処理する。
【０１３１】
しかしながら、ステップ１２０４において、変数“spec”が“null”でない場合には（ｎｏ）、コンテンツ要求がセルラ電話からのものなので、変数“spec”に含まれる情報を読取って、ステップ１２０５においてパスを変更し、所定のディレクトリに保管されたコンテンツをセルラ電話に対して送信する。本発明の第３の実施の形態によれば、異なったキャリアに属するセルラ電話、コンピュータといったユーザ端末から送信されたコンテンツ要求に対してユーザ端末の規格に適合する良好なコンテンツを提供することが可能となる。
【０１３２】
以下、本発明のコンテンツ提供システムにより、キャリア２、キャリア１に属するセルラ電話へと、コンテンツが提供される場合の液晶ディスプレイに表示される画面表示を、コンテンツとして商品購買を行う情報を送受信する場合を例として用い、さらに説明する。図４０は、キャリア２に属するセルラ電話４０が、本発明の第３の実施の形態のコンテンツ提供システムのＥＣサーバ３１にアクセスして、商品を購入する場合に表示される表示画面の一例を示した図である。本発明の第３の実施の形態においては、コンテンツは、どのようなものであってもコンテンツ要求を行ったセルラ電話に対して適合するフォーマットで送信されるので、セルラ電話４０のユーザは常に良好な画面表示を受け取ることが可能となる。
【０１３３】
図４１は、ユーザが本発明のコンテンツ提供システムのＥＣサーバ３１に対してアクセスした場合に表示される表示画面を示した図である。図４１に示された表示画面では、ユーザが商品購買を行うために必要なメニューが示されており、ＥＣサーバ３１に対して登録を行っていないユーザに対しては、登録を行うことができるようにされている。以下、本発明のコンテンツ提供システムに対して登録を行っていないユーザが本発明のコンテンツ提供システムを使用して、商品を購入するために登録する操作について説明する。
【０１３４】
図４２は、図４１において示した表示画面においてユーザが「２＞登録」を選択した場合に表示される表示画面である。図４２に示した画面表示において「登録」を選択することにより、図４３に示される登録画面がユーザに表示される。登録に際しては、まずログオンするために必要なログオンＩＤ、およびパスワードの入力を要求する。このログオンＩＤおよびパスワードにより、本発明のコンテンツ提供システムにおけるアクセス権原が設定される。図４３に示された表示画面では、入力されたパスワードを確認するために再度パスワードの入力を求めるようにされている。パスワードが確認されると、図４４に示した登録画面が表示される。
【０１３５】
図４４に表示された画面表示では、パスワードを必要に応じてリセットするため、ユーザの身分を入力の要求が行われる。図４４において示された画面表示においては、姓、名の入力が要求される。さらに図４５に示した表示画面では、身分証明を確実に行うために、郵便番号、国名、住所といった情報の入力が要求される。さらに、図４６に示す画面表示が行われ、ように身分証明と共に、販売の促進を行うための情報を電話やｅ−ｍａｉｌといった手段により送付することができるように、電話番号、ｅ−ｍａｉｌアドレスの入力が要求される。また、ユーザがｅ−ｍａｉｌによる情報の提供を希望するか、希望しないかの入力が行うことができるようにされている。
【０１３６】
図４７は、ユーザによる入力を確認するための画面表示を示した図である。図４７（ａ）、（ｂ）においては、ユーザにより入力された情報が正確か否かの確認が行われ、入力が正確な場合にはユーザは「登録」を選択することにより、登録手順が終了し、ユーザには、図４８に示される登録終了画面が示されることになる。さらに図４８に示された登録画面には、続けて登録を行うか否かの表示がなされ、ユーザが続けてショッピングを行うことを希望する場合には、「ショッピングを続ける」を選択することにより、商品購買を行う画面が表示される。
【０１３７】
図４９は、図４１においてユーザが「１＞ログオン、ログオフ」を選択した場合に表示される表示画面を示した図である。ログオン画面においては、電話番号、機種名といった端末情報の入力の他、ＩＤの検索およびパスワードのリセットといった操作ができるようにされている。本発明において、端末情報が自動的にコンテンツ要求に含められている場合には、機種情報の入力は必ずしも必要ではない。ユーザが必要な情報の入力を行った後、「ログオン」を選択することにより、図５０に示される「ログオンＩＤ」の入力画面及びパスワード入力画面が表示される。ユーザが「ログオンＩＤ」を入力した後、さらにパスワードの入力が求められ、ユーザの認証が行われるようにされている。ユーザは要求される情報の入力を行った後、「送信」を選択することにより、本発明のコンテンツ提供システムへとアクセスして、商品購買といったサービスを受けることができる。
【０１３８】
図５１には、本発明においてログオンが正規に行われた場合に表示される表示画面を示した図である。ログオン操作によりアクセスが認証されると、本発明のコンテンツ提供システムにおいては例えば、図５１に示す画面表示が行われ、ユーザに対して正常にログオンし、サービスの提供を受けることができることが通知される。図５２には、ユーザが商品としてドレス・パンツを購入したことを示した「買い物カゴ」画面が示されている。図５２に示された「買い物カゴ」画面においては、「ＹＹＹＹＹＹＪＪＪＪＪＪ」であるユーザが、ドレスパンツを、価格４，９００円で購入したことが表示されている。なお、商品は、図４１において「４＞カタログ」を選択することにより、説明、および画像イメージとして送信され、ユーザは希望する商品を良好に表示される画像イメージを参照しながら選択することができる。
【０１３９】
図５３は、図５２に示した画面で購入を確認した後、ユーザに提示される画面を示した図である。図５３に示された画面表示においてはさらにショッピングを続けることを希望するか、商品の購入を終了するべく、チェックアウトするか、または再度別の画面に戻るべく、選択することができるようにされている。図５４は、図５３において、ユーザが「チェックアウトする」を選択した場合に表示される表示画面を示した図である。図５４に示された画面表示においては、ユーザの確認と、商品の送付先についての情報の確認が要求される。図５４においては、商品の送付先がユーザの登録住所とされているのが示されていて、注文を行ったユーザに送付されることが示されている。
【０１４０】
しかしながら本発明においては、図５４に示した表示画面において、送付先を商品購入を行ったユーザ以外の宛先とするべく、送付先がマニュアルで入力することができるようにされていてもよい。この場合には、本発明のコンテンツ提供システムは、商品購買システムばかりではなく、コンテンツまたは商品贈与を行うためのシステムとしても使用することができる。
【０１４１】
図５５は、最終的にユーザに対してショッピングを行ったことを確認するための表示画面を示した図である。図５５に示された表示画面においては、「オーダの確認」として、金額、税、配送のために必要な配送料、および合計金額が表示されていて、金額の最終的な確認ができるようになっている。さらにユーザが詳細情報の提供を閲覧する場合には、図５５に示した表示画面の下側に設けられた「詳細情報」のフィールドを選択することにより、詳細情報を閲覧することが可能とされている。
【０１４２】
図５６は、ユーザが詳細情報の閲覧を希望した場合に表示される詳細情報を示した図である。詳細情報には、商品送付の宛先、購入したアイテムの種類、数量、およびそのアイテムの単価が表示されている。図５６に表示された詳細情報にもとづいて購買を確認したユーザは、「オーダー」を選択することにより、商品を購買するための要求を、ＥＣサーバ３１へと送信することができる
【０１４３】
図５７は、オーダーを行った後にユーザが商品のオーダについての確認を行うための連絡先を表示した画面である。図５７においては、商品のオーダーの確認を行うための連絡先が示されていて、商品を購買したユーザは、商品についての問合わせを電話により確認することが可能とされている。また、本発明においては電話番号以外にも、ｅ−ｍａｉｌといったアドレスを表示しておき、商品についての問合わせを、ｅ−ｍａｉｌといった方法により確認することができるようにされていても良い。
【０１４４】
図５８は、注文した商品の支払い方法を選択するための表示画面を示す。図５８（ａ）に示されるようにユーザには、配送先、小計、税、といった支払い情報が表示される。さらにユーザが「ＯＫ」を選択することにより、図５８（ｂ）に示される画面が表示された合計金額と共に、オンライン決済、またはオフライン決済を選択することが可能とされている。本発明において使用するオンライン決済とは、例えば、セルラ電話のキャリアを通して通話料の請求と同時に代金を代行徴収して、ＥＣサーバ３１の管理者に支払いを行うことなどをいう。また、オフライン決済とは、商品またはコンテンツの受け取りと同時に振込用紙が送付され、銀行振込などにより代金を支払うことなどをいう。
【０１４５】
例えばユーザは、図５８（ｂ）に示される画面において「オフライン決済」を選択すると、図５８（ｂ）の下側に示すようにオフライン決済を選択したことが表示され、ユーザに支払方法が提示される。この商品購買プロセスにおいては、ユーザがＥＣサーバ３１を通して提供を受けるカタログといった画像イメージ、テキストなどは、ユーザが要求を行ったセルラ電話に適合するフォーマットで常に送付されるので、ユーザが違和感のないコンテンツをＥＣサーバ３１から提供されることになる。
【０１４６】
図５９は、本発明のコンテンツ提供システムにより商品購買を行う場合に、キャリア１に属するセルラ電話から商品購買要求が行われた場合の画面表示を示した図である。図５９においては、ユーザは、すでに登録を行っていて、ログオンＩＤ、パスワードの入力を行って、商品カタログを閲覧する場合の画面表示である。図５９においては、ユーザはカタログ中で[衣類]を選択し、[衣類]に登録されている表品がリストアップされている。ユーザは表示されている表品の中から、例えば「ボトム」を選択することにより、図６０に示される画面表示を得る。
【０１４７】
ユーザは、図６０に示された[パンツ]として表示されているものの中から、「ドレスパンツ」を選択することができる。ユーザが「ドレスパンツ」を選択すると、図６１に示されるように「ドレスパンツ」を表示した画像イメージがＥＣサーバ３１からセルラ電話へと送信される。この画像イメージを参照しながらユーザは、「ドレスパンツ」を選択し、購入を行うことができる。この場合においてもキャリアの種類にかかわらず、またセルラ電話の性能・規格に適合したコンテンツとしてカタログが提供されるので、ユーザは常に良好なカタログ画像を参照して商品の購入を行うことができる。
【０１４８】
これまで、本発明を図面に示した実施例により説明してきたが本発明は実施例に限定されるものではなく、種々の別の実施形態を採用することが可能である。
【０１４９】
例えば、これまで本発明を商品購買システムについて適用した実施の形態につき、図面を用いて詳細に説明してきたが、本発明は、上述した商品購買システムばかりではなく、ディジタル的に構成されたコンテンツを送受信するいかなるコンテンツ提供システムについて適用することができる。さらに、本発明のコンテンツ提供方法は、例えばオブジェクト指向の従来知られたいかなるプログラミング言語、例えばＣ言語、ＪＡＶＡといった言語により記述することができ、このようにして記述されたプログラムは、例えば、フロッピーディスク、ハードディスク、ＣＤ−ＲＯＭ、ＤＶＤ、光磁気ディスク、磁気テープといったコンピュータ可読な記録媒体に記録することができる。
【図面の簡単な説明】
【図１】ネットワークを介した商品購買システムにおける従来のセッション管理を示した図。
【図２】図１に示したセッション管理を示したブロック図。
【図３】ネットワークを介した商品購買システムのコマンド実行を示したフローチャート。
【図４】本発明の商品購買システムの概略的なブロック図。
【図５】本発明の商品購買システムの詳細なブロック図。
【図６】本発明の商品購買システムを用いてセルラ電話が、ＥＣサーバにアクセスして
【図７】本発明のＥＣサーバに含まれるデータベースに記憶されたユーザ情報のルックアップテーブルを示した図。
【図８】本発明のＥＣサーバにおけるサーバ・プロセスを示した図。
【図９】本発明のＥＣサーバにおいて実行される識別子判断してセッション管理を行うための擬似コード。
【図１０】本発明の商品購買システムの流れを示した図。
【図１１】本発明において用いることができるセルラ電話の一例を示した図。
【図１２】本発明の商品購買システムにより提供される画面表示の実施の形態を示した図。
【図１３】本発明の商品購買システムにより提供される画面表示の別の実施の形態を示した図。
【図１４】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図１５】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図１６】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図１７】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図１８】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図１９】本発明の商品購買システムにより提供される画面表示のさらに別の実施の形態を示した図。
【図２０】本発明の第２の実施の形態のコンテンツ提供システムを示した概略図。
【図２１】本発明のコンテンツ提供システムに用いるＥＣサーバの構成を示した概略図。
【図２２】コンテンツ要求の構成を示した図。
【図２３】コンテンツ要求の構成を示した図。
【図２４】本発明におけるアダプタと、アダプタ。マネージャによるアダプタの指定を示した図。
【図２５】本発明におけるセッション管理ブロックにおける処理を示したフローチャート。
【図２６】本発明におけるアダプタ・ソフトウエアの擬似コード。
【図２７】本発明におけるセッション管理ブロックからコンテンツ提供ブロックまでの処理の流れを示した図。
【図２８】本発明におけるＥＣサーバの処理の流れを示した擬似コード。
【図２９】本発明におけるＥＣサーバの処理の流れを示した擬似コード。
【図３０】本発明の第３の実施の形態のコンテンツ提供システムのＥＣサーバ構成の概略図。
【図３１】コンテンツを含むデータベースのデータ構成を示した図。
【図３２】本発明において使用する機種に関するデータを示した図。
【図３３】本発明の第３の実施の形態におけるコンテンツ提供方法を示した図。
【図３４】本発明の第３の実施の形態における固有の識別情報を生成するためのフローチャート。
【図３５】本発明の第３の実施の形態における固有の識別情報を生成するための参照プロセスを示した図。
【図３６】本発明における固有の識別情報を取得するために擬似コードを示した図。
【図３７】セルラ電話に対して静的コンテンツ提供を行う場合の擬似コード。
【図３８】動的コンテンツをセルラ電話に送信するための擬似コード。
【図３９】コンテンツ要求から、コンテンツ提供までのブロック間における処理を示したフローチャート。
【図４０】本発明において使用されるセルラ電話。
【図４１】セルラ電話に表示される表示画面を示した図。
【図４２】セルラ電話に表示される表示画面を示した図。
【図４３】セルラ電話に表示される表示画面を示した図。
【図４４】セルラ電話に表示される表示画面を示した図。
【図４５】セルラ電話に表示される表示画面を示した図。
【図４６】セルラ電話に表示される表示画面を示した図。
【図４７】セルラ電話に表示される表示画面を示した図。
【図４８】セルラ電話に表示される表示画面を示した図。
【図４９】セルラ電話に表示される表示画面を示した図。
【図５０】セルラ電話に表示される表示画面を示した図。
【図５１】セルラ電話に表示される表示画面を示した図。
【図５２】セルラ電話に表示される表示画面を示した図。
【図５３】セルラ電話に表示される表示画面を示した図。
【図５４】セルラ電話に表示される表示画面を示した図。
【図５５】セルラ電話に表示される表示画面を示した図。
【図５６】セルラ電話に表示される表示画面を示した図。
【図５７】セルラ電話に表示される表示画面を示した図。
【図５８】セルラ電話に表示される表示画面を示した図。
【図５９】異なるキャリアに属するセルラ電話に表示される表示画面を示した図。
【図６０】異なるキャリアに属するセルラ電話に表示される表示画面を示した図。
【図６１】異なるキャリアに属するセルラ電話に表示される表示画面を示した図。
【符号の説明】
１…セルラ電話
２…ネットワーク
３…サーバ
４…ネットワーク
５…ゲートウエイ
６…ＥＣサーバ
７…コンピュータ
８…液晶ディスプレイ
９…プッシュボタン
１０…スクロールボタン
２０…セルラ電話
２１…セルラ電話用ネットワーク
２２…ネットワーク
２３…ＥＣサーバ
２４…セルラ電話
２５…コンピュータ
２６…データベース
２７…セッション管理ブロック
２８…アダプタ・リスト
２９…アダプタ・マネージャ
３０…データベース
３１…ＥＣサーバ
３２…コンピュータ
３３…セルラ電話
３４…セルラ電話
３５…セッション管理ブロック
３６…アダプタ・マネージャ
３７…データベース
３８…データベース
３９…データベース
４０…セルラ電話
【図１】
0003851080.tif 000008
【図２】
0003851080.tif 000009
【図３】
0003851080.tif 000010
【図４】
0003851080.tif 000011
【図５】
0003851080.tif 000012
【図６】
0003851080.tif 000013
【図７】
0003851080.tif 000014
【図８】
0003851080.tif 000015
【図９】
0003851080.tif 000016
【図１０】
0003851080.tif 000017
【図１１】
0003851080.tif 000018
【図１２】
0003851080.tif 000019
【図１３】
0003851080.tif 000020
【図１４】
0003851080.tif 000021
【図１５】
0003851080.tif 000022
【図１６】
0003851080.tif 000023
【図１７】
0003851080.tif 000024
【図１８】
0003851080.tif 000025
【図１９】
0003851080.tif 000026
【図２０】
0003851080.tif 000027
【図２１】
0003851080.tif 000028
【図２２】
0003851080.tif 000029
【図２３】
0003851080.tif 000030
【図２４】
0003851080.tif 000031
【図２５】
0003851080.tif 000032
【図２６】
0003851080.tif 000033
【図２７】
0003851080.tif 000034
【図２８】
0003851080.tif 000035
【図２９】
0003851080.tif 000036
【図３０】
0003851080.tif 000037
【図３１】
0003851080.tif 000038
【図３２】
0003851080.tif 000039
【図３３】
0003851080.tif 000040
【図３４】
0003851080.tif 000041
【図３５】
0003851080.tif 000042
【図３６】
0003851080.tif 000043
【図３７】
0003851080.tif 000044
【図３８】
0003851080.tif 000045
【図３９】
0003851080.tif 000046
【図４０】
0003851080.tif 000047
【図４１】
0003851080.tif 000048
【図４２】
0003851080.tif 000049
【図４３】
0003851080.tif 000050
【図４４】
0003851080.tif 000051
【図４５】
0003851080.tif 000052
【図４６】
0003851080.tif 000053
【図４７】
0003851080.tif 000054
【図４８】
0003851080.tif 000055
【図４９】
0003851080.tif 000056
【図５０】
0003851080.tif 000057
【図５１】
0003851080.tif 000058
【図５２】
0003851080.tif 000059
【図５３】
0003851080.tif 000060
【図５４】
0003851080.tif 000061
【図５５】
0003851080.tif 000062
【図５６】
0003851080.tif 000063
【図５７】
0003851080.tif 000064
【図５８】
0003851080.tif 000065
【図５９】
0003851080.tif 000066
【図６０】
0003851080.tif 000067
【図６１】
0003851080.tif 000068