Android - Giao thức SIP
SIP là viết tắt của (Session Initiation Protocol). Đây là một giao thức cho phép các ứng dụng dễ dàng thiết lập các cuộc gọi thoại đi và đến mà không cần phải quản lý các phiên, giao tiếp cấp độ truyền tải, ghi âm hoặc phát lại trực tiếp.
Các ứng dụng
Một số ứng dụng phổ biến của SIP là.
- Hội nghị truyền hình
- Tin khẩn
Yêu cầu
Dưới đây là các yêu cầu để phát triển một ứng dụng SIP -
- Hệ điều hành Android phải từ 2.3 trở lên
- Bạn phải có kết nối dữ liệu hoặc WIFI
- Bạn phải có tài khoản SIP để sử dụng dịch vụ này.
Các lớp SIP
Dưới đây là tóm tắt về các lớp được bao gồm trong Android SIP API:
Sr.No | Lớp & mô tả |
---|---|
1 | SipAudioCall Xử lý cuộc gọi âm thanh Internet qua SIP |
2 | SipErrorCode Xác định mã lỗi được trả về trong các hành động SIP |
3 | SipManager Cung cấp các API cho các tác vụ SIP, chẳng hạn như khởi tạo kết nối SIP và cung cấp quyền truy cập vào các dịch vụ SIP liên quan |
4 | SipProfile Xác định cấu hình SIP, bao gồm tài khoản SIP, tên miền và thông tin máy chủ |
5 | SipSession Trình bày phiên SIP được liên kết với hộp thoại SIP hoặc một giao dịch độc lập không nằm trong hộp thoại |
Chức năng của SIP
SIP có các chức năng chính sau.
- SIP cho phép thiết lập vị trí người dùng
- SIP cung cấp cơ chế quản lý cuộc gọi
- SIP cung cấp đàm phán tính năng, để tất cả các bên trong cuộc gọi có thể đồng ý với các tính năng được hỗ trợ giữa họ
Các thành phần của SIP
SIP có hai thành phần chính được liệt kê dưới đây.
- Ứng dụng khách tác nhân người dùng (UAC)
- Máy chủ tác nhân người dùng (UAS)
UAC
UAC hoặc Máy khách tác nhân người dùng là những người dùng cuối tạo ra các yêu cầu và gửi các yêu cầu đó đến máy chủ. Các yêu cầu này được tạo bởi các ứng dụng khách chạy trên hệ thống của họ.
UAS
UAS hoặc Máy chủ tác nhân người dùng là những hệ thống nhận được yêu cầu do UAC tạo ra. UAS xử lý các yêu cầu đó và sau đó theo yêu cầu, nó tạo ra các phản hồi tương ứng.
SipManager
SipManager là một API android cho các tác vụ SIP, chẳng hạn như khởi tạo kết nối SIP và cung cấp quyền truy cập vào các dịch vụ SIP liên quan. Lớp này là điểm khởi đầu cho bất kỳ hành động SIP nào. Bạn có thể lấy một phiên bản của nó bằng newInstance ().
SipManager có nhiều chức năng để quản lý các tác vụ SIP. Một số chức năng được liệt kê dưới đây.
Sr.No | Lớp & mô tả |
---|---|
1 | close(String localProfileUri) Đóng cấu hình được chỉ định để không thực hiện / nhận cuộc gọi |
2 | getCallId(Intent incomingCallIntent) Nhận ID cuộc gọi từ mục đích phát cuộc gọi đến được chỉ định |
3 | isOpened(String localProfileUri) Kiểm tra xem cấu hình được chỉ định có được mở trong dịch vụ SIP để thực hiện và / hoặc nhận cuộc gọi hay không |
4 | isSipWifiOnly(Context context) Trả về true nếu SIP chỉ khả dụng trên WIFI |
5 | isRegistered(String localProfileUri) Kiểm tra xem dịch vụ SIP đã đăng ký thành công cấu hình với nhà cung cấp SIP (được chỉ định trong cấu hình) để nhận cuộc gọi hay chưa |
6 | isVoipSupported(Context context) Trả về true nếu hệ thống hỗ trợ API VOIP dựa trên SIP |
7 | takeAudioCall(Intent incomingCallIntent, SipAudioCall.Listener listener) Tạo SipAudioCall để nhận cuộc gọi đến |
số 8 | unregister(SipProfile localProfile, SipRegistrationListener listener) Hủy đăng ký hồ sơ từ nhà cung cấp SIP tương ứng theo cách thủ công để ngừng nhận các cuộc gọi tiếp theo |