ON THE HAND

引っ越しました http://tech.andhandworks.com

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

このエントリーをはてなブックマークに追加

  1. --/--/--(--) --:--:--|
  2. スポンサー広告

Raspberry Pi で家庭内電話網を作る

Raspberry Pi で PBX (IP 電話サーバ)を構築し、
古いスマホで内線電話を掛けられるようにしてみました。
4歳女子に渡してみたところ、自分用の電話ができたのが
嬉しかったのか、ことあるごとに電話が掛かってきます。

ちゃんと設定すると外線との発着信も可能なのですが、
今回は飽くまでリアルなおもちゃ電話として使えるものを
目指します。

Raspberry Pi は先日ファイルサーバにした Rasbpian の
環境
を使います。

Asterisk vs RasPBX

Raspberry Pi を PBX にするために Aterisk という
ソフトウェアを使います。
実はRaspberry Pi にはRasPBXというディストリビューションがあります。
これを使うといきなり PBX が動作し、Webブラウザから設定変更等も
できるようです。

ただ、今回はおもちゃ電話が目的で、他の用途と兼用したいので
RasPBX ではなく Asterisk 単体でインストールしました。

Asterisk のインストール

apt-get でインストールするだけです。
pi@raspberrypi ~ $ sudo apt-get install asterisk
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
        :
必要なユーザも自動的に作成されます。

Asterisk の設定:/etc/asterisk/sip.conf

まず、/etc/asterisk/sip.conf で電話番号を作ります。
巨大な設定ファイルですがほとんどコメントアウトされています。
general セクションだけ探して書き換えたら、あとは末尾に 書き足せばOKです。
[general]
localhost=192.168.11.0/255.255.255.0
            :
[5130]
type=friend
username=5130
secret=PASSWORD
canreinvite=no
host=dynamic

[5134]
type=friend
username=5134
secret=PASSWORD
canreinvite=no
host=dynamic
general に指定するネットワークアドレスは Raspberry Pi が
繋がっているネットワークのものに書き換えてください。

カッコ書きの数字は電話番号です。
何桁でも構わないですが、先頭の番号だけは揃えておくと
後の設定が楽です。

username と PASSWORD は電話機を登録する際の
ID とパスワードなのですが、宅内だけで使う場合は
イイカゲンで構いません。

Asterisk の設定:/etc/asterisk/rtp.conf

デフォルトで10,000個のポートを使用するようになっているので
適当に減らします。
rtpstart=10000
;rtpend=20000
rtpend=10010

Asterisk の設定:/etc/asterisk/extensions.conf

[default] セクションを下記のように変更します。
exten => _5XXX,1,Dial(SIP/${EXTEN},30)
exten => _5XXX,2,Congestion
exten => _5XXX,102,Busy
「_5XXX」というのは「5で始まる4ケタ」という意味です。
sip.conf で作った電話番号に合わせて適当に書き換えてください。

Asterisk の再起動

ここまでできたら Asterisk の設定は完了。
日本語化?案内音声の変更?は?何それ?美味しいの?

再起動します。
pi@raspberrypi ~ $ sudo service asterisk restart
Stopping Asterisk PBX: asterisk.
Starting Asterisk PBX: asterisk.

スマホの設定

Google play / AppStore で "SIP" と検索すると色々なアプリが見つかります。
使いやすいものを入れれば良いかと思います。

Android はOSがSIPの機能を持っているのですが、
使いにくいので別アプリを入れるのがお奨めです。

子どもでも比較的分かりやすそうなものとして、私は次のアプリを入れました。

いずれのアプリも sip.conf で設定した電話番号とユーザ名、パスワードを設定します。
WiFi を ON にして Raspberry Pi と同じネットワークに接続しておく必要があります。

電話を掛けてみる

以上で全ての設定が終わりました。
電話を掛けてみましょう。
発信側は当然のことながら、着信側もバックグラウンドでアプリを起動しておく
必要があるのでご注意ください。

古いスマホを子供に渡しておくと親のスマホに本当に着信するので
結構盛り上がります。

このエントリーをはてなブックマークに追加

  1. 2015/04/14(火) 22:38:20|
  2. Raspberry Pi
  3. | コメント:0
関連記事
<<おもちゃの手回し発電機で遊ぶ | ホーム | Arduino 互換機を自作する(4):仮組み~完成>>

コメント

コメントの投稿


管理者にだけ表示を許可する

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。