そんなことが度々あります。
それは、大概、使い道が決まらず、箪笥の肥やしになってしまいます。
先日、山積した部品箱を整理していると、赤い木苺のマークがついた未開封のパッケージが出てきました。
あー・・・。
もう何年も前、DIYのイベント会場で、特別価格で売られていたラズベリーパイ3 ModelB。衝動的に欲しくなり、目的もないまま買ってしまったものです。
最新のラズベリーパイのバージョンは5にまで達していますので、今となっては旧式となってしまいました。
さて、これをどうしたものかと思い、使い道を色々思案しましたが、これというものが浮かばず、取りあえず目のつくところに置いて置くことにしました。
携帯電話が日常の通話機器となり、固定電話を使う機会が減りましたが、これを止めてしまうまでにはなりません。
私の固定電話はFAXと留守電機能が付いています。FAXは使う機会が減りましたが、たまに相手側からの要望で使うこともあります。
しかしながら、内臓プリンタのインクヘッドが壊れていまい、交換部品も手に入らなくなった現在、この大きな電話機は留守番電話としてしか使っていません。
FAXが必要な場合は、その都度、パソコンと電話機をアナログモデムで繋いでいるのです。
ふと、ラズベリーパイを目の前にして、「そうだ、これを使って電話システムを構築しよう」と思い立ちました。
Linuxプラットフォーム上で動作するPBXとして、Asteriskというオープンソースのソフトウェアがあります。
またFAX機能として、Hylafaxという、同じくオープンソースのソフトウェアがあります。
今回、これらを使ってシステムを構築します。
機器構成
フレッツ光・ひかり電話のモデム・ルーター。
ネットワークルーティングはRTX-830で行うため、ブリッジ機能に設定。
屋内LANネットワークのルーター。
プロバイダーへの接続を行います。
VPNでリモート機器から接続
無線LAN親機。
ルーター機能は使わず、ブリッジ/APモードに設定。
今回主役のワンボードマイコン。
PBX、FAXサーバーとして使用します。
SIPクライアントとの通信は、標準イーサネットポートを使用します。
ひかり電話SIPサーバーとの通信は、USB接続されたGU-1000Tイーサネットアダプタを使用。
RV-230SE内のひかり電話SIPサーバーと通信するためのイーサーネットアダプタ。
眠っていた古い機器を活用。
固定電話として使用するSIPクライアント。
携帯をSIPクライアントとして使用するが、Androidのディープスリープ問題などがあるので、安定して電話を受けることができる有線・固定SIPクライアント電話を設置。
中古品を購入。
SIPクライアントソフトをインストールして電話子機として使用します。
屋内ではWiFiでLANと接続し、屋外ではVPN経由でLANと接続します。
これにより屋外での着信・発信や子機同士で内線通話ができます。
RaspberryPiソフトウェア構成
OS標準のパケットフィルタ"iptabales"のフロントエンド。
ログを監視し、エラー検出時に通信を遮断。
留守番電話やFAXの送受信の通知メールを送信。
PBX機能を実現するソフト
asteriskが受信した音声データをアナログモデムデバイスのインターフェースでラップします。
hylafaxはこのインターフェースを使ってasteriskと音声データのやり取りをします。
FAXの送受信を行うサーバーソフト。