on
こんにちは、開発担当の千葉です。
【第5回 JAWS-UG-Sapporo 勉強会】で発表した構成にて、050番号による外線接続を実現したので投稿します。
外線番号には、高品質でイニシャルコストが魅力的なFusion IP-Phoneサービスを利用しました。
以下の構成で検証してみたいと思います。
ちなみに、初期費用は1,000円以下、通話料を除いた月額費用は500円以下だったと思います。
(※ 詳細については、Fusion IP-Phoneサービスにてご確認ください)
IP-Phoneの申し込みが完了すると、以下の様な情報が連絡されます。
【情報例】
SIPドメイン | foo.sip.bar.net |
---|---|
IP加入電話番号 | 050-xxxx-xxxx |
アカウントID | xxxxxxxx |
IP加入電話パスワード | !aaa%bbb&ccc |
これらの情報をもって、3ステップで環境を構築したいと思います。
編集対象となるファイルは以下の2ファイルです。
- /etc/asterisk/sip.conf
- /etc/asterisk/extensions.conf
【1. sip.confの編集】
[general]port=5060disallow=allallow=gsmlocalnet=192.168.0.0/255.255.0.0externip=zzz.zzz.zzz.zzz;[fusion1]register => xxxxxxxx:!aaa%bbb&ccc@fusion1/xxxxxxxx[201]type=frienddefaultuser=201secret=passcanreinvite=nohost=dynamicdtmfmode=rfc2833callgroup=1pickupgroup=1mailbox=201[fusion1]type=friendusername=xxxxxxxxfromuser=xxxxxxxxsecret=!aaa%bbb&ccccanreinvite=nocontext=incominginsecure=port,invitehost=foo.sip.bar.netfromdomain=foo.sip.bar.netdtmfmode=autoallowsubscribe=nonat=never
編集対象行を以下に列挙します。
- 6行目:『zzz.zzz.zzz.zzz』
IVRサーバの”グローバルIP”を記載します。 - 9行目:『xxxxxxxx:!aaa%bbb&ccc@fusion1/xxxxxxxx』
“アカウントID”、”IP加入電話パスワード”を記載します。 - 24行目:『username=xxxxxxxx』
“アカウントID”を記載します。 - 25行目:『fromuser=xxxxxxxx』
“アカウントID”を記載します。 - 26行目:『secret=!aaa%bbb&ccc』
“IP加入電話パスワード”を記載します。 - 30行目:『host=foo.sip.bar.net』
“SIPドメイン”を記載します。 - 31行目:『fromdomain=foo.sip.bar.net』
“SIPドメイン”を記載します。
【2. extensions.confの編集】
[globals]MYNUMBER1=xxxxxxxx[default]exten => 316,1,Goto(at,1)exten => at,1,Wait(3)exten => at,2,Answer()exten => at,3,AGI(example.php);From fusionexten => ${MYNUMBER1},1,Wait(6)exten => ${MYNUMBER1},2,Answer()exten => ${MYNUMBER1},3,AGI(example.php)exten => ${MYNUMBER1},n,Dial(SIP/${EXTEN}@fusion1)exten => ${MYNUMBER1},n,Hangup
編集対象行を以下に列挙します。
- 2行目:『MYNUMBER1=xxxxxxxx』
“アカウントID”を記載します。
【3. asteriskの起動、B2BUAへの接続確認】
これまでの作業で設定ファイルの編集は完了です。
asteriskを起動し、B2BUAへ正しく接続されているか確認しましょう。
(※ 1、15、21行目でコマンドを実行しています)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
[root@ip-xxx-xxx-xxx-xxx ~] # asterisk -vvvvvvvvc == Registered custom function 'LOCAL' Asterisk 1.8.9.1, Copyright (C) 1999 - 2011 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 〜〜〜〜〜〜〜〜〜〜〜 中略 〜〜〜〜〜〜〜〜〜〜〜 *CLI> *CLI> sip show peers Name /username Host Dyn Forcerport ACL Port Status 201 /201 000.000.000.000 D N 61796 Unmonitored fusion1 /xxxxxx 000.000.000.000 N 5060 Unmonitored 2 sip peers [Monitored: 0 online, 0 offline Unmonitored: 2 online, 0 offline] *CLI> *CLI> sip show peer fusion1 * Name : fusion1 Secret : <Set> MD5Secret : <Not set > Remote Secret: <Not set > Context : incoming Subscr.Cont. : <Not set > Language : AMA flags : Unknown Transfer mode: open CallingPres : Presentation Allowed, Not Screened FromUser : xxxxxxxx FromDomain : foo.sip.bar.net Port 5060 Callgroup : 〜〜〜〜〜〜〜〜〜〜〜 中略 〜〜〜〜〜〜〜〜〜〜〜 RTP Engine : asterisk Parkinglot : Use Reason : No Encryption : No *CLI> |
【動作の確認】
050-xxxx-xxxx(IP加入電話番号)をコールすると、前回に316でコールしていた
IVR処理と同じ様に『Hello world』と言われるハズです。
まとめ
Fusion社の『IP-Phone』+『B2BUA』を利用することで、低投資で外線を利用したIVRサービスの構築が可能です。
『B2BUA』を利用することで、NTT東西が提供するフレッツサービス/AWS Direct Connect等の高価な回線を契約をせずに
外線を利用したAsterisk環境を構築することが可能です。
次回は、音声読み上げをやってみようと思います。