Tải bản đầy đủ (.pdf) (19 trang)

Tổng quan về Asterisk - chương 1

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (425.07 KB, 19 trang )

Chương 1

TỔNG QUAN VỀ ASTERISK

5

1.1

GIỚI THIỆU ASTERISK

5

1.2

KIẾN TRÚC ASTERISK

8

1.3

MỘT SỐ TÍNH NĂNG CƠ BẢN

10

1.3.1

Voicemail (hộp thư thoại)

10

1.3.2



Call Forwarding(chuyển cuộc gọi)

10

1.3.3

Caller ID (hiển thị số gọi)

10

1.3.4

Automated attendant (chức năng IVR)

11

1.3.5

Time and Date

11

1.3.6

Call Parking

11

1.3.7


Remote call pickupe

11

1.3.8

Privacy Manager

12

1.3.9

Backlist

12

1.4

Các ngữ cảnh ứng dụng

12

1.4.1

Tổng đài voip IP PBX

12

1.4.2


Kết nối IP PBX với PBX

14

1.4.3

Kết nối giữa các server Asterisk

15

1.4.4

Các ứng dụng IVR, VoiceMail, Điện Thoại Hội Nghị

16

1.4.5

Chức năng Phân phối cuộc gọi tự động ACD

17


Sách Asterisk – />
Chương 2

Các KHÁI NIỆM TRONG HỆ THỐNG ASTERISK

18


2.1

GIỚI THIỆU

18

2.2

PBX - Private Branch Exchange

18

2.3

VOIP - Voice Over Internet Protocol

19

2.4

PSTN – Public Switched Telephone Network

20

2.5

TDM – Time Division Multiplexing

20


2.6

Các hình thức báo hiệu giao tiếp TDM.

21

2.6.1

FXO và FXS

21

2.6.2

Báo hiệu Analog giữa đầu cuối và tổng đài

22

2.6.3

Báo hiệu giữa các tổng đài

23

Báo Hiệu trên mạng điện thoại VoIP

23

2.7


2.7.1

SIP Session Initiation Prorocol

23

2.7.2

Proxy server

23

2.7.3

RTP vá NAT

24

2.7.4

IAX – Inter Asterisk eXchange

25

2.8

Thiết Bị VoIP

26


2.8.1

Voip Phone

26

2.8.2

Softphone

26

Tác Giả Lê Quốc Toàn

2


Sách Asterisk – />
2.8.3

Card giao tiếp với PSTN

27

2.8.4

ATA Analog Telephone Adaptors

27


2.9

Codecs

28

2.10

QoS – Quality of Service

28

2.10.1

Độ trễ

29

2.10.2

Độ trượt(Jitter)

29

CÀI ĐẶT ASTERISK

31

Chương 3

3.1

Cài đặt Asterisk

31

3.1.1

Download và bung nén

31

3.1.2

Cài đặt gói Zaptel

32

3.1.3

Cài đặt gói libpri

33

3.2

Cài đặt gói Asterisk

33


3.3

Cài đặt TrixBox

34

3.3.1

Giới thiệu

34

3.3.2

DOWNLOAD VÀ LẮP ĐẶT TRIXBOX

35

3.3.3

Cấu hình địa chỉ IP cho card mạng:

35

3.4

Tổ Chức Thư Mục của Asterisk

3.4.1


/etc/asterisk/

36
36

Tác Giả Lê Quốc Toàn

3


Sách Asterisk – />
3.4.2

/usr/lib/asterisk/modules/

36

3.4.3

/var/lib/asterisk

37

3.4.4

/var/spool/asterisk/

38

3.4.5


/var/run/

39

3.4.6

/var/log/asterisk/

39

3.4.7

/var/log/asterisk/cdr-csv

40

3.5

Một số lệnh thao tác trên hệ thống asterisk

Chương 4

CẤU HÌNH HỆ THỐNG ASTERISK

40
42

4.1


GIỚI THIỆU

42

4.2

Tập Tin cấu hình

42

4.3

Các kiểu ảnh hưởng trong tập cấu hình

