説明

通信装置及びその制御方法、並びにプログラム

【課題】本発明は、IPFAX通信を行う際の回線接続に要する時間T0を正確に計測すると共に、T.38CNGコマンドの送出タイミングを適正化する通信装置を提供する。
【解決手段】ダイヤル要求のATコマンドをセッション確立要求のSIPコマンドに変換して送信する。送信されたセッション確立要求のSIPコマンドに対して暫定応答またはセッション確立応答があったときに、FAX通信の回線接続に要する時間T0を計時するT0タイマのカウントを開始する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、IPFAX機能を有する通信装置及びその制御方法、並びにプログラムに関するものである。
【背景技術】
【0002】
近年、IP網を利用してFAX送受信を行うことができるIPFAXが注目されている。NTTのNGN網でもコンテンツのひとつにIPFAXが挙げられている。このIPFAXの呼接続を行うために、主にセッション制御プロトコルであるSIPが用いられている。
【0003】
一方、現在のPSTN網では、FAXモデムによるアナログデータ通信が行われている。FAXモデムの代表としてATモデムが挙げられる。ATモデムは、ATコマンドによりモデム制御を行うタイプのモデムである。ATコマンドとは、米国のヘイズ社が提唱し、現在、世界で最も普及しているモデムのコマンド体系である。ATから始まるコマンドにより、モデムの送信、受信機能の全般をコントローラから容易に操作可能になっている。
【0004】
IPFAXで使用されるFAXプロトコルT.38は、PSTN用のFAXプロトコルT.30に準拠することが求められている。そのため、今までのPSTN用のFAXアプリケーション資源は、ほぼそのまま使用することが可能である。しかし、IPFAXの呼接続についてはSIPに変わったために変更部分が多い。ATコマンド体系をT.38のプロトコル体系に変換する技術は存在するが、呼接続SIPに関しては言及されていない(例えば、特許文献1参照)。
【0005】
FAXアプリケーションから発行されたATコマンドを、AT−IPFAXコマンド変換部でSIPコマンドに変換し、IPFAXモジュールで呼接続を試みる場合について考える。ATモデムにおいて、ダイヤルを実行するためのATコマンドは「ATD」である。トーンダイヤルなら「T」、パルスダイヤルなら「P」をその後に付け、最後に電話番号を付加し、「ATDT04412345678」のようにしてIPFAXモジュールにコマンドを発行する。IPFAXモジュール内のAT−IPFAXコマンド変換部では、ATDTコマンドを、SIPによる呼接続(セッション確立)要求に使用されるINVITEコマンドに変換する。その後、IPFAXモジュール内のセッションコントロール部でSIPによるINVITE接続が試みられる。AT−IPFAXコマンド変換部は、ATDTコマンドを受け付けた後、FAXアプリケーションにリザルトコードを返す必要がある。FAXアプリケーションは、このリザルトコードをもってダイヤル終了とみなし、T0タイマをスタートさせる。このリザルトコードをFAXアプリケーションに返すタイミングを正しく制御することができなければ、FAXアプリケーションではダイヤルが終了したタイミングを正しく知ることができず、T0タイマの計測が正確に行えない。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2001−197280号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
本来、T0タイマは、ダイヤル終了後にスタートさせるものである。ATコマンド及びSIPコマンドが共にコマンド終了という概念を含む場合もあるが、ダイヤル終了という概念がない。そのため、コマンド終了をもってT0タイマをスタートさせてしまうと、正確なT0タイマ計測が行えないという問題がある。
【0008】
また、ダイヤル完了に続いて起呼トーン(CNG)の送出がFAXアプリケーションから要求されると、AT−IPFAXコマンド変換部でT.38プロトコルであるT.38CNGコマンドへ変換する。その後、IPFAXモジュール内のT.38コントロール部によってネットワークサーバ或いは直接、対向機に送出される。しかしながら、SIPセッションが確立していないうちにT.38CNGを送出しようとしても無駄であるため、この送出タイミングの制御も必要となる。
【0009】
本発明の目的は、IPFAX通信を行う際の回線接続に要する時間T0を正確に計測すると共に、T.38CNGコマンドの送出タイミングを適正化することにある。
【課題を解決するための手段】
【0010】
上記目的を達成するために、本発明の通信装置は、SIPを用いてセッションを確立してFAX通信を行う通信装置であって、ダイヤル要求のATコマンドをセッション確立要求のSIPコマンドに変換する第1の変換手段と、前記第1の変換手段により変換された前記セッション確立要求のSIPコマンドを送信する送信手段と、前記送信手段により送信された前記セッション確立要求のSIPコマンドに対して暫定応答またはセッション確立応答があったときに、前記FAX通信の回線接続に要する時間T0を計時するT0タイマのカウントを開始する制御手段とを備えることを特徴とする。
【発明の効果】
【0011】
本発明によれば、IPFAX通信を行う際の回線接続に要する時間T0を正確に計測することができる。また、T.38CNGコマンドの送出タイミングを適正化することができる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施形態に係る通信装置とそのネットワーク環境の一例を示す図である。
【図2】図1のファクシミリ装置におけるIPFAX機能のソフトウェア構成例を示すブロック図である。
【図3】本発明の実施形態における、FAXアプリケーション、IPFAXモジュール、SIPサーバ、ファクシミリ装置A間のコマンドの流れと信号送出の流れを示したシーケンス図である。
【図4】ファクシミリ装置におけるIPFAX通信の動作の流れを示すフローチャートである(その1)。
【図5】ファクシミリ装置におけるIPFAX通信の動作の流れを示すフローチャートである(その2)。
【図6】従来のIPFAX通信における、FAXアプリケーション、IPFAXモジュール、SIPサーバ、ファクシミリ装置A間のコマンドの流れと信号送出の流れを示したシーケンス図である。
【発明を実施するための形態】
【0013】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【0014】
図1は、本発明の実施形態に係る通信装置とそのネットワーク環境の一例を示す図である。
【0015】
図1において、ファクシミリ装置300は、本発明の実施形態に係る通信装置の一例である、IPFAX機能を備えたファクシミリ装置である。SIPサーバ308は、IPFAX機能を備えたファクシミリ装置同士のリクエストやレスポンスを中継したり、リクエスト先の問い合わせや登録に用いられる。ファクシミリ装置A309,ファクシミリ装置B310は、ファクシミリ装置300と同様の構成を有するファクシミリ装置である。ファクシミリ装置300、SIPサーバ308、ファクシミリ装置A309、及びファクシミリ装置B310は、IP網307を介して通信可能に接続されている。
【0016】
ファクシミリ装置300は、操作部301、読取部302、システム制御部303、記憶装置304、センサ部305、及びネットワーク制御部306を備える。操作部301は、キーボード、表示部等で構成され、オペレータが各種入力操作を行うためのものである。読取部302は、原稿等から画像を読み取って画像データを出力する。システム制御部303は、装置全体の制御を行う。記憶装置304は、データの一次記憶に用いられる。センサ部305は、原稿サイズ検知センサなどを含む各種センサを総称したものであり、各センサの検知結果がシステム制御部に伝えられる。ネットワーク制御部306は、ネットワーク通信を制御する。
【0017】
図2は、図1のファクシミリ装置300におけるIPFAX機能のソフトウェア構成例を示すブロック図である。図示のソフトウェアモジュールは、システム制御部303で動作するものである。
【0018】
図2において、FAXアプリケーション401は、通信制御手段として、FAX通信により画像データを送受信するためのATコマンドやプロトコルデータ、画像データを発行したり、受け付けたりするためのソフトウェアモジュールである。
【0019】
IPFAXモジュール402は、IPFAXで画像データを送受信するためのソフトウェアモジュールであり、以下のソフトウェアから構成される。AT−IPFAXコマンド変換部403は、FAXアプリケーション401から受け取ったATコマンドを呼接続用のSIPコマンドや、FAXプロトコル用のT.38コマンドに変換する。例えば、ダイヤルATDコマンドを、SIPによるセッション確立要求コマンドINVITEに変換し、セッションコントロール部404に通知する役目を担う。
【0020】
また、FAXアプリケーション401のCNG送出要求であるATコマンドをT.38CNG送出命令(T.38コマンド)に変換し(第2の変換手段)、T.38コントロール部405へ通知する。また、SIPによる応答をATコマンドのリザルトに置き換え、FAXアプリケーション401へ応答する。
【0021】
セッションコントロール部404は、SIPによって呼接続や切断を行う。T.38コントロール部405は、T.38プロトコルによるIPFAX送受信を行う。CNG送出要求有無フラグ406は、FAXアプリケーション401からのCNG送出要求があったか否かを示すソフトウェアフラグである。セッション確立応答有無フラグ407は、SIPによるセッション確立要求に対して、セッション確立応答があったか否かを示すソフトウェアフラグである。
【0022】
次に、図1のネットワーク環境におけるIPFAX通信の流れについて説明する。
【0023】
まず、従来のIPFAX通信の流れを図6に示す。
【0024】
図6は、従来のIPFAX通信における、FAXアプリケーション401、IPFAXモジュール402、SIPサーバ308、ファクシミリ装置A309間のコマンドの流れと信号送出の流れを示したシーケンス図である。
【0025】
まず、FAXアプリケーション401は、ダイヤルコマンドをIPFAXモジュール402に送信する(S101)。IPFAXモジュール402は、受信したダイヤルコマンドに対してOKのリザルトを返す(S102)。
【0026】
次に、FAXアプリケーション401は、OKのリザルトを受けて、回線接続に要する時間T0を計時するT0タイマのカウントを開始してしまう(S113)。実際には、IPFAXモジュール402からINVITEコマンドがSIPサーバ308に対して送出されていないかもしれない。また、INVITEコマンドが送出されていてもSIPサーバ308や途中のネットワーク障害により、長い間待たされるかもしれない。つまり、ダイヤルが終了していないことになる。従って、T0タイマの計測が正確ではない。
【0027】
次に、IPFAXモジュール402は、ダイヤルコマンドをSIPコマンドのINVITEコマンドに変換して、外部のSIPサーバ308へ送る(S103)。
【0028】
SIPサーバ308は、暫定応答として100TRYINGをIPFAXモジュール402へ返す(S104)。次に、SIPサーバ308は、対向機であるファクシミリ装置A309に対してINVITEコマンドを発行する(S105)。
【0029】
ファクシミリ装置A309は、暫定応答として100TRYINGをSIPサーバ308へ返す(S106)。その後、ファクシミリ装置A309は、暫定応答180RINGINGをSIPサーバ308へ送る(S107)。
【0030】
180RINGINGを受けたSIPサーバ308は、IPFAXモジュール402に180RINGINGを送る(S108)。
【0031】
ファクシミリ装置A309が着呼するとセッション確立応答200OKをSIPサーバ308へ送る(S109)。200OKを受けたSIPサーバ308は、IPFAXモジュール402に200OKを送る(S110)。
【0032】
ダイヤルコマンドのリザルトであるOKを受けたFAXアプリケーション401は、CNG送出要求をIPFAXモジュール402に送出する(S111)。IPFAXモジュール402は、CNG送出要求をAT−IPFAXコマンド変換部403によってT.38CNGへ変換し、SIPサーバ308へ送る(S112)。しかし、ファクシミリ装置300とファクシミリ装置A309の間にセッション確立がされてない状態であるため、T.38CNGは失敗してしまう。
【0033】
図3は、本発明の実施形態における、FAXアプリケーション401、IPFAXモジュール402、SIPサーバ308、ファクシミリ装置A309間のコマンドの流れと信号送出の流れを示したシーケンス図である。
【0034】
まず、FAXアプリケーション401は、ダイヤル要求としてダイヤルコマンドをIPFAXモジュール402に送信する(S201)。IPFAXモジュール402は、受信したダイヤルコマンドをSIPコマンドのINVITEコマンドに変換して、SIPサーバ308へ送る(S202)。
【0035】
SIPサーバ308は、暫定応答として100TRYINGをIPFAXモジュール402へ返す(S203)。この暫定応答をもってIPFAXモジュール402は、ダイヤルコマンドに対してOKのリザルトを返す(S204)。
【0036】
次に、FAXアプリケーション401は、OKのリザルトを受けて、T0タイマのカウントを開始する(S230)。本実施形態では、100TRYINGが無く、いきなり180RINGINGの暫定応答、200OKのようなセッション確立応答が返ってくることもある。このような場合にも、IPFAXモジュール402は、ダイヤルコマンドに対してFAXアプリケーション401にリザルトOKを返す(S204)。SIPサーバ308からの暫定応答が返ってきたということは、SIPサーバ308へのネットワーク的な接続が行えたということであり、ダイヤルが確実に完了した状態といえる。従って、ここでT0タイマを開始することが正確なT0タイマ計測といえる。
【0037】
一方、SIPサーバ308は、ファクシミリ装置A309に対してINVITEコマンドを発行する(S205)。ファクシミリ装置A309は、暫定応答として100TRYINGをSIPサーバ308へ返す(S206)。その後、ファクシミリ装置A309は、暫定応答180RINGINGをSIPサーバ308へ送る(S207)。
【0038】
180RINGINGを受けたSIPサーバ308は、IPFAXモジュール402に180RINGINGを送る(S208)。
【0039】
ファクシミリ装置A309が着呼するとセッション確立応答200OKをSIPサーバ308へ送る(S209)。200OKを受けたSIPサーバ308は、IPFAXモジュール402に200OKを送る(S210)。セッション確立応答200OKをもって初めてファクシミリ装置300とファクシミリ装置A309の間でSIPセッションが確立されたことになる。200OKを受け取れたIPFAXモジュール402は、セッション確立応答有無フラグ407を真とする。
【0040】
ダイヤルコマンドのリザルトであるOKを受けたFAXアプリケーション401は、CNG送出要求をIPFAXモジュール402に送出する(S211)。IPFAXモジュール402は、CNG送出要求有無フラグ406を真とする。
【0041】
次に、IPFAXモジュール402は、CNG送出要求有無フラグ406とセッション確立応答有無フラグ407の両方が真の場合に、T.38CNGをSIPサーバ308へ送る(S212)。この場合、ファクシミリ装置300とファクシミリ装置A309の間にセッション確立されている状態であるため、T.38CNGは成功する。
【0042】
図4、図5は、ファクシミリ装置300におけるIPFAX通信の動作の流れを示すフローチャートである。
【0043】
図4において、FAXアプリケーション401がダイヤルコマンドとしてATDコマンドを発行し、IPFAXモジュール402がATDコマンドを受け取る(ステップS501)。次に、AT−IPFAXコマンド変換部403において、ATDコマンドをSIPのINVITEコマンドに変換する(ステップS502)。AT−IPFAXコマンド変換部403が第1の変換手段として機能する。
【0044】
次に、セッションコントロール部404は、INVITEコマンドをSIPサーバ308か、直接、送信先であるファクシミリ装置A309に発行する(ステップS503)。セッションコントロール部404は送信手段として機能する。
【0045】
つづいて、IPFAXモジュール402は、SIPサーバ308またはファクシミリ装置A309から、100TRYINGまたは180RINGINGなどの暫定応答か、200OKのセッション確立応答が返ってくるのを待つ(ステップS504)。ここでは、図3のS203,S208,S210に相当する。IPFAXモジュール402は制御手段として機能する。
【0046】
暫定応答かセッション確立応答が返ってきた場合(ステップS505でYES)、それを受け取ったIPFAXモジュール402は、FAXアプリケーション401のATDコマンドに対してリザルトコードのOKを返す(ステップS506)。一方、暫定応答かセッション確立応答が返ってこなかった場合(ステップS505でNO)、ネットワークを切断し、リザルトコードのERRORを返す(ステップS507)。そして、通信エラーとなり、通信終了する(ステップS521)。これは、SIPサーバ308にすらネットワーク接続できなかった場合などに起こりうる。
【0047】
一方、ステップS508でリザルトコードのOKが返った場合は、ファクシミリ装置300は、SIPサーバ308またはファクシミリ装置A309にネットワーク接続でき、なんらかのSIPによる応答が返ってきたことを意味する。そこで、FAXアプリケーション401は、T0タイマを開始する(ステップS509)。
【0048】
図5において、ステップS510では、FAXアプリケーション401は、CNGを送出する設定か否かを判定する。CNG送出はオプションであり、CNGを送出する設定でないと判定した場合には(ステップS510でNO)、FAXアプリケーション401はCNG送出要求を発行せず、受信命令待ちとなる(ステップS517)。
【0049】
一方、CNGを送出する設定になっていると判定した場合(ステップS510でYES)、FAXアプリケーション401は、T0タイマがタイムアウトか、SIPサーバ308から408タイムアウト応答が返ってきたか否かを判定する(ステップS512)。T0タイマがタイムアウトか、SIPサーバ308から408タイムアウト応答が返ってきた場合は(ステップS512でYES)、何らかのネットワーク障害が予測されるので、FAXアプリケーション401が回線開放してBYEする(ステップS520)。そうでない場合は、ステップS512へ進む。
【0050】
ステップS512では、FAXアプリケーション401はCNG送出要求を発行する。ステップS512は図3のS211に相当する。次に、IPFAXモジュール402は、CNG送出要求有無フラグ406を真とする(ステップS513)。IPFAXモジュール402は第2の保持手段として機能する。
【0051】
IPFAXモジュール402は、SIPサーバ308から、または直接ファクシミリ装置A309からセッション確立応答200OKが返るのを待つ(ステップS514)。図3のS210のように、SIPサーバ308から、または直接、ファクシミリ装置A309からセッション確立応答200OKが返ってきたときは、IPFAXモジュール402内部のセッション確立応答有無フラグ407を真とする(ステップS514)。IPFAXモジュール402は第1の保持手段として機能する。
【0052】
次に、IPFAXモジュール402は、CNG送出要求有無フラグ406とセッション確立応答有無フラグ407の両方が真かどうか判定する(ステップS515)。IPFAXモジュール402は制御手段として機能する。ステップS515がNOと判定した場合は、ステップS511へ戻る。一方、ステップS514でYESと判定した場合は、IPFAXモジュール402が、FAXアプリケーション401のCNG送出要求であるATコマンドをT.38CNG送出命令に変換し、T.38CNGをSIPサーバ308へ送出するように制御する(ステップS516)。このT.38CNGは、T.30の規定通り、規定時間(3秒)ごとに送出される。
【0053】
次に、FAXアプリケーション401は、受信命令を受信したかどうかを判定し(ステップS517)、受信命令を受信したと判定した場合は、IPFAX通信を開始する(ステップS519)。一方、受信命令を受信していないと判定した場合、FAXアプリケーション401は、T0タイマのカウントをチェックする(ステップS518)。そして、T0時間が経過した場合は、FAXアプリケーション401がIPFAXモジュール402に対して回線を開放するように指示を送り、SIPのBYEコマンドが送出される(ステップS520)。
【0054】
上記実施形態によれば、ダイヤル要求のATコマンドをセッション確立要求のSIPコマンドに変換して、SIPサーバまたは、直接、他の通信装置に送信する。送信されたセッション確立要求のSIPコマンドに対して、SIPサーバあるいは他の通信装置からの暫定応答またはセッション確立応答があったときに、FAX通信の回線接続に要する時間T0を計時するT0タイマのカウントを開始する。これにより、IPFAX通信を行う際の回線接続に要する時間T0を正確に計測する。
【0055】
また、保持されたセッション確立応答有無フラグとCNG送出要求有無フラグの両方が真のときに、T.38コマンドのCNG送出を行うように制御するので、T.38CNGコマンドの送出タイミングを適正化することができる。
【0056】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。
【符号の説明】
【0057】
300 ファクシミリ装置
303 システム制御部
307 IP網
308 SIPサーバ
401 FAXアプリケーション
403 AT−IPFAXコマンド変換部
405 T.38コントロール部
406 CNG送出要求フラグ
407 セッション確率応答有無フラグ

