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