You are on page 1of 38

H thng VoIP v tng i Asterisk

TRNG................. KHOA.

TIU LUN

H thng VoIP v tng i Asterisk

-1-

H thng VoIP v tng i Asterisk

MC LC
Phn I........................................................................................................................................3 Tng quan v cng ngh VoIP.................................................................................................3 I. Khi nim..............................................................................................................................4 IV. Cc giao thc trong mng VoIP........................................................................................6 1. Giao thc H323....................................................................................................................6 2. Giao thc khi to phin SIP.............................................................................................13 2.1 Cc thnh phn trong h thng SIP.................................................................................14 3.Real-time Transport Protocol (RTP)...................................................................................19 4.Real-time Transport Control Protocol (RTCP)...................................................................20 5. Resource Reservation Protocol (RSVP)............................................................................22 Phn II.....................................................................................................................................24 Tng quan v Asterisk............................................................................................................24 Phn III...................................................................................................................................27 Trin khai h thng Asterisk..................................................................................................27 M hnh trin khai h thng :.................................................................................................27 IV.Mt s ng dng vi Asterisk..........................................................................................31 1.ng dng hp th thoi (Voicemail)..................................................................................31

-2-

H thng VoIP v tng i Asterisk

Phn I Tng quan v cng ngh VoIP


ng dng VoIP u tin c pht trin nm 1995 bi mt cng ty ca Israeli tn l VocalTel . ng dng ny l phn mm in thoi internet chy trn my tnh c nhn ging nh in thoi PC ngy nay s dng card m thanh, microm loa. tng ca n l s dng cc phng php nn tn hiu thoi ri chuyn chng vo cc gi IP v truyn qua mng Internet. ng dng VoIP u tin ny ni chung cn gp phi nhiu vn nh : tr , cht lng cn thp v khng tng thch vi cc mng ngoi. Mc d vy, s ra i ca n cng l mt bc t ph quan trng. K t n nay, cng ngh VoIP pht trin ngy cng nhanh.

-3-

H thng VoIP v tng i Asterisk

I. Khi nim
VoIP ( Voice Over IP ) l cng ngh cho php truyn thng tin thoi t ni ny sang ni khc thng qua cc mng s dng giao thc IP ( Internet Protocol ) truyn ti thng tin. VoIP cng thng c bit n di mt s tn khc nh : in thoi Internet, in thoi IP, in thoi di rng ( Broadband Telephony ) vv in thoi thng thng, tn hiu thoi c ly mu vi tn s 8 KHz sau lng t ha 8 bit/mu v c truyn vi tc 64 KHz n mng chuyn mch ri truyn ti ch. pha thu, tn hiu ny s c gii m thnh tn hiu ban u. Cng ngh VoIP cng khng hon ton khc vi in thoi thng thng. u tin , tn hiu thoi cng c s ha , nhng sau thay v truyn trn mng PSTN qua cc trng chuyn mch , tn hiu thoi c nn xung tc thp ri ng gi , truyn qua mng IP . Ti bn thu, cc lung thoi s c gii nn thnh cc lung PCM 64 ri truyn ti thu bao b gi. II. u nhc im 1. u im . Gi in thoi gi r : y l u im ni bt nht ca VoIP. S dng cng ngh VoIP c th gi in thoi ng di hoc in thoi ra nc ngoi vi gi r tng ng vi gi gi ni ht. Tnh thng nht : H thng VoIP c th tch hp c mng thoi , mng s liu v mng bo hiu. Cc tn hiu thoi, d liu, bo hiu c th cng i trn mt mng IP. Vic ny s gim ng k chi ph u t Kh nng m rng : H thng VoIP c th c m rng thm nhiu loi dch v , nhiu tnh nng mi . 2. Nhc im Cht lng dch v : Do cc mng truyn s liu vn d khng c thit k truyn thoi thi gian thc cho nn vic tr truyn hay vic mt mt cc gi tin hon ton c th xy ra v s gy ra cht lng dch v thp . Bo mt : Do mng Internet l mt mng hn hp v rng khp bao gm rt nhiu my tnh cng s dng cho nn vic bo mt cc thng tin c nhn l rt kh.

-4-

H thng VoIP v tng i Asterisk III. Cc thnh phn trong mng VoIP

Mng VoIP phi c kh nng thc hin cc chc nng m mng in thoi cng cng thc hin, ngoi ra phi thc hin chc nng ca mt gateway gia mng IP v mng in thoi cng cng. Thnh phn ca mng in thoi IP c th gm cc phn t sau y: - Thit b u cui kt ni vi mng IP ( Terminal) : C th l mt phn mm my tnh ( softphone) hoc mt in thoi IP (hardphone). - Mng truy nhp IP: L cc loi mng d liu s dng giao thc TCP/IP, ph bin nht l mng Internet. - Gateway: L thit b c chc nng kt ni hai mng khng ging nhau, hu ht cc trng hp l mng IP v mng PSTN. C 3 loi gateway l: Gateway truyn ti knh thoi, Gateway iu khin truyn ti knh thoi v Gateway bo hiu.

-5-

H thng VoIP v tng i Asterisk - Gatekeeper: C th xem gatekeeper nh l b no ca h thng mng in thoi IP. N cung cp chc nng qun l cuc gi mt cch tp trung v mt s cc dch v quan trng khc nh l: nhn dng cc u cui v gateway, qun l bng thng, chuyn i a ch (t a ch IP sang a ch E.164 v ngc li), ng k hay tnh cc...Mi gatekeeper s qun l mt vng bao gm cc u cui ng k, nhng cng c th nhiu gatekeeper cng qun l mt vng trong trng hp mt vng c nhiu gatekeeper.

IV. Cc giao thc trong mng VoIP

1. Giao thc H323


Khi cp n thoi IP, tiu chun quc t thng c cp n l H.323. Giao thc H.323 l chun do ITU-T SG16 pht trin cho php truyn thng a phng tin qua cc h thng da trn mng chuyn mch gi, v d nh Internet. N c ITU-T ban hnh ln u tin vo nm 1996 v gn y nht l nm 1998. H.323 l chun ring cho cc thnh phn mng, cc giao thc v cc th tc cung cp dch v thng tin multimedia nh : audio thi gian thc, video v thng tin d liu qua cc mng chuyn mch gi , bao gm cc mng da trn giao thc IP. Tp giao thc H.323 c thit k hot ng trn tng vn chuyn ca cc mng c s. Tuy nhin, khuyn ngh H.323 rt chung chung nn t c coi l tiu chun c th. Trong thc t, hon ton c th thit k mt h thng thoi tun th H.323 m khng cn n IP. Khuyn ngh ny ch a ra yu cu v giao din mng gi ti thit b u cui. Ban u, H.323 d nh dnh cho X.25, FrameRelay sau l ATM, nhng gi y li l TCP/IP, trong khi c rt t H.323 c vn hnh trn mng X.25 v ATM. 1.1. Cu trc ca H.323.

-6-

H thng VoIP v tng i Asterisk