43

4.3.1

Simple Group

44

4.3.2

Option inheritance

44

4.3.3


Complex Entity

45

4.4

Cấu hình giao tiếp với mạng PSTN

46

4.4.1

Ngữ cảnh kết nối

46

4.4.2

Lắp đặt card TDM01B và cấu hình.

46

4.5

Cấu hình Điện thoại IP SIP phone.

47

Tác Giả Lê Quốc Toàn


4


Sách Asterisk – />
4.5.1

Phần khai báo Chung

48

4.5.2

Khai báo kênh SIP

49

4.6

Giới Thiệu DialPlan

50

4.6.1

Extentions

51

4.6.2


Priorities – Thứ tự thực hiện

52

4.6.3

Aplications – Các hàm ứng dụng

53

4.6.4

Contexts - Ngữ cảnh

53

Ngữ cảnh thực hành ứng dụng

55

4.7

4.7.1

Bước 1: Cấu hình cho hai sip phone X-lite 8051 và 8052 bằng

cách cấu hình trên file sip.conf như sau:

56


4.7.2

Bước 2: Cấu hình softphone x-lite phía client cho máy 8051 57

4.7.3

Bước 3 : Lập lại bước hai để khai báo máy điện thoại softphone

8052

58

4.8

Tạo diaplan.

58

4.8.1

Thực hiện một ví dụ cơ bản.

58

4.8.2

Các ứng dụng dial(), background() và goto().

59


Tác Giả Lê Quốc Toàn

5


Sách Asterisk – />
1

1

TỔNG QUAN VỀ ASTERISK

GIỚI THIỆU ASTERISK

Hân hạnh chào mừng đến với thế giới diệu kỳ của Astetisk. Asterisk đem đến
cho người sử dụng tất cả các tính năng và ứng dụng của hệ thống tổng đài PBX và
cung cấp nhiều tính năng mà tổng đài PBX thơng thường khơng có được, đó là sự
kết hợp giữa chuyển mạch VOIP và chuyển mạch TDM, đó là khả năng mở rộng
đáp ứng nhu cầu cho từng ứng dụng…
Asterisk là hệ thống chuyển mạch mềm, là phần mềm nguồn mở được viết
bằng ngôn ngữ C chạy trên hệ điều hành linux thực hiện tất cả các tính năng của
tổng đài PBX và hơn thế nữa. Asterisk ra đời vào năm 1999 bởi một chàng trai sinh
Tác Giả Lê Quốc Toàn

6


Sách Asterisk – />
năm 1977 tên là Mark Spencer, Anh ta viết phần mềm này ban đầu khơng ngồi
mục đích hỗ trợ cho cơng ty của mình trong việc liên lạc đàm thoại hỗ trợ cộng

đồng người sử dụng và phát triển Linux.
Asterisk là một PBX và nhiều hơn thế. Asterisk là một phần mềm mang tính
cách mạng, tin cậy, mã nguồn mở và miễn phí mà biến một PC rẻ tiền thông thường
chạy Linux thành một hệ thống điện thoại doanh nghiệp mạnh mẽ. Asterisk là một
bộ công cụ mã nguồn mở cho các ứng dụng thoại và là một server xử lý cuộc gọi
đầy đủ chức năng. Asterisk là một nền tảng tích hợp điện thoại vi tính hoá kiến trúc
mở. Nhiều hệ thống Asterisk đã được cài đặt thành công trên khắp thế giới. Công
nghệ Asterisk đang phục vụ cho nhiều doanh nghiệp.
Hiện nay Asterisk trên đà phát triển nhanh được rất nhiều doanh nghiệp triển
khai ứng dụng cho cơng ty của mình. Đây là xu thế tất yếu của người sử dụng điện
thoại, vì các cơng ty đều có mạng máy tính và cần liên lạc với nhau trong cơng việc
giữa các phịng ban hoặc chi nhánh và cần một chi phí thấp thậm chí khơng phải tốn
chi phí khi thực hiện các cuộc gọi trên mạng nội bộ của cơng ty.
Khơng gói gọn thơng tin liên lạc trong công ty mà các ứng dụng giao tiếp với
mạng PSTN hoặc mạng VOIP (như voice777) cho phép gọi ra bất cứ số điện thoại
nào có trên mạng PSTN.
Ngồi ra việc tích hợp vào các ứng dụng như CRM và hệ thống Outlook làm
cho khả năng ứng dụng của Asterisk linh hoạt hơn đáp ứng nhu cầu cần thiết cho
người sử dụng điện thoại.
Asterisk thoạt đầu được phát triển trên GNU/Linux nền x86 (Intel), nhưng giờ
đây nó cũng có thể biên dịch và chạy trên OpenBSD, FreeBSD và Mac OS X và
Microsoft Windows.

