Cách cài đặt Asterisk trên Raspberry Pi

Cách cài đặt Asterisk trên Raspberry Pi

Asterisk là một PBX miễn phí, mã nguồn mở để tự động quản lý các cuộc gọi của bạn (hoàn hảo cho một doanh nghiệp nhỏ).

Trong hướng dẫn này, Quantrimang.com sẽ chỉ cho bạn cách cài đặt Asterisk trên Raspberry Pi.

Những thứ cần chuẩn bị

- Một Raspberry Pi (nếu có thể nên là Raspberry Pi 4): Quá trình biên dịch là một quá trình rất dài trên những model cũ và việc có nhiều sức mạnh hơn có thể sẽ hữu ích, tùy thuộc vào những gì bạn làm với Pi.

Raspberry Pi OS: Tải Raspberry Pi OS: https://www.raspberrypi.org/downloads/ nếu bạn chưa có sẵn hệ điều hành này trên thẻ SD. Phiên bản lite là một lựa chọn ổn, vì không cần giao diện đồ họa cho Asterisk.

Thẻ SD cơ bản: Bạn không cần một thẻ SD quá đắt tiền. Asterisk không đòi hỏi nhiều không gian. Model SanDisk cơ bản, giá rẻ cũng cho kết quả tuyệt vời.

 

Cài đặt Asterisk

Cài đặt Raspbian

Nếu bạn sử dụng thẻ SD mới cho Asterisk, trước tiên bạn cần cài đặt Raspberry Pi OS trên nó. Như đã nói, phiên bản Lite là lựa chọn hoàn hảo.

Sau khi hoàn tất, đừng không quên bật SSH và cập nhật hệ thống trước khi tiếp tục:

sudo apt update
 sudo apt upgrade

Vì bài viết sẽ cung cấp cho bạn nhiều lệnh để cài đặt và cấu hình Asterisk, nên tốt hơn là sao chép và dán chúng trực tiếp từ máy tính.

 

Tải Asterisk

Lưu ý: Asterisk có sẵn trong kho Raspberry Pi OS (sudo apt install asterisk), nhưng nó lại là phiên bản cũ. Phiên bản này ổn khi dùng thử nhanh, nhưng bài viết không khuyên bạn nên dùng cho công việc nghiêm túc.

Tất cả các bản tải xuống Asterisk có sẵn trên trang này.

Liên kết đầu tiên là dành cho FreePBX, nó là một hệ thống Asterisk tích hợp với một giao diện để quản lý Asterisk, nhưng không có image nào cho Raspberry Pi.

Sau đó là Switchvox, và cuối cùng là mã nguồn ngay bên dưới (Asterisk Communications Framework).

Bạn có thể tải xuống một tarball hoặc sử dụng Git để tải xuống phiên bản mới nhất.

Bài viết sẽ chỉ cho bạn cách làm điều này với Git, theo cách này nó sẽ luôn là phiên bản mới nhất, nhưng bạn có thể tải xuống kho lưu trữ nếu thích:

- Cài đặt git:

sudo apt install git

Tài liệu khuyến nghị build Asterisk từ /usr/local/src, vì vậy bài viết sẽ làm điều này:

cd /usr/local/src

- Sau đó tải xuống file kho lưu trữ git:

sudo git clone https://gerrit.asterisk.org/asterisk asterisk

Nếu bạn tự hỏi DAHDI và LIBPRI là gì trên tài liệu chính thức, thì chúng không bắt buộc trên Raspberry Pi.

+ DAHDI là một giao diện để quản lý interface card (bao gồm nhiều driver), nhưng có lẽ bạn không cần nó trên Raspberry Pi.

+ LIBPRI cũng không bắt buộc, vì nó dành cho các ISDN interface.

Vì hầu hết mọi người sẽ sử dụng Asterisk làm IPBX với SIP và Internet, nên bạn không cần đến chúng.

Cài đặt Asterisk

Đối với hầu hết các phần mềm được build từ nguồn, bước đầu tiên là kiểm tra xem bạn đã cài đặt tất cả các yêu cầu Asterisk chưa.

- Chuyển đến thư mục Asterisk:

cd /usr/local/src/asterisk

- Cài đặt các điều kiện tiên quyết:

sudo apt install libedit-dev sqlite3 libsqlite3-dev libjansson-dev libxml2-dev uuid-dev

- Chạy script cấu hình, để kiểm tra xem bạn đã cài đặt tất cả các yêu cầu chưa:

sudo ./configure

- Nếu có bất kỳ lỗi nào, có thể có một gói bị thiếu trên hệ thống của bạn.

Sử dụng apt search để tìm gói tương ứng và cài đặt nó.

- Sau đó, bạn cần chọn các tính năng bạn muốn sử dụng với menuelect:

sudo make menuselect

Một cửa sổ như thế này hiện lên:

Chọn các tính năng bạn muốn sử dụng với menuelect
Chọn các tính năng bạn muốn sử dụng với menuelect

- Xác nhận trong mỗi menu con rằng mọi thứ bạn cần đều có.

- Nhấn SPACE để chọn hoặc bỏ chọn bất kỳ tùy chọn nào. Một số tùy chọn trong số đó không có sẵn nếu gói tương ứng không được cài đặt.

