(58)【調査した分野】(Int.Cl.,DB名)
前記転送手段は、前記受信手段で受信した情報が示す複数の転送方法に、画像処理装置に対する印刷指示が含まれていた場合には、印刷指示に対応する前記アダプタがプリンタドライバを用いて、当該情報が示す電子データを当該画像処理装置に転送することを特徴とする請求項1に記載の中継サーバ。
前記転送手段は、前記受信手段で受信した情報が示す複数の転送方法に、ファクシミリ装置に対するファックス指示が含まれていた場合、ファックス指示に対応する前記アダプタがファックスドライバを用いて、当該情報が示す複数の電子データがファクシミリとは異なる転送方法で結合済みであれば、当該異なる転送方法で結合済みの電子データを取得して当該ファクシミリ装置に転送し、当該情報が示す複数の電子データが当該異なる転送方法で結合済みでないなら、前記結合手段で結合した電子データを当該ファクシミリ装置に転送することを特徴とする請求項1または2に記載の中継サーバ。
電子データを転送する転送方法ごとに当該転送方法を実行可能なアダプタを記憶する記憶手段を備え、情報処理装置と通信可能に接続され、複数の転送方法で電子データを転送可能な中継サーバの制御方法であって、
前記中継サーバの画面生成手段が、前記転送方法ごとに、当該転送方法で転送する複数の電子データを選択可能な画面を生成する画面生成ステップと、
前記中継サーバの画面送信手段が、前記画面生成ステップで生成された画面を前記情報処理装置に送信する画面送信ステップと、
前記中継サーバの受信手段が、前記画面送信ステップで送信された画面においてユーザから選択された情報であって、前記転送方法ごとに選択された複数の電子データを示す情報を、前記情報処理装置から受信する受信ステップと、
前記中継サーバの結合手段が、前記受信ステップで受信した情報が示す複数の電子データであって、前記転送方法ごとに選択された複数の電子データを、当該転送方法ごとに結合する結合ステップと、
前記中継サーバの転送手段が、前記結合ステップで前記転送方法ごとに結合した電子データを、当該転送方法に対応する前記アダプタを用いて転送する転送ステップと
を備え、
前記画面生成ステップは、前記結合ステップで複数の電子データを結合する指示を受付可能な受付部を更に備える前記画面を生成し、
前記結合ステップは、前記受信ステップで受信した情報が示す複数の転送方法に、電子メールの送信指示が含まれていた場合、前記画面の受付部で複数の電子データを結合する指示を受け付けた場合には複数の電子データをそれぞれ所定のファイル形式に変換した上で結合し、前記画面の受付部で複数の電子データを結合する指示を受け付けていない場合には複数の電子データをそれぞれ所定のファイル形式に変換しないと共に当該複数の電子データを結合せず、
前記転送ステップは、前記受信ステップで受信した情報が示す複数の転送方法に、電子メールの送信指示が含まれていた場合、前記結合ステップで結合した所定のファイル形式の電子データ、または前記結合ステップで所定のファイル形式に変換せずかつ結合していない元のファイル形式のままの複数の電子データを1つの電子メールに添付して転送することを特徴とする中継サーバの制御方法。
電子データを転送する転送方法ごとに当該転送方法を実行可能なアダプタを記憶する記憶手段を備え、情報処理装置と通信可能に接続され、複数の転送方法で電子データを転送可能な中継サーバの制御方法を実行可能なプログラムであって、
前記中継サーバを、
前記転送方法ごとに、当該転送方法で転送する複数の電子データを選択可能な画面を生成する画面生成手段と、
前記画面生成手段で生成された画面を前記情報処理装置に送信する画面送信手段と、
前記画面送信手段で送信された画面においてユーザから選択された情報であって、前記転送方法ごとに選択された複数の電子データを示す情報を、前記情報処理装置から受信する受信手段と、
前記受信手段で受信した情報が示す複数の電子データであって、前記転送方法ごとに選択された複数の電子データを、当該転送方法ごとに結合する結合手段と、
前記結合手段で前記転送方法ごとに結合した電子データを、当該転送方法に対応する前記アダプタを用いて転送する転送手段
として機能させ、
前記画面生成手段は、前記結合手段で複数の電子データを結合する指示を受付可能な受付部を更に備える前記画面を生成し、
前記結合手段は、前記受信手段で受信した情報が示す複数の転送方法に、電子メールの送信指示が含まれていた場合、前記画面の受付部で複数の電子データを結合する指示を受け付けた場合には複数の電子データをそれぞれ所定のファイル形式に変換した上で結合し、前記画面の受付部で複数の電子データを結合する指示を受け付けていない場合には複数の電子データをそれぞれ所定のファイル形式に変換しないと共に当該複数の電子データを結合せず、
前記転送手段は、前記受信手段で受信した情報が示す複数の転送方法に、電子メールの送信指示が含まれていた場合、前記結合手段で結合した所定のファイル形式の電子データ、または前記結合手段で所定のファイル形式に変換せずかつ結合していない元のファイル形式のままの複数の電子データを1つの電子メールに添付して転送することを特徴とするプログラム。
【発明を実施するための形態】
【0012】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【0013】
図1は、本実施形態のネットワーク構成の一例を示す図である。1001、1002はプリンタ(画像処理装置)である。これらの装置は、プリント機能に加えて、ファクシミリ、スキャナなどの機能を持つ複合機であってもよい。1003,1004は、ファクシミリである。ファックス送信機能の他に機能を備えても良い。ファクシミリ1003および1004(ファクシミリ装置)は、それぞれ公衆回線1100を介して、図示されていない他の拠点のファクシミリと通信可能である。プリンタ1001、1002、ファクシミリ1003、1004は、それぞれネットワーク1006を介してClient PC200やServer300と相互に接続されている。
【0014】
Server300(情報送信装置、中継サーバ)は、複数の物理的なサーバ装置から構成されてもよいし、1台のサーバから構成されても良い。Server300には、
図3で示すサービスやアダプタがセットアップされている。これらのサービスやアダプタは、Server300内の1以上のCPUにより実行される。
【0015】
Client PC200(情報処理装置)は、例えばWebブラウザを用いてServer300と通信する。Client PC200は、Server300から提供されるGUIに関する情報を受信して、Client PC200のディスプレイ(
図2の表示部208)の上に表示する。1005は、ドキュメントサーバである。
【0016】
図2は、Client PC200、および、Server300のハード構成の一例を示す図である。
【0017】
図2はコンピュータ装置の一例であるClient PC200(又はServer300、又はドキュメントサーバ1005)を示している。
【0018】
まず、
図2のコンピュータ装置が、Client PC200であるとして説明する。
図2において、第1CPU201や、第2CPU202(省略可能)は、コンピュータ装置の各機能部の制御を司る。
【0019】
ROM203は、コンピュータ装置の各処理に関わるプログラムやデータを記憶する。ROM203は、書換え不可能である。RAM204は、コンピュータ装置の各処理に関わる一時的なデータを電気的に記憶する。RAM204は、書換え可能である。第1HDD205や、第2HDD206(省略可能)は、コンピュータ装置の各処理に関わるプログラムや、各種データなどを記憶する。
図2のコンピュータ装置では、本実施形態のプログラムを第1HDD205に格納している。このプログラムは、RAM204を一時保存領域として使用し、第1CPU201もしくは第2CPU202によって呼び出され実行される。
【0020】
ネットワークI/F(インタフェース)209は、
図1に示すネットワーク1006に接続し、他の外部装置との情報交換を行う。外部機器I/F(インタフェース)210は、外部記憶機器等との接続を制御する。上記の各機能部は装置内部のデータの流れを司るシステムバス211を介して接続される。また、
図2のコンピュータ装置がドキュメントサーバ1005である場合、第1HDD205や、第2HDD206にはドキュメントが格納されている。
【0021】
操作部207は、コンピュータ装置への指示入力を受け付ける。これは、キーボードやポインティングデバイスなどで構成される。表示部208は、コンピュータ装置の動作状況や、コンピュータ装置上で動作する各プログラムが出力する情報を表示する。
【0022】
図4のClient PC200における処理及び
図9のステップS604及びステップS605を実現するWebブラウザやその関連プログラムなどのプログラムが、第1HDDまたは第2HDDに記憶され、第1CPU201または第2CPU202のいずれか若しくは両方により、呼び出され実行される。さらに、表示部208には、後述する
図11で示すログインページや、
図12で示すドキュメント及び送信方法指定ページが表示される。
【0023】
次に、
図2のコンピュータ装置が、Client PC200とは別のServer300であるとして説明する。Server300に関して、Client PC200の説明と特に異なる部分を中心に、
図2を用いて説明する。
図4のServer300側の各処理、および、
図5乃至
図8の処理、および、
図9のServer300側の各処理を実現するプログラムをはじめとした、
図3に記載のプログラムモジュール群が、第1HDDまたは第2HDDに記憶され、第1CPU201または第2CPU202のいずれかにより呼び出され実行される。
【0024】
図3は、Server300にて実装される本実施形態のフレームワークの一例を示す図である。BPEL Engine301は、BPEL Processを実行するエンジンである。BPELとはBusiness Process Execution Languageの略である。1以上のBPEL Processは、XMLファイルとして記述される。BPELの設計ツールを使えば、設計者は、GUIドラッグ&ドロップでプロセスを定義できる。
【0025】
BPELは、業界標準化団体において策定されている。BPELでは、複数のプロセス(例えば、業務タスク)をワークフローのように定義できる。例えば、設計者は、複数のWeb Serviceを呼び出すプロセスを、設計ツールを使って定義できる。またBPEL Process自体がWeb Serviceとなっているので、BPEL Processを呼び出したいときは、他のWeb Serviceを呼び出すのと同様の手順で使うことができる。さらに1つのBPEL Processから他のBPEL Processを呼び出すということも可能である。本実施形態では、BPELを使って複数のアダプタ(実体は複数のWeb Service)を組み合わせたフローを定義できるようにしている。後述する311乃至318の各種アダプタは、それぞれがBPELを使って呼び出し可能なWeb Serviceであり、各種の実行制御手順などが、ワークフローとして、BPELにより定義される。
【0026】
Directory Service302は、ユーザ情報の管理、ユーザの認証を行う。Directory Service302内でユーザ情報が管理されていてもよいし、管理されていなくてもよい。Directory Service302でユーザ情報が管理されていない場合は、Directory Service302はActive Directoryなどの外部の認証サーバと連携し、外部認証サーバに対してユーザ情報の問い合わせやユーザ認証を行う。
【0027】
Content Management303は、文書、画像、動画などの電子ファイル(電子データ)を保存・管理する。この機能は同じサーバ上になくてもよい。
【0028】
Application Management304は、ユーザが作成した任意のアプリケーションの実行やインストール状況などを管理するエンジンである。
【0029】
Print Adapter311は、印刷を実行するアダプタである。Print Adapter311は、Web Serviceのインタフェースを使って実装されている。Print Adapter311が、呼び出されると、サーバ内にあらかじめインストールされているプリンタオブジェクトを呼び出して印刷を実行する。また、プリンタがダイレクトプリント機能に対応している場合は、指定されたIPアドレスに対して直接印刷データを送信することもできる。プリンタオブジェクトは、OSに対して登録されているオブジェクトで、1以上のプリンタドライバに対応する。プリンタオブジェクトが指定され、オブジェクトに対してデータが与えられた場合は、プリンタドライバが呼び出され、プリンタオブジェクトに対して渡されたデータが印刷データへと変換され、プリンタオブジェクトに対応するプリンタ1001又は1002に対して、プリンタドライバの通信プロトコルに基づいて、印刷データが送信される。
【0030】
FAX Adapter312は、FAX送信を実行するアダプタである。サーバ内にあらかじめインストールされているFAXオブジェクトを呼び出してFAX送信を実行する。FAXオブジェクトは、OSに対して登録されているオブジェクトで、1以上のファックスドライバに対応する。ファックスオブジェクトが指定され、そのファックスオブジェクトに対してデータとファックス番号が与えられた場合は、ファックスドライバが呼び出され、ファックスオブジェクトに対して渡されたデータがファックス送信用データへと変換される。そして、ファックスドライバに対応するファクシミリ1003に対して、ファックスドライバの通信プロトコルに基づいて、ファックス送信用データが送信される。データを受け取ったファクシミリ1003は、必要に応じて公衆回線1100を使って当該ファックス番号に対応するファックスデバイス、例えばファクシミリ1004に対してファックス送信用データを送信する。
【0031】
File Adapter313は、SMB、FTPなどのファイル送信プロトコルを使って、ネットワークを経由して与えられたデータ、例えば、ファイルを送信するアダプタである。
【0032】
E−Mail Adapter314は、SMTPなどのプロトコルを使って、与えられたデータ、例えばファイルをE−Mailを送信するアダプタである。
【0033】
PDF Adapter315は、与えられたPDFファイルの結合、分割を行うアダプタである。また、与えられたデータまたは処理済みのデータ対するパスワード付与、テキスト追加、地紋付与などの機能も持つ。
【0034】
Content Management Adapter316は、Content Management303 を制御するアダプタである。Content Management303から、指定されたファイルを取得したり、Content Management303に対して指定されたファイルを格納したりすることができる。
【0035】
Authentication Management Adapter317は、Directory Service302を制御するアダプタである。Directory Service302に対して認証要求を行うことができる。
【0036】
File Format Conversion Adapter318は、ファイルのフォーマットを変換するアダプタである。表計算、ドキュメントアプリケーションフォーマット、プレゼンテーションフォーマット、TIFF、JPG、ビットマップ、プレインテキスト、CIF、GIF、PNGなど各種フォーマットを相互に変換する機能を持たせても良い。
【0037】
GUI Application321は、GUIアプリケーションである。ユーザが任意に作成できる。本実施形態の種々のGUIを表示制御する機能を持つ。GUI Application321は、Application Management304によって管理・実行される。
【0038】
BPEL Process Application322は、ユーザが作成した任意のBPEL Processである。BPEL Engine301によって管理・実行される。
【0039】
図4は、Client PC200とServer300における認証処理等の一例を示す図である。Client PC200内のWebブラウザを介した、ユーザからのアクセスリクエストを検知すると、
図4の処理が開始する。
【0040】
ステップS100では、Client PC200は、Server300へアクセスし、アクセスリクエストを送信する。ステップS101では、Server300は、アクセスリクエストを受信し、ステップS102では、Server300内のGUI Application321は、
図11のログインページを表示するための情報をClient PC200へ送信する。ステップS103では、Client PC200は、ログインページを受信する。そして、ステップS104では、Client PC200は、
図11のログインページの画面を表示部208上に表示する。
【0041】
そして、ステップS105では、Client PC200は、ステップS104で表示されたログインページで、ユーザの認証情報等の入力と、
図11のログインボタンのユーザの入力を待つ。
【0042】
ステップS106では、Client PC200は、操作部207を介したユーザの
図11のログインボタンの押下を受信(取得)する。そして、ステップS107では、ステップS106におけるログインボタンの押下を検知すると、ステップS105で入力を受け付けたログイン情報(例えば、ユーザ名とパスワード、認証ドメインなど)をServer300に対して送信する。
【0043】
ステップS108では、Server300内のGUI Application321は、Client PC200からログイン情報を受信する。ステップS109では、GUI Application321は、Authentication Management Adapter317を呼び出して、受信したログイン情報を渡す。Authentication Management Adapter317は、ログイン情報が真正であることを確認されると、当該ログイン情報に対応するユーザのアクセス権情報を確認し、GUI Application321に対してContentsに設定されているアクセス権情報を通知する。
【0044】
ステップS110では、GUI Application321は、そのアクセス権情報に基づき、Content Management Adapter316に対してそのユーザがアクセス可能なファイルリストの取得を要求する。GUI Application321は、Content Management Adapter316から得た、そのユーザがアクセス可能なファイルのリストを示すファイルリストに基づき、
図12で示すページ(以降、リストページという場合がある。)を構成する(画面生成手段)。ファイルリストは、Server300のContent Management Adapter316が定期的にドキュメントサーバ1005等のドキュメントを格納する装置に対してアクセスし、各ドキュメントに対するユーザごとにアクセス権や保存場所を管理しているリストである。
【0045】
そして、ステップS111では、GUI Application321は、そのリストページ(表示画面)をClient PC200に対して送信する(画面送信手段)。
【0046】
ステップS112では、Client PC200は、Server300から送信されたリストページを受信する。そして、ステップS113では、Client PC200は、受信したリストページをClient PC200の表示部208へ表示する。そして、ステップS114では、Client PC200は、
図12に示す各種チェックボックスその他に関するユーザの入力を受け付け、ステップS115では、最終的に
図12のSendボタンの押下を待つ。
【0047】
図12はClient PC200の表示部208に表示されるリストページの一例を示す図(表示画面)である。1208列には、ユーザが送信を許可されているドキュメント名が表示されている。1209列には、ドキュメントのフォーマットが表示されている。これらの属性はドキュメントサーバ1005のデータベースや、Content Management Adapter316が収集した情報から取得されて表示される。1210列ではプリント、1211列ではファックス、1212列ではE−Mail、1213列ではファイルのネットワーク送信を、ドキュメントごとにチェックボックスで指定できるようになっている。例えば、
図12ではドキュメント名が「NDA」のドキュメントはファイルフォーマットがワードプロセッサアプリのファイル形式である「DOC」であり、プリントと同時にE−Mailにより、他へ転送されるように指定されている。また、この画面でもしユーザが、1つ又は複数のファイルに対して、プリント、ファックス、E−Mail、ファイル送信の全て又はその一部の複数の送信方法(転送方法)を指定しようと思えば任意に指定が可能である。
【0048】
1201乃至1207は、それぞれの転送方法ごとに、転送先に関する属性その他の設定ができるようになっている。例えば、1202は転送先のプリンタオブジェクト、すなわち、プリンタドライバとポートの組に対応し、複数のプリンタオブジェクトから1つのプリンタオブジェクトを選択可能である。1201も同様にファックスオブジェクトを指定できる。1203では、ファックスオブジェクトに呼び出させたいファックス番号を指定する。
【0049】
E−Mail送信に関しては、エリア1214では、E−Mailアドレスを指定できる。1204では、1212列でファイルを複数指定した場合、ファイルを結合して転送すべきか否かを指定できる。ファイルのネットワーク送信では、1206ではファイルの転送プロトコル例えば、FTPやSMBなどを指定でき、1207では、ファイルのパスやURIを指定できる。1205では、同様にファイルのネットワーク送信におけるファイルの結合の要否を指定できる。
【0050】
さて、
図12のSendボタンの押下を検知すると、ステップS116では、Client PC200は、ステップS115で入力された情報に基づきメッセージ情報を作成して、GUI Application321に対して当該メッセージ情報(例えば、
図13のような情報)を送信する。
【0051】
図13は、Client PC200からGUI Application321へ送信されるメッセージ情報の一例を示す図である。1301乃至1313は通信の管理に用いられる情報である。1314は、
図12の入力内容に応じて生成されている。すなわち、ドキュメント1,2,3,4、5はプリントするよう指示されている。また、ドキュメント1,2はE−Mailするよう指定されている。ここでは、ファックスやネットワークファイル送信は指定されていないためにそれらに関連する値が空になっているが、もちろん指定された場合は、それらが値として指定される。また、プリントに関しては、送信先のプリンタオブジェクトが指定されている。E−Mailに関しては、送信先のメールアドレスが指定されている。ステップS117では、GUI Application321は、ステップS116において送信されたメッセージ情報を受信する(受信手段)。
図5に説明を移し、ステップS200では、GUI Application321は、そのメッセージ情報に基づき、BPEL Processをコールする。
【0052】
尚、
図13の1314において、「EmailMerge」は、E−Mailの転送において、複数のファイルが指定された場合、これらを結合するか否かを示す。1204がチェックされている場合に、「1」が、チェックされていない場合に「空」の値が入る。また、同様に「FileMerge」に関しては、
図12の1205にチェックがされている場合に「1」の値が、チェックされていない場合に「空」の値が入ることになる。
【0053】
図5は、本実施形態の印刷処理の一例を示す図である。
図5のAは、
図4のAに対応する。BPEL Process Application322は、ステップS201で、GUI Application321からのリクエストを受信する。
図14A及び
図14Bは、GUI Application321からBPEL Process Application322へのリクエストの一例を示す図である。
図14Aと
図14Bは一続きの図である。
図12のような入力が、クライアントのブラウザのUIで行われた場合、これに基づき、
図13のデータがClient PC200で生成され、その
図13のデータがGUI Application 321へ送信される。そして、
図13のデータに基づき、
図14A及び
図14BのデータがGUI Application321により生成され、BPEL Process Application322に渡される。BPEL Process Application322は、
図14A及び
図14Bのデータを解釈して必要なアダプタを呼び出す。例えば、各アダプタが呼び出されると、各アダプタに対応したファックスドライバ、プリンタドライバ、E−Mail送信プログラム、ネットワークファイル送信アプリケーションが駆動され、データの送信処理が行なわれる。
【0054】
図14A及び
図14Bについて詳細に説明すると、「<docs></docs>」タグで囲まれた1401では、5つのドキュメントが指定されている。1つめはドキュメント名が、「NDA」、ドキュメントタイプが「DOC」つまり、ワードプロセッサアプリ形式のファイル、2つめのドキュメントはドキュメント名が、「NDA Supplement」、ドキュメントタイプが同じく「DOC」となっている。また、3つめのドキュメントは、ドキュメント名が「Enterprise Imaging」となっており、ドキュメントタイプは「PDF」となっている。さらに、4つ目のドキュメント名は、「MFP Embedded」となっており、ドキュメントタイプは「JPG」となっている。さらに、5番目のドキュメントは、「Price List」となっており、ドキュメントタイプは表計算アプリケーションのファイルフォーマットである「Sheet」となっている。「<sendDocs></sendDocs>」タグで囲まれているのは転送方法の一例を示している。ドキュメントの1、2,3,4,5をプリントせよ、つまり、プリンタなどへ転送せよという指定になっている。ここでは、ファックス指定されているドキュメントは無く、ドキュメント1と2は、E−Mailするよう指示されている。ファイルをネットワーク送信するよう指定されているドキュメントは無い。
【0055】
「<sendSettings></sendSettings>」タグでは、それぞれの送信方法において、送信設定を指定している。例えば、「<print></print>」タグでは、プリンタオブジェクト名を指定できる。「<fax></fax>」タグでは、ファックスオブジェクトを指定できる。
【0056】
「<address></address>」では、E−Mailのアドレスを指定できる。また、「<merge></merge>」タグでは、複数のファイルが「<sendDocs>」で指定されている場合、E−Mail送信指定されている複数のファイルの結合の要否を指定できる。「<file></file>」タグでは、ファイルの転送プロトコル(例えば、SMBやFTPなど)、ファイルのパス又はURIが指定できる。同様に、「<merge></merge>」タグでは、複数のファイルが「<sendDocs>」で指定されている場合、ネットワーク送信を指定されている複数のファイルの結合の要否を指定できる。尚、
図14A及び
図14Bのデータを以下、指定メッセージということもある。
【0057】
ステップS201に続いて、ステップS202では、BPEL Process Application322は、プリントを指示されたファイルを取得する。例えばこの処理は指定メッセージの解析、例えば
図14Aの1401、
図14Bの1402、1403のようなメッセージを解析することで行なわれる。以下の処理も同様である。
【0058】
更に、ステップS203では、BPEL Process Application322は、ステップS202にて指示されたファイルが1つ以上かどうかを判定する。つまり、指定されたファイルがあるか否かを判定することになる。指定されたファイルが「1」以上、つまり指定されたファイルが1つでもあると判定された場合、ステップS204に処理を進める。指定されたファイルが「0」、つまりなかった場合、ステップS301へ進める。
【0059】
ステップS204では、BPEL Process Application322は、ファイルフォーマットの変換処理を行なう。そして、ステップS205へ進む。
【0060】
ステップS205では、BPEL Process Application322は、ステップS202にて取得されたファイルが2個以上かどうかを判定する。判定結果がNOだった場合、ステップS207へ進む。判定結果がYESだった場合、ステップS206へ進み、ステップS206では、BPEL Process Application322は、PDF Adapter315を呼び出し、ファイルの結合処理をPDF Adapter315に実行させる。BPEL Process Application322は、処理結果として結合されたPDFをPDF Adapter315から取得し、Server300の所定のフォルダに保存する。
【0061】
そして、ステップS207では、BPEL Process Application322は、結合されたファイル、または、1つのファイルを印刷するようPrint Adapter311へ指示をする(選択手段)。ステップS207では、Print Adapter311は、指定されたファイルを指定されたプリンタオブジェクトに対応するプリンタドライバへ入力する。プリンタドライバは、与えられたファイルを解析して印刷データを作成し、プリンタドライバに指定されている印刷先(ポートに対応するプリンタ1001または1002など)に対して印刷データを送信して印刷させる(転送手段)。そして、処理は
図6のBへ進む。
【0062】
図6は、本実施形態のファックス送信処理の一例を示す図である。
【0063】
ステップS301では、BPEL Process Application322は、ファックス送信を指示されたファイルを取得する。例えばこの処理は指定メッセージの解析、例えば
図14Aの1401、
図14Bの1402、1403のようなメッセージを解析することで行なわれてもよい。以下も処理も同様である。
【0064】
更に、ステップS302では、BPEL Process Application322は、ステップS301にて指示されたファイルが1つ以上かどうかを判定する。つまり、指定されたファイルがあるか否かを判定することになる。指定されたファイルが1以上、つまり指定されたファイルがあると判定された場合、ステップS303に処理を進める。指定されたファイルが「0」、つまりなかった場合、ステップS401へ進める。
【0065】
ステップS303では、BPEL Process Application322は、ファイルフォーマットの変換処理を行ない、ステップS301で取得されたファイルをファックス可能なフォーマットへと変換する。そして、ステップS304へ進む。
【0066】
ステップS304では、BPEL Process Application322は、ステップS301にて取得されたファイルが2個以上かどうかを判定する。判定結果がNOだった場合、ステップS308へ進む。判定結果がYESだった場合、ステップS305へ進み、ステップS305では、指定されたファイルが既に結合されているかどうかを確認する。具体的には、前述したステップS206や、後述するステップS307、ステップS408、ステップS508で結合処理が行われるので、この結合結果が所定のフォルダに存在すれば、その結合済みファイルを用いるようにする。ステップS305での確認の結果、既に結合されていると判断された場合は、ステップS306にて結合されたファイルを所定のフォルダからBPEL Process Application322は取得し、ステップS308へ進む。ステップS305での確認の結果、結合されていないと確認された場合は、ステップS307でBPEL Process Application322は、PDF Adapter315を呼び出し、ファイルの結合処理をPDF Adapter315に実行させ、所定のフォルダに保存する。そして、処理はステップS308へ進む。
【0067】
ステップS308では、BPEL Process Application322は、FAX Adapter312を呼び出し(選択手段)、対象ファイルを指定されたファックスオブジェクトに対してファックス番号を指定して送信する(転送手段)。なお、ステップS308では、必要なフォーマット変換処理なども行なわれる場合がある。そして、処理は、
図7のCへ進む。
【0068】
図7は、本実施形態のE−Mail送信処理の一例を示す図である。
【0069】
ステップS401では、BPEL Process Application322は、E−Mail送信を指示されたファイルを取得する。例えばこの処理は指定メッセージの解析、例えば
図14Aの1401、
図14Bの1402,1403のようなメッセージを解析することで行なわれてもよい。以下も処理も同様である。
【0070】
更に、ステップS402では、BPEL Process Application 322は、ステップS401にて指示されたファイルが1個以上かどうかを判定する。つまり、指示されたファイルがあるか否かを判定することになる。指定されたファイルが1以上、つまり指定されたファイルがあると判定された場合、ステップS403に処理を進める。指定されたファイルが0、つまりなかった場合、ステップS501へ進む。
【0071】
ステップS403では、BPEL Process Application322は、結合オプションが指定されているか否かを判定する。結合オプションが指定されているか否かは、
図12の1204が指定されているか否かを示す情報がClient PC200から受信したメッセージ内にあるため、これを確認することにより行なう。ステップS403で、BPEL Process Application322が結合オプションが指定されていないと判断した場合、ステップS409でそのまま指定されたファイルの送信処理を行なう。ステップS403で、BPEL Process Application322がファイルの結合オプションが指定されていると判断した場合、ステップS404でBPEL Process Application322が必要なファイル変換処理を行い、ステップS405へ進む。
【0072】
ステップS405では、BPEL Process Application322は、ステップS401にて取得されたファイルが2個以上かどうかを判定する。判定結果がNOだった場合、ステップS409へ進む。判定結果がYESだった場合、ステップS406へ進み、指定されたファイルが既に結合されているかどうかを確認する。
【0073】
ステップS406での確認の結果、既に結合されていると判断された場合は、ステップS407では、BPEL Process Application322は、結合されたファイルを所定のフォルダから取得し、ステップS409へ進む。ステップS406での確認の結果、結合されていないと判断された場合は、ステップS408では、BPEL Process Application322は、PDF Adapter315を呼び出し、ファイルの結合処理をPDF Adapter315に実行させ、所定のフォルダに保存する。そして、処理はステップS409へ進む。
【0074】
ステップS409では、BPEL Process Application322は、E−Mail Adapter314を呼び出し(選択手段)、対象ファイルを添付したメールを生成して、当該メールを指定されたE−Mailアドレスに対して送信する(転送手段)。そして、処理は、
図8のDへ進む。
【0075】
図8は、ファイル管理またはファイル転送プロトコルを使用したファイル送信処理の一例を示す図である。
【0076】
ステップS501では、BPEL Process Application322は、所定のファイル管理またはファイル転送プロトコルを用いてファイルをネットワーク送信するよう指示されたファイルを取得する。例えばこの処理は指定メッセージの解析、例えば
図14Aの1401、
図14Bの1402、1403のようなメッセージを解析することで行なわれてもよい。以下も処理も同様である。
【0077】
更に、ステップS502で、BPEL Process Application322は、ステップS501にて指示されたファイルが1個以上かどうかを判定する。つまり、指示されたファイルがあるか否かを判定することになる。指定されたファイルが1以上、つまり指定されたファイルがあると判定された場合、ステップS503に処理を進める。指定されたファイルが0、つまりなかった場合、ステップS601へ進む。
【0078】
ステップS503では、BPEL Process Application322は、結合オプションが指定されているか否かを判定する。結合オプションが指定されているか否かは、
図12の1205が指定されているか否かを示す情報がClient PC200から受信したメッセージ内にあるため、これを確認することにより行なう。ステップS503で、結合オプションが指定されていないと判断した場合、ステップS509では、ステップS509でそのまま指定されたファイルの送信処理を行なう。ステップS503で、ファイルの結合オプションが指定されていると判断した場合、ステップS504でBPEL Process Application322が必要なファイル変換処理を行い、ステップS505へ進む。
【0079】
ステップS505では、BPEL Process Application322は、ステップS501にて取得されたファイルが2個以上かどうかを判定する。判定結果がNOだった場合、ステップS509へ進む。判定結果がYESだった場合、ステップS506へ進み、指定されたファイルが既に結合されているかどうかを確認する。ステップS506での確認の結果、既に結合されていると判断された場合は、ステップS507にて結合されたファイルを所定のフォルダからBPEL Process Application 322は取得し、ステップS509へ進む。ステップS506での確認の結果、結合されていないと確認された場合は、ステップS50
8でBPEL Process Application322は、PDF Adapter315を呼び出し、ファイルの結合処理をPDF Adapter315に実行させる。そして、処理はステップS509へ進む。
【0080】
ステップS509では、BPEL Process Application322は、E−Mail Adapter314を呼び出し(選択手段)、対象ファイルを指定されたファイル管理プロトコル又はファイル転送プロトコルを利用して、所定のサーバに送信する(転送手段)。そして、処理は、
図9のEへ進む。
【0081】
図9は、実施形態における完了メッセージのやり取りの一例を示す図である。
【0082】
ステップS601では、BPEL Process Application322は、
図15に示すような、処理結果を含むレスポンスをGUI Application321へ返却する。
【0083】
ステップS602では、GUI Application321は、レスポンスを受信(取得)する。
図15の1501は処理完了メッセージを示し、1502には何らかのエラーメッセージが挿入可能である。ステップS603では、GUI Application321は、
図15に示す情報に基づくHTMLメッセージをClient PC200に対して送信する。
【0084】
ステップS604では、Client PC200は、Server300からのメッセージを受信し、そのメッセージに基づき、ブラウザを使って処理結果(例えば、
図15の1501や1502に示される情報)を表示する。
【0085】
図10は、
図5乃至
図8で実行されうる、ファイルフォーマット変換処理の一例を示す図である。
【0086】
ステップS701では、BPEL Process Application322は、非PDFファイルが1つでも指定されたかを判定する。もし、ステップS701で非PDFファイルが1つでも指定されたと判定された場合、ステップS702で、File Format Conversion Adapter318を呼び出して、指定された非PDFファイルのPDFへの変換処理を行なう。非PDfファイルが1つでも指定されていなかったら、ファイルフォーマット変換処理を終了する。
【0087】
ステップS703で、BPEL Process Application322は、すべての非PDFファイルがすべてPDFファイルへ変換されたかどうかを判定する。もし、BPEL Process Application322が、非PDFファイルはすべてPDFファイルに変換されたと判断したら、処理を終了する。BPEL Process Application322が、すべての非PDFファイルがPDFファイルに変換されていないと判断した場合、ステップS703で処理待ちとなるが、この際、タイマーをセットして所定時間後にエラー処理となるようにしても良い。
【0088】
なお、
図10のフォーマット変換を使用しない場合、上述の仕様に下記の制限を加えた変形例を考えることが出来る。
図4のステップS110にてリストページを作成する際に、Printer Adapter311、Fax Adapter312、E−Mail Adapter314、File Adapter313のすべてで処理可能な共通な1つのフォーマット、例えば、PDFファイルだけしか表示しないようにするリストページを作成することが考えられる。例えば、
図12の代りに
図16のような画面を表示させるための情報をステップS110にて生成する。こうすることで、Printer Adapter311、Fax Adapter312、E−Mail Adapter314、File Adapter313のいずれに対してもGUI Application321はPDFデータを送信できるようになる。この実施例では、送信したいファイルをチェックし、ファックスオブジェクトやプリンタオブジェクト、あるいはメールアドレスまたはファイル送信のパスを指定することで、指定したファイルを指定した転送方法で送信可能としている。もちろん、プリンタオブジェクト、ファックスオブジェクト、あるいはメールアドレスまたはファイル送信のパスの全てまたはこの中の一部を指定して指定した少なくとも1以上のファイルを転送指示できる。
【0089】
以上述べたように、Client PC200と通信するServer300は、以下を含んでいる。
【0090】
Server300において転送すべきデータの一例であるファイルと、そのファイルに対応する複数の転送方法(例えば、プリント、ファックス、E−Mail、ファイル送信等)とを入力させる表示画面を、前記Server300にて実行されるウェブサービスにおいて表示させるための表示情報の一例である
図12を構成するためのHTML情報やXML情報などをネットワークI/F209が送信する。ウェブサービスが表示画面において受け付けた入力に基づき、データと、複数の転送方法を示す情報とが、ネットワークI/F209により受信される。また、Client PC200において実行されるウェブサービスにおいてデータと、複数の転送方法を示す情報例えば、プリント、ファックス、E−Mail、ファイル送信等、が受信される。転送方法を示す情報としては、例えば
図13の1314にて設定され得る値が挙げられる。
【0091】
ネットワークI/F209が受信した、データの複数の転送方法を示す情報に従って、情報送信装置がサポートする転送方法の中から複数の転送方法を第1CPU201などが取得する。
【0092】
更に、ネットワークI/Fが受信したデータを、第1CPU201が選択した複数の転送プログラム(例えば、Printer Adapter311、Fax Adapter312、E−Mail Adapter314、File Adapter313等がそれぞれに対応するプログラムを実行する。)において処理し、処理したデータを、ネットワークを介してネットワークI/F209は転送する。
【0093】
転送プログラムとしては、ファックスドライバ及びプリンタドライバを用いてもよく、転送方法を示す情報に従って、ファックスドライバ及びプリンタドライバを第1CPU201は選択し、選択されたファックスドライバ及びプリンタドライバを実行して得られたデータをネットワークI/F209は転送するようにしてもよい。
【0094】
さらに、
図12に示すごとく、複数のデータと、当該複数のデータごとに異なる転送方法とを指定できる画面を、Client PC200の表示部において表示させるための情報を含むHTML情報やXML情報をネットワークI/F209は送信するようにしてもよい。
【0095】
更に、複数のデータがClient PC200から送信されてきた場合は、その複数のデータを結合させて得られたデータをネットワークI/F209は転送し、1つのデータがClient PC200から送信されてきた場合は、その複数のデータを結合するプログラムの一例であるPDF Adapter315により処理させることなく、その1つのデータをネットワークI/F209は転送するようにしてもよい。
【0096】
Client PC200から送信されてくる複数のデータをServer300において結合させるか否かを示す情報をネットワークI/F209は受信し、複数のデータをServer300において結合させるか否かを示す情報が、複数のデータをServer300において結合させないことを示している場合、複数のデータをServer300において結合させずにネットワークI/F209はデータを転送し、複数のデータをServer300において結合させることを示していた場合、複数のデータをServer300において結合させた後、ネットワークI/F209はそのデータを転送するようにしてもよい。
【0097】
上述した実施形態の機能を実現するべく各種のデバイスを動作させるように、該各種デバイスと接続された装置あるいはシステム内のコンピュータに対し、前記実施形態の機能を実現するためのソフトウエアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ(CPUあるいはMPU)に格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも、本発明の範疇に含まれる。
【0098】
また、この場合、前記ソフトウエアのプログラムコード自体が上述した実施形態の機能を実現することになり、そのプログラムコード自体は本発明を構成する。また、そのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記録媒体は本発明を構成する。かかるプログラムコードを記憶する記録媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、磁気テープ、不揮発性のメモリカード、ROM等を用いることができる。
【0099】
また、コンピュータが供給されたプログラムコードを実行することにより、上述の実施形態の機能が実現されるだけでなく、そのプログラムコードがコンピュータにおいて稼働しているOS(オペレーティングシステム)あるいは他のアプリケーションソフト等と共同して上述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【0100】
さらに、供給されたプログラムコードがコンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後、そのプログラムコードの指示に基づいてその機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上述した実施形態の機能が実現される場合にも本発明に含まれることは言うまでもない。
【0101】
なお、前記実施形態は、何れも本発明を実施するにあたっての具体化のほんの一例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。すなわち、本発明はその技術思想、またはその主要な特徴から逸脱することなく、様々な形で実施することができる。