2009.09.22 Tuesday
Asterisk 使うだけなら Puppy でも可能でした
というわけで、OSは使い慣れた CentOS を利用することに
インストール用DVDイメージをダウンロードしてきて、仮想環境にマウント
最小構成でインストール。
インストールパッケージ記録
デスクトップ環境 | なし |
アプリケーション環境 | テキストベースのインターネット |
開発 |
開発ツール
開発ライブラリ |
サーバー | なし |
ベースシステム | ベース |
クラスタリング | なし |
クラスタストレージ | なし |
言語 | 日本語 |
インストールが完了したら、今後のために作業用ユーザの追加
# passwd radmin
ssh の設定
# vi sshd_config
Protocol 2
SyslogFacility AUTHPRIV
PermitRootLogin no
PermitEmptyPasswords no
PasswordAuthentication yes
ChallengeResponseAuthentication no
GSSAPIAuthentication yes
GSSAPICleanupCredentials yes
UsePAM yes
AcceptEnv LANG LC_CTYPE LC_NUMERIC LC_TIME LC_COLLATE LC_MONETARY LC_MESSAGES
AcceptEnv LC_PAPER LC_NAME LC_ADDRESS LC_TELEPHONE LC_MEASUREMENT
AcceptEnv LC_IDENTIFICATION LC_ALL
Subsystem sftp /usr/libexec/openssh/sftp-server
sshd を再起動したら Tera Term で接続して作業継続
必要なファイルのダウンロード
[root@faxserver src]# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.1.6.tar.gz
[root@faxserver src]# wget http://sourceforge.net/projects/iaxmodem/files/iaxmodem/iaxmodem-1.2.0/iaxmodem-1.2.0.tar.gz/download
[root@faxserver src]# wget ftp://ftp.hylafax.org/source/hylafax-6.0.3.tar.gz
IAXmodem は 1.2.0
Hylafax は 6.0.3
必要なライブラリのインストール
Asterisk のインストール
[root@faxserver src]# cd asterisk-1.6.1.6
[root@faxserver asterisk-1.6.1.6]# ./configure
[root@faxserver asterisk-1.6.1.6]# make
[root@faxserver asterisk-1.6.1.6]# make install
[root@faxserver asterisk-1.6.1.6]# make samples
その後に、サンプルファイルのインストールもやっときます。
Asterisk は高機能すぎで設定が大変ですから・・・
IAXmodem のインストール その1(libiax2)
[root@faxserver src]# tar xvfz iaxmodem-1.2.0.tar.gz
[root@faxserver src]# cd iaxmodem-1.2.0
[root@faxserver iaxmodem-1.2.0]# cd lib/libiax2/
[root@faxserver libiax2]# ./configure
[root@faxserver libiax2]# make
[root@faxserver libiax2]# make install
で、ライブラリ登録で /usr/local/lib がなければ追加しときます。
[root@faxserver libiax2]# /sbin/ldconfig -v
/usr/local/lib:
libiax.so.0 -> libiax.so.0.0.0
IAXmodem のインストール その2(spandsp)
[root@faxserver lib]# cd spandsp/
[root@faxserver spandsp]# ./configure
[root@faxserver spandsp]# make
[root@faxserver spandsp]# make install
[root@faxserver spandsp]# /sbin/ldconfig -v
/usr/local/lib:
libspandsp.so.1 -> libspandsp.so.1.0.0
libiax.so.0 -> libiax.so.0.0.0
IAXmodem のインストール その3(iaxmodem)
[root@faxserver lib]# cd ..
[root@faxserver iaxmodem-1.2.0]# ./build
[root@faxserver iaxmodem-1.2.0]# cp -p iaxmodem /usr/local/sbin/
IAXmodem の設定ファイル配置
[root@faxserver iaxmodem-1.2.0]# cp -p iaxmodem-cfg.ttyIAX /etc/iaxmodem/ttyIAX
[root@faxserver iaxmodem-1.2.0]# cat /etc/iaxmodem/ttyIAX
device /dev/ttyIAX
owner uucp:uucp
mode 660
port 4570
refresh 300
server 127.0.0.1
peername iaxmodem
secret password
cidname John Doe
cidnumber 8005551212
codec slinear
[root@faxserver iaxmodem-1.2.0]#
Hylafax のインストール
[root@faxserver src]# tar xvfz hylafax-6.0.3.tar.gz
[root@faxserver src]# cd hylafax-6.0.3
[root@faxserver hylafax-6.0.3]# ./configure
ほぼデフォルトのままでいいのですが、2箇所だけ変更しておきましょう
(用紙サイズが North American Letter じゃぁねぇ)
[ 1] Directory for applications: /usr/local/bin
[ 2] Directory for lib data files: /usr/local/lib/fax
[ 3] Directory for lib executables: /usr/local/sbin
[ 4] Directory for system apps: /usr/local/sbin
[ 5] Directory for manual pages: /usr/local/man
[ 7] Directory for spooling: /var/spool/hylafax
[ 8] Directory for uucp lock files: /var/lock
[ 9] Uucp lock file scheme: ascii
[10] PostScript imager package: gs
[11] PostScript imager program: /usr/bin/gs
[12] Manual page installation scheme: bsd-source-cat
[13] Default page size: North American Letter
[14] Default vertical res (lpi): 98
Are these ok [yes]? 13
Default page size [North American Letter]? A4
Are these ok [yes]? 14
Default vertical res (lpi) [98]? 196
[root@faxserver hylafax-6.0.3]# make
[root@faxserver hylafax-6.0.3]# make install
Hylafax のインストールが終わったら faxsetup を実行
やっぱしアメリカ仕様ではまずいので
Area code []? 44
Long distance dialing prefix [1]? 0
International dialing prefix [011]? 001
市外局番は最初の ゼロ を抜かして登録します
で、市外局番の頭文字として ゼロ を登録
国際電話には 001 をつけろと指定
ここまでで必要なもののインストールは完了です
次に各種設定
Asterisk 設定 sip.conf
[root@faxserver asterisk]# cat > sip.conf
[general]
context=default
allowoverlap=no
maxexpirey=3600
defaultexpirey=3600
port=5060
bindaddr=0.0.0.0
srvlookup=yes
allowguest=no
disallow=all
allow=ulaw
allow=alaw
allow=gsm
localnet=10.10.10.0/255.255.255.0
;HIKARI ROUTER PR-S300SE
prs300se=10.10.10.1
register => 7:0007:0007@prs300se/201
[201]
type=friend
secret=pass
canreinvite=no
host=dynamic
dtmfmode=rfc2833
context=default
[prs300se]
type=friend
secret=0007
username=0007
fromuser=7
host=10.10.10.1
fromdomain=10.10.10.1
context=default
insecure=invite
dtmfmode=inband
canreinvite=no
disallow=all
allow=ulaw
[root@faxserver asterisk]#
ひかり電話側の内線設定は以下のとおり
ひかり電話機のアドレスは 10.10.10.1 にしてあります
Asterisk 設定 iax.conf
[general]
iaxcompat=yes
language=jp
bandwidth=medium
disallow=all
allow=ulaw
allow=slinear
jitterbuffer=no
forcejitterbuffer=no
[iaxmodem]
type=friend
username=iaxmodem
secret=password
host=dynamic
disallow=all
allow=ulaw
allow=slinear
requirecalltoken=no
context=fax-out
[root@faxserver asterisk]#
Asterisk設定 extensions.conf
[general]
autofallthrough=yes
writeprotect=no
priorityjumping=no
[globals]
MYNUMBER=0440000000
[default]
;Hikari - Other Dial-in
exten => _20Z,1,Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
exten => _20Z,n,Monitor(wav49,"${DATE}-in-${CALLERID(num)}-${EXTEN}-${UNIQUEID}",m)
exten => _20Z,n,Dial(SIP/${EXTEN})
exten => _20Z,n,Wait(2)
exten => _20Z,n,Hangup
;Hikari Dial-out
exten => _[01].,1,Set(CALLERID(num)=${MYNUMBER})
exten => _[01].,n,Set(CALLERID(name)=${MYNUMBER})
exten => _[01].,n,Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
exten => _[01].,n,Monitor(wav49,"${DATE}-out-${EXTEN}-${UNIQUEID}",m)
exten => _[01].,n,Dial(SIP/${EXTEN}@prs300se)
exten => _[01].,n,Hangup
[fax-out]
exten => _X.,1,Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)})
exten => _X.,n,Set(L=${LEN(${EXTEN})})
exten => _X.,n,Set(SID=${IF($[${L} > 15]?${EXTEN:0:12}:000000000000)})
exten => _X.,n,Set(AID=${IF($[${L} > 15]?${EXTEN:12:3}:000)})
exten => _X.,n,Set(NUM=${IF($[${L} > 15]?${EXTEN:15}:${EXTEN})})
exten => _X.,n,Monitor(wav49,"${SID}-${AID}-${NUM}-${DATE}-fax-${UNIQUEID}",m)
exten => _X.,n,Dial(SIP/${NUM}@prs300se,20)
exten => _X.,n,Hangup
[root@faxserver asterisk]#
[root@faxserver asterisk]# mv extensions.ael extensions.ael.bak
電話番号の頭が 0か1から始まったらひかり電話に接続
この設定だと、市内でも必ず市外局番からかけないと電話をかけられませんのでご注意を
IAXmodem からの利用として fax-out を設定してあります
すべての電話は自動録音する設定になっています
不要な場合は Monitor の行を削除しといてください
録音ファイルは /var/spool/asterisk/monitor/ ディレクトリに保存します
録音ファイルの命名規則は以下のとおり
かかってきた電話 日付-in-相手先番号-受取内線番号-ユニーク番号.WAV
かけた電話 日付-out-相手先番号-ユニーク番号.WAV
送ったFAX 独自12桁-独自3桁-相手先番号-日付-fax-ユニーク番号.WAV
参考にしたのは以下のサイト(先人の知恵に感謝です)
http://www.voip-info.org/wiki/view/Asterisk+variables
http://blog.goo.ne.jp/jnana_tomo/e/123f1557e1d3303d15e358f7ed92d3fb
http://chuou-dk.homeip.net/mimi/mimi-blog/2008/03/ipasteriskfax.html
http://www.aska-ltd.jp/asterisk/pukiwiki/index.php?iaxmodem%E3%81%A8Hylafax%E3%81%A7FAX
http://voip-info.jp/index.php/Asterisk
http://www.syon.co.jp/syontech/tech010.html
http://www.ne.jp/asahi/davinci/code/asterisk/extensions/index3.html
Hylafax の設定 config.ttyIAX
[root@faxserver iaxmodem-1.2.0]# cp -p config.ttyIAX /var/spool/hylafax/etc/
[root@faxserver iaxmodem-1.2.0]# vi /var/spool/hylafax/etc/config.ttyIAX
AreaCode: 44
FAXNumber: +81.44.000.0000
LongDistancePrefix: 0
InternationalPrefix: 001
LocalIdentifier: "n73.jugem.jp 044-000-0000"
どうやら日本語化対応されていないようなので、日本語は利用不可です
/etc/sysconfig/i18n も英語に設定しといた方が幸せになれると思います。。
LANG="en_US.UTF-8"
SUPPORTED="en_US.UTF-8:en_US:en"
Hylafax の設定 sendfax.conf
[root@faxserver fax]# cat > sendfax.conf
MaxTries: 2
MaxDials: 2
[root@faxserver fax]#
デフォルトだと12回も送りなおそうとするので・・しつこいから
Hylafax の設定 hfaxd.conf
JobFmt: "%-5j %1a %-27.27e %5P %5D %10Z %.25s"
これで、faxstat コマンドの表示内容を変更します
Hylafax の設定 fax送信ユーザの登録
[root@faxserver fax]# /usr/local/sbin/faxadduser -u radmin password
登録できたかは /var/spool/hylafax/etc/hosts.hfaxd を確認
次に自動起動の設定
Asterisk の自動起動設定
[root@faxserver asterisk-1.6.1.6]# chkconfig --add asterisk
[root@faxserver asterisk-1.6.1.6]# chkconfig --list | grep :on
asterisk 0:off 1:off 2:on 3:on 4:on 5:on 6:off
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
syslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@faxserver asterisk-1.6.1.6]#
IAXmodem の自動起動設定
[root@faxserver iaxmodem-1.2.0]# chmod +x /etc/init.d/iaxmodem
[root@faxserver iaxmodem-1.2.0]# chkconfig --add iaxmodem
[root@faxserver iaxmodem-1.2.0]# chkconfig --list | grep iaxmodem
iaxmodem 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@faxserver iaxmodem-1.2.0]#
Hylafax の自動起動設定
hylafax 0:off 1:off 2:on 3:on 4:on 5:on 6:off
[root@faxserver ~]#
faxgetty の自動起動設定
[root@faxserver ~]# echo "mo:2345:respawn:/usr/local/sbin/faxgetty /dev/ttyIAX" >> /etc/inittab
ここまでで設定作業は完了
動作確認
Asterisk の起動確認
〜 省略 〜
Asterisk Ready.
エラーっぽい記述がなければOK
Asterisk の設定確認
faxserver*CLI> sip reload (sipの設定ファイルを読み込み)
Reloading SIP
faxserver*CLI> sip show users
Username Secret Accountcode Def.Context ACL NAT
201 pass default No RFC3581
prs300se 0007 default No RFC3581
faxserver*CLI>
faxserver*CLI> sip show registry (ひかり電話に接続できてることを確認)
Host dnsmgr Username Refresh State Reg.Time
prs300se:5060 N 7 3585 Registered Tue, 22 Sep 2009 13:18:30
1 SIP registrations.
faxserver*CLI>
faxserver*CLI> sip show peers
Name/username Host Dyn Nat ACL Port Status
201/201 10.10.10.5 D 58213 Unmonitored
prs300se/0007 10.10.10.1 5060 Unmonitored
2 sip peers [Monitored: 0 online, 0 offline Unmonitored: 2 online, 0 offline]
faxserver*CLI>
faxserver*CLI> iax2 reload (iaxの設定ファイル読み込み)
== Loaded firmware 'iaxy.bin'
faxserver*CLI> iax2 show users
Username Secret Authen Def.Context A/C Codec Pref
iaxmodem password 000000000000003 fax-out No Host
faxserver*CLI> iax2 show peers (iaxの接続状況を確認・・まだ未接続)
Name/Username Host Mask Port Status
iaxmodem/iaxmod (Unspecified) (D) 255.255.255.255 0 (E) Unmonitored
1 iax2 peers [0 online, 0 offline, 1 unmonitored]
faxserver*CLI>
faxserver*CLI> dialplan reload (extensionsの設定ファイル読み込み)
Dialplan reloaded.
== Parsing '/etc/asterisk/extensions.conf': == Found
== Setting global variable 'MYNUMBER' to '0440000000'
-- Registered extension context 'default' (0x85080e8) in local table 0x84eefd8; registrar: pbx_config
-- Added extension '_20Z' priority 1 to default (0x85080e8)
-- Added extension '_20Z' priority 2 to default (0x85080e8)
-- Added extension '_20Z' priority 3 to default (0x85080e8)
-- Added extension '_20Z' priority 4 to default (0x85080e8)
-- Added extension '_20Z' priority 5 to default (0x85080e8)
-- Added extension '_[01].' priority 1 to default (0x85080e8)
-- Added extension '_[01].' priority 2 to default (0x85080e8)
-- Added extension '_[01].' priority 3 to default (0x85080e8)
-- Added extension '_[01].' priority 4 to default (0x85080e8)
-- Added extension '_[01].' priority 5 to default (0x85080e8)
-- Added extension '_[01].' priority 6 to default (0x85080e8)
-- Registered extension context 'fax-out' (0x8507238) in local table 0x84eefd8; registrar: pbx_config
-- Added extension '_X.' priority 1 to fax-out (0x8507238)
-- Added extension '_X.' priority 2 to fax-out (0x8507238)
-- Added extension '_X.' priority 3 to fax-out (0x8507238)
-- Added extension '_X.' priority 4 to fax-out (0x8507238)
-- Added extension '_X.' priority 5 to fax-out (0x8507238)
-- Added extension '_X.' priority 6 to fax-out (0x8507238)
-- Added extension '_X.' priority 7 to fax-out (0x8507238)
-- Added extension '_X.' priority 8 to fax-out (0x8507238)
== Parsing '/etc/asterisk/users.conf': == Found
-- Registered extension context 'app_dial_gosub_virtual_context' (0x84ee6b8) in local table 0x84eefd8; registrar: app_dial
-- merging incls/swits/igpats from old(app_dial_gosub_virtual_context) to new(app_dial_gosub_virtual_context) context, registrar = pbx_config
-- Added extension 's' priority 1 to app_dial_gosub_virtual_context (0x84ee6b8)
-- Registered extension context 'app_queue_gosub_virtual_context' (0x84ee750) in local table 0x84eefd8; registrar: app_queue
-- merging incls/swits/igpats from old(app_queue_gosub_virtual_context) to new(app_queue_gosub_virtual_context) context, registrar = pbx_config
-- Added extension 's' priority 1 to app_queue_gosub_virtual_context (0x84ee750)
-- Registered extension context 'parkedcalls' (0x84ee830) in local table 0x84eefd8; registrar: features
-- merging incls/swits/igpats from old(parkedcalls) to new(parkedcalls) context, registrar = pbx_config
-- Added extension '700' priority 1 to parkedcalls (0x84ee830)
-- Time to scan old dialplan and merge leftovers back into the new: 0.002114 sec
-- Time to restore hints and swap in new dialplan: 0.000003 sec
-- Time to delete the old dialplan: 0.000013 sec
-- Total time merge_contexts_delete: 0.002130 sec
faxserver*CLI>
faxserver*CLI> dialplan show (extensions設定内容表示)
[ Context 'parkedcalls' created by 'features' ]
'700' => 1. Park() [features]
[ Context 'app_queue_gosub_virtual_context' created by 'app_queue' ]
's' => 1. NoOp() [app_queue]
[ Context 'app_dial_gosub_virtual_context' created by 'app_dial' ]
's' => 1. NoOp() [app_dial]
[ Context 'fax-out' created by 'pbx_config' ]
'_X.' => 1. Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}) [pbx_config]
2. Set(L=${LEN(${EXTEN})}) [pbx_config]
3. Set(SID=${IF($[${L} > 15]?${EXTEN:0:12}:000000000000)}) [pbx_config]
4. Set(AID=${IF($[${L} > 15]?${EXTEN:12:3}:000)}) [pbx_config]
5. Set(NUM=${IF($[${L} > 15]?${EXTEN:15}:${EXTEN})}) [pbx_config]
6. Monitor(wav49,"${SID}-${AID}-${NUM}-${DATE}-fax-${UNIQUEID}",m) [pbx_config]
7. Dial(SIP/${NUM}@prs300se,20) [pbx_config]
8. Hangup() [pbx_config]
[ Context 'default' created by 'pbx_config' ]
'_20Z' => 1. Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}) [pbx_config]
2. Monitor(wav49,"${DATE}-in-${CALLERID(num)}-${EXTEN}-${UNIQUEID}",m) [pbx_config]
3. Dial(SIP/${EXTEN}) [pbx_config]
4. Wait(2) [pbx_config]
5. Hangup() [pbx_config]
'_[01].' => 1. Set(CALLERID(num)=${MYNUMBER}) [pbx_config]
2. Set(CALLERID(name)=${MYNUMBER}) [pbx_config]
3. Set(DATE=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}) [pbx_config]
4. Monitor(wav49,"${DATE}-out-${EXTEN}-${UNIQUEID}",m) [pbx_config]
5. Dial(SIP/${EXTEN}@prs300se) [pbx_config]
6. Hangup() [pbx_config]
-= 6 extensions (22 priorities) in 5 contexts. =-
faxserver*CLI>
Windows機より、SIPソフト X-Lite を起動して Asterisk に接続してみる
X-lite の設定は sip.conf の通り
X-Liteで接続すると、以下が表示されるハズ
-- Registered SIP '201' at 10.10.10.4 port 40570
> Saved useragent "X-Lite release 1103k stamp 53621" for peer 201
faxserver*CLI>
X-Lite で外部に電話をかけてみる 時報の117にかけた場合は以下が表示される
== Using SIP RTP CoS mark 5
-- Executing [117@default:1] Set("SIP/201-085082a0", "CALLERID(num)=0440000000") in new stack
-- Executing [117@default:2] Set("SIP/201-085082a0", "CALLERID(name)=0440000000") in new stack
-- Executing [117@default:3] Set("SIP/201-085082a0", "DATE=20090922-132214") in new stack
-- Executing [117@default:4] Monitor("SIP/201-085082a0", "wav49,"20090922-132214-out-117-1253593334.0",m") in new stack
-- Executing [117@default:5] Dial("SIP/201-085082a0", "SIP/117@prs300se") in new stack
== Using SIP RTP CoS mark 5
-- Called 117@prs300se
-- SIP/prs300se-085101f0 answered SIP/201-085082a0
== Spawn extension (default, 117, 5) exited non-zero on 'SIP/201-085082a0'
faxserver*CLI>
だめだった場合は X-Lite の設定、Asterisk の設定を確認
X-Liteの音声 Codecs は要注意 G711 uLaw だけにしとくと良いと思う
X-Lite で外部からの電話を受けてみる 携帯からひかり電話に電話して以下が表示
== Using SIP RTP CoS mark 5
-- Executing [201@default:1] Set("SIP/prs300se-08508518", "DATE=20090922-132249") in new stack
-- Executing [201@default:2] Monitor("SIP/prs300se-08508518", "wav49,"20090922-132249-in-08000000000-201-1253593369.2",m") in new stack
-- Executing [201@default:3] Dial("SIP/prs300se-08508518", "SIP/201") in new stack
== Using SIP RTP CoS mark 5
-- Called 201
-- SIP/201-0850ea58 is ringing
-- SIP/201-0850ea58 answered SIP/prs300se-08508518
== Spawn extension (default, 201, 3) exited non-zero on 'SIP/prs300se-08508518'
faxserver*CLI>
Asterisk の録音ファイルが作成されていることを確認
Executing last minute cleanups
[root@faxserver ~]# ls -l /var/spool/asterisk/monitor/
合計 32
-rw-r--r-- 1 root root 7146 9月 22 13:22 20090922-132214-out-117-1253593334.0.WAV
-rw-r--r-- 1 root root 22290 9月 22 13:23 20090922-132249-in-08000000000-201-1253593369.2.WAV
[root@faxserver ~]#
IAXmodem の起動確認
[1] 16334
[root@faxserver ~]# [2009-09-22 13:27:04] Modem started
[2009-09-22 13:27:04] Setting device = '/dev/ttyIAX'
[2009-09-22 13:27:04] Setting owner = 'uucp:uucp'
[2009-09-22 13:27:04] Setting mode = '660'
[2009-09-22 13:27:04] Setting port = 4570
[2009-09-22 13:27:04] Setting refresh = 300
[2009-09-22 13:27:04] Setting server = '127.0.0.1'
[2009-09-22 13:27:04] Setting peername = 'iaxmodem'
[2009-09-22 13:27:04] Setting secret = 'password'
[2009-09-22 13:27:04] Setting cidname = 'John Doe'
[2009-09-22 13:27:04] Setting cidnumber = '8005551212'
[2009-09-22 13:27:04] Setting codec = slinear
[2009-09-22 13:27:04] Opened pty, slave device: /dev/pts/2
[2009-09-22 13:27:04] Created /dev/ttyIAX symbolic link
[2009-09-22 13:27:04] Registration completed successfully.
Asterisk 側で IAXmodem の接続を確認する
Asterisk 1.6.1.6, Copyright (C) 1999 - 2009 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
== Parsing '/etc/asterisk/asterisk.conf': == Found
== Parsing '/etc/asterisk/extconfig.conf': == Found
Connected to Asterisk 1.6.1.6 currently running on faxserver (pid = 16182)
Verbosity is at least 32
faxserver*CLI>
faxserver*CLI> iax2 show peers (Host欄に接続されていることを確認)
Name/Username Host Mask Port Status
iaxmodem/iaxmod 127.0.0.1 (D) 255.255.255.255 4570 (E) Unmonitored
1 iax2 peers [0 online, 0 offline, 1 unmonitored]
faxserver*CLI>
Hylafax( faxgetty )の動作確認
[root@faxserver ~]# faxstat -s
HylaFAX scheduler on faxserver: Running
Modem ttyIAX (+81.44.000.0000): Running and idle
[root@faxserver ~]#
faxgetty に IAXmodem をつかませるために /dev/ttyIAX として起動する
ちゃんと ttyIAX をつかむまでしばらく待つコト
つかんでくれなかった場合は Hylafax を再起動してみる
# /etc/init.d/hylafax restart とか
ここまで大丈夫だったら、FAXが送れるはず
FAX送信テスト
request id is 50 (group id 50) for host localhost (1 file)
HylaFAX scheduler on faxserver: Running
Modem ttyIAX (+81.44.000.0000): Initializing server
JID S Number Pages Dials UNIX Time Status
50 R 0440000000 0:1 0:2 1253594412
[root@faxserver ~]#
50 D 04400000000 1:1 1:2 1253594443
[root@faxserver ~]#
送信済みキュー に登録されていることを確認する
このとき、/var/log/message を監視していると、送信ログを確認できる
何らかのエラーが発生した場合もエラー内容が表示される
ghostscript 関連でエラーなど・・・
FAX送信が完了したら Asterisk の音声ファイルも確認する
-rw-r--r-- 1 root root 82026 9月 22 13:39 000000000000-000-0440000000-20090922-133813-fax-1253594293.0.WAV
[root@faxserver ~]#
ここまでできれば動作確認も完了
あとは sendfax をぐるぐるまわすシェルでも書いて送るだけ :)
送信用のファイルはウィンドウズ側のプリンタにポストスクリプトプリンタを登録して、ファイル出力すれば作成できます。
エクセルでもワードでもパワポでもOK
プリンタ名が[ 〜 PS] がついてれば、たぶんポストスクリプトプリンタ
私は「XeroxDocuPrint N2825 PS」ってのを追加してみました
プリンタポートは FILE:にしてあります
プリンタの詳細設定でPostScript 出力オプションを EPS にしておく
んで、プリンタの出力先フォルダを CentOS から mount -t cifs でもしておいて
cron で監視、ファイルが追加されたら自動で sendfax かなぁ
とりあえず、仮想環境でのサーバ構築は完了
最初はなんとか puppy で、と思ってたので苦労しました。。
4.1.2ではだめで、4.20とか3.0.1とか試しましたが、ダメ・・
原因わかる方、お知らせいただけると助かります
OSがCentOSになっちゃったので、ちゃんと動く性能のノートでも探してこなくちゃ
1万前後であるかな
Puppyなら・・・
秋葉原めぐりでもしてみるか
Asterisk のおかげで通話の記録が完全に取れるようになったのは助かります
通話の録音って・・法的になんか問題ありましたかね・・
自分の電話を自分で録音してるだけだし・・問題ないですよね??