【特許請求の範囲】
【請求項1】
SIPを用いてセッションを確立してFAX通信を行う通信装置であって、
ダイヤル要求のATコマンドをセッション確立要求のSIPコマンドに変換する第1の変換手段と、
前記第1の変換手段により変換された前記セッション確立要求のSIPコマンドを送信する送信手段と、
前記送信手段により送信された前記セッション確立要求のSIPコマンドに対して暫定応答またはセッション確立応答があったときに、前記FAX通信の回線接続に要する時間T0を計時するT0タイマのカウントを開始する制御手段とを備えることを特徴とする通信装置。
【請求項2】
前記送信手段により送信された前記セッション確立要求に対して前記セッション確立応答が返ってきたことを示すセッション確立応答有無フラグを保持する第1の保持手段と、
CNG送出要求のATコマンドをT.38コマンドのCNGに変換する第2の変換手段と、
CNG送出要求があったことを示すCNG送出要求有無フラグを保持する第2の保持手段とをさらに備え、
前記制御手段は、前記第1の保持手段に保持されたセッション確立応答有無フラグと前記第2の保持手段に保持されたCNG送出要求有無フラグに基づいて、前記第2の変換手段により変換されたT.38コマンドのCNG送出を行うように制御することを特徴とする請求項1に記載の通信装置。
【請求項3】
前記送信手段は、前記セッション確立要求のSIPコマンドをSIPサーバに対して送信することを特徴とする請求項1または2に記載の通信装置。
【請求項4】
前記ATコマンドの発行及び前記T0タイマのカウントを行う通信制御手段を備え、
前記変換手段は、前記通信制御手段が発行した前記ATコマンドを前記セッション確立要求のSIPコマンドに変換し、
前記制御手段は、前記暫定応答または前記セッション確立応答があったことを前記通信制御手段に通知することにより、前記通信制御手段による前記T0タイマのカウントを開始することを特徴とする請求項1乃至3のいずれか1項に記載の通信装置。
【請求項5】
前記制御手段は、前記暫定応答及び前記セッション確立応答がない場合に、エラーの旨を前記通信制御手段に通知することを特徴とする請求項4に記載の通信装置。
【請求項6】
SIPを用いてセッションを確立してFAX通信を行う通信装置の制御方法であって、
ダイヤル要求のATコマンドをセッション確立要求のSIPコマンドに変換する第1の変換工程と、
前記第1の変換工程にて変換された前記セッション確立要求のSIPコマンドを送信する送信工程と、
前記送信工程にて送信された前記セッション確立要求のSIPコマンドに対して暫定応答またはセッション確立応答があったときに、前記FAX通信の回線接続に要する時間T0を計時するT0タイマのカウントを開始する制御工程とを備えることを特徴とする制御方法。
【請求項7】
請求項6に記載の制御方法を通信装置に実行させるためのコンピュータに読み取り可能なプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2013−9171(P2013−9171A)
【公開日】平成25年1月10日(2013.1.10)
【国際特許分類】
【出願番号】特願2011−140673(P2011−140673)
【出願日】平成23年6月24日(2011.6.24)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】