From c671059a0341bfe6451d73f65b4450a86d6829be Mon Sep 17 00:00:00 2001 From: Mohammad ALjammal Date: Sun, 28 Jun 2020 15:03:06 +0300 Subject: [PATCH] fix issues in video call --- lib/config/config.dart | 18 ++++++++++++++ lib/providers/doctor_reply_provider.dart | 4 ++-- lib/providers/patients_provider.dart | 9 ++++--- lib/providers/referral_patient_provider.dart | 7 +++--- lib/providers/referred_patient_provider.dart | 7 +++--- lib/providers/schedule_provider.dart | 3 ++- lib/screens/dashboard_screen.dart | 14 +++-------- lib/screens/live_care/panding_list.dart | 13 +++++++++- lib/screens/live_care/video_call.dart | 25 +++++++++++++++++--- lib/util/helpers.dart | 1 + 10 files changed, 70 insertions(+), 31 deletions(-) diff --git a/lib/config/config.dart b/lib/config/config.dart index a93d5de1..261fcd46 100644 --- a/lib/config/config.dart +++ b/lib/config/config.dart @@ -35,6 +35,24 @@ const START_LIVECARE_CALL = 'LiveCareApi/DoctorApp/CallPatient'; const LIVE_CARE_STATISTICS_FOR_CERTAIN_DOCTOR_URL = "Lists.svc/REST/DashBoard_GetLiveCareDoctorsStatsticsForCertainDoctor"; +const GET_PRESCRIPTION_REPORT = 'Services/Patients.svc/REST/GetPrescriptionReport'; + +const GT_MY_PATIENT_QUESTION = 'Services/DoctorApplication.svc/REST/GtMyPatientsQuestions'; + +const GET_PATIENT = 'Services/DoctorApplication.svc/REST/'; + +const GET_PRESCRIPTION_REPORT_FOR_IN_PATIENT= 'Services/DoctorApplication.svc/REST/GetPrescriptionReportForInPatient'; + +const GET_MY_REFERRAL_PATIENT = 'Services/DoctorApplication.svc/REST/GtMyReferralPatient'; + +const ADD_REFERRED_DOCTOR_REMARKS= 'Services/DoctorApplication.svc/REST/AddReferredDoctorRemarks'; + +const GET_MY_REFERRED_PATIENT = 'Services/DoctorApplication.svc/REST/GtMyReferredPatient'; + +const GET_DOCTOR_WORKING_HOURS_TABLE = 'Services/Doctors.svc/REST/GetDoctorWorkingHoursTable'; + +const GET_PATIENT_LAB_RESULTS= 'Services/DoctorApplication.svc/REST/GetPatientLabResults'; + var selectedPatientType = 1; //*********change value to decode json from Dropdown ************ diff --git a/lib/providers/doctor_reply_provider.dart b/lib/providers/doctor_reply_provider.dart index bc5e401c..e254988d 100644 --- a/lib/providers/doctor_reply_provider.dart +++ b/lib/providers/doctor_reply_provider.dart @@ -1,4 +1,5 @@ import 'package:doctor_app_flutter/client/base_app_client.dart'; +import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/models/doctor/request_doctor_reply.dart'; import 'package:doctor_app_flutter/models/doctor/list_gt_my_patients_question_model.dart'; import 'package:flutter/cupertino.dart'; @@ -17,8 +18,7 @@ class DoctorReplyProvider with ChangeNotifier { getDoctorReply() async { try { - await BaseAppClient.post( - 'DoctorApplication.svc/REST/GtMyPatientsQuestions', + await BaseAppClient.post(GT_MY_PATIENT_QUESTION, body: _requestDoctorReply.toJson(), onSuccess: (dynamic response, int statusCode) { response['List_GtMyPatientsQuestions'].forEach((v) { diff --git a/lib/providers/patients_provider.dart b/lib/providers/patients_provider.dart index c525668b..15c9e1e4 100644 --- a/lib/providers/patients_provider.dart +++ b/lib/providers/patients_provider.dart @@ -72,7 +72,7 @@ class PatientsProvider with ChangeNotifier { try { dynamic localRes; - await BaseAppClient.post('DoctorApplication.svc/REST/' + SERVICES_PATIANT[val], + await BaseAppClient.post(GET_PATIENT + SERVICES_PATIANT[val], onSuccess: (dynamic response, int statusCode) { localRes = response; }, onFailure: (String error, int statusCode) { @@ -235,8 +235,7 @@ class PatientsProvider with ChangeNotifier { try { prescriptionReportForInPatientList = []; notifyListeners(); - await BaseAppClient.post( - 'DoctorApplication.svc/REST/GetPrescriptionReportForInPatient', + await BaseAppClient.post(GET_PRESCRIPTION_REPORT_FOR_IN_PATIENT, onSuccess: (dynamic response, int statusCode) { response['List_PrescriptionReportForInPatient'].forEach((v) { prescriptionReportForInPatientList @@ -261,7 +260,7 @@ class PatientsProvider with ChangeNotifier { isError = false; error = ""; notifyListeners(); - await BaseAppClient.post('Patients.svc/REST/GetPrescriptionReport', + await BaseAppClient.post(GET_PRESCRIPTION_REPORT, onSuccess: (dynamic response, int statusCode) { response['ListPRM'].forEach((v) { prescriptionReport.add(PrescriptionReport.fromJson(v)); @@ -330,7 +329,7 @@ class PatientsProvider with ChangeNotifier { requestLabResult.orderNo = labOrdersResModel.orderNo; requestLabResult.invoiceNo = labOrdersResModel.invoiceNo; requestLabResult.patientTypeID = labOrdersResModel.patientType; - await BaseAppClient.post('DoctorApplication.svc/REST/GetPatientLabResults', + await BaseAppClient.post(GET_PATIENT_LAB_RESULTS, onSuccess: (dynamic response, int statusCode) { isError = false; isLoading = false; diff --git a/lib/providers/referral_patient_provider.dart b/lib/providers/referral_patient_provider.dart index d7270e65..d0b36345 100644 --- a/lib/providers/referral_patient_provider.dart +++ b/lib/providers/referral_patient_provider.dart @@ -1,4 +1,5 @@ import 'package:doctor_app_flutter/client/base_app_client.dart'; +import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/models/patient/my_referral/my_referral_patient_model.dart'; import 'package:doctor_app_flutter/models/doctor/request_add_referred_doctor_remarks.dart'; import 'package:doctor_app_flutter/models/patient/request_my_referral_patient_model.dart'; @@ -24,8 +25,7 @@ class MyReferralPatientProvider with ChangeNotifier { getMyReferralPatient() async { try { - await BaseAppClient.post( - 'DoctorApplication.svc/REST/GtMyReferralPatient', + await BaseAppClient.post(GET_MY_REFERRAL_PATIENT, body: _requestMyReferralPatient.toJson(), onSuccess: (dynamic response, int statusCode) { response['List_MyReferralPatient'].forEach((v) { @@ -57,8 +57,7 @@ class MyReferralPatientProvider with ChangeNotifier { _requestAddReferredDoctorRemarks.referredDoctorRemarks = referredDoctorRemarks; _requestAddReferredDoctorRemarks.lineItemNo = model.lineItemNo; _requestAddReferredDoctorRemarks.referringDoctor = model.referringDoctor; - await BaseAppClient.post( - 'DoctorApplication.svc/REST/AddReferredDoctorRemarks', + await BaseAppClient.post(ADD_REFERRED_DOCTOR_REMARKS, body: _requestAddReferredDoctorRemarks.toJson(), onSuccess: (dynamic body, int statusCode) { model.referredDoctorRemarks = referredDoctorRemarks; diff --git a/lib/providers/referred_patient_provider.dart b/lib/providers/referred_patient_provider.dart index 4d7780b2..7cf8b58e 100644 --- a/lib/providers/referred_patient_provider.dart +++ b/lib/providers/referred_patient_provider.dart @@ -1,4 +1,5 @@ import 'package:doctor_app_flutter/client/base_app_client.dart'; +import 'package:doctor_app_flutter/config/config.dart'; import 'package:doctor_app_flutter/models/patient/my_referral/my_referred_patient_model.dart'; import 'package:doctor_app_flutter/models/patient/request_my_referral_patient_model.dart'; import 'package:doctor_app_flutter/models/doctor/verify_referral_doctor_remarks.dart'; @@ -22,8 +23,7 @@ class MyReferredPatientProvider with ChangeNotifier { getMyReferralPatient() async { try { - await BaseAppClient.post( - 'DoctorApplication.svc/REST/GtMyReferredPatient', + await BaseAppClient.post(GET_MY_REFERRED_PATIENT, body: _requestMyReferralPatient.toJson(), onSuccess: (dynamic response, int statusCode) { response['List_MyReferredPatient'].forEach((v) { @@ -62,8 +62,7 @@ class MyReferredPatientProvider with ChangeNotifier { _verifyreferraldoctorremarks.patientMobileNumber=model.mobileNumber; _verifyreferraldoctorremarks.patientIdentificationID=model.patientIdentificationNo; - await BaseAppClient.post( - 'DoctorApplication.svc/REST/GtMyReferredPatient', + await BaseAppClient.post(GET_MY_REFERRED_PATIENT, body: _verifyreferraldoctorremarks.toJson(), onSuccess: (dynamic body, int statusCode) { diff --git a/lib/providers/schedule_provider.dart b/lib/providers/schedule_provider.dart index 0bd98af7..dedc9c27 100644 --- a/lib/providers/schedule_provider.dart +++ b/lib/providers/schedule_provider.dart @@ -1,4 +1,5 @@ import 'package:doctor_app_flutter/client/base_app_client.dart'; +import 'package:doctor_app_flutter/config/config.dart'; import 'package:flutter/cupertino.dart'; import '../models/doctor/list_doctor_working_hours_table_model.dart'; import '../models/doctor/request_schedule.dart'; @@ -16,7 +17,7 @@ class ScheduleProvider with ChangeNotifier { getDoctorSchedule() async { try { - await BaseAppClient.post('Doctors.svc/REST/GetDoctorWorkingHoursTable', + await BaseAppClient.post(GET_DOCTOR_WORKING_HOURS_TABLE, body: requestSchedule.toJson(), onSuccess: (dynamic response, int statusCode) { response['List_DoctorWorkingHoursTable'].forEach((v) { diff --git a/lib/screens/dashboard_screen.dart b/lib/screens/dashboard_screen.dart index b099df76..037b344d 100644 --- a/lib/screens/dashboard_screen.dart +++ b/lib/screens/dashboard_screen.dart @@ -88,17 +88,9 @@ class _DashboardScreenState extends State { ), InkWell( onTap: () { - - //TODO Change the location of it - - VideoChannel.openVideoCallScreen(kApiKey: '46803224', - kSessionId: '2_MX40NjgwMzIyNH5-MTU5MzA3NDk2MjQxNH5QekwrY1oyaHdnbjVSaENkemlvNFVqeEJ-fg', - kToken: 'T1==cGFydG5lcl9pZD00NjgwMzIyNCZzaWc9ZTUxZGI0NGJiNjhjOGY2YzZkZGVjNTQ0M2Q5ZDJkODY2MjBlYjJjYTpzZXNzaW9uX2lkPTJfTVg0ME5qZ3dNekl5Tkg1LU1UVTVNekEzTkRrMk1qUXhOSDVRZWt3clkxb3lhSGRuYmpWU2FFTmtlbWx2TkZWcWVFSi1mZyZjcmVhdGVfdGltZT0xNTkzMDc1MDA3Jm5vbmNlPTAuNjQ2OTA2MTAwMTU0ODY3NSZyb2xlPXB1Ymxpc2hlciZleHBpcmVfdGltZT0xNTkzNjc5ODA2JmluaXRpYWxfbGF5b3V0X2NsYXNzX2xpc3Q9', - ); - -// showCupertinoPicker( -// context: context, -// actionList: authProvider.doctorsClinicList); + showCupertinoPicker( + context: context, + actionList: authProvider.doctorsClinicList); }, child: Container( margin: diff --git a/lib/screens/live_care/panding_list.dart b/lib/screens/live_care/panding_list.dart index 202fc774..5d865a18 100644 --- a/lib/screens/live_care/panding_list.dart +++ b/lib/screens/live_care/panding_list.dart @@ -1,5 +1,6 @@ import 'package:doctor_app_flutter/config/size_config.dart'; import 'package:doctor_app_flutter/providers/livecare_provider.dart'; +import 'package:doctor_app_flutter/util/VideoChannel.dart'; import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart'; import 'package:doctor_app_flutter/util/helpers.dart'; import 'package:doctor_app_flutter/widgets/shared/app_scaffold_widget.dart'; @@ -201,6 +202,8 @@ class _LiveCarePandingListState extends State { color: Colors .green, //Colors.black, onPressed: () => { + + sharedPref.setObj( LIVE_CARE_PATIENT, item), @@ -217,7 +220,15 @@ class _LiveCarePandingListState extends State { ], ), ), - onTap: () {}, + onTap: () { + sharedPref.setObj( + LIVE_CARE_PATIENT, + item); + Navigator.of(context) + .pushNamed( + VIDEO_CALL); + + }, ), ); }).toList(), diff --git a/lib/screens/live_care/video_call.dart b/lib/screens/live_care/video_call.dart index be2d47de..596f5f20 100644 --- a/lib/screens/live_care/video_call.dart +++ b/lib/screens/live_care/video_call.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'package:doctor_app_flutter/providers/livecare_provider.dart'; +import 'package:doctor_app_flutter/util/VideoChannel.dart'; import 'package:doctor_app_flutter/util/dr_app_shared_pref.dart'; import 'package:flutter/material.dart'; import 'package:doctor_app_flutter/config/shared_pref_kay.dart'; @@ -21,6 +22,7 @@ class _VideoCallPageState extends State { String _timmer = ''; LiveCareProvider _liveCareProvider; bool _isInit = true; + var _tokenData; var patientData = {}; String image_url = 'https://hmgwebservices.com/Images/MobileImages/DUBAI/'; //bool _isOutOfStuck = false; @@ -36,9 +38,14 @@ class _VideoCallPageState extends State { } void connectOpenTok(tokenData) { + _tokenData = tokenData; /* opentok functionalites need to be written */ - print(tokenData["OpenSessionID"]); - print(tokenData["OpenTokenID"]); + + VideoChannel.openVideoCallScreen(kApiKey: '46209962', + kSessionId: _tokenData["OpenSessionID"], + kToken: _tokenData["OpenTokenID"], + ); + } String getTimerTime(int start) { @@ -149,7 +156,19 @@ class _VideoCallPageState extends State { FunctionalButton( title: 'Speaker', icon: Icons.phone_in_talk, - onPressed: () {}, + onPressed: () { + + + + print(_tokenData["OpenSessionID"]); + print(_tokenData["OpenTokenID"]); + + VideoChannel.openVideoCallScreen(kApiKey: '46209962', + kSessionId: _tokenData["OpenSessionID"], + kToken: _tokenData["OpenTokenID"], + ); + + }, ), FunctionalButton( title: 'Flip', diff --git a/lib/util/helpers.dart b/lib/util/helpers.dart index 416c723e..1483667f 100644 --- a/lib/util/helpers.dart +++ b/lib/util/helpers.dart @@ -340,6 +340,7 @@ class Helpers { } logout() async { + print('LOGOUT--------------------------------------------'); await clearSharedPref(); Navigator.of(AppGlobal.CONTEX).pushReplacementNamed(LOGIN); }