Nhấn SPACE để chọn hoặc bỏ chọn bất kỳ tùy chọn nào
Nhấn SPACE để chọn hoặc bỏ chọn bất kỳ tùy chọn nào

Nếu không thực sự biết những gì mình cần, bạn có thể để nguyên cấu hình mặc định.

- Nhấn ESC và S sau khi hoàn thành để lưu và thoát.

- Bây giờ bạn có thể chạy make để biên dịch Asterisk:

sudo make

Có thể mất nhiều hoặc ít thời gian hơn tùy thuộc vào model Raspberry Pi và các tính năng bạn đã chọn (15 - 20 phút trên Raspberry Pi 4 với cấu hình mặc định)

Bây giờ bạn có thể sử dụng lệnh sau để cài đặt tất cả các file:

sudo make install

Sau đó, bạn có một vài lệnh không bắt buộc nhưng được khuyến nghị, nếu bạn là người mới trên Asterisk:

- Cài đặt file mẫu:

sudo make samples

Mục tiêu ở đây là bắt đầu với một cấu hình mặc định. Nó sẽ tạo tất cả các file trong thư mục Asterisk cho bạn (có nhiều comment trong đó), vì vậy bạn không nên bắt đầu từ đầu

- Cài đặt các script khởi tạo:

sudo make config

Bài viết khuyên bạn nên làm điều này, nó sẽ thêm một bản initscript, để tự động khởi động Asterisk khi boot. Nó cũng hữu ích khi bắt đầu hoặc dừng máy chủ nếu cần.

- Xoay vòng (xử lý file log cũ theo quy định trước đó, đồng thời tạo ra file log mới) file nhật ký:

sudo make install-logrotate

Như bạn đang ở trên Raspberry Pi (có dung lượng ổ đĩa nhỏ), nên có lẽ sẽ là một ý tưởng tốt khi làm điều này. Một script quản lý việc xoay vòng file nhật ký sẽ được cài đặt.

Ở bước này, quá trình cài đặt đã hoàn tất và bạn có thể tiếp tục với phần cấu hình.

Service Asterisk

Chỉ trong trường hợp bạn cần đến, đây là các lệnh bạn có thể sử dụng, nếu đã cài đặt script khởi tạo:

- Bắt đầu Asterisk:

sudo /etc/init.d/asterisk start

- Dừng Asterisk:

sudo /etc/init.d/asterisk stop

- Kiểm tra trạng thái:

sudo /etc/init.d/asterisk status

Bài viết khuyên bạn nên kiểm tra trạng thái trước khi đi xa hơn (và bắt đầu service nếu cần).

Nếu mọi thứ không hoạt động vào thời điểm này với cấu hình mặc định, thì nó cũng có thể không hoạt động sau khi bạn thực hiện thay đổi.

Nếu không có script khởi tạo, bạn có thể bắt đầu Asterisk bằng:

sudo asterisk -gcv

Asterisk dừng khi bạn đóng cửa sổ hoặc kết nối SSH (bạn có thể giữ cho nó chạy ở chế độ nền).

 

Cấu hình Asterisk

Vị trí các file

Cấu hình Asterisk nằm trong /etc/asterisk.

Có rất nhiều file (119 trong thử nghiệm này), vì vậy rất khó để giải thích trong một vài dòng, nhưng bài viết sẽ cung cấp cho bạn những thứ quan trọng hơn sau.

Chỉ cần lưu ý nhanh ở đây là nếu bạn muốn sử dụng hoặc upload lên âm thanh trong cấu hình của mình, chúng được đặt trong /var/lib/asterisk/sounds.

Theo mặc định, bạn sẽ chỉ nhận được file âm thanh bằng tiếng Anh, nhưng nhiều ngôn ngữ cũng có sẵn trong menuselect nếu bạn cần một tùy chọn khác.

Các file cấu hình chính

Như đã nói, bạn không cần tất cả các file cấu hình, vì vậy bài viết cung cấp cho bạn những file quan trọng ở đây:

sip.conf: Trong file này, bạn cần cấu hình tài khoản SIP của mình. SIP là một giao thức để quản lý các cuộc gọi qua Internet. Bạn cần tìm một nhà cung cấp và xem cách cấu hình trên Asterisk.

users.conf: Nếu bạn sử dụng softphone (chương trình phần mềm để thực hiện các cuộc gọi điện thoại qua Internet bằng máy tính) trên máy tính, bạn cần xác định tài khoản SIP trong file này (ít nhất là số và mật khẩu).

extend.conf: Đây là “bộ não” của Asterisk. Trong file này, bạn quản lý những gì sẽ xảy ra khi nhận được hoặc thực hiện cuộc gọi. Bạn có thể thực hiện một cấu hình thực sự ngắn, chỉ khiến điện thoại của bạn đổ chuông khi có ai đó gọi. Hay làm một cái gì đó phức tạp hơn, với giờ mở cửa, tin nhắn chào mừng hoặc một số điện thoại. Đây có lẽ là file phức tạp nhất để hiểu khi bắt đầu.

Về cơ bản, bạn không cần chỉnh sửa một file nào khác nếu muốn một cấu hình cơ bản.

Nguồn tin: Quantrimang.com