Tác Giả Lê Quốc Toàn

7


Sách Asterisk – />
Sơ đồ Tổng quát


Asterisk là hệ thống chuyển mạch tích hợp vừa là cơng nghệ truyền thống
TDM vừa là chguyển mạch voip. Hình trên cũng cho thấy khả năng giao tiếp của hệ
thống. Giao tiếp với điện thoại analog thông thường, giao tiếp với thiết bị điện thoại
voip, ngồi ra cịn có thể giao tiếp với mạng PSTN và các nhà cung cấp voip khác.
2

KIẾN TRÚC ASTERISK

Tác Giả Lê Quốc Toàn

8


Sách Asterisk – />
Về cơ bản kiến trúc của Asterisk là sự kết hộp giữa nền tảng công nghệ điện
thoại và ứng dụng điện thoại. công nghệ điện thoại cho VOIP như SIP, H323, IAX,
MGCP... các công nghệ điện thoại cho hệ thống chuyển mạch mạch TDM như T1,
E1, ISDN và các giao tiếp đường truyền thoại Analog. Các ứng dụng thoại như
chuyển mạch cuộc gọi, tương tác thoại, caller ID, voicemail, chuyển cuộc gọi…
Asterisk có một số chức năng chính đóng vai trị quan trọng trong hệ thống
chuyển mạch cuộc gọi. Khi khởi động hệ thống Asterisk thì chức năng Dynamic
Module Loader thực hiện nạp driver của thiết bị, nạp các kênh giao tiếp, các
format, codec và các ứng dụng liên quan, đồng thời các hàm API cũng được liên kết
nạp vào hệ thống.

Tác Giả Lê Quốc Toàn

9



Sách Asterisk – />
Sau đó hệ thống PBX Switching Core của Asterisk chuyển sang trạng thái sẵn
sàng hoạt động chuyển mạch cuộc gọi, các cuộc gọi được chuyển mạch tuỳ vào kế
hoạch quay số (Dialplan) được thực hiện cấu hình trong file extension.conf.
Chức năng Application Launchar để rung chuông thuê bao, quay số, định
hướng cuộc gọi, kết nối với hộp thư thoại…
Scheduler and I/O Manager đảm nhiệm các ứng dụng nâng cao, các chức năng
được phát triển bởi cộng đồng phát triển asterisk.
Codec Translator xác nhận các kênh nén dữ liệu ứng với các chuẩn khác nhau
có thể kết hợp liên lạc được với nhau.
Tất cả các cuộc gọi định hướng qua hệ thống Asterisk đều thông qua các giao
tiếp như SIP, Zaptel, IAX. Nên hệ thống Asterisk phải đảm trách nhiệm vụ liên kết
các giao tiếp khác nhau đó để xử lý cuộc gọi.
Hệ thống cũng bao gồm 4 chức năng API chính:

Codec translator API: các hàm đảm nhiệm thực thi và giải nén các chuẩn khác
nhau như G711, GMS, G729…
Asterisk Channel API : Giao tiếp với các kênh liên lạc khác nhau, đây là đầu
mối cho việc kết nối các cuộc gọi tương thích với nhiều chuần khác nhau như SIP,
IAX, H323. Zaptel…
Asterisk file format API : Asterisk tương thích với việc xử lý các loại file có
định dạng khác nhau như Mp3, wav, gsm…
Asterisk Aplication API : Bao gồm tất cả các ứng dụng được thực thi trong hệ
thống Asterisk như voicemail, callerID…

