voip practice
TRANSCRIPT
-
VoIP v tng i VoIP Bi thc hnh
Page 1
Contents
Bi 1 : Lm quen VMware, Linux, wireshark, secureCRT, WinSCP........................................................... 2
Bi 2 : Ci t Asterisk ............................................................................................................................... 30
Bi 3 : To user, cu hnh dialplan n gin ............................................................................................... 32
Bi 4 : Lp trnh Dial Plan ......................................................................................................................... 37
-
VoIP v tng i VoIP Bi thc hnh
Page 2
Bi 1 : Lm quen VMware, Linux, wireshark, secureCRT, WinSCP I. VMware 1. To mi mt my o
Hnh 1 : Mn hnh lm vic chnh ca VMW7 Click New Virtual Machine to 1 my o mi
Hnh 2 : La chn ci t theo mc nh (Typical) hoc t thit lp thng s (Custome) ->Next
- Typical -
-
VoIP v tng i VoIP Bi thc hnh
Page 3
Hnh 3 : chn 1 trong 3 ty chn
Installer disc : ci t bng a quang (CD/DVD) Installer disc image file (iso) : ci t bng file nh a (file iso) I will install the operating system later : ty chn ny s k ci HH ngay lp tc.
Sau khi la chn -> click Next
- Installer disc [image file] - Nu chn 2 ty chn u, th s xut hin ca s sau
Hnh 4 : in ln lt cc thng s (CD key, User name v pass s s dng trong my o) ->Next
-
VoIP v tng i VoIP Bi thc hnh
Page 4
Hnh 5 : in tn my o v chn ni lu file cha my o -> Next
Hnh 6 : La chn dung lng cng cho my o, ty chn chia hoc k chia nh file cha cng ca my o -> Next
-
VoIP v tng i VoIP Bi thc hnh
Page 5
Hnh 7 : Bng thng k cc thit lp cho my o, nu mun thay i click Customize Hardware... nu k thay i th click Finish bt u qu trnh ci t 1 my o
2. Cu hnh mng trn VMware Sau khi ci t xong cc bn vo phn Network Connection kim tra c thm 2 card mng
Card mng Local Area Connection 2 v Local Area Connection 2 c ni vo VMnet1 v VMnet8 l 2 trong 10 Switch o m VMWare h tr cho ngi s dng. Cc Switch o ny c dng kt ni my tht vi my o, my o vi my o nhm to ra cc h thng mng ring
-
VoIP v tng i VoIP Bi thc hnh
Page 6
bit. qun l cc thng s cu hnh, ta vo menu Edit> Virtual Network Editor>
Tab Host Virtual Adapters
Hay tab Host Virtual Network Mapping.
-
VoIP v tng i VoIP Bi thc hnh
Page 7
Trong s 10 Switch o th VMnet0, VMnet1, VMnet8 c kt ni vi mt vi thit b c bit khc nh Virtual Bridge, Virtual NAT Device, DHCP Server. c im ca cc VMnet nh sau:
-
VoIP v tng i VoIP Bi thc hnh
Page 8
1. VMnet0
Trong VMWare, VMnet0 chnh l mt Switch o c kt ni vi Bridge o lin lc ra ngoi mng tht. Cc my tnh o nu c cu hnh card mng kt ni vo VMnet0 th c th tham gia vo vic lin lc, chia s d liu vi cc my tht mng ngoi. Nu mng ngoi chng ta c kt ni vi Router ADSL, c cu hnh cp IP ng trn Router th cc my o s nhn c IP t Router nh mt my tnh tht. Mc nh, VMWare s t chn card mng trn my tht m c kt ni ra mng ngoi. Tuy nhin nu my cc bn c nhiu hn 2 card mng tht th chng ta c th la chn li cho ph hp bng cch iu chnh trong Virtual Network Editor > tab Host Virtual Network Mapping> VMnet0.
-
VoIP v tng i VoIP Bi thc hnh
Page 9
2. VMnet1 (Host Only Mode)
VMnet1 cng l 1 Switch o nhng ch s dng kt ni my tht v my o trong my tnh ci VMWare. Bn thn VMnet1 c kt ni vi Virtual DHCP Server cp IP ng cho nhng my k ni vo n. Gi tr mc nh ca DHCP Scope l 192.168.18.0/24. Khi ci t xong VMWare th card mng Local Area Connection 2 do chng trnh to ra c kt ni vo VMnet1 v c a ch IP tnh cng NetID vi Scope. Cc bn c th chnh sa thng s Scope, g b DHCP Server c kt ni vo VMnet hin ti hay thm DHCP Server vo VMnet khc bng cch vo Virtual Network Editor> tab DHCP
-
VoIP v tng i VoIP Bi thc hnh
Page 10
Trong tab ny chng ta c th thm DHCP kt ni vo VMnet khc (Add), g b DHCP hin c (Remove) hay dng (Stop), khi ng (Start) dch v DHCP. Chnh sa thng s DHCP thng qua tab Properties
3. VMnet8 (NAT)
-
VoIP v tng i VoIP Bi thc hnh
Page 11
VMnet 8 l Switch o va c ni vo Virtual DHCP li c ni vo Virtual NAT Device gip cho cc my o trong VMWare c th lin lc vi mng ngoi nhng theo giao thc NAT. NAT Device y l 1 thit b c qun l bi VMWare, c a ch IP ring ch khng phi ging nh ta cu hnh ICS trn Windows l dng my tht nh 1 NAT Device ri NAT t Virtual NIC (Adapter VMnet8) qua Physical NIC. qun l DHCP Server th bn vo nhng phn ti nu trn VMnet1. Cn mun qun l cu hnh NAT Device th bn vo Virtual Network Editor> tab NAT. Nhng cc bn lu , chng ta ch c h tr NAT Device nn ch c 1 VMnet c kt ni ra ngoi theo c ch NAT.
3. To im phc hi (Snapshoot)
Trn my tht, mi khi cn lu li thng s cu hnh hin ti, ta phi s dng cc chng trnh sao lu v phc hi. Nhng trong my o ta c chc nng Snapshoot to ra cc im gip phc hi v trng thi nh trc m khng cn bt k chng trnh sao lu no.
to bn Snapshoot, trong ca s my o ta click phi, chn Take Snapshoot.
-
VoIP v tng i VoIP Bi thc hnh
Page 12
Cc bn Snap Shoot c qun l trong Snapshoot Manager
Khi bn mun quay li trng thi cu hnh my trc , chn bn Snapshoot ri click vo nt Go To.
II. Linux 1. Ci t Linux Fedora
C rt nhiu phin bn khc nhau ca h iu hnh Linux nhng v c bn vic ci t cc h iu hnh l nh nhau. Sau y l mt s bc cn bn khi ci t Fedora B1. Boot t CDROM : Nu my c CDROM, hy khi ng li my tnh, chnh BIOS th t boot u tin l CDROM v a a s 1 ci t vo CD. B2. Din bin qu trnh ci t : Khi chng trnh ci t khi ng s hin th cc mn hnh sau :
-
VoIP v tng i VoIP Bi thc hnh
Page 13
Nu bn nhn Enter, vic ci t s chy vi ch mc nh. Trong ch mc nh ny ci t chy t a CD or DVD, v s dng giao din ha nu mn hnh hp l. thay i ch ci t, ti li mi boot: , g linux theo mt hoc vi ty chn : ( khng gii thiu ti liu ny, cc bn c th tm hiu trn cc ngun khc )
Hnh 2 : nu mun test a source CD th chn OK, ngc li th chn Skip b qua v tip tc ci t. Lu : Kim tra a, n gip bn khng c a b li. Mt a li trong qu trnh ci t khin bn phi lm li ton b qu trnh ci t .
-
VoIP v tng i VoIP Bi thc hnh
Page 14
Sau khi kim tra a th nht, mt mn hnh khc xut hin v hin th kt qu nh hnh 3 :
Chn OK, theo mn hnh:
Chn Test kim tra a tip theo trong b a, hoc Continue thc hin ci t. Sau khi kim tra b a v chn Continue,hay nu bn chn b qua vic kim tra. Chng trnh ci t vi giao din ha s c ti vo. Chng trnh ci t hin th danh sch ngn ng m Fedora h tr
-
VoIP v tng i VoIP Bi thc hnh
Page 15
Hnh 5 cho php chn ngn ng, nn chn mc nh English ri chn NEXT. Chng trnh ci t hin th danh sch cc bn phm c Fedora Core h tr.
Hnh 6 cho php chn bn phm, ri chn NEXT
-
VoIP v tng i VoIP Bi thc hnh
Page 16
Hnh 7 l phn la chn cc kiu ci t nh sau: - My tnh bn (Personal Desktop) : y l kiu chn mc nh. N cung cp mi trng lm vic vi giao din ha , cc ng dng internet v a phng tin
- Trm lm vic (Workstation): Kiu ci t ny bao hm cc phn mm c ci t trn my bn (Personal Desktop), v thm cc phn mm pht trin, qun tr h thng. Chn ci t ny nu bn mun bin dch phn mm t m ngun. - My ch ( Server): Ci t ny cung cp cc dch v mng nh dch v Web v dch v Samba , v cc cng c qun tr. Kiu ci t ny khng h tr mi trng ha - Ty ( Custom): Kiu ci t ny khng h tr bt k s b tr no cho cc phn vng.N khng bao hm cc phn mm nh my bn (Personal Desktop). Nu thc hin ci t Custom, th chng trnh ci t a ra hp thoi bn chn trong qu trnh ci t Nhn Next khi bn chn c kiu ci t thch hp
-
VoIP v tng i VoIP Bi thc hnh
Page 17
Hnh 8 c 2 la chn cch chia partition: t ng v bng tay, ta chn cu hnh bng tay (Manually partition with Disk Druid) , ri chn NEXT s xut hin ca s nh hnh 9
Chc nng ca cc nt nh sau : - New : To mt partition mi. - Edit : Thay i li cc tham s ca partition c chn.
-
VoIP v tng i VoIP Bi thc hnh
Page 18
- Delete : Xa partition c chn. - Reset : Phc hi li trng thi a nh trc khi thao tc. Cc trng m t trong cc partition : - Device : Tn a ca partition. - Start : sector bt u ca partition trong a. - End : sector kt thc ca partition trong a. - Size : Kch thc ca partition (tnh theo MB). - Type : H thng tp tin cho partition. - Mount point : Ch th mc mount trn partition ny. Nhp chn a cng ri chn New. Nhp chn combobox ca File System type x xung ri chn swap to partition swap trc . Nhp dung lng partition swap vo size (gp i dung lng RAM) ri click OK. Click chn a cn li ri chn New to tip tc.Chn combobox ca Mount Point x xung, chn (/) to Partition chnh cha th mc gc (/). Nhp dung lng partition chnh v d 4.000 MB vo size ( nu to dung lng 4.000 MB)hoc chn checkbox Full to Maximum Allowable size(nu mun ly ht dung lng cn trng trn a), ri click OK.
Mc nh, chng trnh ci t ci GRUB vo master boot loader, hoc MBR, ca thit b chnh. thay i hoc b ci boot loader mi, chn Change boot loader. Hp thoi Change Boot Loader s xut hin nh trong hnh 10 ci hoc thay i cc thit lp boot loader ang tn ti.
-
VoIP v tng i VoIP Bi thc hnh
Page 19
Hnh 11 click chn checkbox Configure advanced boot loader options (trng hp ci nhiu h iu hnh trn my v phi ci t cc h iu hnh khc trc ri mi ci Linux sau cng. Nu ch ci 1 h iu hnh Linux th b qua bc ny). y l chng trnh Boot Loader cho php chn cc h iu hnh iu khin khi ng qua menu. Khi chng ta chn s xc nh giao quyn iu khin cho h iu hnh no. Boot Loader c th ci vo Master Boot record hoc vo sector u tin ca partition.
Hnh 12 chn la 1 trong 2 checkbox : - /dev/sda/ Master Boot Record (MBR) : ci Boot Loader vo Master Boot Record v h
-
VoIP v tng i VoIP Bi thc hnh
Page 20
iu hnh Linux s iu khin khi ng qua menu ca Linux. - /dev/sda1 First Sector of boot partition : ci Boot Loader vo sector u tin ca partition v h iu hnh Windows s iu khin khi ng qua menu ca Windows. Lc menu ca Windows s khng thy h iu hnh Linux, phi ci thm phn mm boot ca windows (v d Boot magic hoc System boot ) mi thy c h iu hnh Linux.
Hnh 13 chn Edit chn a ch IP tnh cho my (trng hp my nhn a ch IP ng t DHCP server trong h thng th b qua bc ny). Nhp vo IP Address, Netmask ri click OK. xc nh hostname cho my,chn Manunal v g tn vo . Hostname bao hm c tn ca my tnh v tn ca domain hay l thnh vin dng , v d www.athenavn.com. Tn my tnh (hoc tn hostname) l www v c domain l athenavn.com. Trong Miscellaneous Setting nhp y cc a ch IP ca h thng nh Gateway (a ch ca Router nu c),Primary DNS (a ch ca DNS server chnh), chn NEXT.
-
VoIP v tng i VoIP Bi thc hnh
Page 21
Hnh 14 s cu hnh Firewall, chn checkbox No Firewall. Trong phn Enable SELinux chn Disable, ri chn NEXT.
Hnh 15 cu hnh khu vc a l ca h thng chn Asia/Saigon, chn NEXT
-
VoIP v tng i VoIP Bi thc hnh
Page 22
Hnh 16 t password cho root, chng trnh ci t yu cu password root c chiu di t nht 6 k t. Bi ti khon root c kh nng iu khin bt k phn no trong h thng, do cn t password phc tp tun theo cc quy tc sau: + S dng kt hp ch hoa v ch thng, s, du v cc k t khc. + Khng c dng mt t ca tn,ngha en t hoc tn thay th cc k t u khng c kt qu. + Khng dng password ging nhau c tnh cht h thng
-
VoIP v tng i VoIP Bi thc hnh
Page 23
d dng cho vic la chn Fedora Core chia phn mm vo trong cc nhm nh trong hnh 17. Ta chn cc phn mm mun ci t ri nhn Next
Hnh 18 Chn NEXT bt u ci t. Nu yu cu ci t trn nhiu a, Fedora Core hin danh sch tt c cc a cn chun b. Nu bn khng c tt c cc a cn thit, chn Reboot hy b vic ci t. Ngc li, bn nhn Continue tip tc qu trnh ci t.
-
VoIP v tng i VoIP Bi thc hnh
Page 24
Hnh 19 hin th qu trnh ci t. Sau khi ci t thnh cng, chn reboot khi ng li my tnh.
Sau khi khi ng li my s xut hin nh hnh 20. Nhn Next bt u vo Setup Agent
-
VoIP v tng i VoIP Bi thc hnh
Page 25
Hnh 21 hin th cc giy php, iu khon ca Fedora Core.Mi mt gi phn mm trong Fedora Core u c mt giy php m n c ph chun bi Open Source Initiative (OSI). bit thm thng tin v OSI, xem thm thng tin ti http://www.opensource.org/. Tip tc, nhn Yes, I agree to the License Agreement ng v nhn Next.
Hnh 22 s chn ngy v gi cho h thng , nu ng ngy, gi th nhn Next tip tc.
-
VoIP v tng i VoIP Bi thc hnh
Page 26
Hnh 23 cho bit chng trnh Setup Agent t ng xc nh Card mn hnh v mn hnh. N dng cc thng tin ny tnh ton, thit lp thng s tt nht v phn gii (Resolution) v mu (Color Depth). Nu bn cn iu chnh mn hnh, chn Configure trong danh dch cc nh sn xut . Chn nh sn xut mn hnh trong danh sch v nhn du+ hoc chn tam gic xem cc loi mn hnh c h tr. Chn loi mn hnh trong danh sch v nhn OK.
Chng trnh Setup Agent c gng t ng xc nh Sound Card trn h thng nh hnh 24. Nhn Play Test Sound kim tra cu hnh sound card. Nu cu hnh ng, Fedora Core s chi mt bn nhc . Nu sound card c xc nh m bn khng nghe thy m thanh, kim tra li loa v th li.
-
VoIP v tng i VoIP Bi thc hnh
Page 27
Nhn Next i n mn hnh cui cng Sau nhn Next s xut hin mn hnh login. Vy ta han thnh qu trnh ci t.
2. Tp lnh c bn trn Linux a.Lnh qun tr h thng :
+ # su : Truy cp h thng bng quyn Siu ngi dung(root), y l lnh s thng xuyn dng. Sau khi g lnh ny h thng s yu cu nhp Pass ca root.Hy nhp ri g enter (Lu l s khng thy pass g vo Terminal) .
+ # uname r : cho bit phin bn ca nhn Linux + # shutdown -h now : khi ng li my tnh ngay lp tc + # clear : xa mn hnh.
b.Quyn truy cp tp tin + # chown tnngi dng file : Xc nh ngi ch ca tp tin file
l ngi dng mang tn tnngidng + # chown -R tn ngi dng thmc : Xc nh ch ca th mc v tc c cc file cha trong th mc c tn th mc l ngi dng c tn trong lnh trn + # chmod u+x file : giao (+) quyn thc hin (x) tp tin file cho ngi dng (u).Vi u l tn ngi dng cn xl cc thuc tnh ca file nh r(c),w(Ghi),x(Truy cp) + # chmod g-x file : Rt quyn (x) file ca nhm ngi dung g + # chmod o-x file : Rt quyn (x) file ca ngi dng other + # chmod a+x file : Thm quyn (x) file cho mi ngi dng + # chmod -R a+rx thmc : Thm quyn (x) cho th mc v tc c cc tp tin c trong th mc cho mi ngi dng
c. Tp tin v th mc : + # cp file1 file2 : Copy file c ng dn file2 sang file1 + # cp file /thmc : Copy file c ng dn file vo th mc + # cp -r thmc1 thmc2 : Copy th mc 1 vo th mc 2 + # mv file1 file2 : Chuyn tp tin file1 thnh tn file 2 + # mv thmc1 thmc2 : Chuyn tn th mc 1 thnh th mc 2 + # mv file thmc : Chuyn file vo th mc + # mv file1 thmc/file2 : Chuyn file 1 vo th mc 2 v i tn thnh file 2 + # mkdir thmc : To th mc mi + # mkdir -p thmc1/thmc2 : To ra th mc cha th mc 1 v th mc con th mc 2 cng lc . + # rm file : Xa b tp tin file trong th mc hin hnh. + # rmdir thmc : Xa b th mc trng mang tn th mc + # rm -rf thmc : Xa b th mc mang tn th mc vi tc c tp tin trong . + # find thmc -name file : Tm tp tin mang tn file trong th mc mang tn th mc.
d. Ni dung cc tp tin : + # cat file : Xut hin ni dung ca tp tin file ln mn hnh di dng m ASCII. + # more file : Ging cat nhng xut hin t t tng dng mt + # head -n file : in ra n dng u tin ca tp tin + # vi file : Son tho tp tin file vi trnh son tho vi
-
VoIP v tng i VoIP Bi thc hnh
Page 28
+ # nano file : Son tho tp tin file vi trnh son tho nano + # gedit file : Son tho tp tin file vi trnh son tho gedit + # grep chui file : xut hin dng cha ni dung chui trong tp tin file . + # lnh > file : Ghi kt qu thc hin lnh vo tp tin file + # lnh >> file : b sung kt qu thc hin lnh vo tp tin file
e. Nn v gii nn tp tin + # tar xvf archive.tar : Gii nn cc tp tin c trong tp tin archive.tar + # tar xvfz archive.tar.gz : Gii nn cc tp tin c trong tp tin archive.tar.gz dng gzipvtar. + # tar jxvf archive.tar.bz2 : Gii nn cc tp tin c trong tp tin archive.tar.bz2 dng bzipvtar. + # tar cvf archive.tar file1 file2 : nn 2 tp tin file 1v file 2 thnh tp tin archive.tar + # tar cvfz archive.tar.gz thmc : nn th mc thnh tp tin archive.tar + # gzip file.txt : To tp tin nn file.txt.gz + # gunzip file.txt.gz : Gii nn tp tin file.txt + # bzip2 file.txt : tp tin nn file.txt.bz2 + # bunzip2 file.txt.bz2 : Gii nn tp tin file.txt
a. Mng my tnh + # /etc/network/interfaces : Thng tin cu hnh ca cc b phn giao din + # uname a : Hin th tn ca my tnh trong mng + # ping a chIP : Kim tra kt ni mng n my c a ch IP + # ifconfig a : Hin th thng tin v tc c cc giao din mng ang c. + # ifconfig eth0 a chIP : nh IP cho giao din mng eth0 + # ifconfig eth0 down : Ngng hot ng card mng eth0 + # ifconfig eth0 up : Khi ng card mng eth0 + # poweroff I : Ngng hot ng tc c cc kt ni mng + # route add default gw a ch IP : Xc nh gateway cho card + # route del default : B gateway
b. Phn vng cng + # /etc/fstab : Cha cc thng tin v cc cng v h thng tp tin c gn t ng. + # fdisk l : Hin th cc phn vng tch cc + # mkdir /media/diskusb : To th mc gn h thng tp tin ca thit b diskusb + # mount /media/cleusb : Gn h thng tp tin diskusb + # umount /media/cleusb : Tch ra h thng diskusb Trn y l mt s lnh c th chng ta lm quen vi Linux. Ngoi cc lnh trn cn hn 3000 lnh khc ca linux tr gip chng ta trong qu trnh thao tc vi h iu hnh.Chng ta c th tham kho cch dng cc lnh qua cun sch Linux Complete Command Reference hoc thng qua lnh help ca Linux theo cu trc # Lnh help Hoc # man lnh Trn y l ton b tm tt s lt v Linux cho ngi mi dng.
-
VoIP v tng i VoIP Bi thc hnh
Page 29
III. Wireshark 1. Cch s dng c bn 2. Mt s tnh nng thng dng
IV. SecureCRT 1. Gii thiu v s dng SecureCRT
V. WinSCP
Yu cu thc hnh.
1. To mi mt my o VMware. 2. Ci t thnh cng my o Linux 3. S dng Wireshark bt gi tin 4. S dng SecureCRT ssh vo linux server 5. S dng WinSCP chuyn 1 tp tin vo Linux Server
-
VoIP v tng i VoIP Bi thc hnh
Page 30
Bi 2 : Ci t Asterisk
1) Ci t dependency
2) Dng WinSCP chuyn source Asterisk vo th mc /usr 3) Thc hin thao tc lnh sau ci t Asterisk
4) Kim tra asterisk ci t thnh cng
Hi 1 : Trnh by cu trc th mc ca Asterisk (Tham kho phn File Structure page 24, Asterisk The
Definitive Guide).
Hi 2 : Trnh by t hp lnh dng Start, Stop, RestartAssterisk ? .
[root@localhost ~]# yum install bison [root@localhost ~]# yum install gcc [root@localhost ~]# yum install libtermcap-devel [root@localhost ~]# yum install openssl-devel [root@localhost ~]# yum install gcc-c++ [root@localhost ~]# yum install make
[root@localhost ~]# cd /usr/asterisk-1.8.2.1/ [root@localhost ~]# ./configure [root@localhost ~]# make menuselect [root@localhost ~]# make [root@localhost ~]# make install [root@localhost ~]# make samples [root@localhost ~]# make config [root@localhost ~]# asterisk -vvvc
[root@localhost ~]# /etc/init.d/asterisk status asterisk (pid 27715) is running...
[root@localhost etc]# /etc/init.d/asterisk restart Stopping safe_asterisk: [ OK ] Shutting down asterisk: [ OK ] Starting asterisk:
-
VoIP v tng i VoIP Bi thc hnh
Page 31
Yu cu thc hnh.
1) Ci t thnh cng Asterisk trn fedora
-
VoIP v tng i VoIP Bi thc hnh
Page 32
Bi 3 : To user, cu hnh dialplan n gin
1) To user 1.1) Bakup file sip.conf
Hi 1 : Mc ch ca vic move file sip.conf.old l g ? ...........................................................................................
1.2) Thm user mi Modify file sip.conf nh sau
Hi 2: Gii thch cc trng khi to user trong v d trn ? ......................................................................................................................
1.3) Reload asterisk cp nht user
Hi 3 : Ti sao phi reload li sip.conf ? ......................................................................................................................
1.4) Show user va mi to ra.
Hi 4 : Hai lnh sip show users v sip show user 1000 khc nhau nh th no ? .......................................................................................................................
1.5) Register user mi to ra
# mv sip.conf sip.conf.old
[1000] type=friend context=normaluser host=dynamic nat=yes secret=1000 dtmfmode=auto disallow=all allow=ulaw
# Asterisk vvvc *CLI> sip reload *CLI> Reloading SIP
*CLI> sip show users *CLI> sip show user 1000
-
VoIP v tng i VoIP Bi thc hnh
Page 33
1.6) To thm user 1001
2) Cu hnh Dialplan c bn. 2.1) Bakup file extension.conf
2.2) Modify file extensions.conf
[1001] type=friend context=normaluser host=dynamic nat=yes secret=1001 dtmfmode=auto disallow=all allow=ulaw
# mv extension.conf extensions.conf.old
[normaluser] exten => _XXXX,1,Dial(SIP/${EXTEN},20,r) exten => _XXXX,n,Hangup()
-
VoIP v tng i VoIP Bi thc hnh
Page 34
2.3) Reload dialplan cp nht Dialplan
Dialplan ny s cho php thc hin cuc gi gia cc extension c 4 number.
2.3) Login 2 user 1000 v 1001 vo 2 Software IP Phone ri thc hin cuc gi 2.4) Dng wireshark bt gi v v li flow Chart ca qu trnh register v thc hin cuc
gi Bc 1 : M wireshark bt gi ti interface s dng ng k SIP
Bc 2 : Filter giao thc bt gi l SIP Bc 3 : ng k phone Bc 4 : i phone ng k xongdng qu trnh bt gi.
Bc 5 : v li flow Chart qu trnh Register bng option Statitics -> flow Graph
#Asterisk vvvc *CLI> dialplan reload
-
VoIP v tng i VoIP Bi thc hnh
Page 35
-
VoIP v tng i VoIP Bi thc hnh
Page 36
Thc hin tng t v flow chart ca qu trnh thc hin cuc gi.
Hi 5 : V li Flow Chart ca qu trnh Register ? .......................................................................................................................................
V li Flow Chart ca qua strinhf thc hin cuc gi ? ........................................................................................................................................
Yu cu thc hnh : 1) To user 1000 v 1001 thnh cng. 2) To dialplan thnh cng. 3) Login v thc hin cuc gi gia 2 user thnh cng 4) Dng wireshark bt gi tin sip trong qu tring Register v thc hin cuc gi, v li flow
chart ca qu trnh thc hin cuc gi
-
VoIP v tng i VoIP Bi thc hnh
Page 37
Bi 4 : Lp trnh Dial Plan I) Applications . Application l hnh ng p ng trong mi exten tng ng ca context. C cc applications c bn nh sau :
1. Dial() Application - Dial(Destination, Timeout, Option, URI) : Thc hin quay s n destionation vi cc ngha
ca cc tham s nh sau : + Destinaion : ch n ca cuc gi (thng theo cu trc TECHNOGLOGY TYPE/
EXTENSIONS), Technology thng l DAHDI, SIP, IAX2, Extensions l s cn gi. + Timeout : l khong thi gian chung ti destination, ht thi gian ny cuc goi s kt
thc v c p ng nh User no response. + Option : l cc tham s khi to cuc goi. + URI : Tham s ny t khi c s dng v ch dng cho cc loi phone c support URI. Extensions.conf
Hi 1 :
Dng user 1000 quay s 1001 th kt qu l g ? ..
2. Answer(), Playback(), Hangup() : Extensions.conf
Hi 2 : Dng user 1000 quay s 1001th kt qu l g ? .
- Anwser(no argument) : l thit lp cuc gi ngay lp tc vi knh gi n. - Playback(file name) : l chi mt tp tin c lu trc . - Hangup() : l kt thc cuc gi. app ny khng yu cu tam s u vo, nhng nu mun ta c
th truyn m l do kt thc cuc gi.
[normaluser] exten => _XXXX,1,Answer() exten => _XXXX,n,Playback(/var/lib/asterisk/sounds/en/vm-instructions) exten => _XXXX,n,Hangup()
[normaluser] exten => _XXXX,1,Dial(SIP/${EXTEN},20,r) exten => _XXXX,n,Hangup()
-
VoIP v tng i VoIP Bi thc hnh
Page 38
3. Goto(), Background(), and WaitExten() Applications - Goto(context,extension,priority) : Dng chuyn con tr thc hin sang mt context khc ti
v tr c exten v u tin trong khai bo : V d : Extensions.conf
Hi 3 : Dng user 1000 quay s 1001 th kt qu l g ? .
- Background(file name) : Tng t nh playback(), background s chi mt tp tin lu sn trc , nhng khc playback ch, khi dng background, Asterisk s lng nghe ngi dng bm cc phm tip theo t bn phm ca h thng qua tn hiu DTMF, khi ngi dng bt u bm phim tp tin s ngay lp tc b dng pht, con tr u tin s tr n exten tng ng vi phm ngi dng bm. App ny thng c s dng to ra cc cy th mc la chn cho cc tng i t tr li, hay cc tng i t iu hng cuc gi.
- Waitexten(number of second) : Dng khi to ch ch i extensions t user , v d Extensions.conf
[normaluser] exten => _XXXX,1,Answer() same => n,Background(/var/lib/asterisk/sounds/en/vm-instructions) same => n,WaitExten(5) exten => 1,1,Playback(en/digits/1) same => n,Goto(normaluser,_XXXX,1) exten => 2,1,Playback(en/digits/2) same => n,Goto(normaluser,_XXXX,1) exten => i,1,Playback(pbx-invalid) same => n,Goto(normaluser) exten => t,1,Playback(/var/lib/asterisk/sounds/en/vm-goodbye) same => n,Hangup()
[normaluser] exten => _XXXX,1,Goto(TestMenu,start,1) ;
[TestMenu] exten => start,1,Answer() exten => start,n,Playback(/var/lib/asterisk/sounds/en/vm-instructions) exten => start,n,Hangup()
-
VoIP v tng i VoIP Bi thc hnh
Page 39
Hi 4 : Dng user 1000 thc hin cc thao tc sau th kt qu t c l g ?
1. Quay s 1001 ri bm phm 1:.. 2. Quay s 1001 ri bm phm 2:.. 3. Quay s 1001 ri bm phm 3:.. 4. Quay s 1001 ri khng nhn bt k phm no :
Context ny s play background man-menu v ch ngi dng nhp extensions trong 5 giy trc khi chuyn sang p ng khc.
II) Thao tc nng cao trn bin : 1) Pattern matching . Trong lp trnh Dialplan , thng chng ta s mong mun nhn din cc mu tng t nhau
x l, Asterisk cung cp cho chng ta khi nim pattern matching thc hin iu ny. Cc pattern lun c bt u bng du _. ngha cc pattern nh sau :
X : Matches vi cc s t 0 n 9. Z : Matches vi cc s t 1 to 9. N : Matches vi cc s t 2 to 9 . : Matches 1 hay nhiu k t bt k. ! : Matches 0 hay nhiu k t bt k.
1.1) Ly gi tr bin match vi pattern bng bin channel ${EXTEN} : ${EXTEN} l channel variable dng ly gi tr chnh xc ca gi tr va mi match vi mt
mu pattern no lin trc . Vi d : Extensions.conf
Hi 5: Dng user 1000 quay s 1001 th kt qu nh th no ? ..
1.2) Ct chui trn bin : Bin ${EXTEN} vi cu trc ${EXTEN:x:y}, s tr v 1 gi tr bt u t v tr x vi di l y
:
V d : 94169671111 ${EXTEN:1:3} = 416 ${EXTEN:4:7} = 9671111
[normaluser] exten => _XXXX,1,Answer() same => n,SayDigits(${EXTEN})
-
VoIP v tng i VoIP Bi thc hnh
Page 40
${EXTEN:-4:4} = 1111 ${EXTEN:2:-4} = 16967(nu x , y l s m th s ch v tr bt u v kt thc tnh t dui n
u). ${EXTEN:-6:-4} = 67 ${EXTEN:1} = 4169671111 (Nu khng c gi tr y th mc nh tr v t x n ht). V d : Extensions.conf
Hi 6 : Dng user 1000 ln lt quay s 0641001 th kt qu nh th no ?
III) Kha Include. Dng import mt context khc vo context hin ti Cu trc : include => context Extensions.conf
Hi 7: Dng user 1000 ln lt quay s th kt qu nh th no ? Quay 1001 :. Quay 0641001 :...
Yu cu thc hnh : 1) ng dng thnh cng tc c cc application c trnh by trong bi thc hnh. 2) Thc hnh gi d xc nhn cc p ng ca cc ng dng trn.
[normaluser] include => noimang include => ngoaimang
[noimang] exten => _XXXX,1,Dial(SIP/${EXTEN},20,r) exten => _XXXX,n,Hangup()
[ngoaimang] exten => _064XXXX,1,Dial(SIP/${EXTEN:3},20,r) exten => _064XXXX,n,Hangup()
[normaluser] exten => _064XXXX,1,Dial(SIP/${EXTEN:3},20,r) exten => _064XXXX,n,Hangup()