1.1.1. Thit b u cui. - Thc hin cc chc nng u cui : thc hin gi hoc nhn cuc gi. 1.1.2. Gatekeeper Mt min H.323 trn c s mng IP l tp hp tt c cc u cui c gn vi mt b danh. Mi min c qun tr bi mt Gatekeeper duy nht, l trung tm u no, ng vai tr gim st mi hot ng trong min . y l thnh phn tu chn trong h thng VoIP theo chun H.323. Tuy nhin nu c mt Gatekeeper trong mng th cc u cui H.323 v cc Gateway phi hot ng theo cc dch v ca Gatekeeper . Gatekeeper hot ng hai ch : - Ch trc tip: Gatekeeper ch c nhim v cung cp a ch ch m khng tham gia vo cc hot ng kt ni khc. - Ch chn ng : Gatekeeper l thnh phn trung gian, chuyn tip mi thng tin trao i gia cc bn. Gatekeeper phi thc hin cc chc nng sau: Chc nng dch a ch : Gatekeeper s thc hin chuyn i a ch hnh thc (dng tn gi hay a ch hp th ) ca mt u cui hay Gateway sang a ch truyn dn (a ch IP). Vic chuyn i c thc hin bng -7-

H thng VoIP v tng i Asterisk cch s dng bn i chiu a ch c cp nht thng xuyn bi cc bn tin ng k. iu khin truy cp : Gatekeeper cho php mt truy cp mng LAN bng cch s dng cc bn tin H.225 l ARQ/ACF/ARJ. Vic iu khin ny da trn s cho php cuc gi, bng thng, hoc mt vi thng s khc do nh sn xut quy nh. N c th l chc nng rng c ngha l chp nhn mi yu cu truy nhp ca u cui. iu khin rng bng thng :Gatekeeper h tr cc bn tin BRQ/BRJ/BCF cho vic qun l bng thng. N c th l chc nng rng ngha l chp nhn mi yu cu thay i bng thng. Qun l vng: y ch vng l tp hp tt c cc phn t H.323 gm thit b u cui, Gateway, MCU c ng k hot ng vi Gatekeeper thc hin lin lc gia cc phn t trong vng hay t vng ny sang vng khc. Cc chc nng khng bt buc ca Gatekeeper: iu khin bo hiu cuc gi: Gatekeeper c th la chn hai phng thc iu khin bo hiu cuc gi l: hon thnh bo hiu cuc gi vi cc u cui v x l bo hiu cuc gi chnh bn thn n, hoc Gatekeeper c th ra lnh cho cc u cui kt ni mt knh bo hiu cuc gi hng ti nhau. Theo phng thc ny th Gatekeeper khng phi gim st bo hiu trn knh H.225. Cho php cuc gi : Thng qua vic s dng bo hiu H.225, Gatekeeper c th loi b cc cuc gi khng c php. Nhng nguyn nhn t chi bao gm hn ch ti hoc t mt u cui c th, hay cc Gateway, v hn ch truy nhp trong cc khong thi gian nht nh. Qun l bng thng : Gatekeeper c th hn ch mt s cc u cui H.323 cng mt lc s dng mng.Thng qua vic s dng knh bo hiu H.225, Gatekeeper c th loi b cc cc cuc gi t mt u cui do s hn ch bng thng. iu c th xy ra nu Gatekeeper thy rng khng bng thng sn c trn mng tr gip cho cuc gi. Vic t chi cng

-8-

H thng VoIP v tng i Asterisk c th xy ra khi mt u ang tham gia mt cuc gi yu cu thm bng thng. N c th l mt chc nng rng ngha l mi yu cu truy nhp u c ng . Qun l cuc gi : Mt v d c th v chc nng ny l Gatekeeper c th lp mt danh sch tt c cc cuc gi H.323 hng i ang thc hin ch th rng mt u cui b gi ang bn v cung cp thng tin cho chc nng qun l bng thng. 1.1.3. Khi iu khin a im MCU . Khi iu khin a im (MCU) wc s dng khi mt cuc gi hay hi ngh cn gi nhiu kt ni hot ng. Do c mt s hu hn cc kt ni ng thi, nn cc MCU gim st s tho thun gia cc u cui v s kim tra mi u cui v cc kh nng m chng c th cung cp cho hi ngh hoc cuc gi. Cc MCU gm hai phn: B iu khin a im (MC) v B x l a im (MP). B iu khin a im (MC) c trch nhim trong vic tho thun v quyt nh kh nng ca cc u cui. Trong khi b x l a im c s dng x l a phng tin (multimedia), cc lung trong sut qu trnh ca mt hi ngh hoc mt cuc gi a im. B x l a im ( MP ) c th khng c hoc c rt nhiu v chng c trch nhim trn v chuyn mch cc lung phng tin truyn t v vic x l cc bit d liu m thanh v hnh nh. MC khng phi tng tc trc tip vi cc lung phng tin truyn t, l cng vic ca MP. Cc MC v MP c th ci t nh mt thit b c lp hoc l mt phn ca cc phn t khc ca H.323. 1.2. Tp giao thc H323

-9-

H thng VoIP v tng i Asterisk

1.2.1 Bo hiu RAS Cung cp cc th tc iu khin tin cuc gi trong mng H.323 c GK. Knh bo hiu RAS c thit lp gia cc u cui v cc GK trc cc knh khc. N c lp vi knh bo hiu cuc gi v knh iu khin H.245. Cc bn tin RAS c truyn qua mng thng qua kt ni UDP, thc hin vic ng k, cho php, thay i bng thng, trng thi v cc th tc hu b cuc gi. Bo hiu RAS gm nhng qu trnh sau: - Tm GateKeeper. - ng k : ng k l mt qu trnh cho php GW, cc u cui v MCU tham gia vo mt vng v bo cho GK bit a ch truyn vn v a ch b danh ca n. - nh v u cui - Cho php, thay i bng thng, trng thi v hu quan h 1.2.2 Bo hiu iu khin cuc gi H.225 Trong mng H.323, th tc bo hiu cuc gi c da trn khuyn ngh H.225 ca ITU. Khuyn ngh ny ch r cch s dng v tr gip ca cc bn tin bo hiu Q.931. Sau khi khi to thit lp cuc gi. Cc bn tin iu khin cuc gi v cc bn tin gi cho knh bo hiu cuc gi tn ti (keepalive) c chuyn ti cc cng. Cc bn tin Q.931 thng c s dng trong mng H.323:

- 10 -

H thng VoIP v tng i Asterisk Setup: c gi t thc th ch gi thit lp kt ni ti thc th H.323 b gi Call Proceeding: ch th rng th tc thit lp cuc gi c khi to. Alerting: ch th rng chung bn ch bt u rung. Connect: thng bo rng bn b gi tr li cuc gi. Release Complete: ch th rng cuc gi ang b gii phng. Facility: y l mt bn tin Q.932 dng yu cu hoc phc p cc dch v b sung. N cng c dng cnh bo rng mt cuc gi s c nh tuyn trc tip hay thng qua GK. 1.2.3 Giao thc H.245 H245 x l cc bn tin iu khin t u cui n u cui gia cc thc th H.323. Cc th tc H.245 thit lp cc knh logic cho vic truyn tn hiu m thanh, hnh nh, d liu v thng tin knh iu khin. Bo hiu H.245 c thit lp gia 2 u cui, mt u cui vi mt MC hoc mt u cui vi GK. u cui ch thit lp duy nht mt knh iu khin H.245 cho mi cuc gi m n tham gia. Mt u cui, MCU, GK c th h tr nhiu cuc gi cng mt lc do vy c nhiu knh iu H.245 tng ng. Khuyn ngh H.245 nh ngha mt s thc th giao thc c lp tr gip cho bo hiu t u cui n u cui nh sau: Trao i kh nng : Bao gm nhng bn tin cho php xc nh kh nng trao i d liu v m thanh ca tng u cui tham gia cuc gi. N m bo cho bn thu kh nng nhn v x l thng tin u vo m khng b xung t g. Khi bit c kh nng thu ca u cui nhn, th u cui pht s gii hn ni dung thng tin m n truyn i trong khun kh kh nng thu trn. Ngc li, kh nng truyn cho php u cui nhn la chn ch thu thch hp. Vi tn hiu m thanh, kh nng trao i bao gm cc b gii m tn hiu thoi nh h tiu chun G: G.729 8kbps, G.711 64kbps, G.723 5,3 hoc 6,3 kbps, G.722 48kbps... Quyt nh ch - t: L cc th tc quyt nh u cui no l ch u cui no l t trong mt cuc gi xc nh. Mi quan h ny c duy tr trong sut thi gian cuc gi.

