PIAST ページング

2016年3月5日 (土) 01:04時点におけるTakahashi (トーク | 投稿記録)による版 (ページの作成:「PIASTをページング端末として使用する場合の例<br> ==必要条件== ALSAドライバ(raspbianデフォルトで入っているはず)<br> chan_alsa+chan...」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

PIASTをページング端末として使用する場合の例

必要条件

ALSAドライバ(raspbianデフォルトで入っているはず)
chan_alsa+chan_consoleでコンパイルされたAsterisk
PIAST アンプ
必要に応じて
PIAST リレー

設定例

alsa.conf

[general]
autoanswer=yes
context=local
extension=s
output_device=default:0

noaudiocapture=true

modules.conf

load => chan_alsa.so
noload => chan_oss.so

明示的にalsaをロードする場合上の例のようにchan_alsaをロードし、can_ossをロードしない。
alsamixerで音量を調整する必要があるので、必要に応じて音量調整を行うこと。

記述例

/home/piastに各種スクリプトが置いてあるとします。
extensions.confに以下のように書きます。コンテキストは分けておいた方が後々便利です。

[paging]

exten => s,1,NoOp(Paging Start)
exten => s,n,Dial(Console/0,,A(beep))

この記述だけでビープ音の後にページングする機能が実装できます。再生するファイルを他のものにすれば別な音を再生してからページングできます。
ページング終了後にもビープやチャイム等の音を鳴らしたい場合にはこれだけではできないので、ちょっとしたワザを使います。

[paging]

exten => s,1,NoOp(Paging Start)
exten => s,n,Dial(Console/0,,A(beep))

;ハングアップ後に音声を流す
exten => h,1,NoOp(Paging Hangup)
exten => h,n,System(asterisk -rx 'channel originate Console/0 application Playback hello-world')

チャネルが切断するとhエクステンションに飛ぶのを利用し、切断後にConsoleに対して音声ファイルを流します。
アンプをリレーで制御したい場合には以下の例のようにします。

[paging]

exten => s,1,NoOp(Paging Start)
exten => s,n,System(/home/piast/relayon.sh)
exten => s,n,Dial(Console/0,,A(beep))

;ハングアップ後に音声を流す
exten => h,1,NoOp(Paging Hangup)
exten => h,n,System(/home/piast/relayoff.sh)
exten => h,n,System(asterisk -rx 'channel originate Console/0 application Playback hello-world')

内線からダイヤルしてページングさせたい場合には

exten => 9999,1,Goto(paging,s,1)

のように書くだけです。