(57)【特許請求の範囲】
【請求項１】
第１ファクシミリマシンと第２ファクシミリマシンとの間の通信を制御するシステムにおいて、第１のファクシミリマシンは、
第２のファクシミリマシンから第２のファクシミリマシンのアプリケーション能力のＣＲＣ（繰り返し冗長度チェック）を受信する手段と、
第２のファクシミリマシンとの以前の通信で受信した前記ＣＲＣを記憶する手段と、
前記ＣＲＣが記憶されていない場合、又は前記受信したＣＲＣと前記記憶したＣＲＣとの比較の結果、更新されている場合に、第２のファクシミリマシンのアプリケーション能力を取得して記憶する手段と、
前記記憶したアプリケーション能力を用いて決められたフォーマットであって、複数のデータヘッダ及びそれに対応するアタッチメントデータを有するメッセージオブジェクトより成る前記フォーマットに基づいてフォーマットされたデータを発生するフォーマット手段を備え、上記データヘッダの各々は、上記対応するアタッチメントデータを記述するヘッダデータを含んでおり、そして
第１ファクシミリマシンから第２ファクシミリマシンへの上記フォーマットされたデータの転送を制御するコントローラであって、いずれかの上記対応するアタッチメントデータを転送する前に上記複数のデータヘッダを転送するようにするコントローラを更に備えたことを特徴とするシステム。
【請求項２】
上記複数のデータヘッダの各々は、複数のヘッダデータフィールドを含み、これら複数のヘッダデータフィールドの各々は、上記ヘッダのサイズを指示するヘッダサイズデータフィールドと、上記対応するアタッチメントデータにおいて転送されるデータの形式を指示するメッセージ形式データフィールドと、上記フォーマットされたデータの意図された受信者の数を指示する受信者数データフィールドと、受信者が中継点であるときの当該中継点についてのパラメータを指示する受信者形式データフィールドの１つを含むことを特徴とする請求項１に記載のシステム。
【請求項３】
上記複数のヘッダデータフィールドは、上記フォーマットされたデータにおける暗号化データの存在を指示するフラグデータフィールドを含んでいることを特徴とする請求項２に記載のシステム。
【請求項４】
上記複数のヘッダデータフィールドは、上記フォーマットされたデータにおける像データの存在を指示するフラグデータフィールドを含んでいることを特徴とする請求項２に記載のシステム。
【請求項５】
上記所定のフォーマットは、上記フォーマットされたデータの意図された受信者に関する詳細な受信者情報を与える拡張ヘッダを備えていることを特徴とする請求項１に記載のシステム。
【請求項６】
上記拡張ヘッダは、少なくとも第１のデータフィールドを含み、上記拡張ヘッダのデータフィールドは、上記フォーマットされたデータの主題に関する情報を含む主題データ情報と、第１及び第２ファクシミリマシンの１つがポーリング要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、上記フォーマットされたデータの送信者の識別を指示するデータを含むメッセージ発信者データフィールドの１つを備えていることを特徴とする請求項５に記載のシステム。
【請求項７】
上記フォーマットされたデータは、少なくとも第１の受信者へ転送され、上記拡張ヘッダは、上記メッセージの全ての受信者のリストを指示するデータを含むメッセージ受信者データフィールドを含むことを特徴とする請求項５に記載のシステム。
【請求項８】
上記メッセージ受信者データフィールドは、受信者のネーム及び受信者のアドレスを含むことを特徴とする請求項７に記載のシステム。
【請求項９】
上記第２ファクシミリマシンは、上記対応するアタッチメントデータを受信する前に上記データヘッダを受信し、そしてこのデータヘッダを使用して、上記対応するアタッチメントデータの受信に先立ち、上記対応するアタッチメントデータを処理するように準備を行うことを特徴とする請求項１に記載のシステム。
【請求項１０】
上記フォーマット手段は、上記コントローラが上記フォーマットされたデータを転送する転送シーケンスを表すリニア化シーケンスを有するリニア化フォーマットで上記フォーマットされたデータを発生することを特徴とする請求項１に記載のシステム。
【請求項１１】
上記リニア化シーケンスは、第１ファクシミリマシンから第２ファクシミリマシンへの送信経路を表すデータを含むルートヘッダと、上記フォーマットされたデータ、上記データヘッダ、及び上記対応するアタッチメントデータの意図された受信者を表すデータを含む受信者ヘッダとを備えていることを特徴とする請求項１０に記載のシステム。
【請求項１２】
第１コンピュータと第２コンピュータとの間の通信を制御するシステムにおいて、第１コンピュータは、
第２コンピュータから第２コンピュータのアプリケーション能力のＣＲＣ（繰り返し冗長度チェック）を受信する手段と、
第２コンピュータとの以前の通信で受信した前記ＣＲＣを記憶する手段と、
前記ＣＲＣが記憶されていない場合、又は前記受信したＣＲＣと前記記憶したＣＲＣとの比較の結果、更新されている場合に、第２コンピュータのアプリケーション能力を取得して記憶する手段と、
前記記憶したアプリケーション能力を用いて決められた形態でフォーマットされたデータを、これが第１コンピュータから第２コンピュータへ転送されるシーケンスを表す所定のリニア化フォーマットに基づいて発生するフォーマット手段を備え、上記リニア化フォーマットは、非符号化及び非暗号化リニアヘッダと、上記フォーマットされたデータの意図された受信者を表すデータを含む拡張ヘッダと、第１コンピュータから第２コンピュータへ転送されるべき情報を含む少なくとも第１アタッチメントデータと、各アタッチメントデータに対応し、第２コンピュータにより上記対応するアタッチメントデータに対して実行されるべき処理の形式に関連したデータを含むアタッチメントヘッダとを備え、そして
第１コンピュータから第２コンピュータへの上記フォーマットされたデータの転送を制御するコントローラを更に備えたことを特徴とするシステム。
【請求項１３】
上記リニアヘッダは、複数のフラグを含むデータフィールドを備え、これらフラグは、上記パラメータを記述するように上記リニア化手段によって使用されることを特徴とする請求項１２に記載のシステム。
【請求項１４】
上記複数のフラグの１つは、上記データにおける暗号化データの存在を指示することを特徴とする請求項１３に記載のシステム。
【請求項１５】
上記複数のフラグの１つは、上記データにおける像データの存在を指示することを特徴とする請求項１３に記載のシステム。
【請求項１６】
上記リニアヘッダデータフィールドは、上記リニアヘッダのサイズを指示するサイズデータフィールドと、上記データの形式を指示するメッセージ形式データフィールドと、メッセージ受信者の数を指示する受信者数データフィールドと、受信者が中継点であるときの当該中継点についてのパラメータを指示する受信者形式データフィールドとを含む複数のデータフィールドを備えていることを特徴とする請求項１２に記載のシステム。
【請求項１７】
上記拡張ヘッダは、少なくとも第１データフィールドを含み、上記第１の拡張ヘッダデータフィールドは、上記データの主題に関する情報を含む主題データフィールドと、第１及び第２コンピュータの１つがポール要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、上記データの送信者の識別を指示するデータを含むメッセージ発信者データフィールドの１つを備えていることを特徴とする請求項１２に記載のシステム。
【請求項１８】
上記拡張ヘッダは、上記フォーマットされたデータの全ての受信者のリストを指示するデータを含むメッセージ受信者データフィールドを含むことを特徴とする請求項１２に記載のシステム。
【請求項１９】
上記メッセージ受信者データフィールドは、受信者ネーム及び受信者アドレスを含むことを特徴とする請求項１８に記載のシステム。
【請求項２０】
上記アタッチメントデータは、ＡＮＳ−１エンコードを用いてエンコードされることを特徴とする請求項１２に記載のシステム。
【請求項２１】
上記アタッチメントデータは、第２コンピュータへ送信する前に圧縮されることを特徴とする請求項１２に記載のシステム。
【請求項２２】
上記アタッチメントデータは、第２コンピュータへ送信する前に暗号化されることを特徴とする請求項１２に記載のシステム。
【請求項２３】
上記第２コンピュータは、上記対応するアタッチメントデータを受信する前に上記アタッチメントヘッダを受信し、そしてこのアタッチメントヘッダを使用して、上記対応するアタッチメントデータの受信に先立ち、上記対応するアタッチメントデータを処理するように準備を行うことを特徴とする請求項１２に記載のシステム。
【請求項２４】
上記フォーマットされたデータは、中継コンピュータを経て第２コンピュータへ転送され、上記中継コンピュータは、この中継コンピュータを通る転送を指示するように上記リニアヘッダを変更することを特徴とする請求項１２に記載のシステム。
【請求項２５】
第２コンピュータによって実行されるべき処理の上記形式は、上記対応するアタッチメントデータをプリントすることであることを特徴とする請求項１２に記載のシステム。
【請求項２６】
上記受信者は、第２コンピュータであり、第２コンピュータによって実行されるべき処理の上記形式は、上記対応するアタッチメントデータを記憶することであることを特徴とする請求項１２に記載のシステム。
【請求項２７】
上記第１及び第２コンピュータは、各々、第１及び第２のファクシミリマシンであり、第２ファクシミリマシンにより実行されるべき処理の上記形式は、ポール要求であり、そして上記対応する拡張ヘッダは、ポーリングのデータを含むことを特徴とする請求項１２に記載のシステム。
【請求項２８】
上記ポーリングのデータは、上記第２のファクシミリマシン内に記憶された選択されたデータファイルの位置を指示する経路データを含むことを特徴とする請求項２７に記載のシステム。
【請求項２９】
第１ファクシミリマシンと第２ファクシミリマシンとの間の通信を制御する方法において、第１のファクシミリマシンは、
第２のファクシミリマシンから第２のファクシミリマシンのアプリケーション能力のＣＲＣ（繰り返し冗長度チェック）を受信し、
第２のファクシミリマシンとの以前の通信で受信した前記ＣＲＣを記憶し、
前記ＣＲＣが記憶されていない場合、又は前記受信したＣＲＣと前記記憶したＣＲＣとの比較の結果、更新されている場合に、第２のファクシミリマシンのアプリケーション能力を取得して記憶し、
前記記憶したアプリケーション能力を用いて決められたフォーマットであって、複数のデータヘッダ及びそれに対応するアタッチメントデータを有するメッセージオブジェクトより成る前記フォーマットに基づいてデータをフォーマットし、上記データフォーマットの各々は、上記対応するアタッチメントデータを記述するヘッダデータを含み、
上記複数のデータヘッダを第１ファクシミリマシンから第２ファクシミリマシンへ転送し、そして
上記複数のデータヘッダの全てを転送した後に、上記対応するアタッチメントデータを第１ファクシミリマシンから第２ファクシミリマシンへ転送する、
という段階を備えたことを特徴とする方法。
【請求項３０】
上記複数のデータヘッダの各々は、複数のデータフィールドを含み、これら複数のヘッダデータフィールドは、上記ヘッダのサイズを指示するヘッダサイズデータフィールドと、上記メッセージの形式を指示するメッセージ形式データフィールドと、上記メッセージの意図された受信者の数を指示する受信者数データフィールドと、受信者が中継点であるときの当該中継点についてのパラメータを指示する受信者形式データフィールドとを備えていることを特徴とする請求項２９に記載の方法。
【請求項３１】
上記複数のヘッダデータフィールドは、上記フォーマットされたデータにおける暗号化データの存在を指示するフラグデータフィールドを含むことを特徴とする請求項３０に記載の方法。
【請求項３２】
上記複数のヘッダデータフィールドは、上記フォーマットされたデータにおける像データの存在を指示するフラグデータフィールドを含むことを特徴とする請求項３０に記載の方法。
【請求項３３】
上記所定のフォーマットは、上記フォーマットされたデータの意図された受信者に関する詳細な受信者情報を与えるための拡張ヘッダを含むことを特徴とする請求項２９に記載の方法。
【請求項３４】
上記拡張ヘッダは、少なくとも第１のデータフィールドを含み、上記拡張ヘッダのデータフィールドは、上記フォーマットされたデータの主題に関する情報を含む主題データフィールドと、第１及び第２ファクシミリマシンの１つがポーリング要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、上記フォーマットされたデータの送信者の識別を指示するデータを含むメッセージ発信者データフィールドの１つを備えていることを特徴とする請求項３３に記載の方法。
【請求項３５】
上記フォーマットされたデータは、少なくとも第１の意図された受信者へ転送され、上記拡張ヘッダは、上記フォーマットされたデータの全ての意図された受信者のリストを指示するデータを含むメッセージ受信者データフィールドを含むことを特徴とする請求項３３に記載の方法。
【請求項３６】
上記メッセージ受信者データフィールドは、受信者ネーム及び受信者アドレスを含むことを特徴とする請求項３５に記載の方法。
【請求項３７】
上記フォーマット段階は、コントローラが上記フォーマットされたデータを転送する転送シーケンスを表すリニア化シーケンスを有するリニア化フォーマットでフォーマットされたデータを発生することを特徴とする請求項２９に記載の方法。
【請求項３８】
上記リニア化シーケンスは、第１ファクシミリマシンから第２ファクシミリマシンへの送信経路を表すデータを含むルートヘッダと、上記フォーマットされたデータ、上記データヘッダ、及び上記対応するアタッチメントデータの意図された受信者を表すデータを含む受信者ヘッダとを備えていることを特徴とする請求項３７に記載の方法。
【請求項３９】
第１コンピュータと第２コンピュータとの間の通信を制御する方法において、第１コンピュータは、
第２コンピュータから第２コンピュータのアプリケーション能力のＣＲＣ（繰り返し冗長度チェック）を受信し、
第２コンピュータとの以前の通信で受信した前記ＣＲＣを記憶し、
前記ＣＲＣが記憶されていない場合、又は前記受信したＣＲＣと前記記憶したＣＲＣとの比較の結果、更新されている場合に、第２コンピュータのアプリケーション能力を取得して記憶し、
前記記憶したアプリケーション能力を用いて決められたフォーマットにより、
非符号化及び非暗号化リニアヘッダを発生し、
上記フォーマットされたデータの意図された受信者を表すデータを含む拡張ヘッダを発生し、
第１コンピュータから第２コンピュータへ転送されるべき情報を含む少なくとも第１アタッチメントデータブロックを発生し、
各アタッチメントデータブロックに対応し、第２コンピュータにより上記対応するアタッチメントデータブロックに対して実行されるべき処理の形式に関連したデータを含んでいるアタッチメントヘッダを発生し、そして
上記フォーマットされたデータを第１コンピュータから第２コンピュータへ転送する、という段階を備えたことを特徴とする方法。
【請求項４０】
上記リニアヘッダは、上記パラメータを記述する複数のフラグを含むデータフィールドを備え、上記リニアヘッダを発生する段階は、これらフラグをフォーマットすることを含むことを特徴とする請求項３９に記載の方法。
【請求項４１】
上記複数のフラグの１つは、データにおける暗号化データの存在を指示することを特徴とする請求項４０に記載の方法。
【請求項４２】
上記複数のフラグの１つは、データにおける像データの存在を指示することを特徴とする請求項４０に記載の方法。
【請求項４３】
上記リニアヘッダデータフィールドは、上記リニアヘッダのサイズを指示するサイズデータフィールドと、上記フォーマットされたデータの形式を指示するメッセージ形式データフィールドと、メッセージ受信者の数を指示する受信者数データフィールドと、受信者が中継点であるときの当該中継点についてのパラメータを指示する受信者形式データフィールドとを含む複数のデータフィールドを備えていることを特徴とする請求項３９に記載の方法。
【請求項４４】
上記拡張ヘッダは、少なくとも第１データフィールドを含み、上記第１の拡張ヘッダデータフィールドは、上記フォーマットされたデータの主題に関する情報を含む主題データフィールドと、第１及び第２コンピュータの１つがポール要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、上記フォーマットされたデータの送信者の識別を指示するデータを含むメッセージ発信者データフィールドの１つを備えていることを特徴とする請求項３９に記載の方法。
【請求項４５】
上記拡張ヘッダは、上記フォーマットされたデータの全ての受信者のリストを指示するデータを含むメッセージ受信者データフィールドを含むことを特徴とする請求項３９に記載の方法。
【請求項４６】
上記メッセージ受信者データフィールドは、受信者ネーム及び受信者アドレスを含むことを特徴とする請求項４５に記載の方法。
【請求項４７】
上記アタッチメントデータブロックは、第２コンピュータへの送信の前にＡＳＮ−１エンコードを用いてエンコードされることを特徴とする請求項３９に記載の方法。
【請求項４８】
上記アタッチメントデータブロックは、第２コンピュータへの送信の前に圧縮されることを特徴とする請求項３９に記載の方法。
【請求項４９】
上記アタッチメントデータブロックは、第２コンピュータへの送信の前に暗号化されることを特徴とする請求項３９に記載の方法。
【請求項５０】
上記第２コンピュータは、上記対応するアタッチメントデータブロックを受信する前に上記アタッチメントヘッダを受信することを特徴とする請求項３９に記載の方法。
【請求項５１】
上記フォーマットされたデータは、中継コンピュータを経て第２コンピュータへ転送され、上記方法は、更に、上記中継コンピュータを通る転送を指示するように上記リニアヘッダを変更する段階を含むことを特徴とする請求項５０に記載の方法。
【請求項５２】
第２コンピュータによって実行されるべき処理の上記形式は、上記対応するアタッチメントデータブロックをプリントすることであることを特徴とする請求項３９に記載の方法。
【請求項５３】
上記受信者は、第２コンピュータであり、第２コンピュータによって実行されるべき処理の上記形式は、上記対応するアタッチメントデータブロックを記憶することであることを特徴とする請求項３９に記載の方法。
【請求項５４】
上記第１及び第２コンピュータは、各々、第１及び第２のファクシミリマシンであり、第２ファクシミリマシンにより実行されるべき処理の上記形式は、ポール要求であり、そして上記対応するアタッチメントデータブロックは、ポーリングデータを含むことを特徴とする請求項３９に記載の方法。
【請求項５５】
上記ポーリングデータは、上記第２のファクシミリマシン内に記憶された選択されたデータファイルの位置を指示する経路データを含むことを特徴とする請求項５４に記載の方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、一般に、データをフォーマットし処理するためのシステム及び方法に係り、より詳細には、ファクシミリデータをフォーマットし処理するためのシステム及び方法に係る。
【０００２】
【従来の技術】
コンピュータは、一般に、仕事場においてデータ処理及び記憶に使用される。コンピュータを首尾よく使用するには、コンピュータ情報へのアクセスが鍵である。コンピュータ間の通信は、コンピュータ情報をアクセスする重要な要素となってきている。ローカルエリアネットワーク（ＬＡＮ）は、多数のコンピュータを一緒に接続してそれらの計算能力を増強できるようにする。あるコンピュータは、ＬＡＮを経て別のコンピュータに記憶された情報をアクセスすることができる。２つのコンピュータ間で情報が交換されるときは、情報は、コンピュータがそれを確認して処理できるフォーマットになければならない。情報は、例えば、ＡＳＣＩＩのような標準的フォーマットでしばしば交換される。しかしながら、ＡＳＣＩＩフォーマットでの交換は、情報をその元のフォーマットからＡＳＣＩＩフォーマットへ変換することを必要とする。情報を転送するコンピュータは、受信側コンピュータのデータ処理能力を決定するすべがなく、従って、全てのコンピュータが確認できる「万能」フォーマットがＡＳＣＩＩであるという仮定に基づいて情報をＡＳＣＩＩに変換する。
【０００３】
コンピュータの１つの形態がファクシミリ（ＦＡＸ）マシンである。ＦＡＸマシンは、コンピュータ内にインターフェイスボードを備えていてもよいし、公知のコンピュータ技術を用いたスタンドアローン装置であってもよい。ＦＡＸマシンは、ある位置から別の位置へ情報を転送するのに使用される。古い設計のＦＡＸマシンは、計算能力がほとんど又は全くなく、ページを走査しそしてそのページのデジタルバージョンを受信側ＦＡＸマシンへ送信し、これがページを再現するように限定される。近代的なＦＡＸマシンは、本質的にコンピュータの形態であり、ＦＡＸマシンが文書を走査しそしてそのデジタルバージョンをマシンに記憶し、夜間に電話料率が下がったときのように後刻に送信することのできる記憶能力をしばしば有している。受信側ＦＡＸマシンは、機密の受信メッセージを記憶しそして適切な識別コードを入力したときだけそれらをプリントアウトすることができる。
【０００４】
送信時間を短縮するために、ＦＡＸマシンは、良く知られた圧縮技術を使用している。ファクシミリ送信の国際規格は、インターナショナル・テレグラフ・アンド・テレフォン・コンサルテエイティブ・コミッティ（ＣＣＩＴＴ）によって確立されており、そして「ターミナル装置及びテレマティックサービス用のプロトコル(Terminal Equipment and Protocols for Telematic Services) 」（１９８９年）として出版されている。本明細書の説明全体を通じてＣＣＩＴＴ規格を参照する。これらの規格は当業者に良く知られており、ここでは詳細に説明しない。ＣＣＩＴＴ規格に適合するために、全てのＦＡＸマシンは、デジタル化データを送信用に圧縮する変形ハフマン（ＭＨ）エンコード能力を有している。又、新しいＦＡＸマシンも、データを相当に圧縮するためのＭＲ又はＭＭＲエンコード技術を使用している。ＭＨ及びＭＲデータエンコードは、ＣＣＩＴＴ推奨規格Ｔ．４一次元及び二次元エンコードとして各々知られており、一方、ＭＭＲは、ＣＣＩＴＴ推奨規格Ｔ．６二次元エンコードとして知られている。これらのデータエンコード技術は、公知であり、ここでは説明しない。特定のエンコード能力を参照するときは、特定のＦＡＸマシンがその特定のデータフォーマットをデコードする能力も有していることを理解されたい。例えば、ＭＭＲエンコード能力をもつＦＡＸマシンを参照するときは、同じＦＡＸマシンがＭＭＲエンコードデータをデコードできることもほとんど常に意味する。
【０００５】
受信側ＦＡＸマシンの標準ファクシミリデータエンコード能力は、ファクシミリ電話通信の折衝（ネゴシエーション）段階と称する時間中に自動的に送信される。図１に示すファクシミリ送信の種々の段階は、ＣＣＩＴＴ規格に記載されている。
【０００６】
図１に示された段階Ａは、通話確立段階で、発呼ステーションと被呼ステーションとの間に電話通信が確立される段階である。発呼ステーションは、ファクシミリ電話通話を開始するステーションであり、そして被呼ステーションは、ファクシミリ電話通話を受信するステーションである。良く知られたように、発呼ステーションと被呼ステーションの両方がファクシミリメッセージを送信又は受信することができる。
【０００７】
段階Ｂは、発呼ステーションと被呼ステーションとの間でファクシミリデータエンコード能力を識別しそして選択する前メッセージ手順段階即ち折衝段階である。段階Ｂにおいては、受信側ＦＡＸマシンが、該マシンに確認できる特定のデータエンコードフォーマットを記述したデジタル識別信号（ＤＩＳ）データフレームを送信する。ＤＩＳデータフレームの個々のデータビットは、受信側ＦＡＸマシンの特定のファクシミリデータ処理モードを識別する。ＤＩＳデータフレームは、ＣＣＩＴＴ規格によって規定され、他の目的で使用することはできない。前記したように、これらの能力は、ＭＨ、ＭＲ及びＭＭＲのようなデータエンコードを含む。ＭＨ、ＭＲ及びＭＭＲデータエンコード能力は、ＣＣＩＴＴ規格の推奨規格Ｔ．４及びＴ．６内に規定されている。データエンコード能力の識別に加えて、ＤＩＳデータフレームは、受信側ＦＡＸマシンの基本データ処理能力に関する情報を与えるのに使用される。これは、分解能（例えば、インチ当たりのピクセル）、ペーパサイズ等の限定された情報を含む。これらの標準的なファクシミリデータ処理能力又はモードは、「ＣＣＩＴＴエンコードフォーマット」と称する。送信側のＦＡＸマシンは、確認信号で応答し、最も効率的なデータ転送を行えるようにする相互に両立するＣＣＩＴＴエンコードフォーマットを選択する。送信側ＦＡＸマシンは、選択されたＣＣＩＴＴエンコードフォーマットに基づいてデータをエンコードし、それを受信側ＦＡＸマシンへ送信する。
【０００８】
段階Ｃは、実際のメッセージ転送段階であり、２つの同時段階で構成される。段階Ｃ１は、送信側ＦＡＸマシンと受信側ＦＡＸマシンとの間のデータの転送を制御する「メッセージ内」手順段階である。これは、同期、エラー検出及び修正そしてライン監視を含む。段階Ｃ２は、Ｃ１段階の制御のもとで送信側ＦＡＸマシンから受信側ＦＡＸマシンへデータを転送する実際のデータ送信段階である。簡単化のために、これらの同時段階を、段階Ｃと称する。
【０００９】
段階Ｄは、メッセージ終了信号、確認信号及びファクシミリ終了信号に関する情報を転送する後メッセージ手順段階である。段階Ｅは、発呼ステーションと被呼ステーションとの間の電話通信を終了する通話解除段階である。
【００１０】
【発明が解決しようとする課題】
ＣＣＩＴＴエンコードフォーマットは、基本的なファクシミリ通信を行えるようにする。しかしながら、ＬＡＮによって一緒に接続されたコンピュータと同様に、ＦＡＸマシンは、限定されたＣＣＩＴＴエンコードフォーマットの１つを用いた単なるデータエンコードよりも効率的な送信を行うことのできるデータ処理能力を有する。あるＦＡＸマシンは、ＦＡＸインターフェイスボードによりコンピュータに実際に組み込まれる。これらのコンピュータは、相当のデータ処理能力を有しているが、そのデータ処理能力は、ファクシミリを送信又は受信するときには活用できない。というのは、一方のＦＡＸマシンが、他方のＦＡＸマシンが有しているデータ処理能力を知り得ないからである。
【００１１】
現在、ファクシミリマシンは、受信者に関する簡単な追加データ、中継命令、ファイル形式情報等を許すような融通性のあるやり方でデータ転送することができない。
【００１２】
それ故、コンピュータ間に進歩した通信能力を得るためのシステム及び方法が強く要望されることが明らかである。
【００１３】
【課題を解決するための手段】
本発明は、第１コンピュータと第２コンピュータとの間の通信を制御するためのシステムであって、第１コンピュータと第２コンピュータとの間のデータの転送を制御するコントローラと、メッセージオブジェクト及び指定の受信者より成る所定のフォーマットに基づいてデータをフォーマットするためのフォーマット手段を備えたシステムにおいて実施される。メッセージオブジェクトは、メッセージを含むオブジェクト形式と、メッセージのクラスを識別するメッセージ形式と、メッセージに関連したパラメータを識別するメッセージフラグとを有している。１つの実施例において、所定のフォーマットは、メッセージのパラメータを記述する複数のデータフィールドを含むヘッダを備えている。パラメータは、ヘッダサイズ及びメッセージ形式に関連した情報を含む。又、複数のヘッダは、ヘッダのサイズを指示するヘッダサイズデータフィールドと、転送されているデータの形式を指示するメッセージ形式データフィールドと、メッセージの受信者の数を指示する受信者数データフィールドと、受信者の付加的なパラメータを指示する受信者形式データフィールドの１つを備えている。又、ヘッダデータフィールドは、メッセージにおける暗号化データの存在を指示するフラグデータフィールドと、メッセージにおける像データの存在を指示するフラグデータフィールドとを備えている。
【００１４】
又、メッセージオブジェクトは、少なくとも第１のアタッチメントオブジェクトを含み、各アタッチメントオブジェクトは、アタッチメントの形式及びアタッチメントデータを識別する特性を有している。
【００１５】
別の実施例においては、所定のフォーマットは、詳細な受信者情報を与えるための拡張ヘッダを含む。この拡張ヘッダは、少なくとも第１のデータフィールドを含み、そしてメッセージの主題に関連した情報を含む主題データフィールドと、第１及び第２コンピュータの１つがポール要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、メッセージの送信者の識別を指示するデータを含むメッセージ発信者データフィールドの１つを備えている。データファイルが少なくとも第１の受信者に転送されるときには、拡張ヘッダは、メッセージの全ての受信者のリストを含むメッセージ受信者データフィールドを含む。このメッセージ受信者データフィールドは、受信者ネーム及び受信者アドレスを含む。
【００１６】
更に別の実施例において、第１コンピュータと第２コンピュータとの間の通信を制御するシステムは、第１コンピュータと第２コンピュータとの間のデータの転送を制御するための転送手段と、データのパラメータを記述する情報を含むリニアヘッダ、及びデータの受信者に関する情報を含む拡張ヘッダより成る所定のリニア化フォーマットに基づいて、データファイルをフォーマットするためのリニア化手段とを備えている。
【００１７】
更に、リニア化フォーマットは、受信者へ送信されるべきデータファイルを含むアタッチメントデータと、このアタッチメントデータのパラメータを記述するアタッチメントヘッダとを備えている。データファイルは、ＡＳＮ−１エンコードを用いてエンコードされる。データファイルは、第２のコンピュータへ送信される前に圧縮される。又、データファイルは、第２のコンピュータへ送信される前に暗号化される。
【００１８】
リニアヘッダは、データに関する形式情報を含むデータフィールドを備えている。又、リニアヘッダは、データのパラメータを記述するようにリニア化手段により使用される複数のフラグを含むデータフィールドも備えている。これらフラグの１つは、データにおける暗号化データの存在を指示する。１つのフラグは、データにおける像データの存在を指示する。又、リニアヘッダは、リニアヘッダのサイズに関連した情報も含む。
【００１９】
リニアヘッダは、該リニアヘッダのサイズを指示するサイズデータフィールドと、データの形式を指示するメッセージ形式データフィールドと、メッセージ受信者の数を指示する受信者数データフィールドと、付加的な受信者パラメータを指示する受信者形式データフィールドとを含む複数のデータフィールドを備えている。
【００２０】
システムは、更に、少なくとも第１のデータフィールドを含む拡張ヘッダを備え、この拡張ヘッダのデータフィールドは、データの主題に関連した情報を含む主題データフィールドと、第１及び第２コンピュータの１つがポール要求を送信する場合にファイルネームを指示するポールネームデータフィールドと、許可されたユーザ識別を含むパスワードデータフィールドと、データの送信者の識別を指示するデータを含むメッセージ発信者データフィールドのうちの１つを備えている。
【００２１】
【実施例】
本発明は、コンピュータ間で情報を交換するシステム及び方法をコンピュータのデータ処理能力に関連して説明する。以下に述べる例は、ＦＡＸマシン間での交換能力に向けられるが、本発明の原理は、ＦＡＸマシン以外のコンピュータにも適用できる。
【００２２】
本発明は、ＣＣＩＴＴ標準フォーマット以外の各ＦＡＸマシンのデータ処理能力に関連して受信側ＦＡＸマシンと送信側ＦＡＸマシンとの間で情報を転送することができる。本発明のＦＡＸマシンは、データ処理能力のカスタムセット又はカスタム能力と、アプリケーションプログラムに関連した１組のアプリケーションデータ処理能力又はアプリケーション能力とを使用する。ＣＣＩＴＴ規格は、折衝段階（段階Ｂ）の間に非標準的ファシリティ（ＮＳＦ）データフレームを送信する能力を提供する。ＮＳＦデータフレームは、送信される情報のフォーマットに大きな融通性を許すものである。ＮＳＦデータフレームは、公知技術では、ユーザ識別情報、パスワード及びファクシミリ中継情報を送信するのに時々使用されている。本発明は、ＮＳＦデータフレームを使用して、受信側ＦＡＸマシンが任意に有しているカスタムデータ処理能力のリストを転送する。カスタム能力は、ＤＩＳデータフレームに定められたＣＣＩＴＴ標準エンコードフォーマットを越えるもので、像形成能力、ポーリング能力等に関する情報を含んでいる。カスタム能力については、以下に説明する。
【００２３】
又、本発明は、受信側ＦＡＸマシンから送信側ＦＡＸマシンへアプリケーションデータ処理能力のリストを転送する能力も有する。アプリケーション能力リストは、ＦＡＸマシンがコンピュータにおけるインターフェイスボードである場合に有用となる使用可能なアプリケーションプログラムのような情報を含むことができる。例えば、コンピュータは、ＦＡＸボードに加えて、データスプレッドシート、ワードプロセッサ、音声通信用のサウンドボードを含むことができる。アプリケーション能力は、プログラムのバージョンナンバーのようなアプリケーションプログラムに関するデータ処理情報を含む。アプリケーション能力は、折衝段階（段階Ｂ）ではなくてデータ転送段階（段階Ｃ）中に交換される。更に、アプリケーション能力は、データ転送段階（段階Ｃ）中に送信側ＦＡＸマシンから要求を受けたときにのみ交換される。
【００２４】
受信側ＦＡＸマシンは、ＮＳＦデータフレームにおけるアプリケーション能力の存在を指示する。送信側ＦＡＸマシンは、ＮＳＦデータフレームを受け取り、アプリケーション能力を要求するかどうかを決定する。
【００２５】
本発明は、交換されたカスタム及びアプリケーション能力リストを使用し、あるＦＡＸマシンから別のＦＡＸマシンへの転送に最も適したフォーマットでデータを与える。転送されるべきデータは、スプレッドシートの形態であり、データは、これをプリントページに変換し、ページを走査しそして標準的なファクシミリデータエンコード能力を用いてデータを送信するのではなく、そのフォーマットで転送することができる。例えば、データは、データが所定のデータフレームにおいてフォーマットされるＷｉｎｄｏｗｓ（登録商標）プリントシステムデータフォーマットのようなフォーマットにある。受信側ＦＡＸマシンがＷｉｎｄｏｗｓ（登録商標）プリントシステムデータフレームを処理できることを指示した場合には、送信側ＦＡＸマシンはそのフォーマットでデータを消費する。容易に明らかなように、受信側ＦＡＸマシンの正確な能力を判断する機能は、送信側ＦＡＸマシンが、データを転送する最も効率的な手段を使用できるようにし、ＦＡＸマシンの機能を増大する高レベルデータ形態の転送を行えるようにする。
【００２６】
又、本発明は、ファクシミリメッセージ（１つ又は複数）及び多数の他のアタッチメントをリニア化するための強力なデータ処理技術も提供する。これは、ファクシミリメッセージの種々の要素を送信のための単一の位置へ組み立てられるようにする。
【００２７】
本発明は、図２にブロック図の形態で示されたシステム１０において実施される。中央処理ユニット（ＣＰＵ）１２は、バス１６によってメモリ１４に接続される。メモリ１４は、ランダムアクセスメモリ（ＲＡＭ）及びリードオンリメモリ（ＲＯＭ）を備えている。バス１６は、データ信号、制御信号及び電力をシステム１０の種々の要素へ搬送する。フロッピーディスク又はハードディスクのような不揮発性記憶ユニット１８も、バス１６によってＣＰＵ１２に接続される。ビデオディスプレイ、ＬＣＤディスプレイ、タッチ感知ディスプレイ又は他のディスプレイのようなディスプレイ２０と、キーボード２２も、バス１６によってＣＰＵ１２に接続される。本発明の原理による動作には、上記要素の全てが必要とされるのではない。例えば、システム１０がＦＡＸマシンの一部分である場合には、ディスプレイ２０は存在せず、そしてキーボード２２は、電話型の数字キーパッドであって、ユーザがファクシミリメッセージを送ろうとするＦＡＸマシンの電話番号を入力できるようにするものである。システム１０がＦＡＸマシンの一部である場合には、不揮発性記憶ユニット１８も存在しなくてもよい。
【００２８】
又、システム１０は、システムのカスタムデータ処理能力を記憶するカスタムモード記憶エリア２６も含む。アプリケーションモード記憶エリア２８は、システム１０のアプリケーションデータ処理能力のリストを記憶する。能力キャッシュ３０は、現在設計の他のシステムから受け取ったカスタム及びアプリケーション能力のリストを記憶する。又、能力キャッシュ３０は、各特定の受信側ＦＡＸマシンの能力に関連したデータコードであって、記憶されたリストが受信側ＦＡＸマシンの現在能力を正確に反映するかどうかを指示するのに用いられるデータコードも記憶する。以下に述べるように、記憶された能力のリストは、現在設計の２つのシステム間の将来の通信に使用することができる。変換プロセッサ３２は、データファイルをデータ転送に所望される所望の形態へと処理する。データファイルをある形態から別の形態へと変換するための変換プロセッサ３２の動作は、公知であり、ここでは詳細に説明しない。
【００２９】
メッセージフォーマット手段／リニア化手段３４は、データファイル及びアプリケーション能力リストを転送に適したフォーマットに入れる。ここに示す実施例では、データファイルは、フォーマット手段／リニア化手段３４により「リニア化」される。リニア化とは、ファクシミリメッセージの種々の要素、例えば、メッセージ送信者情報、メッセージ受信者情報及びデータファイルそれ自体をリンクして、ファクシミリメッセージのこれら要素がメモリ１４内の１つの位置に入れられるようにし、ファクシミリメッセージの送信を簡単化するプロセスを指すものである。
【００３０】
メッセージフォーマット手段／リニア化手段３４は、データファイル及びアプリケーション能力リストを転送に適したフォーマットに入れる。Ｉ／Ｏインターフェイス３６は、システム１０から別のコンピュータのシステムへの実際の転送を制御する。Ｉ／Ｏインターフェイス３６の特定の形態は、特定のアプリケーションに基づくことが明らかであろう。例えば、システム１０は、ＦＡＸマシンの一部分であり、この場合は、Ｉ／Ｏインターフェイス３６はファクシミリモデムインターフェイスである。システム１０がネットワーク上の他のコンピュータに接続されたコンピュータの一部分である場合には、Ｉ／Ｏインターフェイス３６は、ローカルエリアネットワーク（ＬＡＮ）インターフェイス、シリアルインターフェイス等である。本発明は、システム１０が動作する特定のインターフェイス又は環境に限定されるものではない。物理リンク３８は、システム１０を同じ設計の別のシステム又は公知システムに接続する。Ｉ／Ｏインターフェイス３６の場合と同様に、物理リンク３８の特定の形態は、特定のアプリケーションに基づいている。物理リンク３８は、ＬＡＮケーブル、シリアルケーブル又は電話線のようなワイヤケーブルである。しかしながら、物理リンク３８は、システム１０が別のコンピュータへ遠隔接続される場合には、マイクロ波リンク又はサテライトリンクであってもよい。システム１０がＦＡＸマシンの一部である場合は、１つのＦＡＸマシンを別のＦＡＸマシンに接続する電話線が、ワイヤケーブル、マイクロ波リンク、サテライトリンク等であってもよい。本発明は、物理リンク３８の特定の形態によって限定されるものではない。
【００３１】
図３及び４のフローチャートに示されたシステム１０の動作の以下の説明は、ＦＡＸマシンに関するものであるが、本発明の原理は、ＦＡＸマシンに限定されるものではないことが明らかであろう。図３及び４のフローチャートは、送信側ＦＡＸマシンから見たものである。送信側ＦＡＸマシンは、送信及び受信側ＦＡＸマシンのデータ処理能力に基づき転送形態を決定する。或いは又、受信側ＦＡＸマシンは、受信側ＦＡＸマシンが希望する最終的なデータ形態に基づいて所望の転送形態を指定することができる。
【００３２】
ファクシミリ電話通話が図３に示すステップ１００（図１の段階Ａ）で最初に開始されたときには、送信側ＦＡＸマシンも受信側ＦＡＸマシンも他のデータ処理能力について知らない。これは、送信側ＦＡＸマシンと受信側ＦＡＸマシンとの間に以前に通信がないと仮定している。送信側ＦＡＸマシンと受信側ＦＡＸマシンとの間に以前に通信があった場合には、カスタム及びアプリケーション能力が既に交換されていて、送信側ＦＡＸマシンの能力キャッシュ３０（図２）に記憶されている。送信側ＦＡＸマシンがファクシミリ電話通話を開始する場合は、受信側ＦＡＸマシンをファクシミリ電話番号によって識別することができる。或いは又、ＦＡＸマシンは、ＣＣＩＴＴ規格に記載された既知の仕方でそれらの間に交換される識別データ（例えば、ＣＳＩデータフレーム）により識別することもできる。システム１０は、折衝段階（図１の段階Ｂ）を用いて、ＣＣＩＴＴエンコードフォーマットより上及びそれを越えるカスタム能力のリストを交換する。ステップ１０２において、カスタム能力は、ＮＳＦデータフレームを用いて交換される。カスタム能力は、受信側ＦＡＸマシンのカスタムモード記憶エリア２６（図２）に記憶されることに注意されたい。ＮＳＦデータフレームを用いて交換するカスタム能力の正確なやり方は、以下で説明する。カスタム能力は、それらが実際に使用されるかどうかに係わりなく受信側ＦＡＸマシンによって常に送信されるものである。
【００３３】
アプリケーション能力に関連した繰り返し冗長度チェック（ＣＲＣ）も、ステップ１０２においてカスタム能力と共に送信される。ユーザは、データ処理能力を時々システム１０に付加して、アプリケーション能力ＣＲＣを変更することができる。チェックサムの形態であるアプリケーション能力ＣＲＣは、記憶されたデータの有効性を決定するための公知の技術である。能力キャッシュ３０（図２）に能力が記憶されるときには、アプリケーション能力ＣＲＣが能力と共に記憶される。その後のファクシミリ通信中には、送信側ＦＡＸマシンが、受信したアプリケーション能力ＣＲＣを、受信側ＦＡＸマシンに対して既に記憶されているアプリケーション能力ＣＲＣと比較し、能力キャッシュ３０（図２）内に記憶されているキャッシュ記憶された能力が現在のものであるかどうか判断する。記憶されたアプリケーション能力ＣＲＣが、送信されたアプリケーション能力ＣＲＣに一致する場合には、能力キャッシュ３０に記憶された能力が現在の能力であり、送信側ＦＡＸマシンによって使用される。記憶されたアプリケーション能力ＣＲＣが、送信されたアプリケーション能力ＣＲＣに一致しない場合には、能力キャッシュ３０に記憶された能力は既に古いものである。
【００３４】
ＭＨ、ＭＲ及びＭＭＲのようなＣＣＩＴＴエンコードフォーマットは、前記のように、折衝段階（図１の段階Ｂ）の間のステップ１０２において交換される。
【００３５】
判断ステップ１０６において、システム１０は、受信側ＦＡＸマシンとの通信が以前にあったかどうかを判断する。上記したように、システム１０は、ファクシミリ電話番号から、又は送信側と受信側のＦＡＸマシン間で交換される識別データから、受信側ＦＡＸマシンの識別を決定することができる。受信側ＦＡＸマシンとの通信が以前にない場合には、判断１０６の結果がノーとなる。一方、受信側ＦＡＸマシンとの通信が以前にあった場合は、判断１０６の結果がイエスとなり、システム１０は、判断ステップ１１０において、最後のファクシミリ通信以来、能力リストが変更されたかどうかを判断する。能力リストは、能力キャッシュ３０（図２）内に記憶されたカスタム能力とアプリケーション能力の両方を含む。システム１０は、ステップ１０４においてカスタム能力リストと共に受け取ったアプリケーション能力ＣＲＣを、特定の受信側ＦＡＸマシンについて能力キャッシュ３０（図２）に記憶されたアプリケーション能力ＣＲＣと比較することにより、能力リストが変更されたかどうかを判断する。
【００３６】
受信側ＦＡＸマシンとの以前の通信以来、能力リストが変更されていない場合には、判断１１０の結果がノーであり、システム１０は、ステップ１１２においてキャッシュ記憶能力リストをロードする。能力リストが変更されている場合には、判断１１０の結果がイエスである。
【００３７】
判断１０６の結果がノーである（即ち、受信側ＦＡＸマシンと以前に通信がなかった）場合、又は判断１１０の結果がイエスである（即ち、最後のファクシミリ通信以来、能力リストが変更されている）場合には、システム１０は、判断１１４において、拡張能力リストを要求するかどうかを判断する。前記のように、カスタム能力リストは常に送られるが、アプリケーション能力リストは、送信側ＦＡＸマシンから要求があった場合だけ送られる。アプリケーション能力を要求するための判断は、送信側ＦＡＸマシン自体の能力によって決まる。送信側ＦＡＸマシンがアプリケーション能力を有していない場合には、受信側ＦＡＸマシンからアプリケーション能力リストを要求する必要がない。システム１０がアプリケーション能力リストを要求しない場合は、判断１１４の結果がイエスとなり、図４に示すステップ１１７において、送信側ＦＡＸマシンは、アプリケーション能力リストの要求を送信する。アプリケーション能力リストの要求に応答して、受信側ＦＡＸマシンは、ステップ１１８において、アプリケーション能力リストをシステム１０へ送信する。アプリケーション能力リストは、受信側ＦＡＸマシンのアプリケーションモード記憶エリア２８（図２）に記憶されていることに注意されたい。システム１０がアプリケーション能力リストを要求しない場合は、判断１１４の結果がノーである。この場合は、又はシステム１０がステップ１１２においてキャッシュ記憶能力リストをロードした場合には、受信側ＦＡＸマシンは、アプリケーション能力リストをシステムへ送信しない。
【００３８】
受信側ＦＡＸマシンがステップ１１８においてアプリケーション能力リストを送信した場合には、ステップ１２０において、システム１０は、既に受信しているカスタム能力及びアプリケーション能力リストを、それに関連したアプリケーション能力ＣＲＣと共に能力キャッシュ３０（図２）にキャッシュ記憶する。上記したように、送信側ＦＡＸマシンは、カスタム能力リスト及びアプリケーション能力リストの両方を能力キャッシュ３０に記憶する。カスタム能力リストを能力キャッシュ３０に記憶すると、送信側ＦＡＸマシンは、ファクシミリ電話通話が開始される前でもデータファイルの処理を開始することができる。例えば、送信側ＦＡＸマシンが、８．５”ｘ１４”の用紙に対してフォーマットされたデータファイルを有し、そして８．５”ｘ１１”の用紙しか処理できない受信側ＦＡＸマシンへデータファイルを送信するように命令された場合には、送信側ＦＡＸマシンは、能力キャッシュ３０に記憶されているこの情報を使用して、８．５”ｘ１１”のフォーマットで送信を行うようにデータファイルをスケーリングし始める。従って、記憶された能力リストは、公知技術で可能であったよりも効率の良いデータ処理及び転送を行うことができる。
【００３９】
ステップ１２２において、システム１０は、受信側ＦＡＸマシンへ転送するための最も効率の良い相互に両立するデータ形態を決定する。システムは、ステップ１１８で転送されるか又はステップ１１２で能力キャッシュ３０（図２）からロードされるアプリケーション能力リスト、ステップ１０２で交換されるカスタム能力リスト、或いはステップ１０４で交換されるＣＣＩＴＴエンコードフォーマット（ＭＨ、ＭＲ又はＭＭＲ）を用いて、相互に両立するデータ形態を選択する。
【００４０】
一般的に述べると、データファイルの最も効率的な転送形態は、カスタム及び／又はアプリケーション能力の１つ以上を使用する。例えば、送信ＦＡＸマシンは、分解能に関連したカスタム能力と、データ圧縮に関連したカスタム能力と、特定のスプレッドシートアプリケーションプログラムに関連したアプリケーション能力とを使用する。従って、データファイルの最も効率的な転送形態は、多数の能力の使用を伴うものである。
【００４１】
公知のＦＡＸマシンは、データファイルを、送信のための限定されたＣＣＩＴＴエンコードフォーマットの１つに変換する。しかしならが、システム１０の能力の交換は、多数の別々のフォーマットで送信を行えるようにする。データファイルが、受信側ＦＡＸマシンにより直接処理できるフォーマットに既にある場合には、データファイルをＣＣＩＴＴエンコードフォーマットの１つに変換する必要はない。又、データ転送それ自体は効率が良い。というのは、ＣＣＩＴＴエンコードフォーマットで行われるようにデータファイルがピクセルごとに送信されないからである。システム１０は、先ず、最も効率的な転送形態として使用するための相互に両立するアプリケーション能力が存在するかどうかを決定する。相互に両立するアプリケーション能力がない場合には、システム１０は、最も効率的な転送形態として使用するための共通のカスタム能力があるかどうかを決定する。送信側及び受信側ＦＡＸマシンは、ＣＣＩＴＴエンコードフォーマットよりも効率の高いデータ転送を行うことのできる相互に両立するデータ処理モードをもたないことがある。この場合に、システム１０は、ＣＣＩＴＴエンコードフォーマットの１つを使用する。
【００４２】
システム１０は、最も効率的にデータ転送するための中間データフォーマットを使用し、そして受信側ＦＡＸマシンが、データファイルを受信した後にそれを所望のフォーマットに変換することを必要とする。例えば、送信側ＦＡＸマシンは、図５にフォームＡと示す特定のフォーマットで記憶されたデータファイルを有し、そしてそのカスタム及びアプリケーション能力を使用して、データファイルをフォームＡからフォームＢ又はフォームＣと示された２つのデータフォームのいずれかへ変換し、そして受信側ＦＡＸマシンは、そのカスタム及びアプリケーション能力を使用して、受信データファイルをフォームＢのみからフォームＤと示されたデータフォーマットへ変換できると仮定する。送信側ＦＡＸマシンはその能力を使用してデータファイルを転送形態としてフォームＢに変換し、そして受信側ＦＡＸマシンはその能力を使用して受信データファイルをフォームＢからフォームＤへ変換する。又、受信側ＦＡＸマシンは、データファイルを、フォームＤに変換せずにフォームＢにおいて処理することもできる。従って、システム１０は、データファイルに対して最も効率的な転送形態を決定するときに送信側及び受信側ＦＡＸマシンのデータ処理能力を考慮する。同様に、システム１０は、データファイルを２回以上変換してデータファイルを所望の転送形態に入れることもできる。例えば、受信側ＦＡＸマシンがデータファイルを図６にフォームＧと示されたフォーマットでしか処理することができず、そして送信側ＦＡＸマシンがデータファイルをフォームＥと示されたその現在のデータフォーマットからフォームＦと示されたデータフォーマットへ、又はフォームＦからフォームＧへレンダリングできる場合には、システム１０は、データファイルを２回別々に変換して、データファイルを転送フォームＧに入れる。
【００４３】
図４のステップ１２４では、システム１０は、データファイルを、受信側ＦＡＸマシンへ送信するための選択された転送データ形態に変換する。ステップ１２６では、システム１０は、リニア化メッセージフォーマットを用いてデータファイルをフォーマットする。リニア化プロセスについては、以下で述べる。ステップ１２８では、システム１０は、データファイルを受信側ＦＡＸマシンへ転送する。
【００４４】
カスタム能力は、予想される使用頻度及び各能力リスト送信の困難さに基づいてアプリケーション能力から区別される。例えば、頻繁に使用される特定のデータ処理フォーマットは、常に交換されるカスタム能力リストに含まれる。頻繁に使用される能力をアプリケーション能力として分類するのは得策ではない。というのは、これは頻繁に要求されるものであって、アプリケーション能力リストを要求しそしてそれを実際に転送する時間が、それを折衝段階（図１の段階Ｂ）に単に交換する時間を越えるからである。これとは逆に、滅多に使用しない能力がある場合には、それをカスタム能力として分類することは得策ではない。というのは、それが滅多に使用されず、常に交換されるカスタム能力リストにそれを含ませるのに時間がかかるからである。カスタム能力は、アプリケーション能力よりもサイズが小さくなる傾向となる。カスタム能力データの圧縮は、サイズに限度のあるＮＳＦデータフレームにおいてカスタム能力を送信できるようにする。それ故、アプリケーション能力は、図１の段階Ｃにおいて交換される。ここに示す好ましい実施例では、カスタム能力は、システムを動作するソフトウェアの新たな改定によって更新される。
【００４５】
システム１０は、エンドユーザが新たな能力をアプリケーション能力リストに入力するためのメカニズムを備えている。図７において明らかなように、エンドユーザは、ステップ１５０において新たなアプリケーションプログラムをシステム１０に追加する。ステップ１５２において、システム１０は、アプリケーションモード記憶エリア２８（図２）に記憶されたアプリケーション能力リストに新たな能力を登録する。ステップ１５４において、システム１０は、能力の変更を指示するようにアプリケーション能力ＣＲＣを更新する。
【００４６】
本発明の原理によれば、能力リストは、あるＦＡＸマシンから別のＦＡＸマシンへ送ることができる。図８に示すように、第１のＦＡＸマシンは、その能力リストを上記のように第２のＦＡＸマシンへ転送する。第２のＦＡＸマシンは、前記したように、能力キャッシュ３０（図２）に能力リストを記憶する。第２のＦＡＸマシンは、第３のＦＡＸマシンからの要求に応答して、第１のＦＡＸマシンに対する能力リストを第２のＦＡＸマシンの能力キャッシュ３０から送ることができる。これは、第３のＦＡＸマシンが、第１のＦＡＸマシンの能力を要求する必要なく、第１のＦＡＸマシンと効率的に通信を行えるようにする。システム１０は、カスタム能力およびアプリケーション能力の両方を送る。能力の無断送信を防止するために、ＦＡＸマシンには多数の良く知られた機密構成を含ませることができる。
【００４７】
上記したように、システム１０は、ＮＳＦデータフレームに対するＣＣＩＴＴ構成を用いて、カスタム能力リストを送信する。ＦＡＸマシン間の通信はＣＣＩＴＴ規格のコマンドに適合するが、システム１０によって使用される情報及びデータフォーマットは、公知技術では分からない。ファクシミリ電話通話が最初に開始された（図１の段階Ａ）後に、システム１０は、折衝段階（図１の段階Ｂ）に入る。各ＦＡＸマシンは、被呼ステーション識別（ＣＥＤ）信号に続いてＮＳＦデータフレームを送信する。本発明の原理によれば、システム１０を含む受信側ＦＡＸマシンは、標準的ファクシミリデータ処理能力を越えた（即ち、ＭＨ、ＭＲ又はＭＭＲを越えた）カスタムデータ処理能力があることを送信側ＦＡＸマシンに指示する１つ以上のＮＳＦデータフレームを送信する。これらのＮＳＦデータフレームは、基本的な能力を記述する情報を含むと共に、受信側ＦＡＸマシンがアプリケーション能力を有するかどうかを指示するデータフィールドも含んでいる。又、ＮＳＦデータフレームは、上記したアプリケーション能力ＣＲＣも含んでいる。
【００４８】
システム１０は、種々のメッセージヘッダ、データヘッダにデータファイルをアタッチし（多数のメッセージが送られる場合は複数ファイル）、そしてファクシミリメッセージを送信する。ヘッダ及びデータファイルは、メッセージフォーマット手段／リニア化手段３４（図２）によってフォーマットされる。メッセージフォーマット手段／リニア化手段３４の動作の詳細を以下に述べる。システム１０がＧ３のＦＡＸマシンにデータファイルを送信する場合には、システムは、ＤＩＳデータフレームを用いて、使用可能なＣＣＩＴＴエンコードフォーマットからＣＣＩＴＴエンコードフォーマットのリストを構成する。送信されるべきデータファイルが、受け入れられるＣＣＩＴＴエンコードフォーマット（ＭＨ、ＭＲ、又はＭＭＲ）に全て現在ある場合には、システム１０は、図１の段階Ｃにデータファイルを送信する。
【００４９】
システム１０が同じ設計のシステムと通信する場合には、受信側ＦＡＸマシンは、カスタム能力リストを含む１つ以上のＮＳＦデータフレームを送信する。ＣＣＩＴＴエンコードフレームを含むＤＩＳデータフレームも、同時に送られる。非標準的な設定（ＮＳＳ）データフレームは、それに続くファクシミリメッセージがシステム１０の仕様に基づいてフォーマットされたのであって、ＣＣＩＴＴ規格に基づいてフォーマットされたものではなく、そしてファクシミリメッセージは１つ以上のカスタム又はアプリケーション能力を使用していることを指示するのに使用される。
【００５０】
又、システム１０は、良く知られたターンアラウンドポーリングを行うこともできる。ターンアラウンドポーリングの状態では、送信側のＦＡＸマシンは、受信側ＦＡＸマシンがファクシミリメッセージを送信するよう要求する。ターンアラウンド要求が送信された場合には、送信側ＦＡＸマシンは、ＣＣＩＴＴの非標準的コマンド（ＮＳＣ）構成を用いてそのカスタム能力リストを送信する。ＮＳＣのフォーマットはＮＳＦと同一である。ＮＳＣは、発呼加入者識別（ＣＩＧ）及びデジタル送信コマンド（ＤＴＣ）データフレームを伴う。ＤＴＣデータフレームは、ＤＩＳデータフレームとフォーマットが同じである。その後のターンアラウンドにおいて、カスタム能力を再び交換する必要はない。それ故、最小のＮＳＣのみが送信される。
【００５１】
カスタム能力のフォーマット化
カスタム能力として選択されるエンコード機構は、データのコンパクトさと融通性との間の兼ね合いとなる。カスタム能力は、密接に関連した能力のグループに分割され、各能力グループが個別にエンコードされる。これは、古いグループ全体を削除し及び／又は新たなグループを追加できるようにすることにより容易に拡張される。図９のＦＡＸプロトコルレベルにある能力受信者は、受信したＮＳＦデータフレームを一度に１グループずつ分解し、未知のグループを破棄する。これは、完全な後方及び前方互換性を許す（即ち、本発明のシステムは、より多数の又はより少数の能力を有する同じ設計の他のシステムから能力を交換することができる）。更に、ＮＳＦ（又はＮＳＣ）データフレームは、デジタル暗号規格（ＤＥＳ）のような多数の公知のデータ暗号化アルゴリズムの１つによって暗号化することができる。これは、システム１０による能力及びファクシミリメッセージの無断の交換を防止し、能力情報をライン盗聴のような行為に対して機密保持する。
【００５２】
各能力グループは、均一な能力グループヘッダを有し、これは、後続するデータフィールドのバイト数を指示するグループ長さフィールドで始まる。能力の受信者がこのグループを理解しない場合には、そのグループ長さで指定されたバイト数をスキップすることができる。又、グループ長さは、能力の受信者が、１つの能力グループがいつ終わりそして新しい能力グループがいつ始まるかを知ることができる。このグループ長さの後に、特定の能力グループの独特な識別を与えるＧｒｏｕｐＮｕｍ（グループ番号）データフィールドが続く。グループ長さ及びグループ番号データフィールドを越えるグループ能力構造の他部分は、任意のフォーマット及び可変長さを有する（バイトは全数でなければならない）。能力の各グループに対するフォーマットは、グループ長さ及びグループ番号データフィールドに続いて変化する。
【００５３】
均一能力ヘッダのフォーマットをテーブル１に示す。
テーブル１
typedef struct
｛
WORD    GroupLength     :6;    //このヘッダに含まれるバイトでのグループ長
WORD    GroupNum        :5;    //GROUPNUM value の１つ
｝
BCHDR,near*NPBCHDR,far*LPBCHDR;
【００５４】
グループ長さフィールドは、ヘッダによって占有されたバイトを含む能力グループのサイズ（バイト）である。
【００５５】
次の能力グループ、即ち標準（Ｓｔａｎｄａｒｄ）、識別子（Ｉｄｅｎｔｉｆｉｅｒ）、像（Ｉｍａｇｅ）、ポーリング能力（Ｐｏｌｌｉｎｇ  Ｃａｐａｂｉｌｉｔｙ）、及びポール要求（Ｐｏｌｌ  Ｒｅｑｕｅｓｔ）が現在定義されている。これらは、以下に説明する。又、このエンコード機構の拡張性により、他の能力グループも定義できる。現在定義されている能力グループのＧｒｏｕｐＮｕｍデータフィールドの値は、次の通りである。
#define GROUPNUM STD         1
#define GROUPNUM POLLCAPS    2
#define GROUPNUM POLLREQ     3
#define GROUPNUM IMAGE       4
#define GROUPNUM TEXTID      5
【００５６】
或いは、能力グループは、グループ番号データフィールドが要求されない所定のシーケンスで送ることができる。
【００５７】
標準能力グループのフォーマットは、以下のテーブル２に示す。
0004298802.tif 000002
【００５８】
標準能力グループは、前記したようにグループ長さ及びグループ番号データフィールドを有する。他のデータフィールドは、システム１０の能力と、これらの能力をサポートするソフトウェアのバージョンとを指示する。例えば、ｖＭｓｇＰｒｏｔｏｃｏｌデータフィールドは、リニア化メッセージの使用性及びリニア化手段のバージョンを指示する。リニア化メッセージについて以下に述べる。他のデータフィールドは、ホストオペレーティングシステムを指示すると共に、短いフラグ、対話プロトコル、データモデム変調、及びデータリンクプロトコルに対してサポートがもしあればそれを指示する。
【００５９】
テーブル１のデータフィールドに示された種々の能力のバージョン番号は、その特定の能力に対するサポートのレベルを指示するのに使用される。バージョンプレフィックス（小文字のｖ）に続くデータフィールドは、予め定められたバージョンデータフィールドフォーマットを用いた整数である。００は、特定の能力が全くサポートされないことを意味する。００より大きな整数は、サポートのレベルを指示する。例えば、データ値１は、ソフトウェアの第１バージョンを指示する。データ値２は、バージョン２を指示し、これは、バージョン２及びバージョン１の全ての観点をサポートする。従って、システム１０をサポートするソフトウェアは、上位互換性である。システム１０の第１のものが、同じ設計の第２のシステムと通信できるのは、この第２システムが、特定の特徴に対して第１のシステムのバージョン番号に等しいか又はそれより大きいバージョン番号をもつ場合である。
【００６０】
テーブル１に示した圧縮データフィールドは、図１の段階Ｃに送信されるリニア化メッセージに対するＣＣＩＴＴフォーマット（即ち、ＭＨ、ＭＲ、ＭＭＲ）に加えて、データ圧縮方法の利用性を指示する。このデータフィールドが００であって、付加的な圧縮能力が使用できない場合には、ＣＣＩＴＴエンコードフォーマット（即ち、ＭＨ、ＭＲ、ＭＭＲ）を使用できないことを意味するものではない。ＣＣＩＴＴエンコードフォーマットは、前記したようにＤＩＳに記述される。
【００６１】
システム１０は、可変長さデータフィールドに対応できねばならない。全ての能力グループ構造体は、００のデータフィールド値が特定グループがサポートされないか又は使用できないことを表すように定められる。これは、送信されるべきグループ構造体を必要なだけしか要求しないことにより、送信されるデータを最小にする。システム１０は、最後の非ゼロバイトを含むそこまでの能力しか送信しない。グループ長さデータフィールドは、常に、実際に送られるデータバイトの数にセットされ、グループ長さ及びグループ番号データフィールドのサイズを含む。例えば、受信側ＦＡＸマシンがデータモデム変調及びデータリンクプロトコルをサポートしない場合には、標準グループの最初の４つのデータバイトのみを送信側ＦＡＸマシンへ送信する。送信側ＦＡＸマシンは、その送信側ＦＡＸマシンにおけるソフトウェアのバージョン番号に基づいて、各能力グループに対してある数のデータバイトを予想する。ＮＳＦが送信側ＦＡＸマシンにより受信され、そしてその受信した実際のバイト数が、グループ長さデータフィールドで指示された予想した長さよりも小さい場合は、システム１０は、欠落データバイトが明確に００にセットされた状態で全構造体が受け取られたかのように、欠落バイトを００にセットする。この状態は、送信側ＦＡＸマシンが受信側ＦＡＸマシンよりも高いソフトウェアバージョン番号を有するときに生じる。従って、送信側ＦＡＸマシンは、受信側ＦＡＸマシンが処理できる以上の能力を使用することはない。しかしながら、グループ長さが送信側ＦＡＸマシンにより予想された長さより大きい場合には、送信側ＦＡＸマシンは、余計なバイトを無視する。この状態は、受信側ＦＡＸマシンが送信側ＦＡＸマシンより高いソフトウェアバージョンを有するときに生じる。従って、送信側ＦＡＸマシンは、それが処理できる以上の能力を無視する。
【００６２】
能力グループ構造の１つは、識別子能力グループであり、以下のテーブル３に示す。
0004298802.tif 000003
【００６３】
識別子能力グループのスタートは、前記したグループ長さ及びグループ番号データフィールドを含む。テキスト識別データフィールドは、ユーザ識別として働き、遠隔当事者のネーム（名前）及びファクシミリ電話番号を含む。テキスト識別は、ストリングにおけるバイトを読むときに送信順序がストリングにおけるバイトの左から右への順序と同じになるように構成される。これは、ＣＣＩＴＴ推奨規格Ｔ．３０に指定されたＣＳＩ、ＴＳＩ及びＣＩＧフレームのバイト順序と逆である。
【００６４】
テキストエンコードデータフィールドは、システム１０によってサポートされるテキストエンコードの形式を指示する。テキストエンコードデータフィールドは、テキスト識別のキャラクタセットを指定するのに使用される。データ値０００は、基本的なＡＳＣＩＩコードを指定し、そして残りの値は、ＤＢＣＳ、ＵＮＩＣＯＤＥ又は漢字のような他のキャラクタ、及びＡＳＣＩＩの種々の国語変化を指定するのに使用される。
【００６５】
又、システム１０は、標準ＣＣＩＴＴ推奨規格Ｔ．３０の像能力を越える進歩した像形成能力を指定するための像形成能力グループも備えている。ＣＣＩＴＴ推奨規格Ｔ．３０の像形成能力は、ＤＩＳデータフレームに指定されている。像形成能力グループ構造は、以下のテーブル４に示す。
テーブル４
typedef struct
｛
WORD    GroupLength     :6;      //このグループの長さ（バイト）
WORD    GroupNum        :5;      //グループ番号、GROUPNUM IMAGE でなければ
ならない
WORD    fAnyWidth       :1;      //ページピクセル巾は厳密にT.30でなければ
ならない
WORD    vRamboVer       :4;      //MSリソースベースのプリントフォーマット
のバージョン
//受け入れられる
//２バイト
BYTE    vCoverAttach    :3;      //受け入れられたデジタルカバーページのバー
ジョン
BYTE    vAddrAttach     :2;      //受け入れられたアドレスブックアタッチメン
トのバージョン
BYTE    vMetalFile      :2;      //受け入れられたGDI メタファイルのバージョ
ン
BYTE    Undefined1      :1;
//３バイト
BYTE    HiResolution    :4;      //T.30に加えてサポートされる分解能
BYTE    HiEncoding      :4;      //T.30に加えてサポートされるエンコードフォ
ーマット
//４バイト
BYTE    CutSheetSize             //サポートされるカットシート（非ロール）ペ
ーパサイズ
//５バイト
BYTE    fOddCutSheet    :1;      //非標準カットシートサイズも得られる
BYTE    Undefined2      :7;
//６バイト
｝
BCIMAGE,far*LPBCIMAGE,near*NPBCIMAGE;
【００６６】
グループ長さ及びグループ番号フィールドは、既に説明した。種々の他のデータフィールドは、ページ巾がＴ．３０規格から若干異なってもよいか又は厳密に一致しなければならないかを記述する。又、サポートされるマイクロソフト（登録商標）リソースベースプリンティングアーキテクチャデータフォーマットのバージョン及びサポートされるデジタルカバーページのバージョンも、もしあれば、記述される。デジタルカバーページは、送信者ではなくて受信者においてビットマップにレンダリングされ、従って、送信時間の節約となる。又、データフィールドは、サポートされるアドレスブック交換、及びサポートされるＧＤＩ（マイクロソフト（登録商標）Ｗｉｎｄｏｗｓ（登録商標）グラフィックデバイスインターフェイス）メタファイルのバージョンも、もしあれば、記述する。又、これらは、Ｔ．３０標準分解能及びエンコードに加えてサポートされる進歩した分解能エンコード機構も、もしあれば、記述する。又、これらは、使用できるカットシート（普通紙）ペーパサイズも、もしあれば、記述し、そして付加的な非標準ペーパサイズが使用できるかどうかを指定する。これらの非標準ペーパサイズの詳細は、上記のようにアプリケーション能力を要求することにより得られる。これらのパラメータは、システム１０に取り付けられた特定のＦＡＸマシンハードウェアに基づいて異なる。例えば、システム１０は、ファクシミリインターフェイスボードを有していてレーザプリンタに接続されたコンピュータの一部分である。分解能及びペーパサイズパラメータは、コンピュータに接続されたレーザプリンタによって制御される。
【００６７】
又、システム１０は、受信側ＦＡＸマシンがポーリング要求に応答する機能を記述するポーリング能力グループも含んでいる。ポーリング能力グループに対するグループ構造は、以下のテーブル５に示す。
0004298802.tif 000004
【００６８】
他の能力グループの場合と同様に、ポーリング能力グループは、前記したグループ長さ及びグループ番号でスタートする。又、ポーリング能力グループは、低速ポーリング、高速ポーリング、メッセージネームによるポーリング、受信者によるポーリング及びファイルネームによるポーリングの利用性を指示するためのデータフィールドも備えている。又、ポーリング能力グループは、アプリケーション能力、高速ターンアラウンド（以下に述べる）に対するサポート（又はサポートの欠落）、及びもしあれば、メッセージ中継に対するサポートのバージョンの利用性を指示するためのデータフィールドも有している。ポーリング能力は、データへの無断アクセスを防止するためのパスワードのような機密メッセージにより制限される。又、ポーリング能力グループは、上記のアプリケーション能力に対するアプリケーション能力ＣＲＣのデータフィールドも含む。このデータフィールドの値は、登録されたアプリケーション能力がない場合に００である。
【００６９】
受信者能力が受け取られた後に、システム１０は、最適な通信フォーマットを決定し、送信されるべきデータをフォーマットに変換する。又、受信側ＦＡＸマシンに、この特定の送信のために呼び出されたＴ．３０規格の能力を指示するＤＣＳフレームを送信する。リニア化フォーマットに基づいてフォーマットされたメッセージを送信する場合には、更に、ＮＳＳフレームも送信する。ＮＳＳフレームのフォーマットは、以下のテーブル６に示す。
0004298802.tif 000005
データフィールドは、送信されようとしているリニア化メッセージから呼び出されるリニア化フォーマットのバージョンか、又は任意であるが、呼び出される対話プロトコルのバージョンを記述する。
【００７０】
ＤＣＳ及びＮＳＳに続いて、通信は段階Ｃに入り、データが送信される。データは、Ｔ．３０エンコード仕様に基づいてもよいし、或いは前記したようにリニア化フォーマットであってもよい。リニア化フォーマットにおいては、システム１０によって送信されるデータファイルは、多数の既知のデータ圧縮技術によって圧縮される。同様に、システム１０によって送信されるデータファイルは、多数の既知の暗号化アルゴリズムによって暗号化される。
【００７１】
ポーリング
システム１０は、進歩したポーリング特徴を有している。これは、ユーザが、文書ネーム又はファイルネームを用いて同じ設計をもつ別のものから文書又はファイルを要求できるようにする。又、ユーザが、同じ設計の別のものから、ユーザにアドレスされてピックアップ待ちとなっているメッセージを要求できるようにする。アプリケーション能力（前記した）をユーザにより又は自動的に要求できるようにする。ポーリングは、通話内にそれ自身で完了することもできるし、メッセージが最初に送られて、次いで、ポーリングが開始されるような通話の一部分であってもよい。ポーリングは、ターンアラウンドを生じさせることによって開始される。これは、次のように行われる。
【００７２】
Ｔ．３０動作中に、送信側ＦＡＸマシンは、常に通信ラインの制御権を有している。ポーリング動作を開始するために、送信側ＦＡＸマシンは、送信側及び受信側ＦＡＸマシンがその役割を交換する（即ち、送信側ＦＡＸマシンが受信側ＦＡＸマシンとなりそして受信側ＦＡＸマシンが送信側ＦＡＸマシンとなる）ようなターンアラウンドを実行しなければならない。Ｔ．３０規格において、ターンアラウンドは、ＤＩＳフレームを受信した直後に開始される。これは、ポーリング動作が通話の唯一の目的であるときには充分であるが、送信が完了した後にポーリングを実行すべきときには、プロトコルのこの点を待機することにより、約６秒の遅延が生じ、通信コストを増加する。この問題を解決するために、本発明は、以下に述べる「高速ターンアラウンド」方法を組み込んでいる。
【００７３】
Ｔ．３０プロトコルにおいては、ページに続くターンアラウンドの通常のシーケンスは、ＥＯＭ−ＭＣＦ−Ｔ２時間切れ−（ＮＳＦ）ＤＩＳ−（ＮＳＣ）ＤＴＣである。システム１０の高速ターンアラウンド方法は、受信者の能力が通話のスタート時に既に受け取られており、従って、ＤＩＳを再び受信する必要はないということを利用する。それ故、送信者は、Ｔ２時間切れ（Ｔ．３０で定められた６秒）及びＤＩＳを待機するのではなく、ＭＣＦの受信の直後に、ＮＳＣ及び他のオプションフレームを任意に伴うＤＴＣを送信する。それ故、高速ターンアラウンドシーケンスは、ＥＯＭ−ＭＣＦ−（ＮＳＣ）ＤＴＣとなり、これは、ターンアラウンド時間を大巾に減少する。
【００７４】
ポーリングはシステム１０により次のように行われる。システム１０は、１つ以上のポール要求を他のマシンへ送信する。各ポール要求は、文書又はメッセージ名、又はファイル名、或いは受信者アドレスより成り、任意にパスワードを伴う。これらの要求は、ポーリングが単一通話において送信に続く場合には、手前の送信の段階Ｃ部分中に高速度でリニア化形態において送信される。手前の送信がない場合は、ポーリング要求は、ＤＴＣを伴うフレームにおいてターンアラウンド中に送られる。フレームにおけるデータフィールドは、次の通りである。
【００７５】
各ポーリング要求文書又はメッセージ名、ファイル名、或いは受信者アドレスは、ＳＥＰフレームにおいて送信される。要求が関連パスワードを有する場合には、これが、関連ＳＥＰフレームの直後のＰＷＤフレームに送信される。ＳＥＰ及びＰＷＤフレームには、ＮＳＣフレームが付随する。これは、ＮＳＦ（上記した）と厳密に同様にフォーマットされ、全ての送信者能力を含んでいる。更に、このＮＳＣは、ポール要求グループを含んでいる。このグループのフォーマットを、以下のテーブル７に示す。
0004298802.tif 000006
【００７６】
データフィールドは、ポーリングが完了した後に送信者がコールバックの制御を要求するかどうか、又は通話を単に終了すべきかどうか、又、ＮＳＣがポーリング要求の一部として送られるかストール（以下に述べる）の一部として送られるかを記述する。又、フィールドは、アプリケーション能力リストが要求されているかどうか、ポーリング要求が付随のＳＥＰ及びＰＷＤフレーム（上記した）に含まれているか手前の段階Ｃに送られたかも指定する。又、データフィールドは、文書名によるポーリング、受信者名によるポーリング及び／又はファイル名によるポーリングが呼び出されるかどうかも指定する。
【００７７】
このターンアラウンドに応答して、受信側ＦＡＸマシンは、送信側ＦＡＸマシンの役割を果たし、要求された情報（アプリケーション能力、ポールメッセージ及び／又はデータファイル）を送信する。システム１０は、ターンアラウンド動作に応答する前に、パスワードを照合する等の適当な予防的機密保持策をとる。
【００７８】
ポーリング要求が出されたときに、ポーリングされているＦＡＸマシンは、ポーリングされている文書、メッセージ又はファイルを位置決めし、検索しそして適切にフォーマットするのに、ある程度の時間を必要とする。Ｔ．３０規格は、これについては何の作用も与えない。ターンアラウンドに続くある限定された時間内にポーリング要求が受け取られない場合には、接続が時間切れとなりそして終了される。本発明は、ポーリングされたデータを検索する間に被ポーリング者(pollee)がポーリング者(poller)を「ストール」するための手段を組み込んでいる。このストール機構は、ポーリングに適用できるが、接続の全ての段階及び機能に一般的に適用でき、機密メッセージ送信の確認、中継命令の確認、等の他の環境のもとで遅延が要求されるときにストールするのに使用される。
【００７９】
現在設計のシステムは、ＮＳＣフレームを付随するＤＴＣフレームを次のフォーマットで送信することによりストールする。この場合に、ＮＳＣフレームは、上記のポーリング要求グループを含む。このグループのＴｕｒｎＲｅａｓｏｎデータフィールドは、上記の値ＴＵＲＮ ＷＡＩＴにセットされる。これは、被ポーリング者が要求を処理することを指示し、そして更にある時間を必要とする。このフレームを受け取ると、ポーリング者、即ちこの設計のシステムは、ポーリング要求グループを含むＮＳＣを付随するＤＴＣフレームで応答し、ＴｕｒｎＲｅａｓｏｎフィールドがＴＵＲＮ ＰＯＬＬにセットされる。しかしながら、ＳＥＰ及びＰＷＤフレームは、もしあっても、２回送られることはない。それ故、ポーリング者及び被ポーリング者は、被ポーリング者が要求に対する応答を送信する準備ができるまで、ＮＳＣ−ＤＴＳ対（ＴｕｒｎＲｅａｓｏｎフィールドがＴＵＲＮ ＰＯＬＬ及びＴＵＲＮ ＷＡＩＴに各々セットされた）を前後に送信する。予防手段として、遅延が甚だしく長くなった場合にはいつでも各側が接続を終了することができる。
【００８０】
メッセージフォーマット手段／リニア化手段
システム１０は、図１の段階Ｃに送信されるデータであって、アプリケーション能力及びデータファイルファクシミリメッセージを含むデータに対し、独特のデータ構造を与える。ファクシミリメッセージそれ自体は、データファイル及びデータヘッダを含む種々の要素を備えている。メッセージフォーマット手段／リニア化手段３４（図２）は、ファクシミリメッセージの種々の要素を取り入れ、全ての指定要素を含むリニア化されたファクシミリメッセージを形成する。
【００８１】
図９に示すように、データファイル記憶エリア２００は、受信側ＦＡＸマシンへ送信されるべきデータファイル（１つ又は複数）を備えている。データファイル記憶エリア２００は、上記のように、変換プロセッサ３２によって所望の転送形態に既に変換されている１つ以上のファイルを含む。或いは又、フォーマット手段／リニア化手段３４は、データファイル記憶エリア２００を一時的なバッファとして使用してデータ流を入力として受け入れることができる。例えば、データファイル記憶エリア２００は、スキャンエンジン（図示せず）によって走査されて所望の転送形態にリアルタイムで変換されるデータに対し、一時的バッファとして働くことができる。従って、リニア化手段／フォーマット手段３４は、リニア化のプロセスを開始するために、データファイル全体を転送形態に変換してデータファイル記憶エリア２００に記憶する必要はない。メッセージ受信者、受信者アドレス等を含むデータヘッダは、ヘッダ記憶エリア２０２に記憶される。データファイル記憶エリア２００及びデータヘッダ記憶エリア２０２は、メモリ１４（図２）の一部分でもよいことに注意されたい。ＦＡＸマシンが受信側ＦＡＸマシンである場合には、メッセージフォーマット手段／リニア化手段３４は、アプリケーション能力記憶エリア２８におけるアプリケーション能力リストを処理し、送信側ＦＡＸマシンがアプリケーション能力リストの要求を送信した場合にこれを送信する。
【００８２】
ファクシミリメッセージの種々の要素は、ＦＡＸマシン内の異なるエリアに記憶される。種々の要素の関係は、メッセージオブジェクト２０４に与えられる。このメッセージオブジェクト２０４は、メモリ１４（図２）の一部分であってもよい。メッセージオブジェクト２０４は、メッセージフォーマット手段／リニア化手段３４へ送られ、ファクシミリメッセージの全ての要素の位置及び形式をメッセージフォーマット手段／リニア化手段３４に指示する。メッセージオブジェクト２０４は、データヘッダ記憶エリア２０２におけるデータヘッダを指すポインタを含み、そして該データヘッダは、データファイル記憶エリア２００における対応データファイルを指すポインタを含んでいる。多数のデータファイルを送信すべき場合には、データヘッダ記憶エリア２０２は、各データファイルごとに個別のデータヘッダを含み、その各々は、データファイル記憶エリア２００における対応データファイルを指す。
【００８３】
メッセージフォーマット手段／リニア化手段３４は、メッセージオブジェクト２０４に含まれたファクシミリメッセージの種々の要素を処理し、完全なファクシミリメッセージを形成する。完全なファクシミリメッセージとは、「リニア化されたメッセージ」を指す。データファイルをアタッチし、それらを適切なシーケンスに入れ、そしてそれらを適切なヘッダに関連させるプロセスを、「リニア化」と称する。システム１０は、完全なファクシミリメッセージの全ての必要な要素を含むリニア化メッセージを、ファクシミリメッセージ構成に大きな融通性を許す独特のやり方で形成する。リニア化されたファクシミリメッセージは、ファクシミリメッセージの形式、受信者の数、等を識別する情報を含む１つ以上のヘッダを含んでいる。完全なファクシミリメッセージは、メモリ１４（図２）の一部分であってもよいメッセージ出力バッファ２０６に記憶される。完全なファクシミリメッセージは、受信側ＦＡＸマシンに送信される。容易に明らかなように、リニア化された全ファクシミリメッセージが、受信側ＦＡＸマシンとの送信を開始するためにメッセージ出力バッファ２０６に存在する必要はない。典型的に、送信ＦＡＸマシンは、メッセージ出力バッファ２０６にデータが得られるようになるや否や、送信を開始する。上記したように、メッセージフォーマット手段／リニア化手段３４は、スキャンエンジン（図示せず）が文書を走査するときにデータ流をリアルタイムで処理することができ、そしてＩ／Ｏインターフェイス３６（図２）は、リニア化されたファクシミリメッセージを、それがメッセージフォーマット手段／リニア化手段３４によってメッセージ出力バッファ２０６に入れられたときに送信する。
【００８４】
リニア化されたファクシミリメッセージは、受信者リスト情報及び主題情報を含む。公知技術では、ユーザは、ファクシミリカバーページをこの情報で手動で完成することが要求される。これに対して、リニア化されたメッセージは、１つ（又はそれ以上）の受信者に対しリニア化されたメッセージをマークすることができ、従って、システム１０は、リニア化されたファクシミリメッセージを自動的にルート指定することができる。送信側ＦＡＸマシンは、この情報を使用して単一の受信側ＦＡＸマシンにおける受信者を単一グループへとグループ編成し、送信側ＦＡＸマシンが受信側ＦＡＸマシンへ１つのリニア化ファクシミリメッセージを送信するだけでよいようにする。受信側ＦＡＸマシンは、そのマークを使用して、受信側ＦＡＸマシンがメッセージをルート指定しなければならない特定の受信者を識別することができる。
【００８５】
データファイルは、上記のように、種々の転送形態の１つである。メッセージフォーマット手段／リニア化手段３４は、慎重さを要するデータを保護するために暗号化能力も備えている。この場合に、データファイルに接続されたリニア化ファクシミリメッセージの全ての部分が、ＤＥＳのような種々の公知のデータ暗号化アルゴリズムを用いて暗号化される。
【００８６】
リニア化されたメッセージの基本的な構造が図１０に示されている。リニア化されたメッセージ２５０は、４つの部分を含んでいる。第１の部分はリニアヘッダ２５２であり、これは、システム１０において簡単なＣプログラミング言語データ構造体を用いて定められる。リニアヘッダ２５２の構造を以下のテーブル８に示す。
0004298802.tif 000007
【００８７】
LINMSG POLLREQ  ADDRESS
特定アドレスに対し文書をポールする。拡張ヘッダは、送信者情
報、メッセージが所望されるアドレス（ポールネームとして）及
び決定したパスワードを含んでいること。
LINMSG POLLREQ  FILE
受信者システムにおいてディレクトリ／ファイルをポールする。
拡張ヘッダは、送信者情報、アクセスされるべきファイルシステ
ム経路（ポールネームとして）及び決定したパスワードを含んで
いること。
LINMSG POLLREQ  MSGNAME
特定のメッセージネームをポールする。拡張ヘッダは、送信者情
報、所望のメッセージ名（ポールネームとして）及び決定したパ
スワードを含むこと。
LINMSG POLLREQ  G3
標準G3適合ポール要求。受信者マシンに記憶されたファイルに対
するポール。ポールネームもパスワードも必要ない。
【００８８】
LINMSG RELAYREQ
これは中継メッセージを送信する要求。パスワードの有効性が必要な場合は、拡張ヘッダはパスワードを含む。
uFlags
以下のいずれかの組み合わせ
LIN  ENCRYPTED
メッセージデータが暗号化されることを示す。
LIN  IMAGE  ONLY
メッセージデータがレンダリングされた像のみを含むことを指示する。
LIN  RAWDATA  ONLY
メッセージデータ部分が生の非フレームデータより成ることを指示する。このフラグがセットされると拡張ヘッダは、このデータの暗号を含まねばならない。このフラグは、ワイヤのデータに対してセットされた*NEVER* である。これは、クライエントとトランスポートとの間で効率的なデータ交換を行えることのみを意味する。
【００８９】
uNumRecipients
このメッセージが意図された受信者の数を知らせる。
rguRecipTypes[] アレーのサイズも指示する。
この受信に対し受信システムが実行する必要のある動作の種類
を各エレメントが指示するサイズuNumRecipientsのアレー。送
信側マシンは、このメッセージのインスタンスを受信者に送る
前にこれらの形式を更新する必要がある（以下の例を参照）。
受信者に関する他の全ての詳細な情報は、拡張ヘッダにある。
種々の形式は、次の通り。
RECIP  DISPLAY
メッセージのこのインスタンスは、この受信に意図されない                         。
表示目的でのみ情報が与えられる。
RECIP  LOCAL
受信者は、受信側マシンに対してローカルである。
【００９０】
RECIP  RELAY
一連の中継点を経て受信者へ到達しなければならない。拡張ヘッダのuHopIndex フィールドは、受信者が中継点である場合に現在ホップに入る。uHopInde                          x フィールドは、他の全てのホップのリンクされたリストを形成する。
RECIP  RELAYPOINT
中継受信者の１つに対する中継点である。メッセージパスワード及びパラメータは、中継パスワードとオプションを指定する。NextHopIndexは、このルートにもしあれば、次の中継点を指定する。
【００９１】
リニアヘッダ２５２のデータ構造は、メッセージ２５０のオフセット０に配置される。リニアヘッダ２５２は、メッセージの形式を適宜セットしてシステム１０が上記のリニア化メッセージマーキング機能を使用できるようにするために、多数の点においてアクセスされる必要がある。典型的に、フォーマットは、リニア化メッセージ２５０に対して一度形成され、そしてリニア化メッセージが各受信者へ送られるときに、システム１０は、その受信者形式をＬＯＣＡＬとマークしそして他の全てをＤＩＳＰＬＡＹとマークする。例えば、メッセージは、各々異なるマシン（電話番号）に２つの受信者Ａ及びＢを有すると仮定する。受信者Ａに送信するときは、受信者形式は、受信者Ａ：ＲＥＣＩＰ ＬＯＣＡＬ及び受信者Ｂ：ＲＥＣＩＰ ＤＩＳＰＬＡＹとマークされねばならない。受信者Ｂに送信するときは、受信者形式は、受信者Ａ：ＲＥＣＩＰ ＤＩＳＰＬＡＹ及び受信者Ｂ：ＲＥＣＩＰ ＬＯＣＡＬとマークされねばならない。オフセット０でスタートしてＣプログラミング言語のデータ構造を使用することにより、これを効率的に行うことができる。
【００９２】
メッセージフォーマット手段／リニア化手段３４は、メッセージオブジェクト２０４を、１組の特性、０以上のアタッチメントのリスト、及び０以上の受信者のリストを有するものとしてエンコードする。各特性は、特性ＩＤ、特性形式、及び特性値より成る。特性ＩＤは、特定のデータフィールドを識別する。特性形式は、その特性形式に合致する実際のデータを含むフィールドに含まれるデータの形式を識別する。メッセージ特性の１つの例は、メッセージ主題である。この例では、特性ＩＤは、メッセージの特性をメッセージ主題として識別する数値である。特性形式はストリングであり、特性値は、特定メッセージに対する主題を表すストリングデータである。
【００９３】
メッセージフォーマット手段／リニア化手段３４は、データヘッダ記憶エリア２０２に記憶された各アタッチメントを１組の特性としてエンコードする。アタッチメントとは、ワード処理文書のようなデータファイルであって、リニア化されたファクシミリメッセージにアタッチされるものである。アタッチメントヘッダと称されるデータヘッダは、データヘッダ記憶エリア２０２に記憶され、それ自体、１組の特性である。アタッチメント特性の一例は、アタッチメントのデータ形式である。この場合に、特性ＩＤは、アタッチメント特性をデータ形式として識別する数値であり、特性形式は、整数であり、そして特性値は、データをワードプロセス文書として識別する数値である。データヘッダ記憶エリア２０２におけるアタッチメントヘッダの特性の１つは、データファイル記憶エリア２００におけるワードプロセスデータファイルの位置を指す。又、メッセージフォーマット手段／リニア化手段３４は、各受信者オブジェクトを１組の特性としてエンコードする。特性の１つは、受信者の形式を記述する。受信者は、リニア化されたファクシミリメッセージの直接受信者であってもよいし、１つ以上の中継点を介して間接的にアドレスすることもできるし、或いは中継点自体の記述であってもよい。受信者特性の一例は、受信者のファクシミリ電話番号である。特性ＩＤは、受信者特性を受信者ファクシミリ電話番号として識別する数値であり、特性形式は、ストリングであり、そして特性値は、受信者のファクシミリ電話番号を表すストリングである。
【００９４】
テーブル８のメッセージ形式フィールドｕＭｓｇＴｙｐｅは、送られるメッセージの形式を指示する。メッセージに含まれる１組の特性は、メッセージ形式に基づいている。システム１０は、幾つかのメッセージ形式を定める。メッセージ形式のメッセージオブジェクトは、その形式にとって独特の特性又は特性値と、その形式のメッセージオブジェクトの受信に応答してとられる動作とによって区別される。各メッセージ形式に対し、システム１０は、そのメッセージ形式に使用される各オブジェクトの幾つかの標準的な特性を定める。これらの特性は、メッセージオブジェクトの「真」（ユーザレベル）の情報を含む。又、各メッセージ形式に対し、システム１０は、その形式のメッセージオブジェクトを受信した際にとらねばならない特定の動作を定める。ある特性は、全ての実施によりサポートされないことがあり、即ち特性によって要求される動作を全てとらず、サポートが充分に定められたときにそれらの意味において依然「標準」であることもある。
【００９５】
各々が１組の標準特性をもつ種々のメッセージ形式がある。第１のメッセージ形式は、標準的なパーソナル間送信メッセージ（テーブル８のｕＭｓｇ  ｔｙｐｅ  ＬＩＮＭＳＧ ＳＥＮＤ）である。これは、１つ以上の受信者へアドレスされる送信メッセージであり、テキスト及び０以上のアタッチメントを含むことができる。この場合に、リニア化されたメッセージ２５０は、典型的に、メッセージ主題（サブジェクト）及び１つ以上の受信者記述を含む。
【００９６】
ポール要求メッセージはメッセージ形式の別の分類である。ポール要求メッセージは、リモートステーションから特定のデータを要求するために形成される。メッセージ特性は、どんなデータが要求されるかを、必要ならばパスワードと共に指定する。首尾良くいった場合には、標準メッセージＬＩＮＭＳＧ ＳＥＮＤがポール要求メッセージに応答して返送される。
【００９７】
ポール要求には、次の４つのメッセージ形式が関連される。
１．ＬＩＮＭＳＧ ＰＯＬＬＲＥＱ ＭＳＧＮＡＭＥ：ユーザは、メッセージを形成できるが、それをアドレスするのではなく、それにネーム及びオプションのパスワードを与え、ポーリングに使用できる状態に置くことができる。発呼者は、メッセージ名及びパスワードがもしあればそれによってこのメッセージを検索することができる。メッセージは、明確に削除されるまで送信側ＦＡＸマシン内に記憶されたままとなる。
２．ＬＩＮＭＳＧ ＰＯＬＬＲＥＱ ＡＤＤＲＥＳＳ：ユーザは、メッセージを形成し、そしてそれを１つ以上の受信者又は分配リストへ向けることができるが、それを送信用に提出するのではなく、「ピックアップ用」とマークし、任意のパスワードを供給することができる。発呼者は、このメッセージを受信者アドレス及びパスワードによって検索することができる。メッセージは、全てのアドレスによって首尾良く検索されたときに削除される（送信に対して提出されるメッセージと全く同じ振る舞い）。
３．ＬＩＮＭＳＧ ＰＯＬＬＲＥＱ Ｇ３：ユーザは、メッセージを形成し、それをメッセージポーリングのために置いておくことができるが、パブリック／ブラインドポーリングについてはアドレスをもたずそしてネームをもたない状態のままにする。このような保留メッセージは、せいぜい一度に１つである。発呼者は、パブリック−ポールメッセージを求めることによりこのメッセージを検索することができる。
【００９８】
４．ＬＩＮＭＳＧ ＰＯＬＬＲＥＱ ＦＩＬＥ：これは、イネーブルされたときに、リモートユーザが、適切な許可の後に、ディスク上の任意のファイルをブラウズしそして検索できるようにする。
【００９９】
リニア化されたメッセージ２５０の第２部分は、拡張ヘッダ２５４である。この拡張ヘッダ２５４は、メッセージ主題、受信者アドレス情報、送信者アドレス情報、ポーリング名、等の情報を含む。ポーリングメッセージに対する拡張ヘッダ２５４は、ポーリング名データフィールド及びパスワードデータフィールドを含む。ポールメッセージに対する拡張ヘッダ２５４は、典型的に、主題を含まず、そして通常は、単一の受信者のみにアドレスされる。
【０１００】
拡張ヘッダ２５４は、多数の可変長さデータフィールドを含む。データフィールドの潜在的なサイズにより、リニアヘッダ２５２に使用されるＣプログラミング言語データ構造体は、メモリ２２（図２）の大部分を処理することを必要とする。Ｃプログラミング言語データ構造体に代わって、システム１０は、拡張ヘッダ２５４を処理するためのＣＣＩＴＴ標準エンコード手順を使用する。ＡＳＮ−１エンコードとして知られているＣＣＩＴＴプロセスは、可変長さデータフィールドの１パス処理を行うことができる。各データフィールドは、ＣＣＩＴＴのＡＳＮ−１エンコードによって処理され、これは、各フィールドに形式及び長さのタグが付けられ、その後に値が続くことを意味する。ＡＳＮ−１エンコード及びデコードの使用は公知であり、ここでは説明しない。拡張ヘッダ２５４の一部分である多数のデータフィールドが存在する。拡張ヘッダ２５４に存在するデータフィールドは、メッセージの形式に基づいている。拡張ヘッダ２５４に対して考えられるデータフィールドのリストを以下のテーブル９に示す。
テーブル９
HDRTAG SUBJECT
メッセージの主題を含むASCII ストリング。カバーページのレンダリングによって使用される。
【０１０１】
HDRTAG POLLNAME
メッセージ形式LINMSG POLLREQ  ADDRESS 、LINMSG POLLREQ  FILE、LINMSG POLLREQ  MSGNAME に対してポーリングされる主題のネームを含むASCII ストリング。
HDRTAG PASSWORD
メッセージに関連したパスワードストリング。これは、典型的に、ポーリング要求又は中継要求メッセージに対して有効となる。
HDRTAG FROM
メッセージの発信者に関する詳細を与えるリニア化ヘッダ受信者構造。
HDRTAG TO
メッセージのTOリストにある全ての受信者に関する詳細を与えるリニア化ヘッダ受信者構造のアレー。
HDRTAG CC
メッセージのCCリストにある全ての受信者に関する詳細を与えるリニア化ヘッダ受信者構造のアレー。
【０１０２】
HDRTAG BCC
メッセージのBCC リストにある全ての受信者に関する詳細を与えるリニア化ヘッダ受信者構造のアレー。
HDRTAG RAWATTACH
LIN  RAWDATA  ONLYフラグがヘッダのuFlag フィールドにおいてセットされた場合には、このフィールドは、このデータを記述するリニア化ヘッダ生データ構造を含む。
【０１０３】
既存の像フォーマットを、リニア化されたフォーマットに基づいて効率的にパッケージできるようにするために、拡張ヘッダ２５４は、生データアタッチデータフィールドＨＤＲＴＡＧ ＲＡＷＡＴＴＡＣＨを備えている。像データの形式は、このデータフィールドにおいて、以下のテーブル１０に示すリニア化生データ構造を用いてエンコードすることができる。この場合のリニア化フォーマットは、生データが後に続く拡張ヘッダ２５４より成る。
テーブル１０
ATTTAG TYPE
アタッチされるデータの形式を記述するワード
【０１０４】
生データに関連したデータフィールドに加えて、拡張ヘッダ２５４は、メッセージ受信者データを含む多数のオプションのデータフィールドを含むことができる。これは、メッセージ受信者のファクシミリ電話番号、物理アドレス、会社名等に関する情報を含む。拡張ヘッダ２５４は、各受信者に対するデータフィールドを含む。データフィールドは、ＡＳＮ−１エンコードされ、そして他のヘッダ情報と同様に、多数のオプションのデータフィールドを備えている。メッセージ受信者データフィールドを以下のテーブル１１に示す。
テーブル１１
RECIPTAG VOICEPHONE
もしあれば、受信者の音声電話番号を含むストリング
RECIPTAG LOCATION1
受信者の物理ルートアドレスの第１行を含むストリング（例えば、会社名）
RECIPTAG LOCATION2
受信者の物理ルートアドレスの第２行を含むストリング（例えば、マイクロソフト・ウェイ）
RECIPTAG LOCATION3
受信者の物理ルートアドレスの第３行を含むストリング（例えば、レドモンド、ワシントン98052)
RECIPTAG FRIENDLYNAME
受信者の愛称を含むストリング（カバーページに表示したいとき）
RECIPTAG ADDRESS
受信者の仕事アドレスを含むストリング（例えば、BillS@+1-206-5551234)
RECIPTAG ALTADDRESS
受信者の別の仕事アドレス
RECIPTAG PASSWORD
受信者が形式RECIP  RELAYPOINTである場合には、これは、このステーションの使用を中継点として有効化するためのパスワードを含む。
【０１０５】
RECIP  PARAMS
受信者が形式RECIP  RELAYPOINTである場合には、これは、この点に対するパラメータを含む（例えば、安価な時間の送信）
RECIPTAG NEXTHOPINDEX
受信者が形式RECIP  RELAY である場合に使用される。この中継メッセージに対し次のホップのインデックスを指示する。このフィールドは、本質的に、メッセージのルート指定に対する受信者中継点のリンクされたリストを形成する。
【０１０６】
システム１０は、リニアヘッダ２５２及び拡張ヘッダ２５４を次のようにして偽造から守る。２つの暗号的に機密なハッシュファンクションＨＦ１及びＨＦ２を得て、ＨＦ１が任意の入力流をとりそして長さＨＬ１のＨ１を出力し、そしてＨＦ２が任意の入力流をとりそして長さＨＬ２のＨ２を出力し、ＨＬ１がＨＬ２以上であるようにする。又、暗号ファンクションＥＦ１を得て、ＥＦ１が長さＨＬ１のデータを入力としてとり、そしてそれをサイズＨＬ２のキーで暗号化し、長さＨＬ１の出力Ｅ１を返送するようにする。又、長さＨＬ２の２つのパケットをとるファンクションＣＦ１を得て、両入力パケットから導出されたビットを含む長さＨＬ２の単一パケットを返送する。ＣＦ１は、２つのモードで動作しなければならない。第１モードＭ１において、サイズＲＬ１の幾つかのランダムビットＲ１を選択し、出力へと混合して、第２出力として選択されたこれらビットを返送する。第２の動作モードＭ２において、長さＲＬ１ビットのＲ１を余分な入力としてとり、モード１でランダムに選択したビットを使用したのと同様に、これらビットを使用して出力へと混合する。最終的に、長さＨＬ２の機密キーＳ１を形成する。
【０１０７】
リニアヘッダ２５２及び拡張ヘッダ２５４を機密保護するために、システム１０は、先ず、ハッシュファンクションＨＦ１及びＨＦ２を適用し、Ｈ１及びＨ２を生じる。次いで、システム１０は、Ｈ２及び機密キーＳ１をとり、これらをモードＭ１においてＣＦ１への入力として使用して、機密キーＳ２及びランダムビットＲ１を形成する。次いで、システム１０は、キーＳ２のもとでファンクションＥＦ１でＨ１を暗号化し、長さＨＬ１のＥ１を形成する。最後に、システム１０は、両Ｒ１及びＥ１を元のリニアなヘッダに添付する。これで、リニアヘッダ２５２及び拡張ヘッダ２５４は、機密保護されたと言える。
【０１０８】
リニアヘッダ２５２及び拡張ヘッダ２５４を照合するために、システム１０は、先ず、ハッシュファンクションＨＦ１及びＨＦ２をリニアヘッダ２５２の元の部分に適用し（符牒データＲ１及びＥ１が添付された場所まで）、Ｈ１及びＨ２を生じる。システム１０は、Ｈ２及びＲ１を（リニアヘッダ２５２の添付部分から）Ｓ１と共に取り出し、モードＭ２においてＣＦ１を用いてＳ２を計算する。システム１０は、Ｈ１をキーＳ２のもとでファンクションＥＦ１で暗号化し、長さＨＬ１のＥ１を生じる。次いで、システム１０は、このＥ１をヘッダの添付部分からのＥ１と比較する。それらが一致した場合に、リニアヘッダ２５２及び拡張ヘッダ２５４有効符牒とされる。それらが異なる場合は、リニアヘッダ２５２又は拡張ヘッダ２５４或いはその両方が偽造されている。
【０１０９】
リニア化されたメッセージ２５０の第３部分は、アタッチメントヘッダ２５６である。アタッチメントヘッダ２５６は、受信側ＦＡＸマシンがデータ特性を受け取る前にデータ特性で何をすべきかを知り得るようにするために、常に、データ特性の前にリニア化されねばならない。又、アタッチメントヘッダ２５６は、それまで含まれなかったメッセージ特性も含む。ポール要求メッセージに対しては、アタッチメントヘッダ２５６は存在しない。というのは、アタッチメントをもたないからである。例示的なアタッチメントヘッダ特性のリストを以下のテーブル１２に示す。
0004298802.tif 000008
【０１１０】
例示的メッセージ特性のリストをテーブル１３に示す。
0004298802.tif 000009
【０１１１】
0004298802.tif 000010
【０１１２】
0004298802.tif 000011
【０１１３】
リニア化されたメッセージ２５０の第４部分は、アタッチメントデータ２５８である。このアタッチメントデータ２５８は、上記の選択された転送形態に入れられる。フォーマット手段／リニア化手段３４（図２）は、アタッチメントデータ２５８の転送形態にＡＳＮ−１エンコードを用いて、転送形態をエンコードする。重要なメッセージを機密保護すると共に送信時間を短縮するために、アタッチメントヘッダ２５６及びアタッチメントデータ２５８は、暗号化及び／又は圧縮することができる。リニアヘッダ２５２及び拡張ヘッダ２５４は、受信側ＦＡＸマシンが受信ファクシミリメッセージを適当にルート指定できるようにするために暗号化されない。暗号化及びデータ圧縮は、多数の公知の暗号化及び圧縮ルーチンを使用することができる。
【０１１４】
上記例に示した全ての特性は、リニア化フォーマットの現在の実施例において定められる。しかしながら、本発明のフォーマットは、将来バージョンにおいて必要に応じて新たな特性を追加できるように設計されている。リニア化解除のプロセス中に、リニア化手段／フォーマット手段３４は、これが確認できない特性を破棄する。例えば、付加的な中継パラメータに関連した新たな特性が後日導入された場合には、この情報をリニア化フォーマットに含ませることができ、付加的な中継パラメータを処理する能力を有するシステム１０によってこれを使用することができる。しかしながら、システム１０は、リニア化手段の以前のバージョンを有するシステムとも通信することができる。リニア化フォーマットの初期のバージョンを有するシステム１０は、これが確認できないいかなる特性も無視する。同様に、新たなポーリング形式が導入された場合には、既存の実施例との通信に影響を及ぼすことなく実施することができる。これは、将来の新たな特徴に対して大きな融通性と拡張性を与える一方、後方互換性を維持することができる。
【０１１５】
リニア化されたメッセージ２５０は、上記のシーケンス（即ち、リニアヘッダ２５２、拡張ヘッダ２５４、アタッチメントヘッダ２５６そしてアタッチメントデータ２５８）で送信側ＦＡＸマシンから受信側ＦＡＸマシンへ送信される。これは、受信側ＦＡＸマシンが、リニア化メッセージ２５０を受け取るにつれてその部分を解読できるようにし、そしてリニア化メッセージの残り部分を適切に処理する準備を行えるようにする。例えば、受信側ＦＡＸマシンは、メッセージの形式をそのヘッダ情報によって知る。従って、受信側ＦＡＸマシンは、アタッチメントデータ２５８がこの受信側ＦＡＸマシンに現れたときに特定形式（１つ又は複数）を処理するように準備される。
【０１１６】
システム１０により使用されるリニア化プロセスが図１１に示されている。スタート３００において、ファクシミリメッセージの種々の要素がメモリ２２（図２）内に記憶される。ステップ３０２において、システム１０は、前記のＣプログラミング言語構造を用いてリニア化ヘッダ２５２を形成する。ステップ３０４において、システム１０は、拡張ヘッダ２５４のＡＳＮ−１エンコードを実行する。前記したように、拡張ヘッダ２５４は、受信者情報、オプションのパスワード及び主題情報を含んでいる。ステップ３０６において、システム１０はデジタル符牒を計算する。前記したように、デジタル符牒は受信側ＦＡＸマシンによって使用されて、ファクシミリメッセージの確実性が判断される。ステップ３０８において、システム１０は、アタッチメントヘッダ２５６（図１０）及びアタッチメントデータ２５８を含む残りのメッセージフィールドに対しＡＳＮ−１エンコードを使用する。上記のように、システム１０は、ユーザによって要求される場合はメッセージフィールドを暗号化することができる。ステップ３１０において、システム１０は、アタッチメントヘッダに対してＡＳＮ−１エンコードを使用する。メッセージフィールドと同様に、アタッチメントヘッダも、ユーザによって要求される場合は、暗号化することができる。ステップ３１２において、システム１０は、上記のＡＳＮ−１エンコードプロセスを用いてアタッチメントデータをエンコードする。又、システム１０は、ユーザによって要求された場合にはデジタル符牒の計算も行い、更に、ユーザによって要求された場合にはデータを暗号化する。システムは、ステップ３１４においてリニア化プロセスを終了する。
【０１１７】
リニア化解除プロセスが図１２のフローチャートに示されている。スタート３２０において、受信側ＦＡＸマシンは、リニア化メッセージを受信している。ステップ３２２において、システム１０は、ヘッダのＣプログラミング言語構造部分を書き出す。ステップ３２４において、システム１０は、拡張ヘッダをリニア化解除し、メッセージのフィールドを形成する。判断３２６において、システム１０は、デジタル符牒が再計算されたハッシュデジタル符牒に一致するかどうかを判断する。デジタル符牒がその再計算されたハッシュに一致しない場合には、判断３２６の結果がノーである。この場合には、システム１０は、ステップ３２８において、その受信したファクシミリメッセージが偽造メッセージであると判断し、そしてステップ３３０において、システム１０は、リニア化解除プロセスを出る。
【０１１８】
デジタル符牒がその再計算されたハッシュに一致する場合には、判断３２６の結果がイエスである。この場合は、ステップ３３２において、システム１０は、全てのアタッチメントヘッダに対してＡＳＮ−１デコードを実行する。アタッチメントヘッダが送信の前に暗号化されている場合には、システム１０は、アタッチメントヘッダを暗号解読する。ステップ３３４において、システム１０は、ヘッダ情報を使用して、データのレンダリングモジュールに対するパラメータを設定する。良く知られたように、必要とされるレンダリングモジュールの形式は、処理されるべきデータの形式に基づいている。例えば、データがマイクロソフト（登録商標）ワード文書より成る場合には、システム１０は、パラメータを受信側ＦＡＸマシンのオペレーティングシステムに送り、受信側ＦＡＸマシン内の適当なデータ処理能力によってマイクロソフト（登録商標）ワード文書を処理しなければならないことを指示する。これは、受信側ＦＡＸマシンが、マイクロソフト（登録商標）ワードが配置された位置を決定できるようにする。他のデータファイルは、ビットマップ又は像として送信することができ、受信側ＦＡＸマシン内に付加的なレンダリングを必要としない。ステップ３３６において、システム１０は、データのＡＳＮ−１でコードを実行する。又、システム１０は、データが既に暗号化されている場合にはそれを暗号解読する。ＡＳＮ−１デコードを行いそして必要に応じて暗号解読を行った後に、システム１０は、デコードされたデータファイルを所要のレンダリング手段へ送る。システム１０は、ステップ３３８において、リニア化解除プロセスを終了する。
【０１１９】
かくて、システム１０は、送信側及び受信側ＦＡＸマシンのデータ処理能力を効率的に使用する仕方でデータを処理し、そしてデータを効率的に処理できる仕方でデータをリニア化する。このリニア化プロセスは、ユーザがファクシミリカバーシートをメッセージ受信者の名前、番号及びルート情報で手動で完成するようにさせるのではなく、拡張ヘッダ２５４に受信者データを明確に含ませることにより多数の受信者へのファクシミリメッセージのルート指定に大きな融通性をもたせることができるようにする。システム１０は、公知システムで可能である以上に効率的に情報を転送できるようにする強力な通信システムである。ここに示す例は、ファクシミリ通信に関連したものである。しかしながら、能力交換の原理は、コンピュータ間の通信にも適用できることに注意されたい。
【０１２０】
本発明の種々の実施例及び効果を以上に説明したが、これは単なる説明に過ぎず、本発明の広い範囲内で変更がなされ得ることに注意されたい。それ故、本発明は、特許請求の範囲のみによって限定されるものとする。
【図面の簡単な説明】
【図１】従来マシンの動作の種々の標準的な段階を示す図である。
【図２】本発明によるシステムの機能ブロック図である。
【図３】図２のシステムの動作のフローチャートである。
【図４】図３のフローチャートの続きである。
【図５】図２のシステムによりデータファイルを中間転送形態に変換するところを示す図である。
【図６】図２のシステムによりデータファイルを転送形態に多変換するところを示す図である。
【図７】図２のシステムにより新たなアプリケーションを登録するところを示すフローチャートである。
【図８】図２のシステムを用いて能力を送る状態を示すブロック図である。
【図９】図２のシステムのメッセージフォーマット手段の機能的ブロック図である。
【図１０】図２のシステムによって処理されるリニア化メッセージを示す図である。
【図１１】図２のシステムによって実行されるリニア化プロセスを示すフローチャートである。
【図１２】図２のシステムによって実行されるリニア化解除プロセスを示すフローチャートである。
【符号の説明】
１０  システム
１２  中央処理ユニット
１４  メモリ
１６  バス
２０  ディスプレイ
２２  キーボード
２６  カスタムモード記憶エリア
３０  能力キャッシュ
３２  変換プロセッサ
３４  フォーマット手段／リニア化手段
３６  Ｉ／Ｏインターフェイス
３８  物理リンク
【図１】
0004298802.tif 000012
【図２】
0004298802.tif 000013
【図３】
0004298802.tif 000014
【図４】
0004298802.tif 000015
【図５】
0004298802.tif 000016
【図６】
0004298802.tif 000017
【図７】
0004298802.tif 000018
【図８】
0004298802.tif 000019
【図９】
0004298802.tif 000020
【図１０】
0004298802.tif 000021
【図１１】
0004298802.tif 000022
【図１２】
0004298802.tif 000023