- 11 -

H thng VoIP v tng i Asterisk Tr vng (Round Trip delay) : L cc th tc dng xc nh tr gia u cui ngun v u cui ch. Bn tin RounTripDelayRequest o tr v kim tra thc th giao thc H.245 u cui bn kia c cn hot ng hay khng. Bo hiu knh logic (Logical channel signaling) : Bo hiu knh logic s dng cc bn tin OpenLogicalChannel v CloseLogicalChannel v cc th tc ca H.245 ng m cc knh logic. Khi mt knh logic c m, mt bn tin OpenLogical s miu t y ni dung ca knh logic bao gm kiu truyn thng (media type), thut ton s dng, cc chc nng v mi thng tin khc bn thu c th dch c ni dung ca knh logic. Cc th tc kt ni nhanh : C hai th tc thit lp knh truyn thng l H.245 v kt ni nhanh. Kt ni nhanh cho php s thit lp kt ni truyn thng cho cc cuc gi c bn im ti im vi ch mt ln trao i bn tin vng (bn tin i t u cui ngun ti u cui ch ri li tr v u cui ngun). H245 ngm (Tuneling H.245) : Cc bn tin H.245 c th c ng gi trong knh bo hiu cuc gi H.225 thay v to ra mt knh iu khin H.245 ring bit. Phung php ny ci thin c thi gian thit lp cuc gi v thi gian nh v ti nguyn. ng thi n cho php s ng b gia bo hiu cuc gi v iu khin. C th ng gi nhiu bn tin H.245 vo bt k bn tin H.225 no. Vo mt thi im bt k, mi u cui c th chuyn sang mt kt ni H.245 ring bit. 1.3 .Qu trnh thit lp cuc gi H323. Mt cuc gi tri qua cc bc nh sau: Thit lp cuc gi. Khi to truyn thng v trao i kh nng. Thit lp knh truyn thng nghe nhn. Dch v cuc gi. Kt thc cuc gi.

- 12 -

H thng VoIP v tng i Asterisk

2. Giao thc khi to phin SIP


SIP (Session Initiation Protcol ) l giao thc bo hiu iu khin lp ng dng c dng thit lp, duy tr, kt thc cc phin truyn thng a phng tin (multimedia). Cc phin multimedia bao gm thoi Internet, hi ngh, v cc ng dng tng t c lin quan n cc phng tin truyn t (media) nh m thanh, hnh nh, v d liu. SIP s dng cc bn tin mi (INVITE) thit lp cc phin v mang cc thng tin m t phin truyn dn. SIP h tr cc phin n b (unicast) v qung b (multicast) - 13 -

H thng VoIP v tng i Asterisk tng ng cc cuc gi im ti im v cuc gi a im. C th s dng nm chc nng ca SIP thit lp v kt thc truyn dn l : nh v thu bao, kh nng thu bao, sn sng ca thu bao, thit lp cuc gi v x l cuc gi. SIP c IETF a ra trong RFC 2543. N l mt giao thc da trn tng v cu trc ca HTTP(HyperText Transfer Protocol)-giao thc trao i thng tin ca World Wide Web- v l mt phn trong kin trc multimedia ca IETF. Cc giao thc c lin quan n SIP bao gm giao thc RSVP (Resource Reservation Protocol), giao thc truyn vn thi gian thc (Real-time Transport Protocol), giao thc cnh bo phin SAP (Session Announcement Protocol), giao thc miu t phin SDP (Session Description Protocol). Cc chc nng ca SIP c lp, nn chng khng ph thuc vo bt k giao thc no thuc cc giao thc trn. Mt khc, SIP c th hot ng kt hp vi cc giao thc bo hiu khc nh H.323. SIP l mt giao thc theo thit k m do n c th c m rng pht trin thm cc chc nng mi. S linh hot ca cc bn tin SIP cng cho php p ng cc dch v thoi tin tin bao gm c cc dch v di ng.

2.1 Cc thnh phn trong h thng SIP

SIP Components

Location Server

Redirect Server

Registrar Server

PSTN User Agent Proxy Server Proxy Server Gateway

- 14 -

H thng VoIP v tng i Asterisk

Hai phn t c bn trong h thng SIP l tc nhn ngi s dng (user agent) v cc my phc v mng (network server). Bn ch gi v b gi c nhn dng bng cc a ch SIP. User agent - Client (UAC): Khi to cc yu cu SIP v ng vai tr nh tc nhn ch gi ca ngi dng. - Server (UAS): Nhn cc yu cu v thay mt cho ngi s dng gi tr cc p ng, ng vai tr nh tc nhn b gi. Network server - Proxy server: x l cc yu cu hoc chuyn i ni dung ri gi cho cc server khc - Location server: nh v thu bao v cung cp thng tin cho proxy hoc redirect server - Redirect server: xc nh server chng tip theo ri thng bo cho client n t gi yu cu. Redirect server khng to v gi yu cu - Registrar server: tip nhn v x l cc yu cu REGISTER (vd, khi bt my thu bao), thc hin nhn thc thu bao 2.2 . Cc bn tin ca SIP SIP l mt giao thc da trn k t vn bn vi c php bn in v cc trng mo u ng nht vi giao thc truyn siu vn bn HTTP (Hypper Text Transfer Protocol). Cc bn tin ca SIP truyn trn cng mt kt ni TCP hoc b d liu UDP.
-------------------------------------------------------------SIP Header -------------------------------------------------------------INVITE sip:5120@192.168.36.180 SIP/2.0 Via: SIP/2.0/UDP 192.168.6.21:5060 From: sip:5121@192.168.6.21 To: <sip:5120@192.168.36.180> Call-ID: c2943000-e0563-2a1ce-2e323931@192.168.6.21 CSeq: 100 INVITE Expires: 180 User-Agent: Cisco IP Phone/ Rev. 1/ SIP enabled Accept: application/sdp Contact: sip:5121@192.168.6.21:5060 Content-Type: application/sdp

- 15 -

H thng VoIP v tng i Asterisk

Mt s trng mo u n gin :