Tác Giả Lê Quốc Toàn

10



Sách Asterisk – />
Ngồi ra, Asterisk cịn có thư viện Asterisk Gateway Interface (AGI, tương tự
như CGI) - cơ chế kích hoạt ứng dụng bên ngồi, cho phép viết kịch bản phức tạp
với một số ngôn ngữ như PHP hay Perl. Nói chung, khả năng viết các ứng dụng tùy
biến rất lớn.
3

MỘT SỐ TÍNH NĂNG CƠ BẢN

Asterisk có rất nhiều tính năng đã được giới thiệu ở trên nhưng để hiểu rõ hết
tất cả các tính năng trên thật sự là thách thức đối với chúng ta. Trong phần này
chúng tơi sẽ giới thiệu một số tính năng với các ứng dụng cụ thể để hiểu hơn về hệ
thống asterisk.
1

Voicemail (hộp thư thoại)

Đây là tính năng cho phép hệ thống nhận các thông điệp tin nhắn thoại, mỗi
máy điện thoại được khai báo trong hệ thống Asterisk cho phép khai báo thêm chức
năng hộp thư thoại.
Mỗi khi số điện thoại bận hay ngồi “vùng phủ sóng” thì hệ thống asterisk
định hướng trực tiếp các cuộc gọi đến hộp thư thoại tương ứng đã khai báo trước.
Voicemail cung cấp cho người sử dụng nhiều tính năng lựa chọn như :
password xác nhận khi truy cập vào hộp thư thoại, gửi mail báo khi có thơng điệp
mới.
2

Call Forwarding(chuyển cuộc gọi)


Khi khơng ở nhà, hoặc đi công tác mà người sử dụng không muốn bỏ lỡ tất cả
các cuộc gọi đến thì hãy nghĩ ngay đến tính năng chuyển cuộc gọi.
Đây là tính năng thường được sử dụng trong hệ thống Asterisk. Chức năng cho
phép chuyển một cuộc gọi đến một hay nhiều số máy điện thoại được định trước.

Tác Giả Lê Quốc Toàn

11


Sách Asterisk – />
Một số trường hợp cần chuyển cuộc gọi như : Chuyển cuộc gọi khi bận,
chuyển cuộc gọi khi không trả lời, chuyển cuộc gọi tức thời, chuyển cuộc gọi với
thời gian định trước.
3

Caller ID (hiển thị số gọi)

Chức năng này rất hữu dụng khi một ai đó gọi đến và ta muốn biết chính xác
là gọi từ đâu và trong một số trường hợp biết chắc họ là ai.
Ngồi ra Caller ID cịn là chức năng cho phép chúng ta xác nhận số thuê bao
gọi đến có nghĩa là dựa vào caller ID chúng ta có tiếp nhận hay khơng tiếp nhận
cuộc gọi từ phía hệ thống Asterisk. Ngăn một số cuộc gọi ngoài ý muốn.
4

Automated attendant (chức năng IVR)

Chức năng tương tác thoại có rất nhiều ứng dụng trong thực tế, khi gọi điện
thoại đến một cơ quan hay xí nghiệp th bao thường nghe thơng điệp như “Xin
chào mừng bạn đã gọi đến công ty chúng Tơi hãy nhấn phím 1 để gặp phịng kinh

doanh, phím 2 gặp phịng kỹ thuật…” sau đó tuỳ vào sự tương tác của thuê bao gọi
đến, hệ thống Asteisk sẽ định hướng cuộc gọi theo mong muốn.
Khi muốn xem điểm thi, muốn biết tiền cước điện thoại của thuê bao, muốn
biết tỉ giá Đôla hiện nay như thế nào, hay kết quả sổ số … tất các những mong
muốn trên đều có thể thực hiện qua chức năng tương tác thoại.
5

Time and Date

