Số nội bộ (Extensions)

Một phần của tài liệu NGHIÊN CỨU HOẠT ĐỘNG VÀ TRIỂN KHAI MẠNG IP PBX ASTERISK (Trang 52 - 53)

Sơ đồ quay số là một tập hợp các số được định nghĩa trước. Một số là một chuỗi sẽ trigger một sự kiện khi một cuộc gọi được thực hiện. Các số có thể hoặc bằng chữ hoặc bằng mẫu số (pattern).

3.5.1.a Một số mẫu số (pattern)

• _ : chỉ việc bắt đầu 1 pattern.

• X : đại diện cho bất kỳ số nào từ 0 đến 9. • N : đại diện cho bất kỳ số nào từ 2 đến 9. • Z : đại diện cho bất kỳ số nào trừ số 0.

• [dãy bất kỳ] : khớp với chỉ một trong các ký tự nằm trong dấu ngoặc vuông “[]”. Ví dụ: [02-68*#] sẽ khớp với các ký tự 0, từ 2 đến 6, 8, * hoặc #.

• . : là một wildcard, khớp với bất kỳ ký tự nào nằm phía sau dấu chấm “.”.

• | : để chỉ việc sử dụng phím số phía trước | để gọi ra ngoài (thường là số 0 hay số 9). Số này được loại bỏ không đưa ra ngoài.

Một số ví dụ của mẫu số (pattern):

9|NXXXXXXXX : bấm số 9 để ra ngoài, dãy số gọi ra ngoài gồm 9 phím số bắt đầu từ số 2 đến 9 và 8 số còn lại là bất kỳ. Vậy tổng cộng người sử dụng gọi 10 số nhưng số 9 đầu bị loại bỏ và chỉ gởi 9 số sau ra ngoài trung kế.

_4XXX : chỉ những số gọi nội bộ có 4 số bắt đầu từ số 4.

_90[2-8]. : dùng cho trường hợp số gọi ra ngoài (bấm số 9 ra ngoài) số sau là dãy số đường dài. Dùng trong các ngữ cảnh cấp quyền gọi đường dài.

_909XXXXXXXX : dùng cho trường hợp số gọi ra ngoài (bấm số 9 ra ngoài) số sau là dãy số di động. Dùng trong các ngữ cảnh cấp quyền gọi di động.

_91900. : dùng cho trường hợp số gọi ra ngoài (bấm số 9 ra ngoài) số sau là dãy số dịch vụ 1900. Dùng trong các ngữ cảnh cấp quyền gọi dịch vụ 1900.

Như ta thấy bên trên, việc hiểu và sử dụng các mẫu số (pattern) này mang lại tính linh hoạt và sơ đồ quay số rất mạnh cho cấu hình định tuyến Asterisk.

3.5.1.b Các ví dụ về số nội bộ (extensions)

+ Ví dụ 1:

exten=>8580,1,dial(SIP/8580,20) exten=>8580,2,hangup()

Lệnh “exten” mô tả bước tiếp theo của cuộc gọi đến số 8580 là một tập hợp của các số nhận được (số được gọi). Số “1” và “2” là độ ưu tiên định nghĩa thứ tự xử lý. Quay số “8580” sẽ gọi SIP IP Phone đã được đăng ký như “8580”. Nếu cuộc gọi không có nguời trả lời sau 20 giây nó sẽ giải toả cuộc gọi.

+ Cú pháp Extension

exten=> number (name), {priority|label{+|-}offset}[(alias)],application

Lệnh extension “exten=” theo sau bởi một số nội bộ hoặc tên, một dấu phẩy, một số ưu tiên, một dấu phẩy nữa và cuối cùng là ứng dụng. số nội bộ gắn với địa chỉ của cuộc gọi (số điện thoại). Số ưu tiên được sử dụng để chỉ thứ tự các bước thực thi tương ứng với số ưu tiên. Ứng dụng là hành động (quay số, gọi lại, gác máy …). Mỗi một hành động là một ứng dụng khác nhau.

+ Ví dụ 2:

exten=>_90[2-8].,1,dial(ZAP/g1/${EXTEN:1},20,tT) exten=>_90[2-8].,n,hangup()

Trên là một ví dụ điển hình cho việc gọi đường dài của một số nội bộ:

- _90[2-8]. : chỉ ra bắt đầu một pattern, gọi ra ngoài dùng số 9 đầu và gọi đi liên tỉnh (bắt dầu số 0 và sau là số 2 đến số 8 để gọi mã liên tỉnh). Dấu chấm “.” chỉ bất kỳ dãy số nào phía sau đều chấp nhận.

- ZAP/g1 : chỉ đường ra là một trong các đường trung kế rỗi gắn vào card FXO. Nếu ZAP/1 tức là đường số 1, Zap/2 tức là đường số 2 và ZAP/g1 là bất kỳ đường nào rỗi trong dãy trung kế.

- ${EXTEN:1) : đây là biến lấy số nhập vào là phần sau của dãy số đã nhập, trừ đi 1 số đầu, tức số 9 sẽ bị bỏ qua.

Một phần của tài liệu NGHIÊN CỨU HOẠT ĐỘNG VÀ TRIỂN KHAI MẠNG IP PBX ASTERISK (Trang 52 - 53)