Build ứng dụng Voice Call trên nền tảng iOS

Build ứng dụng Voice call/Video call

5.0 (2 đánh giá)
Tạo bởi Kteam Cập nhật lần cuối 17:06 10-04-2023 4.267 lượt xem 0 bình luận
Tác giả/Dịch giả: Đang cập nhật
Học nhanh

Danh sách bài học

Build ứng dụng Voice Call trên nền tảng iOS

Xây dựng Ứng dụng Voice Call trên iOS

Như đã giới thiệu, khóa học này chúng ta sẽ cùng nhau thực chiến xây dựng ứng dụng có tính năng giao tiếp: gọi thoại (voice call) và gọi hình (video call) trên 03 nền tảng là iOS, Android và Web.

Đặc thù nghiệp vụ của việc xây dựng các tính năng Voice và Video này chủ yếu phục vụ cho người dùng cuối sử dụng trên mobile app và website, vì vậy SDK hiện chưa hỗ trợ nền tảng Windows.

Ở bài đầu tiên, chúng ta sẽ cùng nhau Tìm hiểu và xây dựng Ứng dụng Voice Call trên nền tảng iOS. Chúng ta cùng bắt đầu vào bài nhé!


Nội dung

Trong bài này, Kteam sẽ hướng dẫn bạn các nội dung chính như sau:

  • Thêm Stringee SDK vào project
  • Kết nối Stringee server
  • Xử lý luồng tạo cuộc gọi đi
  • Xử lý luồng nhận cuộc gọi đến
  • Thêm các tính năng phụ: mute, đổi cam, đổi loa, tắt/mở camera
  • Test lại luồng tạo , nhận cuộc gọi

Thư viện sử dụng


Source code tham khảo

  1. Tạo StringeeClient và connect tới Stringee server sử dụng token:
var client: StringeeClient!
	client = StringeeClient(connectionDelegate: self)
	client.connect(withAccessToken: user2)
  1. Nhận các sự kiện liên quan đến connection của StringeeClient:
extension ViewController: StringeeConnectionDelegate {
    func didConnect(_ stringeeClient: StringeeClient!, isReconnecting: Bool) {

    }
    
    func didDisConnect(_ stringeeClient: StringeeClient!, isReconnecting: Bool) {

    }
    
    func didFailWithError(_ stringeeClient: StringeeClient!, code: Int32, message: String!) {
        
    }
    
    func requestAccessToken(_ stringeeClient: StringeeClient!) {
        
    }
}

  1. Tạo cuộc gọi đi:
var call: StringeeCall!
    call = StringeeCall(stringeeClient: client, from: from, to: to)
    call.delegate = self
    call.make { status, code, msg, data in
        print(msg ?? "")
    }
  1.   Nhận các sự kiện của cuộc gọi:
func didChangeSignalingState(_ stringeeCall: StringeeCall!, signalingState: SignalingState, reason: String!, sipCode: Int32, sipReason: String!) {

    }
    
    func didChangeMediaState(_ stringeeCall: StringeeCall!, mediaState: MediaState) {

    }
  1. Để nhận cuộc gọi đến thì cần implement thêm StringeeIncomingCallDelegate:
StringeeIncomingCallDelegate:
    client.incomingCallDelegate = self

	func incomingCall(with stringeeClient: StringeeClient!, stringeeCall: StringeeCall!) {

    }
  1. Tiếp nhận hoặc từ chối cuộc gọi
call.answer { status, code, msg in
        print(msg ?? "")
    }

    call.reject { status, code, msg in
        print(msg ?? "")
    }
  1. Ngắt cuộc gọi
call.hangup { status, code, msg in
        print(msg ?? "")
    }


Kết

Trong bài này, chúng ta đã cùng nhau xây dựng một ứng dụng Voice Call trên nền tảng iOS chỉ trong 50 phút.

Ở bài sau, chúng ta sẽ tiếp tục khóa học với bài học XÂY DỰNG ỨNG DỤNG VIDEO CALL TRÊN NỀN TẢNG IOS.

Cảm ơn các bạn đã theo dõi bài viết. Hãy để lại bình luận hoặc góp ý của bạn để phát triển bài viết tốt hơn. Đừng quên “Luyện tập – Thử thách – Không ngại khó”.


Tải xuống

Tài liệu

Nhằm phục vụ mục đích học tập Offline của cộng đồng, Kteam hỗ trợ tính năng lưu trữ nội dung bài học Build ứng dụng Voice Call trên nền tảng iOS dưới dạng file PDF trong link bên dưới.

Ngoài ra, bạn cũng có thể tìm thấy các tài liệu được đóng góp từ cộng đồng ở mục TÀI LIỆU trên thư viện Howkteam.com

Đừng quên likeshare để ủng hộ Kteam và tác giả nhé!


Thảo luận

Nếu bạn có bất kỳ khó khăn hay thắc mắc gì về khóa học, đừng ngần ngại đặt câu hỏi trong phần bên dưới hoặc trong mục HỎI & ĐÁP trên thư viện Howkteam.com để nhận được sự hỗ trợ từ cộng đồng.

Nội dung bài viết

Tác giả/Dịch giả

Đang cập nhật

Khóa học

Build ứng dụng Voice call/Video call

Trong khóa học BUILD ỨNG DỤNG VOICE CALL/VIDEO CALL này, Kteam sẽ hướng dẫn các bạn cách làm tối ưu hơn để tiết kiệm thời gian phát triển bằng việc sử dụng SDKs của đơn vị thứ ba.

Đánh giá

Vo Tan Duc đã đánh giá 18:36 16-02-2024

soale95 đã đánh giá 11:08 13-04-2023

Rất hữu ích. Cảm ơn Kteam

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Không có video.