From: steve@work.bellingham.wa.us (Steve Work)
Mgetty+sendfax は class 2.0 または 2 (2つは違うものです)のファック スモデムを使って、Unix 環境でファックスの送受信するプログラム集です。 vgetty は mgetty を拡張したもので、mgetty と一緒に配布されています。 vgetty はかかってくる音声電話に対応しています。そのようなモデムをお持 ちなら、vgetty は新しい型に正式に付加されているボイスモデムを扱います。
さらに具体的には、"mgetty" というプログラムは、class 2.0 あるいは 2 のファックスモデムを使用して、従来通り有線経由の外部からのログインはも ちろんのこと、さらに追加機能としてファックスの送受信を可能にします。 "sendfax" はファックスファイルを送信する独立したプログラムです。 "vgetty" は mgetty の拡張版で、vgetty は受話器のように電話に応答できて、 (検出すれば) 音声でのメールメッセージを記録します。そしてさらに、mgetty のファックスか、あるいは別の方法で扱うデータコールかを区別して実行しま す。mgetty+sendfax の配布物には vgetty が含まれていて、vgetty はファッ クスと音声メッセージを扱う適当なサイズにまとめられたユーティリティプロ グラムです。
From: steve@work.bellingham.wa.us (Steven Work) and the distribution CC: clewis@ferret.ocunix.on.ca (Chris Lewis)
ちょっと賢い `getty'というところでしょう。 getty は Unix コンピュー タでログイン手続きの最初の段階を管理しているプログラムです。モデムを使っ ている時、getty は着信コールを監視し、(通常は) "login:" プロンプト (username を読みとり、"login" をうまく行います)を出します。
従来の getty あるいは uugetty はモデムを自動応答モードに置きますが、 mgetty はそうではありません。着信コールがあると、mgetty はその時にでき る "RING" を監視します。それらが出来ると、mgetty はモデムに応答するよ うに伝え、それからモデムはどのような形態で接続するのかを mgetty に伝え ます。FAX であれば、mgetty は FAX を受信します。データであれば、mgetty は userid を求めます。それから通常のデータログインをするために空いてい る回線を渡します。
データ電話から ファックス電話を区別するモデムの働きに注意してくださ い。すべての fax モデムはこのようは動きません。そしてお使いのモデムが それができないなら、mgetty にそのようにさせる方法はありません。mgetty はデータ電話ととファックス電話を区別することができないモデムで使うこと ができますが、どんな種類の電話かをあらかじめ伝えてやらねばなりません。
mgetty はログインする際に userid に依存している特別な接続(たとえば uucico、fido やその他のプログラム)について、ログイン以外の別のプログラ ムを選択するように設定できます。
さらに mgetty は 相手先の id をサポートしており、電話番号をもとにす る接続を拒否することができます。
vgetty は mgetty の拡張版で、vgetty は追加の電話機能を提供するボイス モデムで動きます。モデムが RING を返した時、vgetty はモデムを回線を選 びだし、音声メッセージ(あいさつ)を流します。モデムがデータあるいは fax 電話を検出すれば、これを特別なコード (DLE-sequences ) で vgetty に報告 します。DLE-sequences というのはスイッチかモードのいずれかで vgetty を 起こします。そうでなければボイスモードが使われます。
モデムがあいさつ(数秒続く沈黙)に続いて何も聞かないなら、かかってきた 電話はデータモデムであるとみなし、データ接続をしようとします。
vgetty はメッセージをリモート再生するのと同様の通常の受話器の機能を 実行します。その操作はシェルスクリプトから行われるので、希望するなら十 分な音声メール保存箱としてさらに有効に使うことができます。(このボイス モデムの動作についての記述は ZyXEL 類のモデムに適用されます。私 [steve@work.bellingham.wa.us] は他のボイスモデムでも同様だと 考えています。)
たとえば音声メールシステムがどのようなものかについてですが、voice
の
下の scripts
というディレクトリに Marc Schaefer の
voice_mail.sh
スクリプトがあります。
ボイスシェルは実際のモデムからは独立していて、ZyXELs
以外のほとんどのモデムでサポートされています。ハードウェアドライバはモ
デムの特別な仕様を見ないので、ボイスシェルはモデムにまったく依存しない
一般的なインターフェースを提供します。もちろん完全なシステムの信頼性は、
使用している音声モデムの信頼性に依存します。ですから、違ったモデムの間
では明らかに相違があります。
vgetty は 音声の電話に比重をおいて、データと音声用に電話回線を共有し たい人向けです。記録された音声メッセージを聞いて区別できないモデムや接 続したくないモデムがあるので、ダイアルアップシステムについては意図して いません。
特徴のある ring があるなら、1回線で可能です。vgetty は RING メッセー ジから電話の種類を検出できるので、直接的にデータかファックスモードを切 りかえます。特有の ring がサポートされている地域では、問題なく同じ回線 上でダイアルアップと音声を使うことができます。
音声拡張機能は最初、Klaus Weidner (klaus@snarc.greenie.muc.de) によって 書かれましたが、現在は Marc Eberhard (Marc.Eberhard@Uni-Duesseldorf.DE) に よって維持されています。それらについての直接的な質問は添付のアドレスへ。
-------- 配布物からのさらなる情報(一部編集しています) -------
標準の 2.0 または 2 の fax モデムをお持ちなら、sendfax で以下のような ことができます。
/dev/audio
でメッセージを再生します。
(すべてのモデムをサポートしていません。専用のフォーマットを使うモデムもあり
ます。)
From: steve@work.bellingham.wa.us (Steve Work), and distribution CC: clewis@ferret.ocunix.on.ca (Chris Lewis)
いくつかの条件があります。コンピュータはさまざまな種類(多くの)の Unix
オペレーティングシステムが動作していること。(そのオペレーティングシステムは
termio.h
あるいは termios.h
をサポートしていなければなりま
せん。termio.h
や termios.h
は一般的には "pure BSD"
のシステムを除外しています。) 受信のデータ接続 ("getty" など) をサポート
するため、たぶんヘイズ互換のモデムが必要です。ファックスを送受信するために、
Class 2 (あるいは 2.0 ) のファックスコマンドを理解するモデムを必要とします。
音声については、音声を扱えるモデムが必要です。
vgetty は現在、Dolphin, Dr. Neuhaus Cybermod, Elsa, IS 101 compatible, Rockwell, Sierra, US Robotics、そしてすべての ZyXEL モデムを サポートしています。
Cirrus Logic, ISDN4Linux と UMC のドライバは基本的には動作しますが、
一般的な vgetty 部分とハードウェアドライバとの間で新しい内部インターフェ
イスをアップグレードしなければなりません。この変更は厳密に ANSI C 互換
にするために必要でした。現在、Vgetty は warning (警告) なしで、
gcc -Wall -pedantic
でコンパイルできます。
mgetty は少なくとも次のようなシステムにインストールされ動作しています。 あなたがこのリストを読む時点ではもっと増えているでしょう。
`termio.h
' あるいは `termios.h
' があれば他の Unix 上でも
mgetty を動かせるはずです。`select(S)
' や `poll(S)
' が
あれば一番よいのですが、なくても何とかなります。
(警告: Unix SVR3.1 やそのより前の版では、poll()
を使えません。
それは tty デバイス上では動きません)。
現在、少なくとも以下のモデム、たぶんリストはもう少し増えているでしょう、 が十分使えます。
以下はよく使用されるモデムのリストです。データリストの最新版は、配布物
の doc
というディレクトリにある modems.db
を
チェックしてください。
mgetty はすべての class 2 のファックスモデムで動作するはずです。おそ
らく `faxrec.c
' によってページの最初で送られた DC2 キャラクタは
旧型の class 2 モデム (標準の非常に古いドラフトで行っている) XON を変更しなけ
ればなりません。不運にも、それぞれの class 2 モデムは少しづつ違ってい
ます。
初期の USR モデムは Class 2.0(そして Class 2 もたぶん) に従って設定 すると良くない動きをします。現在の USR モデム (Sportster と Courier) は 問題なく動きます。
From: clewis@ferret.ocunix.on.ca (Chris Lewis) CC: gert@greenie.muc.de (Gert Doering)
データのみに関しては他にソフトウェアは必要ありません。
mgetty それ自身は G3 (raster 走査線で表示 )フォーマットだけを送受信
できます。しかし配布物は 生の (raw) G3 ファイルを変換するツール、または
"pbmplus" を使用したフォーマットを変換する Portable Bitmap Toolkit と
いうツールを持っています。pbmplus フォーマットは大部分の raster-image
プログラムをサポート(あるいはサポートされている)しており、UNIX の分野
で一般的に使われるファイルフォーマットです。pbmplus は次の URL にあり
ます(他にもあります)。
ftp://sunsite.unc.edu/pub/X11/contrib/pbmplus10dec91.tar
mgetty+sendfax 配布物は pbmplus の壊れた pbmtog3 コンバータを固定す るパッチを含んでいます。パッチされていない pbmtog3 を使っていると、転 送の間にエラーを起こします。
フリーのポストスクリプトページ記述言語インタプリタ (Postscript page
description language interpreter)である GhostScript は Postscript を
G3 に変換します。Ghostscript は次の URL で利用できます(他にもあります)。
ftp://sunsite.unc.edu/pub/gnu/applications/ghostscript-2.6.1.tar.gz
(同じディレクトリにあるパッチファイルもチェックしてください)
ftp://?? で利用できる Hp2pbm は text と PCL ( HP Laserjet language) を G3 あるいは PBM に変換できます。 Hp2pbm は PBM を PostScript、 PCL そして Epson プリンタ用に変換するプログラムを持っています。
PBMPLUS はラスターフォーマットや ASCII で存在するほとんどのものから PBM に、そして PBM からラスターフォーマットへのコンバータを持っていま す。PBM と G3 との間で変換するために、mgetty で pbm2g3 と g32pbm ユー ティリティ を使うといいでしょう。
要点を言うなら、あなたは hp2pbm もしくは PBMPLUS だけを動作させること ができます。GhostScript を使うなら、ASCII(ページヘッダーなどに使われて いる) を変換するために、PBMPLUS か hp2pbm も必要です。
Mgetty+sendfax は vioce/
以下のサブディレクトリに音声処理ユーティリ
ティを持っているものがあります。これらのツール (pvftools)は ZyXEL、
Rockwell と ISDN4Linux の音声フォーマットを変換できます。その他のフォー
マットも報告されています。GSM のコード化された音声フォーマットの翻訳が
成功したと報告している人もありますので、将来にはそのようなサポートが加
えられるでしょう。vgetty は現在上記の3つのモデムをサポートしており、
さらにもっとサポートされる計画があるということです。
配布物から
mgetty+sendfax のパッケージは、Gert Doering に著作権 (1993年) がありま す。このプログラムについて、再配布、あなたが書いたプログラムに一部のコー ドを利用する、などのような、あなたがこのプログラムに望むいかなることも 許可されていますが、あなたは私にクレジットを与えなくてはいけないので、 私の名前を取り除いてはいけません。
プログラムがちゃんと動作すれば、あなたは私の努力に敬意を表したいと思 うでしょう。あなたはご自分がしたいだけの寄付をしてください。
あなたが mgetty に寄付をするなら、私は共有 (share) を望みます。それは 次のようなことを意味します。mgetty のインストールあるいはサポートに対 して支払うことは申し分なく了解します。しかし、あなたが mgetty を売りた い、あるいはモデムに mgetty を添付し、それを "Unix fax パッケージ" と して売りたいなら、最初に私に連絡を取ってください。
* 注意 * このパッケージはテスト段階のベータ版のソフトウェアですから、 あなた自身の責任において使用してください。** いかなる保証もありりませ ん **。あなたのハードディスクの中身をすべて消してしまっても、ハードウェ アを破損しても、さらにはあなたの愛犬を殺してしまっても、それはすべてあ なたの責任です。それでもプログラムは私のところではちゃんと動いています し、他の多くの人のところでも動いているようですが。
Marcは音声に関する部分を GPL のもとに置いています。誤解を避けるため に、 Gert は配布物に GPL テキストを含ませていません。音声に関する著作 権は GPL にあります。
ホームページは http://www.leo.org/~doering/mgetty/
公式版を置いているサイトは次の URL です。
ftp://ftp.leo.org/pub/comp/networking/communication/modem/mgetty
ftp://sunsite.unc.edu/pub/Linux/system/Serial/mgetty+sendfax*
ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/... (or so)
ftp://linux.nrao.edu/pub/packages/mgetty+sendfax/
From: Klaus Lichtenwalder <Lichtenwalder@ACM.org> and the mgetty dist.
mgetty に、frontends
というサブディレクトリがあります。多かれ少なか
れ受信したファックスを見る、印刷する、まとめる、そして多くの種類の違っ
たプログラムから待ち行列にそれらを加える、そのような仕事のためにドキュ
メントが添付されたたくさんのプログラムがあります。
From: Gert Doering <gert@greenie.muc.de>
他の多くのドキュメントと同様にアーカイブへのポインタは
http://www.leo.org/~doering/mgetty で見つけることができます。アー
カイブそのものは http://eli.wariat.org/mgarc/index.html
にありま
す。