電話とFAXをパソコン(Ubuntu)に接続
板金工場の電話と FAX を、Ubuntuにつないでみました。安価なモデムとオープンソースのFAXソフトを組み合わせました。やってみると、つないだあとで初めて分かることがいくつもありました。
最大の知見は、サーバーを再起動すると電話が丸一日話し中になっていたことです。同じことをしてみたい方の役に立てばと思い、分かったことをまとめておきます。
電話の線について、先にお願いです。電話の線には、だれも使っていないあいだも数十ボルトの電気が来ています。つなぎ替えはモジュラージャックの抜き差しだけにして、線の中の金具には触らないでください。
やりたいこと
- 電話がかかってきたら、電話番号と時刻を自動で記録します。
- FAX を紙ではなくサーバーで送受信します。受信したFAX は PDF で読め、パソコンから送信できます。
- パソコン画面で連絡帳の相手に「かける」を押すと電話番号を押してくれます。
使ったもの
どれも数千円から 1 万円台くらいの市販品です。
- 回線:光回線の電話(ひかり電話)です。光回線の機械(ホームゲートウェイ)に電話機をつなぐ口が 2 つ(TEL1、TEL2)あり、それぞれ別の番号にしてあります。
- ナンバー・ディスプレイ・アダプタ(アロハND6):かけてきた相手の番号をパソコンに知らせる機械。
- Planex 56k USBアナログモデム PL-US56K2(A) 2 台:中身は Conexant の CX93001 という部品です。1 台は FAX 用、もう 1 台は電話用です。
- 電話機:コードレス電話機。
- FAX ソフト:HylaFAX(Linux で動く、オープンソースの FAX サーバー)。
電話やFAXの画面は業務ソフトの一部として自作しました。
つなぎ方
実線が電話の線、破線が USB のケーブルです。TEL1 の線には、電話機と電話用のモデムが並んでつながっています。
分かったこと
番号を知らせるには、回線の契約が要る
ナンバー・ディスプレイのアダプターをつないでも、はじめは何も出ませんでした。よく見ると、工場の電話機にも、もともと番号が出ていませんでした。調べてみると、回線にナンバー・ディスプレイ(番号を知らせるサービス)の契約がありませんでした。契約を足すと、かけてきた番号が読めるようになりました。
- このアダプターは、番号の通知が来ないと、着信そのものに気づきません。「つないだのに何も起きない」ときは、まず回線の契約を確かめてみてください。
- FAX 用のモデムでも番号を読めるか試しましたが、このモデムでは呼び出し(RING)しか分からず、番号は受け取れませんでした。番号を読む命令(AT+VCID)は持っているので、型や設定によっては読めるかもしれません(未確認です)。
同じ型のモデムが 2 台あると、見分けにくくなる
2 台のモデムは同じ型で、製造番号まで同じでした。Linux は見つけた順に名前(ttyACM0、ttyACM1)を付けるので、再起動のたびに入れ替わるおそれがあります。そこで、差してある USB の口で見分ける(udev の)規則を書き、FAX 用と電話用に、いつも同じ名前が付くようにしました。
- そのかわり、USB ポートを差し替えると取り違えてしまいます。ポートに目印を付けておくと安心です。
- Ubuntu に初めから入っている ModemManager(携帯の回線のモデムを探す係)には、このモデムを触らせない設定にしました。FAX を受けている最中に、別の命令を送られないようにするためです。
パソコンから電話をかけるときは、受話器を先に上げる
モデムで番号を回し、話すのは電話機で、という形にしました。はじめは「モデムが番号を回す → 呼び出しが始まったら受話器を上げる」順にしましたが、モデムが回線から離れたとたんに電話が切れてしまいました。モデムが回線をつかんでいるあいだは、あとから上げた電話機は回線をつかめないようです。
そこで、順番を逆にしました。
- 先に、電話機の受話器を上げます。
- パソコンで「かける」を押します。モデムが番号を回します。
- 回し終えたら、モデムはすぐ回線から離れます。あとは電話機でそのまま話せます。
ほかにも、次のことが分かりました。
- ひかり電話のアナログの口では、モデムが発信音(ツー)を聞き取れないことがありました。発信音を待たずに回す設定(ATX3)にしました。
- 番号の最後に「#」を付けると、続きの番号を待たずに呼び出しが始まり、早くつながりました。
- コードレスの子機で話すときは、子機の「通話」ボタンを押してから、パソコンでかけました。
電話線の電圧で、回線の様子が分かる
このモデムには、電話線の電圧を読む命令(AT-TRV)があります。回線をつかまずに読めるので、とても便利でした。事務所の線で測った値です。
| 回線の様子 | 電圧 |
|---|---|
| 受話器が置いてある | 約 46〜47 V |
| 受話器が上がっている | 約 7 V |
| モデムが回線をつかんでいる(次の話) | 約 5.6 V |
これを使って、「受話器が上がっていなければ、番号を回さない」ようにしました。上の、受話器を先に上げる順番を守らせるためです。
再起動のあと、丸一日、電話が話し中になっていた
いちばん大きな教訓です。
- 起きたこと:サーバーを再起動したあと、約 1 日、事務所の電話が使えませんでした。かけてきた人には話し中の音が聞こえ、事務所の電話機を取っても、ツーという音がしませんでした。
- 気づいたきっかけ:「電話が話し中になる」と人から言われて、初めて気づきました。
- 調べ方:電話線の電圧を読むと 5.6 V で、何かが回線をつかんだままでした。受話器を全部置いても、アダプターの電源を入れ直しても変わりませんでした。モデムに「回線から離れる」命令(ATH0)を送ると 47 V に戻り、電話が使えるようになりました。
- 原因:再起動のときに、モデムが回線をつかんだ状態になっていました。記録からは原因が分かりませんでした。
- 見落としていた手がかり:再起動の直後から、ナンバー・ディスプレイ・アダプターについて「何も言ってこない」という警告が出続けていました。アダプターの故障だと思っていましたが、本当は回線がつかまれていて、着信が 1 本も来ていなかったからでした。この警告に気づけていれば、1 日早く分かったはずです。
そこで、次のように直しました。
- 電話をかける道具は、起動するたびに、モデムへ「回線から離れる」命令を送ります。再起動のあとも、必ず回線から離れた形で始まります。
- 5 分ごとに線の電圧を読みます。低ければ、まず「回線から離れる」命令を送って読み直します。電圧が戻ればモデムがつかんでいたということなので、スマホに知らせます。戻らなければ、ほかの電話機が使っているので、60 分より長く続いたときだけ知らせます(受話器の置き忘れなど)。
- 「回線から離れる」命令は、そのモデムが離れるだけなので、ほかの電話機の通話は切りません。5 分ごとに送っても困りません。
FAX 用モデムは、電話の着信にも出ます
FAX の電話線が使えるかを確かめるため、携帯電話から FAX の番号へかけてみました。モデムが出て「ピー」と鳴り、相手の FAX を約 40 秒(測った値は 43 秒)待ってから、自分で回線を離して、待っている形に戻りました。
- FAX 回線の確認は、携帯から FAX の番号へかけるだけでできます。
- FAX 用モデムは FAX ソフトがずっと使っているので、電圧は読めません。代わりに、FAX ソフトの様子(待っている、受けている)を 5 分ごとに見て、15 分より長く「待っている」に戻らなければ、スマホに知らせるようにしました。
まとめ
- 電話や FAX をサーバーにつなぐと、サーバーの再起動で、電話の不具合が起きることがあります。再起動のあとは、電話がつながるかを確かめてください。できれば、機械に見張らせると安心です。
- モデムの「電話線の電圧を読む」命令は、回線の様子を知るのにとても役に立ちます。
- 「何も言ってこない」という警告は、故障ではなく、もっと手前の異常の通知かもしれません。
このページの QR コード
https://robo100.jp/000031
まだコメントはありません。