- INVITE : ch th rng thu bao hoc dch v c mi tham gia vo mt phin. N bao gm mt m t phin v i vi cc cuc gi song cng th bn ch gi ch th phng thc truyn thng (media) trong bn tin ny. Theo phng php n gin ny cc bn c th xc nh c cc kh nng ca bn kia v bt u mt phin hi thoi . - ACK : Nhng yu cu ny tng ng vi mt yu cu INVITE. Chng l s xc nhn cui cng t mt h thng cui v chm dt mt giao dch c khi to bi INVITE. - OPTIONS : Bn tin ny cho php truy vn v tp hp cc kh nng ca user agent v network server. Tuy nhin yu cu ny khng c dng thit lp phin. - BYE: Bn ch gi v b gi s dng yu cu ny gii phng cuc gi. Trc khi thc s gii phng cuc gi, user agent gi yu cu ny ti server cnh bo rng n mun gii phng phin lm vic. - CANCEL: Yu cu ny cho php user agent v network server xo b bt k mt yu cu no ang thi hnh. - REGISTER: yu cu ny c client dng ng k thng tin vi SIP server. Cc bn tin p ng - 16 -

H thng VoIP v tng i Asterisk - 1xx Informational (vd 100 Trying, 180 Ringing) - 2xx Successful (vd 200 OK, 202 Accepted) - 3xx Redirection (vd 302 Moved Temporarily) - 4xx Request Failure (e.g. 404 Not Found, 482 Loop Detected) - 5xx Server Failure (e.g. 501 Not Implemented) - 6xx Global Failure (e.g. 603 Decline) 2.3 Qu trnh thit lp cuc gi .
U C A
IN IT V E

P roxy S erver
IN IT V E

R edirect Server

P roxy S erver

U S A

M dTem ove pora rily

A K C

IN IT V E

IN IT V E
M edTe pora ov m rily

A K C

IN IT V E R g g in in R g g in in R g g in in

A CK

A K C R P M d P th T e ia a

A K C

B E Y O K

B E Y O K

B E Y O K

- Theo kiu Proxy :

Location Server

1. INVITE Client 6. OK

Proxy Server

4. INVITE UAS 5. OK

- 17 7. ACK 8. ACK

H thng VoIP v tng i Asterisk

(1) Client gi bn tin INVITE cha thng tin v bn b gi ti Proxy Server (2) Proxy server xc nh v tr ca bn b gi bng cch s dng cc a ch c cung cp trong bn tin INVITE v location server . (3) Location Server gi tr li Proxy Server thng tin yu cu (4) Proxy server gi yu cu INVITE ti a ch m n va xc nh c. (5) Bn b gi (server) p ng li bng bn tin thnh cng 200 OK. (6) Proxy server li p ng li bn Client bng bn tin 200 OK. (7)(8) Client xc nhn bng bn tin ACK. Bn tin ny c gi qua Proxy server hoc c gi trc tip ti bn b gi.
- Theo kiu redirect :
Location server

2 1. INVITE UAC Client 5. ACK 4. Redirect server

3 UAS

6. INVITE 7.OK 8. ACK