Vào từng thời gian cụ thể cuộc gọi sẽ định hướng đến một số điện thoại hay
một chức năng cụ thể khác, ví dụ trong cơng ty giám đốc muốn chỉ cho phép nhân
viên sử dụng máy điện thoại trong giờ hành chánh cịn ngồi giờ thì sẽ hạn chế hay
khơng cho phép gọi ra bên ngồi.

Tác Giả Lê Quốc Toàn

12


Sách Asterisk – />
6

Call Parking

Đây là chức năng chuyển cuộc gọi có quản lý. Có một số điện thoại trung gian
và hai thuê bao có thể gặp nhau khi thuê bao được gọi nhấn vào số điện thoại mà
thuê bao chủ gọi đang chờ trên đó và từ đây có thể gặp nhau và đàm thoại.
7

Remote call pickupe


Đây là tính năng cho phép chúng ta từ máy điện thoại này có thể nhận cuộc
gọi từ máy điện thoại khác đang rung chuông

8

Privacy Manager

Khi một người chủ doanh nghiệp triển khai Asterisk cho hệ thống điện thoại
của cơng ty mình nhưng lại không muốn nhân viên trong công ty gọi đi ra ngồi trị
chuyện với bạn bè, khi đó Asterisk cung cấp 1 tính năng tiện dụng là chỉ cho phép
số điện thoại được lập trình được phép gọi đến những số máy cố định nào đó thơi,
cịn những số khơng có trong danh sách định sẵn sẽ khơng thực hiện cuộc gọi được
9

Backlist

Backlist cũng giống như Privacy Manager nhưng có một sự khác biệt là những
máy điện thoại nằm trong danh sách sẽ khơng gọi được đến máy của mình (sử dụng
trong tình trạng hay bị quấy rối điện thoại)
Và cịn rất nhiều tính năng nữa mà hệ thống asterisk có thể cung cấp cho người
sử dụng, trên đây chỉ là một số tính năng thường được sử dụng mà thơi, Để biết
nhiều hơn chi tiết hơn các tính năng còn lại xin hãy tham quan website
www.asterisk.org.
4

Các ngữ cảnh ứng dụng

Tác Giả Lê Quốc Toàn


13


Sách Asterisk – />
Asterisk thực hiện rất nhiều ngữ cảnh ứng dụng khác nhau tuỳ vào nhu cầu sử
dụng, dưới dây là những ngữ cảnh ứng dụng thường được sử dụng trong thực tế
triển khai hệ thống asterisk.
1

Tổng đài voip IP PBX

IP BPX

Tác Giả Lê Quốc Toàn

14


Sách Asterisk – />
Đây là hệ thống chuyển mạch voip được xây dựng phục vụ các cơng ty có nhu
cầu thực hiện trên nền tảng mạng nội bộ đã triển khai. Thay vì lắp đặt một hệ thống
PBX cho nhu cầu liên lạc nội bộ thì nên lắp đặt hệ thống voip điều này sẽ làm giảm
chi phí đáng kể. Hệ thống có thể liên lạc với mạng PSTN qua giao tiếp TDM.
2

Kết nối IP PBX với PBX

Kết nối IP PBX với PBX

Một ngữ cảnh đặt ra ở đây là hiện tại Công ty đã trang bị hệ thống PBX bây

giờ cần trang bị thêm để đáp ứng nhu cầu liên lạc trong cơng ty sao cho với chi phí
thấp nhất, giải pháp để thực hiện đó là trang bị hệ thống asterisk và kết nối với hệ
Tác Giả Lê Quốc Toàn

15


Sách Asterisk – />
thống PBX đang tồn tại qua luồng E1. Ngoài ra để tăng khả năng liên lạc với mạng
PSTN và VOIP khác, Cơng Ty có thể thực hiện kết nối với nhà cung cấp dịch vụ
voip.
3

Kết nối giữa các server Asterisk

Kết nối giữa các server asterisk

