Sử dụng Wowza Service của Amazon để viết ứng dụng chat video: Giao diện phần mềm:
Hình 30. Giao diện phần mềm
Học viên thực hiện:Nguyễn Hoàng Linh-CA140213-Lớp 2014A-KTPM 83 Hình 31. Chat text
Chat video:
Hình 32. Chat video
2. Kết quả còn đang thử nghiệm ở giai đoạn 2
Với Mobile Client hiện tại vẫn đang ở giai đoạn demo. Chƣa đƣa vào ứng dụng đƣợc. Cần làm thêm các chức năng để tích hợp nhƣ login, đặt phòng, lƣu trữ… để đƣa ra sản phẩm có thể đƣa vào sử dụng thực tế.
3. Hƣớng dẫn cài đặt hệ thống
Học viên thực hiện:Nguyễn Hoàng Linh-CA140213-Lớp 2014A-KTPM 84 Cài đặt môi trƣờng cần thiết cho Signaling Server và Backend video chat, cả hai đều đƣợc deploy trên Cloud Server, cài đặt môi trƣờng cho 2 thành phần nhƣ sau:
- Cài đặt NodeJS, việc cài đặt NodeJS tham khảo tại :
https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-an- ubuntu-14-04-server
Cài đặt hệ thống BKRTC Service
Signaling Server đƣợc viết trên nền tảng NodeJS sử dụng framework ExpressJS phù hợp với bất kì một hosting nào. Signaling Server đƣợc deploy trên một VPS hệ điều hành Ubuntu, các bƣớc deploy nhƣ sau:
Cài đặt Turn Server: https://code.google.com/archive/p/rfc5766-turn- server/
Clone mã nguồn từ bitbucket:
https://bitbucket.org/videochatp2p/videochatsignalingserver
Cấu hình file config: mail config, authenticate config, database config.
Chạy lệnh “npm install” để clone toàn bộ thƣ viện về project.
Cài đặt pm2 để deploy project phiên bản production bằng lệnh: sudo npm install –save pm2.
Cấu hình Nginx thành Reverse Proxy Server cho hệ thống. Bƣớc cấu hình Nginx xem trong document của project.
Deploy chạy lệnh: pm2 bin/www.
Cài đặt Backend video chat
Backend của hệ thống video chat đƣợc viết trên nền tảng ngôn ngữ NodeJS sử dụng framework ExpressJS. Backend đƣợc deploy trên một VPS hệ điều hành Ubuntu, các bƣớc deploy nhƣ sau:
Cài đặt ffmpeg: https://gist.github.com/xdamman/e4f713c8cd1a389a5917
Clone mã nguồn từ bitbucket:
https://bitbucket.org/videochatp2p/videochatbackend
Tạo các file config: mail config, database config, và app config với mẫu đã có sẵn trong folder config.
Sửa file .env mục đích lấy biến môi trƣờng, biến môi trƣờng ở đây là tên user deploy.
Chạy lệnh “npm install” để clone toàn bộ thƣ viện về project.
Cài đặt pm2 để deploy project phiên bản production bằng lệnh: sudo npm install –save pm2.
Cấu hình Nginx thành Reverse Proxy Server cho hệ thống. Bƣớc cấu hình Nginx xem trong document của project.
Học viên thực hiện:Nguyễn Hoàng Linh-CA140213-Lớp 2014A-KTPM 85
Cài đặt Frontend video chat
Frontend của hệ thống video chat đƣợc viết trên nền tảng framework JavaScript AngularJS, sử dụng Grunt để cấu hình và deploy hệ thống, Bower để quản lý các gói và thành phần trong frontend. Các bƣớc deploy nhƣ sau:
Clone mã nguồn từ bitbucket:
https://bitbucket.org/videochatp2p/videochatfrontend
Cài đặt Git, NodeJS.
Cài đặt Grunt và Bower bằng lệnh: npm install –global bower grunt-cli
Chạy lệnh “npm install” để clone các thƣ viện, chạy “bower install” để clone các gói và thành phần dùng trong frontend.
Để build frontend chạy lệnh: “grunt build”.
Chạy phiên bản production dùng lệnh: “grunt serve:dist”.
Cài đặt Mobile Client
Mobile Client của hệ thoogns đƣợc viết trên nền tảng react-native sử dụng javascript là ngôn ngữ chính. Các bƣớc deploy của hệ thống Mobile nhƣ sau:
Clone mã nguồn từ bitbucket:
https://bitbucket.org/videochatp2p/android_ios_client
Cài đặt Git, NodeJS.
Cài đặt các thƣ viện của react-native và webrtc bằng lệnh: npm install
Để build Mobile chạy lệnh: “react-native start” cho đến khi quá trình start kết thúc. Có thể mất gần 1 tiếng khi chạy lệnh này.
Chạy phiên bản Mobile tới thiết bị thực dùng lệnh: “react-native run- android” hoặc “react-native run-iOS”.
Theo dõi log của hệ thống khi chạy trên thiết bị bằng lệnh : “react-native log-android” hoặc “react-native log-iOS”.