(1) Client gi bn tin INVITE cha thng tin v bn b gi ti Redirect Server (2 Redirect Server xc nh v tr ca bn b gi bng cch s dng cc a ch c cung cp trong bn tin INVITE v location server . (3) Location Server gi tr li Proxy Server thng tin yu cu (4) Sau khi xc nh c v tr ca thu bao th Redirect server gi trc tip a ch va nhn c cho pha Client. (5) Client gi bn tin ACK ti Redirect server hon tt phin giao dch. (6) Client gi trc tip yu cu INVITE ti bn b gi. (7)(8) Bn b gi p ng bng bn tin 200 OK v bn ch gi xc nhn bng bn tin ACK.

- 18 -

H thng VoIP v tng i Asterisk

3.Real-time Transport Protocol (RTP)


RTP c coi nh mt giao th truyn t u cui n u cui (end to end) phc v truyn d liu thi gian thc nh audio v video. RTP thc hin vic qun l v thi gian truyn d liu v nhn dng d liu c truyn. Nhng RTP khng cung cp bt c mt c ch no m bo thi gian truyn v cng khng cung cp bt c mt c ch no gim st cht lng dch v. S gim st v m bo v thi gian truyn dn cng nh cht lng dch v c thc hin nh hai giao thc RTCP v RSVP. Tng t nh cc giao th truyn dn khc, gi tin RTP (RTP packet) bao gm hai phn l header (phn mo u) v data (d liu). Nhng khng ging nh cc giao thc truyn dn khc l s dng cc trng trong header thc hin cc chc nng iu khin, RTP s dng mt c ch iu khin c lp trong nh dng ca gi tin RTCP thc hin cc chc nng ny. Cu trc gi tin RTP

- Version (2 bit): version ca RTP (hin ti l version 2). - Padding (1 bit): c vai tr nh bit c c s dng nh du khi c mt s byte c chn vo trong gi. - Extension (1 bit): cng c vai tr nh mt bit c c s dng nh du khi c header m rng tip theo header c nh. - CSRC count (4 bit): ch r s lng ca CSRC (contributing source) - Marker (1 bit): c vai tr nh mt bit c, trng thi ca n c ph thuc vo trng payload type.

- 19 -

H thng VoIP v tng i Asterisk - Payload Type (7 bit): ch r loi thng tin c cha trong cc gi. - Serquence Number (16 bit): cung cp s th t ca cc gi. Cch ny nh mt c ch gip bn thu c th thu ng th t cc gi tin, nhn ra gi tin b mt. - Time-stamp (32 bit): l tham s nh du thi im byte u tin c ly mu trong gi RTP. Gi tr time-stamp khi u l ngu nhin, cc gi RTP pht i lin tip c th c cng gi tr time-stemp nu chng cng c pht i mt lc. - Syschronisation source (SSRC) identifier: s nhn dng ngun ca gi d liu. Nu ng dng mun truyn d liu c nhiu dng khc nhau trong cng mt thi im (v d l tn hiu audio v video) th s c nhng phin truyn ring cho mi dng d liu. Sau ng dng s tp hp cc gi tin c cng nhn dng SSRC. S nhn dng ny c gn mt cch ngu nhin. - Contribute source (CSRC) identifer ( di thay i): ti mt im ch no m nhng tn hiu audio n ch cn trn li vi nhau th gi tr CSRC s l tp hp tt c cc gi tr SSRC ca cc ngun m gi tn hiu n im ch . Trng CSRC c th cha ti a l 15 s nhn dng ngun SSRC. - Extension header ( di thay i): cha cc thng tin thm ca gi RTP.

4.Real-time

Transport Control Protocol (RTCP)

Mc d RTP l mt giao thc c lp nhng thng c h tr bi giao thc RTCP. RTCP tr v ngun cc thng tin v s truyn thng v cc thnh phn ch. Giao thc iu khin ny cho php gi v cc thng s v bn thu v t thch nghi vi bn pht cho ph hp vi bn pht. Mi ngi tham gia mt phin truyn RTP phi gi nh k cc gi RTCP ti tt c nhng ngi khc cng tham gia phin truyn. Tu theo mc ch m RTCP thc hin 4 chc nng: - RTCP cung cp mt s phn hi cht lng ca d liu. Cc thng tin gip cho ng dng thc hin chc nng iu khin lung v qun l tc nghn.

- 20 -

H thng VoIP v tng i Asterisk - RTCP cung cp s nhn dng m c s dng tp hp cc kiu d liu khc nhau (v d audio v video). iu ny l cn thit v kh nng ny khng c RTP cung cp. - Nh vic nh k gi cc gi tin RTCP m mi phin truyn c th theo di c s ngi tham gia. RTP khng th s dng c cho mc ch ny khi mt ai khng gi d liu m ch nhn t nhng ngi khc. - Cui cng l mt chc nng la chn cho php c thm thng tin v nhng ngi tham gia vo phin truyn. Tu thuc vo giao thc RTP c s dng cho loi d liu no m RTCP cung cp cc thng bo iu khin khc nhau. C 4 loi thng bo iu khin chnh c giao thc RTCP cung cp l: - Sender report (SR): thng bo ny cha cc thng tin thng k lin quan n kt qu truyn nh t l tn hao, s gi d liu b mt, khong tr. Cc thng bo ny pht ra t pha pht trong mt phin truyn thng. - Receiver report (RR): thng bo ny cha cc thng tin thng k lin quan n kt qu nhn gia cc im cui. Cc thng bo ny c pht ra t pha thu trong mt phin truyn thng. - Source description (SDES): thng bo bao gm cc thng s m t ngun nh tn, v tr,... - Application (APP): thng bo cho php truyn cc d liu ng dng. Cu trc gi tin RTCP

- Version (2 bit): version RTP hin ti (version 2). - Padding (1 bit): c chc nng nh mt bit c ch r xem trong gi c cc byte c chn thm hay khng. - Report counter (5 bit): s thng bo cha trong gi - Packet type (8 bit): xc nh loi thng bo ca gi (SR hoc RR hoc APP).

- 21 -

H thng VoIP v tng i Asterisk - Length (16 bit): ch r di ca gi. - Report ( di thay i): cha cc thng bo chi tit.

5. Resource Reservation Protocol (RSVP)


Giao thc RSVP c s dng nh mt giao thc bo hiu h tr cho RTP. Mc ch ca RSVP l cung cp mt c ch m bo bng thng cho cc hot ng ca cc ng dng. RSVP gi tham s cht lng dch v QoS kt hp vi cc d liu thi gian thc c truyn trn mng TCP/IP. H tr giao thc RTP, giao thc RSVP c th gii quyt cc li xy ra trn ng truyn m bo cc tham s cht lng. Tht vy, giao thc RTP ch h tr vic truyn thng im im v khng qun l cc tham s lin kt trn mng. RSVP khng nhng tc ng my pht, my thu m cn tc ng trn c cc router trong mng. RSVP thit lp v duy tr kt ni duy nht cho mt lung d liu, xc lp mt h thng qun l th t cc gi v to modun iu khin qun l cc ngun ti nguyn ca cc nt mng khc nhau. RSVP a ra mt m hnh ti u lin kt cc d liu t mt ngun ti nhiu ch. RSVP ng vai tr qun l mt cch lp cc host ch t thch nghi cc tham s cht lng gia kh nng cung cp v nhu cu p ng. Vic dnh ring cc ti nguyn c yu cu bi bn thu bng cch pht mt yu cu cht lng di dng mt bn tin RSVP tng thch vi nhu cu ca chng. Thc t s dng RSVP nhm m bo cht lng trong vic truyn tin. m bo ng truyn thng sut cc im cui phi hot ng ch kt ni. My thu phi thng xuyn gi cc bn tin RSVP n cc router m bo thng sut ng truyn. RSVP hot ng trn c s x l cc gi tin theo mt yu cu cht lng dch v QoS. Hai thnh phn chnh thc hin chc nng ny l flowspec v filterspec. Flowspec c chc nng kim tra lung d liu c truyn nh mt yu cu dch v ca cc ng dng m kt qu l a ra mt yu cu v cht lng dch v QoS. Flowspec a ra mt yu cu cht lng dch v cn filterspec c nhim v lc b cc gi tin m khng m bo yu cu v cht lng dch v, nhng gi ny s c cung cp mt phng thc truyn tt nht c th p ng yu cu cht lng dch v.

- 22 -

H thng VoIP v tng i Asterisk

6. Giao thc SGCP (Simple Gateway Control Protocol)


Giao thc ny cho php cc thnh phn iu khin cuc gi c th iu khin kt ni gia trung k, cc thit b u cui vi cc gateway. Cc thnh phn iu khin c gi l Call Agent. SGCP c s dng thit lp, duy tr v gii phng cc cuc gi qua mng IP. Call Agent thc hin cc chc nng bo hiu cuc gi v gateway thc hin chc nng truyn tn hiu m thanh. SGCP cung cp nm lnh iu khin chnh nh sau: - Notification Request: yu cu gateway pht cc tn hiu nhc t my v cc tn hiu quay s DTMF. - Notify: gateway thng bo vi Call Agent v cc tn hiu c pht hin trn. - Create Connection: Call Agent khi to kt ni gia cc u cui trong gateway. - Modify Connection: Call Agent dng lnh ny thay i cc thng s v kt ni thit lp. Lnh ny cng c th dng iu khin lung cho cc gi tin RTP i t gateway ny sang gateway khc. - Delete Connection: Call Agent gii phng cc kt ni thit lp. Nm lnh trn y iu khin gateway v thng bo cho call agent v cc s kin xy ra. Mi lnh hay yu cu bao gm cc thng s c th cn thit thc thi cc phin lm vic.

7. Giao thc MGCP (Media Gateway Control Protocol)


Giao thc MGCP cho php iu khin cc gateway thng qua cc thnh phn iu khin nm bn ngoi mng. MGCP s dng m hnh kt ni tng t nh SGCP da trn cc kt ni c bn gia thit b u cui v gateway. Cc kt ni c th l kt ni imim hoc kt ni a im. Ngoi chc nng iu khin nh SGCP, MGCP cn cung cp thm cc chc nng sau: - Endpoint Configuration: Call Agent dng lnh ny yu cu gateway xc nh kiu m ho ph ng dy kt ni n thit b u cui.

- 23 -

H thng VoIP v tng i Asterisk - AuditEndpoint v AuditConnection: Call Agent dng lnh ny kim tra trng thi v s kt ni mt thit b u cui. - RestartIn-Progress: Gateway dng lnh ny thng bo vi Call Agent khi no cc thit b u cui ngng s dng dch v v khi no quay li s dng dch v.

Phn II Tng quan v Asterisk


Asterisk l h thng chuyn mch mm, l phn mm ngun m c vit bng ngn ng C chy trn h iu hnh linux thc hin tt c cc tnh nng ca tng i PBX v hn th na. Asterisk ra i vo nm 1999 bi mt sinh vin sinh nm 1977 tn l Mark Spencer. Anh ta vit phn mm ny ban u vi mc ch h tr cho cng ty ca mnh trong vic lin lc m thoi. Asterisk l mt phn mm mang tnh cch mng, tin cy, m ngun m v min ph m bin mt PC r tin thng thng chy Linux thnh mt h thng in thoi doanh nghip mnh m. Asterisk l mt b cng c m ngun m cho cc ng dng thoi v l mt server x l cuc gi y chc nng. Asterisk l mt nn tng tch hp in thoi vi tnh ho kin trcb m. Nhiu h thng Asterisk c ci t thnh cng trn khp th gii. Cng ngh Asterisk ang phc v cho nhiu doanh nghip. Asterisk em n cho ngi s dng tt c cc tnh nng v ng dng ca h thng tng i PBX v cung cp nhiu tnh nng m tng i PBX thng thng khng c c, Hin nay Asterisk trn pht trin nhanh c rt nhiu doanh nghip trin khai ng dng cho cng ty ca mnh. y l xu th tt yu ca ngi s dng in thoi, v cc cng ty u c mng my tnh v cn lin lc vi nhau trong cng vic gia cc phng ban hoc chi nhnh v cn mt chi ph thp thm ch khng phi tn chi ph khi thc hin cc cuc gi trn mng ni b ca cng ty. Khng gi gn thng tin lin lc trong cng ty m cc ng dng giao tip vi mng PSTN hoc mng VOIP cho php gi ra bt c s in thoi no c trn mng PSTN. - 24 -

H thng VoIP v tng i Asterisk

I. Kin trc Asterisk

V c bn kin trc ca Asterisk l s kt hp gia nn tng cng ngh in thoi v ng dng in thoi cho VOIP nh SIP, H323, IAX, MGCP... cc cng ngh in thoi cho h thng chuyn mch mch TDM nh T1, E1, ISDN v cc giao tip ng truyn thoi Analog. Khi khi ng h thng Asterisk th chc nng Dynamic Module Loader thc hin np driver ca thit b, np cc knh giao tip, cc format, codec v cc ng dng lin quan, ng thi cc hm API cng c lin kt np vo h thng. Sau h thng PBX Switching Core ca Asterisk chuyn sang trng thi sn sng hot ng chuyn mch cuc gi, cc cuc gi c chuyn mch tu vo k hoch quay s (Dialplan) c thc hin cu hnh trong file extension.conf. Application Launchar rung chung thu bao, quay s, nh hng cuc gi, kt ni vi hp th thoi Scheduler and I/O Manager m nhim cc ng dng nng cao. Codec Translator xc nhn cc knh nn d liu ng vi cc chun khc nhau c th kt hp lin lc c vi nhau. H thng cng bao gm 4 chc

- 25 -

H thng VoIP v tng i Asterisk nng API chnh: Codec translator API: cc hm thc thi, gii nn cc chun nh G711, G729 Asterisk Channel API : Giao tip vi cc knh lin lc khc nhau . Asterisk file format API : x l cc loi file c nh dng nh Mp3, wav, gsm Asterisk Aplication API : Bao gm tt c cc ng dng c thc thi trong h thng Asterisk nh voicemail, callerID II Giao thc IAX ( Inter Asterisk eXchange) IAX l giao thc chun dnh ring cho Asterisk, c pht trin bi tc gi ca phn mm Asterisk khc phc nhng hn ch trong giao thc SIP. N cung cp hot ng lin kt trong sut vi tng la NAT v PAT. N h tr vic thit lp, nhn, chuyn cuc gi v ng k cuc gi. Khng ging nh giao thc SIP chuyn ti thoi v bo hiu trn hai knh khc nhau (out of band), IAX chuyn ti thoi v bo hiu trn cng mt knh(in band). IAX gii quyt c vn NAT cp trn phn giao thc SIP. Mc khc IAX l giao thc ti u trong vic s dng bng thng, cho php nhiu gi d liu thoi trn cng mt IP header, c ch chuyn ti nhiu cuc gi trn cng mt gi IP c gi l trung k(Trunk). Vi IAX, cc in thoi hon ton c ng. Ch cn kt ni in thoi vi Asterisk server bt c u trn mng Internet, chng s ng k vi PBX ch v c nh tuyn cuc gi ngay tc th. IAX c on mo u rt nh. Vi bn byte ca mo u, so snh vi 12 byte mo u ca SIP hay H.323, bn tin IAX c th ni l nh hn rt nhiu. III Cc tnh nng c bn ca tng i Asterisk Ngoi nhng tnh nng tng t nh tng i PBX, Asterisk cn c thm nhiu tnh nng khc m ch c th c c nhng tng i rt t tin. l cc tnh nng: - Voicemail Services with Directory - Conferencing Server - Packet Voice Server - Encryption of Telephone or Fax Calls - Heterogeneous Voice over IP gateway (H.323, SIP, MGCP, IAX) - Custom Interactive Voice Response (IVR) system - Soft switch - Number Translation - Calling Card Server - Predictive Dialer - 26 -

H thng VoIP v tng i Asterisk - Call Queuing with Remote Agents - Gateway and Aggregation for Legacy PBX systems - Remote Office or User Telephone Services - PBX long distance Gateway - Telemarketing Block - Standalone Voicemail System

Phn III Trin khai h thng Asterisk

M hnh trin khai h thng :

Cc phn cng s dng : - 4 PC : + 2PC Asterisk Server ( Linux) : Ci t Asterisk + 2PC Client ( Windows ) : Ci t Softphone ( X-lite) - 2 Router - 1 Switch - 1 Analog phone - 1 SPA 3102

- 27 -

H thng VoIP v tng i Asterisk

I-

Ci t phn mm

1. Ci t Asterisk Server
- Download cc gi phn mm : Asterisk : http://downloads.digium.com/pub/asterisk/asterisk-1.4.12.tar.gz Lipri : http://downloads.digium.com/pub/libpri/libpri-1.4.7.tar.gz Zaptel : http://downloads.digium.com/pub/zaptel/zaptel-1.4.7.tar.gz Asterisk Addons : http://downloads.digium.com/pub/asterisk/asterisk-addons-1.4.2.tar.gz - Gii nn chng vo th mc /usr/src :
tar tar tar tar -vxzf -vxzf -vxzf -vxzf asterisk-1.4.12.tar.gz libpri-1.4.7.tar.gz zaptel-1.4.7.tar.gz asterisk-addons-1.4.2.tar.gz

- Kim tra cc th vin cn thit cho vic ci t : Cc th vin bao gm : bison, bison-devel, ncurses, ncurses-devel, zlib, zlib-devel, openssl, openssl-devel, gnutls-devel, gcc, gcc-c++ Kim tra bng cch dng lnh : rpm q tn_th_vin Nu th vin cha c ci t , dng lnh : yum install tn_th_vin ci t - Ci t gi Lipri :
cd /usr/src/libpri-1.4.7 make make install

- Ci t gi Zaptel
cd /usr/src/zaptel-1.4.7 make make install

- Ci t gi Asterisk
cd /usr/src/asterisk-1.4.12 ./configure make make install

- 28 -

H thng VoIP v tng i Asterisk

- Ci t gi Asterisk Addon :
cd /usr/src/asterisk-addons-1.4.2 make make install

2. Ci t Softphone: Softphone c s dng y l phn mm X-Lite Tin hnh download X-Lite 3.0 ti www.counterpath.com v ci t III - Cu hnh h thng Asterisk 1. Cu hnh Asterisk Server
Exten=103,1,Dial(SIP/spa3102)

Asterisk Server 1 Sip.conf --------------------[thanh] Type=friend Username=thanh Secret=1234 Host=dynamic Context = local1

Asterisk Server 2 Sip.conf --------------------[phuong] Type=friend Username=phuong Secret=1234 Host=dynamic Context = local2

----------------------[khanh] Type=friend Username=khanh Secret=1234 Host=dynamic Context = local1

----------------------[cuc] Type=friend Username=cuc Secret=1234 Host=dynamic Context = local2

-----------------------[spa3102] Type=friend Secret=1234 Host=dynamic Context = local1

Extension.conf -----------------------[local1] Exten=101, 1, Dial(SIP/thanh) Exten=thanh, 1, Dial(SIP/thanh) Exten=102, 1, Dial(SIP/khanh) Exten=khanh, 1, Dial(SIP/khanh)

Extension.conf -----------------------[local2] Exten=201, 1, Dial(SIP/phuong) Exten= phuong, 1, Dial(SIP/phuong) Exten=202, 1, Dial(SIP/cuc) Exten=cuc, 1, Dial(SIP/cuc)

2. Cu hnh cc Softphone : ( Sip Account Setting - Add ) Softphone 1 :

- 29 -

H thng VoIP v tng i Asterisk

Softphone 2 :

3. Cu hnh SPA3102 Thit b SPA3102 dng kt ni in thoi tng t thng thng vo mng IP. SPA3102 c 4 cng giao tip - Cng Ethernet ni vi mt my tnh, my tnh ny c s dng cu hnh cc thng s cho SPA3102 hot ng. - Cng Internet ni vi mng LAN cha Asterisk PBX v cc my tnh c ci softphone. - Cng Line ni vi ng dy in thoi thng thng. - Cng Phone ni vi in thoi tng t. 4. Cu hnh giao tip gia 2 Asterisk Server : Server 1 :
iax.conf ---------------------------[general] bindport = 4569 bindaddr = 0.0.0.0 [site2] type=friend secret=123 auth=plaintext

host=192.168.3.2 context=local2

Extensions.conf : -----------------------------[local1] Exten= 201,1,Dial(iax2/site2/201) Exten= 202,1,Dial(iax2/site2/202)

- 30 -

H thng VoIP v tng i Asterisk Server 2


Iax.conf auth=plaintext host=192.168.1.2 context=local1

-----------------------------[general] bindport = 4569 bindaddr = 0.0.0.0 [site1] type=friend secret=123

Extensions.conf -----------------------------[local2] Exten= 101,1,Dial(iax2/site1/101) Exten= 102,1,Dial(iax2/site1/102) Exten= 103,1,Dial(iax2/site1/103)

IV.Mt s ng dng vi Asterisk 1.ng dng hp th thoi (Voicemail)


Asterisk cung cp kh nng xy dng ng dng VoiceMail, vi kh nng ny gip cho ngi s dng in thoi khng b l bt c cuc gi in thoi no. Mt s tnh nng ca h thng voiceMail: - Khi ngi gi khng c tr li, my khng c kt ni mng hay my in thoi ang bn, h thng u c thng ip ring thng bo tnh trng ca my thu bao c gi v pht thng ip mi li tin nhn. - Khi thng ip c nhn, h thng VoiceMail c th giemail thng bo - C th kim tra VoiceMail trc tip trn my in thoi. - Nhng thng ip Li cho trong h thng hon ton c th thay i ph hp vi ng cnh s dng, khng nht thit phi s dng thng ip mc nh. Cc bc cu hnh thit lp mt hp th thoi : Cu hnh trong voicemail.conf : to ra ngi s dng v password ca hm th C php : extension ca user = mt m , tn y , a ch email
[mailbox] tienthanh = 123456, Nguyen Tien Thanh, tienthanh852000@gmail.com

Cu hnh trong extensions.conf : chuyn cc cuc gi vo hp th thoi --------------------------------------------------[voicemail] exten=123,1,Answer() exten=123,2,Dial(SIP/tienthanh,5)

- 31 -

H thng VoIP v tng i Asterisk


exten=123,3,GoToIf($[${DIALSTATUS} = CHANUNAVAIL]?7) exten=123,4,GoToIf($[${DIALSTATUS} = BUSY]?9) exten=123,5,VoiceMail(tienthanh@mailbox) exten=123,6,GoTo(123,10) exten=123,7,VoiceMail(utienthanh@mailbox) exten=123,8,GoTo(123,10) exten=123,9,VoiceMail(btienthanh@mailbox) exten=123,10,Hangup()

Cu hnh trong sip.conf


--------------------[tienthanh] type = friend username = tienthanh secret = 123 host = dynamic context = voicemail mailbox=tienthanh@mailbox

---------------------[phuong] type = friend username = phuong secret = 123 host = dynamic context = voicemail

Nh vy , nu mt ngi s dng [phuong] quay s 123 gi [tienthanh] th nu bn , ni dung cuc gi s c ghi vo hp th thoi. 2.ng dng nhc ch ( MusicOnHold ) Tnh nng Music On Hold ca Asterisk c nhiu ng dng thc t rt thit thc chng hn nh : trong khi ch gi my c gp ngi khc chng hn, thu bao c th nghe m nhc gii tr qun i thi gian ch i, khi ch tr li cuc gi thu bao s nghe m nhc thay v hi m chung nh in thoi truyn thng. Cu hnh : - To th mc mi chng hn l mp3music trong th mc var/lib/asterisk/moh. - Copy tt c cc file nhc mp3 vo th mc . - Cu hnh MusicOnHold.conf ------------------------------------[mymusic] mode=files directory=/var/lib/asterisk/moh/mp3music random=yes

- Cu hnh extensions.conf : - 32 -

H thng VoIP v tng i Asterisk ------------------------------------exten => 123,1,Answer exten => 123,n,SetMusicOnHold(mymusic) exten => 123,n,WaitMusicOnHold(15) exten => 123,n,Hangup

Nh vy, khi thu bao quay s 123 h thng s tr li sau pht ra mt bi nhc ngu nhin trong th mc mp3music trong vng 15 giy sau gc my. 3. ng dng phn phi cuc gi t ng ACD ( Automatic Call Distrubution ) H thng hng i phn phi cuc gi t ng cho php tr li cuc gi mt cch hiu qu hn v c th gip gim gi thnh , tng cht lng phc v. H thng hng i phn phi cuc gi t ng lm vic nh sau : Cc cuc gi c a vo hng i Agent ( ngi trc in thoi ) tr li cuc gi theo theo cc queuing strategy nh : Ringall, RoungRobin, Rrmemory... Trong khi ch cuc gi, c th cho ngi gi nghe mt bn nhc no . C th c cc thng bo ti ngi gi v thi gian ngi gi phi i ...

H thng hng i ny thng c ng dng cho cc trung tm cuc gi ( call centers) hay cc phng dch v khch hng. S dng h thng ny, c th : Trnh c tnh trng b l mt cc cuc gi khi cc agent ang bn nghe mt cuc gi khc . Nu s lng cuc gi trong hng i tng th c th thm agent tr li cuc gi. C th thng k c mt s thng s nh : t l cuc gi b b l, thi gian gi trung bnh ... Vic thng k ny s gip c lng c s lng agent tr li ng thi gip tng cht lng phc v khch hng . Kin trc h thng ACD

- 33 -

H thng VoIP v tng i Asterisk

Cc chin lc phn phi cuc gi : - ringall : phn phi n tt c cc agent ang ri cho n khi c ai tr li . roundrobin : Phn phi mt cch cng bng ln lt n cc agent leastrecent : Phn phi cuc gi ti agent mi login vo fewest calls : Phn phi ti agent nghe t cuc gi nht random : Phn phi mt cch ngu nhin. rrmemory : nh roundrobin nhng ...

Cc bc cu hnh: - To ra cc hng i : Cu hnh queue.conf ------------------------------[nhansu] music = default timeout = 2 retry = 2 maxlen = 0 member => Agent/100 member => Agent/101 -----------------------[ke toan] music = default timeout = 15 ; Khng gii hn dung lng hng i ; Agent/AgentID ; To hng i nhansu ; Nhc trong khi ch cuc gi

- 34 -

H thng VoIP v tng i Asterisk


retry = 5 maxlen = 0 member => Agent/200 member => Agent/201 --------------------[taichinh] music = default timeout = 15 retry = 5 maxlen = 0 member => Agent/300 member => Agent/301

- To ra cc Agent : cu hnh trong agents.conf C php : agent => AgentID, Mt khu , Tn ----------------------------------------------------------------------[Agents] agent => 100, 123456, Nguyen Tien Thanh Phong Nhan Su agent => 101, 123456, Phm Tran Khanh Phong Nhan Su agent => 200, 123456, Bui Hong Phuong Phong Ke Toan agent => 201, 123456, Le Thi Cuc Phong Ke Toan agent => 300, 123456, Tran Van Thang Phong Tai Chinh agent => 301, 123456, Pham Cong Dien Phong Tai Chinh

- To dialplan : extensions.conf ---------------------------------------------------------[TestACD] ; Cc Agent gi n s 900 ng k exten = 900,1,wait(1) exten = 900,2, AgentLogin() ; User gi n 09481xxxxx th phn phi vo hng i nhansu v trong khi i c tr li , user c nghe nhc exten = _09481xxxxx, 1, Answer exten = _09481xxxxx, 2, SetMusicOnHold(default) exten = _09481xxxxx, 3, queue(nhansu) ; User gi n 09482xxxxx th phn phi vo hng i ketoan exten = _09482xxxxx, 1, Answer exten = _09482xxxxx, 2, SetMusicOnHold(default) exten = _09482xxxxx, 3, queue(ketoan)

- 35 -

H thng VoIP v tng i Asterisk


; User gi n 09483xxxxx th phn phi vo hng i exten = _09483xxxxx, 1, Answer exten = _09483xxxxx, 2, SetMusicOnHold(default) exten = _09483xxxxx, 3, queue(taichinh) taichinh

- Agent gi n s 900 Login , s c 1 thng bo nhp username : nhn AgentID # ( v d 100#) nhp v nu thnh cng s c tip 1 thng bo nhp mt khu : nhn Mt khu # (123456#) nhp. Nu ng nhp thnh cng th Agent s c nghe nhc trong khi ch cuc gi. V nu c 1 cuc gi n c phn phi n Agent th s c 1 ting bip ri cuc gi c kt ni ti agent. - Agent c th nhn * kt thc cuc gi (khng logout ra khi hng i) - Agent c th chuyn cuc gi qua hng i khc bng cch n s tng ng ca hng i . 4. ng dng thi gian thc vi MySQL ( Realtime Architecture ) Thng thng cu hnh h thng Asterisk chng ta thc hin trn cc tp tin dng text nh sip.conf, iax.conf. extentions.conf... sau tp tin cu hnh c hiu lc ta cn phi phi thc hin lnh reload. Mt nhu cu thc t l khi cu hnh h thng asterisk, chng hn nh cho ngi s dng khai bo mt thu bao online m khng cn phi reload li h thng asterisk th thc hin nh th no? Kin trc thi gian thc(Asterisk RealTime Architecture) ra i nhm p ng nhu cu thc t trn. Kin trc thi gian thc thay v lu tp tin cu hnh trn tp tin dng text th c lu vo database. Khi c mt cuc gi ti( incoming call) mt extension do Asterisk qun l c Asterisk tm kim trong bng( c chc nng tng t SIP.conf) ca Database c nh hng trong file SIP.conf. Khi mt trong 2 bn truyn thng pht ra lnh hangup th Asterisk s pht tn hiu kt thc knh truyn thng gia 2 thit b u cui v xa Record np vo b nh. Nh vy, Asterisk tra cu Extension theo kiu thi gian thc tri vi trc kia l n load tt c cc extension trong file SIP.conf vo b nh Cc bc ci t : - Download v ci t MySQL server v cc th vin km theo :libdbi-dbd-mysql,mysqlconnector-odbc-3.51.12-2.2, mysql-libs, mysql, mysql-server, mysql-devel

- 36 -

H thng VoIP v tng i Asterisk - Sau khi ci t xong mysql , khi ng mysql : /etc/rc.d/init.d/mysqld start - SET li password cho truy cp ti Mysql cho user root: SET PASSWORD FOR root@localhost = 123 - ng nhp vo mysql : mysql u root p 123 - To c s d liu mi : creat database asterisk_database; use asterisk_database; - To ra cc bng cha c s d liu : create tables tn_bng; Bng sip_buddies :http://www.voip-info.org/wiki/view/Asterisk+RealTime+Sip Bng extensions : http://www.voip-info.org/wiki/view/Asterisk+RealTime+Extensions Bng voicemail :http://www.voip-info.org/wiki/view/Asterisk+RealTime+Voicemail Bng iax : http://www.voip-info.org/wiki/view/Asterisk+RealTime+IAX

- Thm d liu vo cc bng :


INSERT INTO Sip_buddies (context,host,type,username,secret) VALUES ('test','dynamic',friend,'102','102') INSERT INTO Sip_buddies ( context,host,type,username,secret) VALUES ( 'test','dynamic',friend,'103','103') INSERT INTO extensions (context , exten , priority , app, appdata) VALUES ( mycontext,102,1,Dial,SIP/102) INSERT INTO extensions (context , exten , priority , app) VALUES (mycontext,102, 2, Hangup) INSERT INTO extensions (context , exten , priority , app, appdata) VALUES (mycontext,103, 1, Dial,SIP/103) INSERT INTO extensions (context , exten , priority , app) VALUES (mycontext,103, 2, Hangup)

Kt qu bng extensions : select * from extensions : +----+---------+-------+----------+--------+---------+ | id | context | exten | priority | app | appdata | +----+---------+-------+----------+--------+---------+ | 1 | default | 102 | 1 | Dial | SIP/102 | | 2 | default | 102 | 2 | Hangup | | | 3 | default | 103 | 1 | Dial | SIP/103 | | 4 | default | 103 | 2 | Hangup | | +----+---------+-------+----------+--------+---------+ - Cu hnh trong res_mysql.conf. ------------------------------------------[general] dbhost = localhost

- 37 -

H thng VoIP v tng i Asterisk


dbname = asterisk_database dbuser = root dbpass = 123 dbport = 3306 dbsock = /var/lib/mysql/mysql.sock

- Cu hnh trong extconfig.conf. -------------------------------------------sipusers => mysql,asterisk_database,sip_buddies sippeers => mysql, asterisk_database,sip_buddies extensions => mysql, asterisk_database,extensions

- Cu hnh trong sip.conf


[general] rtcachefriends=yes

Cu hnh extensions.conf. -------------------------------------------[test] switch => Realtime/mycontext@extensions

-Kim tra kt ni thnh cng:


*CLI> realtime mysql status Connected to asterisk_database@localhost ...

- Thc hin : s dng username 102 v 103 kt ni ti tng i

- 38 -

You might also like