No Description

fish 81999ecd1b 0 3 months ago
android 81999ecd1b 0 3 months ago
assets 3dded475f5 init 1 year ago
ios 3dded475f5 init 1 year ago
lib cea7f3b046 升级 agora_rtc_engine 导致错误 9 months ago
test 3dded475f5 init 1 year ago
.gitignore 3dded475f5 init 1 year ago
.metadata 3dded475f5 init 1 year ago
README.md 3dded475f5 init 1 year ago
analysis_options.yaml 3dded475f5 init 1 year ago
pubspec.lock 07f2fef808 0 9 months ago
pubspec.yaml 81999ecd1b 0 3 months ago

README.md

Flutter Agora Fully Functional Video Call module

Tech Stack

Client: Dart, Flutter

Server: Firebase firestore, Google cloud functions

Techniques:

*BloC pattern with Cubit State management

*Fully Real-time data-consuming for (Users-History-VideoCall status)

*Real-time handling for all call status (calling - accept- reject - cancel - busy - unAnswer - end)

*Clean code and arch

*Ui=>Cubit=>Api data flow

*Dio package for deals with (generate agora token - FCM) api

*Fcm notification (handling incoming calls in terminated mode)

Build token generator using nodejs: https://www.youtube.com/watch?v=KcLypppA2IQ&ab_channel=Agora

Demo Video : https://www.youtube.com/watch?v=Ond-VhB11h4

App Screenshot

App Screenshot

App Screenshot

Getting Started

*Create a new firebase project and setup firestore and enable email/password authentication

*Copy FCM authorization key and past it on fcmKey var in constants.dart file

*Create agora new project and general token, channel name for test purpose and past them with your appId on (agoraAppId-agoraTestChannelName-agoraTestToken) vars in constants.dart file