Phương pháp trên ứng dụng rất hiệu quả cho các công ty nằm rãi rác ở các vị
trị địa lý khác nhau nhằm giảm chi phí đường dài. Ví dụ Cơng ty Mẹ có trụ sở đặt
tại nước Mỹ và các Chi nhánh đặt tại Việt Nam với các địa điểm Thành phố Hồ Chí
Minh và Hà Nội. Thơng qua mạng WAN của Công Ty các cuộc gọi nội bộ giữa các

Tác Giả Lê Quốc Toàn

16


Sách Asterisk – />
vị trí khác nhau sẽ làm giảm chi phí đáng kể. Ngữ cảnh này về mặt pháp luật không
cho cuộc gọi từ Mỹ vào Việt Nam.

4

Các ứng dụng IVR, VoiceMail, Điện Thoại Hội Nghị

Triển khai server IVR, VoiceMail, Hội Thoại

Ứng dụng thực hiện các server kết nối với hệ thống PSTN hay tổng đài PBX
để triển khai các ứng dụng như tương tác thoại IVR. Một ví dụ cho ứng dụng tương
tác thoại đó là cho biết kết quả sổ số hay kiểm tra cước cuộc gọi giống dịch vụ
19001260 vậy. Ứng dụng VoiceMail thu nhận những tin nhắn thoại từ phía thuê
bao giống như chức năng hộp thư thoại của Bưu Điện Thành phố triển khai. Cịn
Tác Giả Lê Quốc Tồn

17


Sách Asterisk – />
chức năng điện thoại hội nghị thiết lập cho nhiều máy điện thoại cùng nói chuyện
với nhau.
5

Chức năng Phân phối cuộc gọi tự động ACD

Phân phối cuộc gọi với hàng đợi

ACD(Automatic Call Distribution): Phân phối cuộc gọi tự động.
Đây là chức năng ứng dụng cho nhu cầu chăm sóc khách hàng hay nhận phản
hổi từ phía khách hàng.

Tác Giả Lê Quốc Toàn


18


Sách Asterisk – />
Cơng ty có khả năng tiếp nhận cùng một lúc 10 cuộc gọi như thế cuộc gọi thứ
11 gọi đến thì hệ thống giải quyết như thế nào?. Bình thường thì sẽ nghe tín hiệu
bận nhưng với chức năng phân phối cuộc gọi sẽ đưa thuê bao đó vào hàng đợi để
chờ trả lời, trong khi chờ trả lời cuộc gọi thuê bao có thể nghe những bài hát hay do
asterisk cung cấp, trong lúc này nếu 1 trong mười số điện thoại trở về trạng thái rỗi
thì cuộc gọi đang chờ sẽ được trả lời. Giống như chức năng của dịch vụ 1080 hay
116 của Bưu Điện Thành Phố vậy.

2

1

CÁC KHÁI NIỆM TRONG HỆ THỐNG ASTERISK

GIỚI THIỆU

Trong chương này sẽ giải thích rõ các khái niệm cơ bản liên quan đến hệ thống
asterisk, cung cấp những kiến thức nền tảng, những khái niệm cần thiết để thiết kế
triển khai xây dựng hệ thống điện thoại với Asterisk.
2

PBX - Private Branch Exchange

PBX hay còn gọi là PABX - Private Automatic Branch Exchange là hệ thống
tổng đài nội bộ được đặt tại nhà thuê bao, từ Automatic ở đây muốn nói đến là hệ

thống tổng đài điện tử tự động nhưng hiện nay đa số là tổng đài PBX điện tử tự
động nên từ trên thực sự không còn cần thiết nữa.
PBX với mục tiêu chia sẻ nhiều th bao nội bộ gọi ra thế giới bên ngồi
thơng qua một vài đường trung kế hay nói một cách khác PBX là hệ thống trung
chuyển giữa các đường dây điện thoại bên ngồi từ cơng ty điện thoại và máy điện
thoại nội bộ trong tổng đài PBX. Vì thế nên số lượng máy điện thoại nội bộ luôn
nhiều hơn số đường dây nối đến PBX từ bên ngoài.

Tác Giả Lê Quốc Toàn

19



×